@charset "utf-8";

/*--- base ---*/

.content h2{
	font-size: 180%;
	font-weight: bold;
	margin: 0 0 30px 0;
}
.content h3{
	clear:both;
	border-left: #bd2726 solid 5px;
	margin: 0 0 25px 0;
	font-size: 130%;
	padding: 0 10px;
}
.content h4 {
	clear:both;
	margin: 0 0 25px 0;
	font-size: 130%;
	color: #bd2726;
	background: #f4f4f4;
	padding: 5px 10px;
}
.content h5{
	clear:both;
	font-size: 120%;
	margin: 0 0 25px 0;
	padding: 5px 0 5px 25px;
	background: url(../images/bg_h4.jpg) no-repeat left 50%;
	border-bottom: 1px solid #f4f4f4;
}
.content h5.small{
	clear:both;
	font-size: 120%;
	margin: 0 0 25px 0;
	padding: 5px 0 5px 15px;
	background: url(../images/bg_h5.jpg) no-repeat left 50%;
	border-bottom: none;
}

p.setogei{
	margin: 0 0 30px 0;
}

.sp {
    display: none !important;
}

.attention { color: #ff0000; }

/*--- 乗り場のご案内 ---*/

.stand section{
	margin: 0 0 50px 0;
}
.stand section iframe{
	border: none;
	margin: 0 0 20px 0;
}
.video{
	height: 0;
	overflow: hidden;
	padding-bottom: calc(315 / 560 * 100%);
	position: relative;
	margin-bottom: 20px;
}
.video iframe{
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
}
.stand section h3{
	clear:both;
	border-left: #bd2726 solid 5px;
	margin: 0 0 25px 0;
	font-size: 130%;
	padding: 0 10px;
}
.stand section h4 {
	clear:both;
	margin: 0 0 10px 0;
	font-size: 130%;
	color: #bd2726;
	background: #f4f4f4;
	padding: 5px 10px;
}
.stand section h5{
	clear:both;
	font-size: 120%;
	margin: 0 10px 25px 10px;
	padding: 5px 0 5px 25px;
	background: url(../images/bg_h4.jpg) no-repeat left 50%;
	border-bottom: 1px solid #f4f4f4;
}
.stand .flow{
	margin: 0 0 20px 0;
	font-size: 80%;
}
.stand .flow .flowBox{
	margin: 0 0 10px 0;
}
.stand .flow .flowBox p.Box{
	border: #bd2726 solid 1px;
	text-align: center;
	padding: 10px 0;
	float: left;
}
.stand .flow .flowBox p.bw100{
	width: 98px;
}
.stand .flow .flowBox p.bw140{
	width: 138px;
}
.stand .flow .flowBox p.Arrow{
	float: left;
	line-height: 1.4;
	text-align: center;
}
.stand .flow .flowBox p.oneline{
	padding: 20px 5px 10px 5px;
	height: 10px;
}
.stand .flow .flowBox p.twoline{
	padding: 3px 5px;
	height: 34px;
}
.stand .flow .flowBox p.aw100{
	width: 90px;
	background: url(../stand/images/bg_arrow_s.png) no-repeat left bottom;
}
.stand .flow .flowBox p.aw140{
	width: 130px;
	background: url(../stand/images/bg_arrow_m.png) no-repeat left bottom;
}
.stand .flow .flowBox p.aw420{
	width: 410px;
	background: url(../stand/images/bg_arrow_l.png) no-repeat left bottom;
}

.stand .info{
	margin: 0 0 20px 0;
}
.stand .info table{
	border-collapse:collapse;
	width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	border-top: 1px solid #e7eae2;

}
.stand .info table th,
.stand .info table td{
	padding: 10px;
	vertical-align: top;
	border-bottom: 1px solid #e7eae2;
	text-align: center;
}
.stand .info table td.left{
	text-align: left;
}
.stand .info table th{
	color: #fff;
	background: #bd2726;
}

.stand .info table thead th {
	color: #fff;
	background: #bd2726;
}
.stand section .photoArea{
	margin: 0 0 15px -11px;
}
.stand section .photoArea .Box{
	width: 218px;
	float: left;
	padding: 3px;
	margin: 0 0 0 11px;
	border: 1px solid #e7eae2;
}
.stand section p.caution{
	color: #FF0000;
}

.stand .notice{
	background:url(../images/pin.png) no-repeat 0 50%;
	padding:10px 0 10px 28px;
	margin-bottom:15px;
}

.stand .mb20 {
	margin-bottom: 20px;
}

/*--- ダイヤのご案内 ---*/
.instant .list{
	margin: 0 0 30px 0;
}
.instant .list li{
	background:url(../images/icon_list001.jpg) no-repeat 0 0.5em;
	padding-left:13px;
	margin-bottom:5px;
}

.instant .within{
	margin: 0 0 40px 0;
}
.instant .title{
	position: relative;
	margin: 0 0 10px 0;
}
.instant .title h3{
	font-size: 150%;
	font-weight: bold;
	display: inline-block;
	margin: 0;
	padding: 0 0 0 35px;
	border: 0;
}
.instant .title h3.route01{ color: #f8b824; background: url(../images/icon_no1.jpg) no-repeat left 0.2em;}
.instant .title h3.route02{ color: #4573a7; background: url(../images/icon_no2.jpg) no-repeat left 0.2em;}
.instant .title h3.route03{ color: #623287; background: url(../images/icon_no3.jpg) no-repeat left 0.2em;}
.instant .title h3.route04{ color: #e73a8e; background: url(../images/icon_no4.jpg) no-repeat left 0.2em;}
.instant .title h3.route05{ color: #7eb73e; background: url(../images/icon_no5.jpg) no-repeat left 0.2em;}
.instant .title p{
	position: absolute;
	display: inline-block;
	top: 10px;
	right: 0;
	padding: 0 0 0 15px;
	background: url(../images/icon_arrow001.png) no-repeat left 50%;
}
.instant .instantArea{
	margin: 0 0 0 -20px;
}
.instant .instantArea.mb40{
	margin-bottom: 40px;
}
.instant .Box{
	width: 470px;
	float: left;
	font-size: 90%;
	margin: 0 0 0 20px;
}
.instant .Box h4{
	background: #bd2726;
	color: #fff;
	text-align: center;
	margin: 0 0 15px 0;
}
.instant .Box .leftBox{
	width: 230px;
	float: left;
	margin: 0 4px 0 0;
	padding: 0 5px 0 0;
	border-right: 1px dotted #dedede;
}
.instant .Box .rightBox{
	width: 230px;
	float: right;
}
.instant .Box h5{
	margin: 0;
}
.instant .Box p.possible{
	font-size: 80%;
	display: inline-block;
	padding: 0 0 0 20px;
	margin: 0;
}
.instant .Box p.people{ background: url(../instant/images/icon_people.jpg) no-repeat left center; }
.instant .Box p.nopeople{ background: url(../instant/images/icon_nopeople.jpg) no-repeat left center; color: #ff0000; }
.instant .Box p.bike{ background: url(../instant/images/icon_bike.jpg) no-repeat left center; }
.instant .Box p.nobike{ background: url(../instant/images/icon_nobike.jpg) no-repeat left center; color: #ff0000; }
.instant .Box p.car{ background: url(../instant/images/icon_car.jpg) no-repeat left center; }
.instant .Box p.nocar{ background: url(../instant/images/icon_nocar.jpg) no-repeat left center; color: #ff0000; }
.instant .Box p.cautioncar{ background: url(../instant/images/icon_cautioncar.jpg) no-repeat left center; }
.instant .Box table{
	margin: 10px 0 0 0;
	width: 100%;
}
.instant .Box table thead th{
	background: #dedede;
	padding: 5px 0;
	text-align: center;
}
.instant .Box table tbody td{
	padding: 2px 0;
	text-align: center;
	border-bottom: #dedede dotted 1px;
}
.instant .Box table tbody td span{
	display: inline-block;
	margin: 0 0 0 -11px;
}
.instant p.caution{
	font-size: 85%;
	margin: 5px 0 40px 0;
}
.instant .red{
	color: #ff0000;
}
.instant .blue{
	color: #4354da;
}


/*--- 運賃のご案内 ---*/

.fare table{
	border-collapse:collapse;
	width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;

}
.fare table.mb50{
	margin: 0 0 50px 0;
}
.fare table th,
.fare table td{
	padding: 10px;
	vertical-align: top;
	border-bottom: 1px solid #e7eae2;
	text-align: center;
}

.fare table th{
	background: #f6f9f1;
}
.fare table thead th {
	color: #fff;
	background: #bd2726;
}


/*--- 船のご紹介 ---*/

.about_ship section{
	margin: 0 0 50px 0;
}
.about_ship .photoArea{
	margin: 0 0 15px -15px;
}
.about_ship .photoArea .Box{
	width: 302px;
	float: left;
	padding: 3px;
	margin: 0 0 0 15px;
	border: 1px solid #e7eae2;
}
.about_ship table{
	border-collapse:collapse;
	width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;

}
.about_ship table th,
.about_ship table td{
	padding: 10px;
	vertical-align: top;
	border-bottom: 1px solid #e7eae2;
	text-align: center;
}

.about_ship table th{
	background: #f6f9f1;
}
.about_ship table thead th {
	color: #fff;
	background: #bd2726;
}
.about_ship p.link{
	margin-top: 20px;
}
.about_ship p.link a{
	color: #bd2726;
	font-weight: bold;
	font-size: 110%;
}


/*--- 島のご紹介 ---*/

.about_land p.text{
	margin: 0 0 20px 0;
}
.about_land .inner{
	margin: 0 0 40px 0;
}
.about_land .inner .leftBox{
	width: 620px;
	float: left;
	line-height: 1.8;
}
.about_land .inner .leftBox p{
	margin: 0 0 8px 0;
}
.about_land .inner .rightBox{
	width: 300px;
	float: right;
}
.about_land .inner .rightBox p{
	margin: 5px 0 0 0;
}
.about_land .photoBox{
	width: 640px;
	margin: 0 auto 40px auto;
}
.about_land .photoBox p{
	clear: both;
	text-align: center;
	padding: 5px 0 0 0;
}
.about_land .photoBox .leftBox{
	width: 300px;
	float: left;
}
.about_land .photoBox .rightBox{
	width: 300px;
	float: right;
}
.about_land .within {
	padding: 15px 20px 15px 40px;
	border: 3px solid #f0f0f0;
	clear:both;
	background:#fff;
	overflow: hidden;
	margin: 0 0 40px 0;
}
.about_land .within li{
	float:left;
	margin-right:25px;
}
.about_land .within li a{
	background:url(../images/icon_arrow003.jpg) no-repeat 0 0.5em;
	padding-left: 20px;
}


.about_land .inner .leftBox table{
	border-collapse:collapse;
	width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	border-top: 1px solid #e7eae2;
}
.about_land .inner .leftBox table th,
.about_land .inner .leftBox table td{
	padding: 10px;
	vertical-align: top;
	border-bottom: 1px solid #e7eae2;
}
.about_land .inner .leftBox table th{
	color: #fff;
	background: #bd2726;
	text-align: center;
}
.about_land .inner .leftBox table td a{
	color: #bd2726;
}
.about_land .inner .leftBox table td a:hover{
	text-decoration: underline;
}


/*--- 会社概要 ---*/

.company .underline dt{
	background:url(../images/icon_list001.jpg) no-repeat 0 0.5em;
	padding: 0 0 10px 13px;
	clear: left;
	float: left;
	width: 10em;
	margin-bottom: 15px;
	color: #bd2726;
	font-weight: normal;
	line-height: 1.5;
}

.company .underline dd{
	padding:0 0 10px 12em;
	margin-bottom: 15px;
	border-bottom: 1px solid #e7eae2;
}
.company .underline dd .accessBox{
	margin: 0 0 15px 0;
}
.company .underline dd .accessBox .leftBox{
	width: 400px;
	float: left;
}
.company .underline dd .accessBox .rightBox{
	width: 390px;
	float: right;
}
.company .underline dd .accessBox .rightBox iframe{
	border: none;
}

.safety h3:nth-child(n+2) {
	margin-top: 50px;
}

.safety .icon {
    margin: 2px 0 0 3px;
}


/*--- お問い合せ ---*/

.contact p.mb10{
	margin: 0 0 10px 0;
}
.contact .contactBox{
	width: 700px;
	margin: 0 auto;
}
.contact table{
	border-collapse:collapse;
	width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	border-top: 1px solid #e7eae2;
	margin: 0 0 30px 0;
}
.contact table th,
.contact table td{
	padding: 10px;
	vertical-align: top;
	border-bottom: 1px solid #e7eae2;
	text-align: left;
}
.contact table th{
	width: 30%;
	background: #f6f9f1;
}
.contact table td dl{
	margin: 0;
}
.contact .link li{
	background:url(/images/icon_arrow001.png) no-repeat 0 0.4em;
	padding-left: 20px;
	margin-bottom:5px;
}
.contact table td p.example{
	margin: 10px 0 0 0;
}
.contact table td p.error{
	color: #f00;
	margin: 10px 0;
	background: url(../images/form/icon_information.png) no-repeat left 50%;
	padding: 0 0 0 20px;
}
.contact p.center{
	text-align: center;
}


/*--- 個人情報保護方針について ---*/
.privacy section{
	margin: 0 0 40px 0;
}
.privacy section p,
.privacy section ol{
	margin: 0 0 10px 0;
}
.privacy section ol li{
	list-style-position: inside;
	list-style-type: decimal;
}


/*--- サイトマップ ---*/
.sitemap .leftBox{
	width: 50%;
	float: left;
}
.sitemap .rightBox{
	width: 50%;
	float: right;
}
.sitemap .link li{
	background:url(../images/icon_arrow001.png) no-repeat 0 0.4em;
	padding-left: 20px;
	margin-bottom: 20px;
}


/*--- よくあるご質問 ---*/
.faq section{
	margin: 0 0 50px 0;
}
.faq dl dt {
	margin-top: 15px;
	padding: 0 0 15px 48px;
	background: url(../faq/images/icon_q.png) left top no-repeat;
	border-bottom: 1px dotted #cfcfce;
	cursor: pointer;
}
.faq dl dd {
	margin-top: 15px;
	padding: 0 0 15px 48px;
	background:url(../faq/images/icon_a.png) left top no-repeat;
}
.faq dl dd {
	display:none;
}

.faq .list{
	margin: 15px 0 0 0;
}
.faq .list li{
	background:url(../images/icon_list001.jpg) no-repeat 0 0.5em;
	padding-left:13px;
	margin-bottom:5px;
}

.faq .list li li {
	background:url(../images/icon_list002.jpg) no-repeat 0 0.6em;
}
.faq .within{
	margin: 0 0 40px 0;
}
.faq table{
	border-collapse:collapse;
	width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	border-top: 1px solid #e7eae2;

}
.faq table th,
.faq table td{
	padding: 10px;
	vertical-align: top;
	border-bottom: 1px solid #e7eae2;
	text-align: center;
}
.faq table th{
	color: #fff;
	background: #bd2726;
}

.faq table thead th {
	color: #fff;
	background: #bd2726;
}
.faq table td.bg-gray {
	background-color: #efefef;
}
.within:after {
	visibility:hidden;
	display:block;
	font-size:0;
	content:" ";
	clear:both;
	height:0;
}
* html .within            { zoom:1; } /* IE6 */
*:first-child+html .within { zoom:1; } /* IE7 */

.within {
	padding: 15px 20px 15px 40px;
	border: 3px solid #f0f0f0;
	clear:both;
	background:#fff;
}

.within li{
	float:left;
	margin-right:25px;
}

.within li a{
	background:url(../images/icon_arrow003.jpg) no-repeat 0 0.5em;
	padding-left: 20px;
}


/*--- ページが見つかりません ---*/
.notpage p{
	margin: 0 0 10px 0;
}
.notpage p.button{
	margin: 50px 0 0 0;
}


/*--- sticky ---*/
.sticky {
  position: fixed;
  top: 0;
  z-index: 100;
  width: 100%;
  background:#fff;
}

.navbar-sticky {
    width: 962px;
}

.fare .navbar-sticky .container {
	margin-bottom: 0px;
}

.fare .title {
	margin-top: 35px;
}


.fare .navbar-sticky .container table th,
.fare .navbar-sticky .container table td {
    padding: 10px;
    vertical-align: top;
    border: 3px solid #EEEEEE;
    text-align: center;
}

.fare .navbar-sticky .container table th.route01:hover ,
.fare .navbar-sticky .container table td.route01:hover {
    padding: 10px;
    vertical-align: top;
    border: 3px solid #EEEEEE;
    text-align: center;
    background:#bd2726;
    color: #fff;
}

.fare .navbar-sticky .container table th.route02:hover ,
.fare .navbar-sticky .container table td.route02:hover {
    padding: 10px;
    vertical-align: top;
    border: 3px solid #EEEEEE;
    text-align: center;
    background:#bd2726;
    color: #fff;
}

.fare .navbar-sticky .container table th.route03:hover ,
.fare .navbar-sticky .container table td.route03:hover {
    padding: 10px;
    vertical-align: top;
    border: 3px solid #EEEEEE;
    text-align: center;
    background:#bd2726;
    color: #fff;
}

.fare .navbar-sticky .container table th.route04:hover ,
.fare .navbar-sticky .container table td.route04:hover {
    padding: 10px;
    vertical-align: top;
    border: 3px solid #EEEEEE;
    text-align: center;
    background:#bd2726;
    color: #fff;
}
.fare .navbar-sticky .container table th.route05:hover ,
.fare .navbar-sticky .container table td.route05:hover {
    padding: 10px;
    vertical-align: top;
    border: 3px solid #EEEEEE;
    text-align: center;
    background:#bd2726;
    color: #fff;
}

.fare .navbar-sticky .container table th.route01.on ,
.fare .navbar-sticky .container table td.route01.on {
    padding: 10px;
    vertical-align: top;
    border: 3px solid #EEEEEE;
    text-align: center;
    background:#bd2726;
    color: #fff;
}

.fare .navbar-sticky .container table th.route02.on ,
.fare .navbar-sticky .container table td.route02.on {
    padding: 10px;
    vertical-align: top;
    border: 3px solid #EEEEEE;
    text-align: center;
    background:#bd2726;
    color: #fff;
}

.fare .navbar-sticky .container table th.route03.on ,
.fare .navbar-sticky .container table td.route03.on {
    padding: 10px;
    vertical-align: top;
    border: 3px solid #EEEEEE;
    text-align: center;
    background:#bd2726;
    color: #fff;
}

.fare .navbar-sticky .container table th.route04.on ,
.fare .navbar-sticky .container table td.route04.on {
    padding: 10px;
    vertical-align: top;
    border: 3px solid #EEEEEE;
    text-align: center;
    background:#bd2726;
    color: #fff;
}
.fare .navbar-sticky .container table th.route05.on ,
.fare .navbar-sticky .container table td.route05.on {
    padding: 10px;
    vertical-align: top;
    border: 3px solid #EEEEEE;
    text-align: center;
    background:#bd2726;
    color: #fff;
}

.fare .navbar-sticky .container table th a:hover ,
.fare .navbar-sticky .container table td a:hover ,
.fare .navbar-sticky .container table th:hover a ,
.fare .navbar-sticky .container table td:hover a ,
.fare .navbar-sticky .container table th.on a,
.fare .navbar-sticky .container table td.on a,
.fare .navbar-sticky .container table th.on a:visited ,
.fare .navbar-sticky .container table td.on a:visited{
    color: #fff;
}

.box {
    padding-top: 79px;
}
#section01 {
    margin-top:-79px;
    padding-top:79px;
}

#section02 {
    margin-top:-79px;
    padding-top:79px;
}

#section03 {
    margin-top:-79px;
    padding-top:79px;
}

#section04 {
    margin-top:-79px;
    padding-top:79px;
}

#section05 {
    margin-top:-79px;
    padding-top:79px;
}

div.navi{
	margin-top: 0px;
}

.bnr {
	margin-bottom: 50px;
}
