@charset "utf-8";

footer ul,
footer ol{
    margin:0;
    padding:0;
    list-style-type: none;
}

.mt10{
	margin-top:10px;
}

.mt15{
	margin-top:15px;
}

.mt20{
	margin-top:20px;
}

.mt25{
	margin-top:25px;
}

.mt30{
	margin-top:30px;
}

.mt35{
	margin-top:35px;
}

.mt40{
	margin-top:40px;
}


.mb10{
	margin-bottom:10px;
}

.mb15{
	margin-bottom:15px;
}

.mb20{
	margin-bottom:20px;
}

.mb25{
	margin-bottom:25px;
}

.mb30{
	margin-bottom:30px;
}

.mb35{
	margin-bottom:35px;
}

.mb40{
	margin-bottom:40px;
}

.pd{
	padding:0 !important;
}

.pl0{
	padding-left:10px;
}


*:hover{
	transition: all  0.3s ease;
}


/* Bootstrapのガター幅を調整するための汎用CSS */
.row-0{ 
	margin-left:0px;
	margin-right:0px;
}
	
.row-0 >div{
	padding-right:0px;
	padding-left:0px;
}

.row-10{
	margin-left:-5px; 
	margin-right:-5px;
}

.row-10 >div{
	padding-right:5px; 
	padding-left:5px;
}

.row-15{
	margin-left:-7.5px; 
	margin-right:-7.5px; 
}

.row-15 >div{
	padding-right:7.5px; 
	padding-left:7.5px;
}

.row-20{
	margin-left:-10px;
	margin-right:-10px;
}

.row-20 >div{
	padding-right:10px;
	padding-left:10px;
}

.row-30{
	margin-left:-15px;
	margin-right:-15px;
}

.row-30 >div{
	padding-right:15px;
	padding-left:15px;
}

.row-40{
	margin-left:-20px;
	margin-right:-20px;
}

.row-40 >div{
	padding-right:20px;
	padding-left:20px;
}

.row-50{
	margin-left:-25px;
	margin-right:-25px;
}

.row-50 >div{
	 padding-right:25px;
	 padding-left:25px
}

i{
	margin-right:5px;
}

/*
page-top
******************************************/

#page-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
    font-size:0.8em;
    font-weight:bold;
    z-index: 10;
}

#page-top a {
    background: #333;
    text-decoration: none;
    color: #fff;
    width: 80px;
    height:80px;
    padding: 15px 0;
    text-align: center;
    display: block;
    border-radius: 50%;
    border:2px solid #666;
    box-shadow: 2px 2px 5px -1px rgba(0,0,0,0.4);
    -webkit-box-shadow: 2px 2px 5px -1px rgba(0,0,0,0.4);
    -moz-box-shadow: 2px 2px 5px -1px rgba(0,0,0,0.4);
}

#page-top a:hover {
    text-decoration: none;
    background:#666;
}

#page-top a i{
    font-size:1.8em;
    margin-bottom:5px;
}


/*
footer
******************************************/

footer footer{
	border:none !important;
}

footer {
	padding:15px 0px 30px 0;
    border-top: 5px solid #F84C78;
    background: #333;
    color: #fff;
}

footer hr {
    border: 0;
    border-top: 1px solid #1a1a1a;
    border-bottom: 1px solid #4d4d4d;
    width: 100%;
    display: block;
    margin-top:15px;
    margin-bottom:15px;
    padding:0;
}

footer a{
	text-decoration:none !important;
	color:#fff !important;
}

footer .user_language{
	padding:15px 0;
	text-align:center;
}

footer .user_language select{
	color:#333;
	max-width:230px;
	height:auto;
	padding:5px 10px;
}

footer a:focus,
footer a:hover,
footer a:active{
	color:#ccc !important;
	text-decoration:underline !important;
}

footer h3{
	font-size:16px;
	font-weight:bold;
	margin-top:5px;
	margin-left:5px;
	margin-bottom:5px;
	text-align:left;
	background:none !important;
	border-bottom:none !important;
}

footer ul.menu-list li {
	margin-left:15px;
	text-align:left;
}

footer ul.menu-list li a,
footer ul.menu-list li a:hover{
	font-size:13px;
	position: relative;
	padding-left:0px;
	color:#fff !important;
}

footer ul.menu-list li a:before{
	content: "\f105";
	font-family: FontAwesome;
	margin-right:10px;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	left:-10px;
}

footer a:hover:before{
	text-decoration:none !important;
}

footer ul.menu-list {
	list-style:none;
	padding:0;
	margin:5px 0 10px 0;
}

footer ul.menu-list.megurip li:nth-child(n + 2){
	float:left;
	width:120px;
}

footer ul.menu-list.ferry-route li{
	float:left;
	width:120px;
}

footer .copyright{
	font-size:12px;
	text-align:center;
	color:#aaa;
}

footer h4{
	margin-top:15px;
	font-size:14px;
	text-align:center;
}

footer ul.social {
    width:275px;
    margin:10px auto;
    padding:0;
    display: block;
    overflow:hidden;
}

footer .social li {
    float:left;
    margin:0;
    list-style-type:none;
    text-align: center;
}

footer .social a{
    color:#fff;
    font-size:14px;
}

footer .social a:focus,
footer .social a:hover,
footer .social a:active{
    color:red;
}

footer .social .fa-twitter,
footer .social .fa-facebook,
footer .social .fa-youtube,
footer .social .fa-envelope-o,
footer .social .fa-youtube-play,
footer .social .fa-instagram{
    color:#000;
}

footer .social .line{
	margin:4px 0 0 3px;
	
}
footer .social .line img{
	width:48px;
	height:48px;
}

footer .social .line a:hover{
	filter:alpha(opacity=80);
	-moz-opacity: 0.8;
	opacity: 0.8;
}

footer ul.comany-link{
	overflow:hidden;
	margin:5px 0 0px 0;
}


footer ul.comany-link li{
	float:left;
	margin-right:15px;
	margin-bottom:5px;
}

footer ul.comany-link li a{
	position: relative;
	padding-left:15px;
	color:#fff !important;
}

footer ul.comany-link li a:before{
	content: "\f105";
    font-family: FontAwesome;
    margin-right: 10px;
    position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
    left: 5px;
}

footer .nav-tabs{
	margin-bottom:0px;
	border-bottom:1px solid #555;
}

footer .nav-tabs>li>a {
    margin-right: 2px;
    line-height: 1.42857143;
    border-top:none;
    border-left:none;
    border-right:none;
    border-radius:0;
    color:#fff !important;
    text-decoration:none !important;
    font-size:14px;
}

footer .nav-tabs>li.active{
	font-weight:bold;
}

footer .nav-tabs>li.active,
footer .nav>li>a:focus,
footer .nav>li>a:hover{
	background:#333;
}

footer .nav-tabs>li.active>a,
footer .nav-tabs>li.active>a:focus,
footer .nav-tabs>li.active>a:hover{
	color:#fff;
	
	background:none;
	border-top:none;
	border-left:none;
	border-right:none;
	border-bottom:1px solid #ccc;
}

footer .nav-tabs>li:first-child{
	margin-left:10px;
}


footer .tab-content{
	padding-top:15px;
}

.smartfooter.smtab{
	display:none;
}


@media(min-width : 992px) {
/* PC用 */


	.onlypc{
		display:block;
	}
	.onlytab{
		display:none;
	}
	
	
	
}

@media(max-width : 991px) {
/* タブレット以下 */


	.onlypc{
		display:none;
	}


}

@media only screen and (min-width : 768px) and (max-width : 991px) {
/* タブレットのみ用 */


	.onlytab{
		display:block;
	}
	
	footer ul.menu-list li a,
	footer ul.menu-list li a:hover{
		font-size:11px;
	}
	
	footer ul.menu-list li:first-child{
		font-size:14px;
	}

}

@media(min-width: 768px){
/* タブレット以上 */

	
	.onlypctab,
	.pctab{
		display:block;
	}
	
	.onlysm{
		display:none;
	}
	
}


@media(max-width:767px) {
/* スマホ用 */

	.onlypctab,
	.pctab{
		display:none;
	}
	.onlytab{
		display:none;
	}
	
	.onlysm{
		display:block;
	}

	footer {
		padding:5px 0px 30px 0;
		overflow:hidden;
	}
	
	footer .nav>li>a{
		padding:5px 7px;
	}
	
	footer .nav-tabs>li:first-child{
		margin-left:0px;
	}
	
	footer h3{
		font-size:14px;
	}
	
	p#page-top{
		display:none !important;
	}
	
	footer .container{
		padding:0 5px;
	}
	
	footer ul.social{
		margin: 10px auto 20px auto;
	}
	
}


@media only screen and (min-width : 320px) and (max-width : 374px) {

	footer .nav-tabs li span{
		display:none;
	}
	
	footer .nav>li>a{
		padding: 5px 2px;
	}
	
	

}
