@charset "utf-8";


/* ************************************************ 
*	基本設定
* ************************************************ */

body {
font-family: 'Roboto','Sawarabi Gothic','Noto Sans JP',sans-serif;
font-size: 15px;
background:#fff;
color: #333;
line-height: 180%;
overflow-x: auto;
text-size-adjust: 100%;
-webkit-text-size-adjust: 100%;/*Chrome,Safari*/
-ms-text-size-adjust: 100%;/*EgdeMobile*/
-moz-text-size-adjust: 100%;/*firefox*/
}

/* リンク */
a{
	color: #333;
	text-decoration: underline;
	transition: 0.5s;
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-o-transition: 0.5s;
	-ms-transition: 0.5s;
}

a:hover{
color:#00357f;
text-decoration: none;
}

a:active, a:focus {
outline: 0;
}

/* 画像 */
img{
border:0;
padding:0px;
margin:0px
vertical-align: bottom;
}

img a{
	transition: 0.5s;
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-o-transition: 0.5s;
	-ms-transition: 0.5s;
}


/* フロート */
.right{ float: right; }
.left{ float: left; }
.clear{ clear:both; }


/* リスト */
ol{
margin: 0 0 0 5px;
padding: 0 0 0 0;
list-style: decimal;
}

ul{
margin: 0 0 0 0;
padding: 0 0 0 0;
list-style: none;
}

li{
margin: 0 0 10px 15px;
padding: 0 0 0 0;
}

li a{
color:#444;
transition: 0.5s;
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-o-transition: 0.5s;
-ms-transition: 0.5s;
}

li a:hover{
color:#00357f;
}

#topcontrol{
z-index:99999;
}

ruby {
color: #fff;
}
.awashima-blue {
color: #00357f;
}
.awashima-green {
color: #00357f;
}
.awashima-red {
color: #ff0000;
}
.awashima-red2 {
color: #e50012;
}
.mL05 { margin-left: 0.7em; }
.mL1 { margin-left: 1em; }
.mL2 { margin-left: 2em; }
.mL3 { margin-left: 3em; }
.mL4 { margin-left: 4em; }
.mL5 { margin-left: 5em; }
.mL6 { margin-left: 6em; }
.mL7 { margin-left: 7em; }
.mL8 { margin-left: 8em; }
.mL9 { margin-left: 9em; }
.mL10 { margin-left: 10em; }
.mR2 { margin-right: 2em; }
.mR3 { margin-right: 3em; }
.mR4 { margin-right: 4em; }
.mR5 { margin-right: 5em; }

.width90{
width: 90%!important;
}
.width80{
width: 80%!important;
}
.width70{
width: 70%!important;
}
.width60{
width: 60%!important;
}
.width50{
width: 50%!important;
}
.width40{
width: 40%!important;
}
.width38{
width: 38%!important;
}
.width35{
width: 35%!important;
}
.width30{
width: 30%!important;
}
.width27{
width: 27.4%!important;
}
.width26{
width: 26%!important;
}
.width25{
width: 25%!important;
}
.width23{
width: 23%!important;
}
.width20{
width: 20%!important;
}
.width10{
width: 10%!important;
}
.width5{
width: 5%!important;
}

.bold { font-weight: bold; }
.big110 { font-size: 110%; }
.big120 { font-size: 120%; }
.big130 { font-size: 130%; }

.underline { text-decoration: underline; }
.text-right { text-align: right; }


/* ************************************************ 
*	全体Wrapper
* ************************************************ */	
.wrapper {
margin: 0px auto 0px auto; 
width: 960px;
padding: 30px 150px;
}
.wrapper-contents {
margin: 0px auto 0px auto; 
width: 960px;
padding: 30px 150px 0px 150px;
}
.wrapper-contents2 {
margin: 0px auto 0px auto; 
width: 960px;
padding: 70px 150px;
}
.wrapper-contents3 {
margin: 0px auto 0px auto; 
width: 100%;
padding: 0px 0px;
}
.wrapper-contents4 {
margin: 0px auto 0px auto; 
width: 960px;
padding: 30px 150px 70px 150px;
}
.wrapper-contents5 {
margin: 0px auto 0px auto; 
width: 960px;
padding: 0px 150px;
}


/* ************************************************ 
*	トップページ用ヘッダー
* ************************************************ */
#top-header {
width: 100%;
min-width: 1260px;
margin: 0 auto;
position: relative;
}
.top-header-inner {
overflow: hidden;
margin: 0 auto;
padding: 0 0 0 0;
width: 85%;
position: absolute !important;
top:0;
left:7.5%;
}
#top-nav_bg {
/* background-color: #fff;
border-bottom: 4px solid #fff;
width: 100%;
height:56px;
padding: 0px 0px 0px 0px;
margin: 0;
position: relative;
z-index:9999;
display:block;
-moz-box-shadow: 0px 3px 3px rgba(0,0,0,0.1);
-webkit-box-shadow: 0px 3px 3px rgba(0,0,0,0.1);
-o-box-shadow: 0px 3px 3px rgba(0,0,0,0.1);
-ms-box-shadow: 0px 3px 3px rgba(0,0,0,0.1);
box-shadow: 0px 3px 3px rgba(0,0,0,0.1); */
display: none;
}

/* 上部固定用 */
#top-nav_bg.active{
position:fixed;
top:0;
left:0;
z-index:99999;
background:#fff;
}
/* 上部固定用ここまで */


/* ************************************************ 
*	トップページ用スライド
* ************************************************ */	
#top-slide{
width:100%;
padding: 0px;
margin: 0px auto 0px auto;
}
.top-slide-under {
margin: -35px auto 0px auto; 
  position: relative;
z-index:999;
}
.top-slide-under img{
width:100%;
}


.cycle-slideshow{
overflow: hidden;
width: 100%;
margin: auto;
text-align: center;
height: auto;
}

.cycle-slideshow img{
width: 100%;
height: auto;
}

.main-text-box {
position: absolute !important;
top:25vh;
left:10%;
z-index:999;
width: 90%;
margin: 0;
}
.main-text-box img{
width: 20%;
}


/* ************************************************ 
*	トップページ用時刻表
* ************************************************ */
.top-schedule-box {
font-size: 17px;
margin: 30px auto 0 auto;
padding: 15px 25px 25px 25px;
width: 500px;
position: absolute;
top:0;
right:2.5%;
z-index: 999;
background-color: rgba(255,255,255,1);
border-radius: 10px; /* CSS3 */
 -webkit-border-radius: 10px; /* Firefox */
 -moz-border-radius: 10px; /* Safari,Chrome */
-moz-box-shadow: 0px 3px 3px rgba(0,0,0,0.1);
-webkit-box-shadow: 0px 3px 3px rgba(0,0,0,0.1);
-o-box-shadow: 0px 3px 3px rgba(0,0,0,0.1);
-ms-box-shadow: 0px 3px 3px rgba(0,0,0,0.1);
box-shadow: 0px 3px 3px rgba(0,0,0,0.1);
}
.top-schedule-box h3.title{
margin: 0 auto 0 auto;
padding: 0 0 10px 0;
text-align: center;
font-size: 24px;
border-bottom: 2px solid #00357f;
}
.top-schedule-box h3.title img{
margin: 0 5px 0 -30px;
padding: 0 0 0 0;
height: 34px;
position: relative;
top: 8px;
}
.top-schedule-box .date{
margin: 5px 0 5px 0;
padding: 0 0 0 0;
text-align: right;
}
.top-schedule-box .setumei{
margin: 0 0 -10px 0;
padding: 0 0 0 0;
text-align: left;
}

table.schedule {
width: 100%;
margin: 10px 0 0 0;
padding: 0 0 0 0;
border: none;
border-collapse: collapse;
border-spacing: 0;
border-top: 2px solid #00357f;
}
table.schedule th {
font-weight: bold;
text-align: left;
padding: 10px 0px 5px 10px;
white-space: nowrap;
line-height: 180%;
}
table.schedule th:first-child {
width: 50%;
}
table.schedule th span{
font-size: 18px;
color: #fff;
padding: 3px 0;
background-color: #00357f;
display: block;
text-align: center;
}
table.schedule td {
text-align: left;
padding: 3px 0px 3px 10px;
white-space: normal;
vertical-align: middle;
}
table.schedule td span{
font-size: 21px;
text-align: center;
display: block;
}
.top-schedule-box .textbox{
width: calc(100% - 20px);
margin: 5px 0 0 0;
padding: 10px 10px 5px 10px;
border: 1px solid #00357f;
background-color: #fff;
line-height: 150%;
}

.top-schedule-box .textbox textarea {
    position: relative;
    z-index: 2;
    font-family: 'Roboto','Sawarabi Gothic','Noto Sans JP',sans-serif;
    width: 100%;
    border: none;
    margin: 0;
    padding: 0;
    background-color: white;
    color: #333;
    font-size: 16px;
    line-height: 150%;
    border-radius: 0px;
    box-shadow: 0 0px 0px rgb(0 0 0 / 0) inset;
    -webkit-transition: border 0.3s ease-in;
    -moz-transition: border 0.3s ease-in;
    -ms-transition: border 0.3s ease-in;
    -o-transition: border 0.3s ease-in;
    transition: border 0.3s ease-in;
}


/* ************************************************ 
*	ヘッダー
* ************************************************ */
#header {
	background: #fff;
	width: 100%;
	min-width: 1260px;
	height: 140px;
	margin: 0;
}

.header-inner {
overflow: hidden;
margin: 0 auto;
padding: 0 0 0 0;
max-width: 1260px;
position: relative;
}

#header h1 {
margin: 0 0 0 0;	
}

.logo {
	float: left;
	margin: 0;
	padding: 30px 0;
	position: relative;
    z-index: 99999;
}
.logo img{
	width: 372px;
}

.header-rightbox {
	margin: 0;
	padding: 0;
	position: relative;
	z-index:0;
	float: right;
	width:425px;
}
.header-rightbox .schedule_btn,
.header-rightbox .online_btn {
	margin: 20px 0 0 0;
	padding: 0;
	width: 100%;
	text-align: center;
}
.header-rightbox .schedule_btn a{
	margin: 0 auto;
	padding: 15px 0;
	font-size: 18px;
	color: #fff;
	background-color: #0292dd;
	text-decoration: none;
	display: block;
	line-height: 1.6;
border-radius: 5px; /* CSS3 */
 -webkit-border-radius: 5px; /* Firefox */
 -moz-border-radius: 5px; /* Safari,Chrome */
}
.header-rightbox .online_btn a{
	margin: 0 auto;
	padding: 13px 0;
	font-size: 18px;
	color: #fff;
	background-color: #ff7a90;
	text-decoration: none;
	display: block;
	line-height: 1.8;
border-radius: 5px; /* CSS3 */
 -webkit-border-radius: 5px; /* Firefox */
 -moz-border-radius: 5px; /* Safari,Chrome */
}

.header-rightbox .schedule_btn a:hover,
.header-rightbox .online_btn a:hover {
	color: #fff;
	background-color: #ccc;
}

.header-rightbox .schedule_btn img{
	vertical-align: bottom;
	height: 30px;
	margin-right: 10px;
}
.header-rightbox .online_btn img{
	vertical-align: bottom;
	height: 34px;
	margin-right: 10px;
}

/* オンラインのリンクが復活したら以下はコメントアウト 523行目、783行目*/
/* .header-rightbox .online_btn {
	margin: 20px 0 0 0;
	padding: 11px 0 11px 10px;
	font-size: 18px;
	color: #fff;
	background-color: #ff7a90;
	display: block;
	width: calc(100% - 10px);
	line-height: 1.1;
border-radius: 5px; 
 -webkit-border-radius: 5px; 
 -moz-border-radius: 5px; 
	position: relative;
} */
/* .header-rightbox .online_btn img{
position: absolute;
top:13px;
left:13px;
} */
/* .header-rightbox .online_btn span{
	margin: 0;
	padding: 0;
	font-size: 14px;
} */
/* オンラインのリンクが復活したらコメントアウト ここまで*/


/* ************************************************ 
*	トップナビゲーション
* ************************************************ */	
#navDmy{
display:none !important;
}
#nav_bg {
	background-color: #fff;
	border-bottom: 4px solid #fff;
	width: 100%;
	height:56px;
	padding: 0px 0px 0px 0px;
	margin: 0;
position: relative;
z-index:9999;
display:block;
-moz-box-shadow: 0px 3px 3px rgba(0,0,0,0.1);
-webkit-box-shadow: 0px 3px 3px rgba(0,0,0,0.1);
-o-box-shadow: 0px 3px 3px rgba(0,0,0,0.1);
-ms-box-shadow: 0px 3px 3px rgba(0,0,0,0.1);
box-shadow: 0px 3px 3px rgba(0,0,0,0.1);
}

/* 上部固定用 */
#nav_bg.active{
position:fixed;
top:0;
left:0;
z-index:99999;
background:#fff;
}
/* 上部固定用ここまで */

.nav {
width:1260px;
margin: 0 auto 0px auto;
}

.nav ul {
list-style: none;
margin: auto;
letter-spacing: -0.5em; /* 隙間を埋める追加 */
}

.main-navigation {
clear: both;
margin: 0 auto;
position: relative;
}

ul.nav-menu,
div.nav-menu > ul {
margin: 0;
padding: 0;
}

.nav-menu li {
color: #333;
display: inline-block;
line-height: 16px;
position: relative;
margin: 0;
padding: 0;
float: left; 
text-align:center;
letter-spacing: normal; /* 隙間を埋める追加 */
cursor: pointer;
cursor: hand;
width: 16.6666%;
}
.nav-menu li img{
vertical-align: bottom;
}

.nav-menu li a {
color: #333;
display: block;
font-size: 16px;
text-decoration: none;
margin: 0;
padding: 21px 0 19px 0;
border-bottom: 4px solid #fff;
}

.nav-menu li:hover > a,
.nav-menu li a:hover {
color: #333;
border-bottom: 4px solid #00357f;
}

.nav-menu .sub-menu {
background-color: rgba(255,255,255,0);
display:none;
position: absolute;
z-index: 99999;
padding: 0 0 0 0;
}

.nav-menu .children {
background-color: rgba(255,255,255,0);
display:none;
position: absolute;
z-index: 99999;
padding: 0 0 0 0;
left: 212px;
top: 0;
}

.nav-menu .sub-menu li {
background-color: rgba(23,164,82,0.9);
width: 212px;
padding: 0;
margin: 0;
border-left: none;
}
.nav-menu .children li {
background-color: rgba(23,164,82,0.9);
width: 212px;
padding: 0;
margin: 0;
border-left: none;
}

.nav-menu .sub-menu li a {
color: #fff;
display: block;
font-size: 15px;
text-decoration: none;
padding: 20px 0 20px 15px;
text-align: left;
width: 197px;
border-bottom: 1px solid #fff;
}

.nav-menu .sub-menu ul {
}

ul.nav-menu ul a,
.nav-menu ul ul a {
color: #fff;
margin: 0;
}

ul.nav-menu ul a:hover,
.nav-menu ul ul a:hover {
background-color: rgba(255,255,255,0.8);
color: #333;
}

ul.nav-menu li:hover > ul,
.nav-menu ul li:hover > ul {
display: block;
}

.nav-menu .current_page_item > a,
.nav-menu .current_page_ancestor > a,
.nav-menu .current-menu-item > a,
.nav-menu .current-menu-ancestor > a {
}


/* ************************************************ 
*	トップページ緊急告知
* ************************************************ */
.top-kokuchi-box { 
width: calc(100% - 60px);
margin: 0 auto 20px auto;
padding: 20px;
border: 10px solid #ff3364;
}
.top-kokuchi-box h2{ 
font-size: 24px;
margin: 0 auto;
padding: 0;
color: #ff3364;
}


/* ************************************************ 
*	トップページカテゴリー
* ************************************************ */
.category-box .schedule-box,
.category-box .news-box,
.category-box .online-box,
.category-box .access-box,
.category-box .ships-box,
.category-box .faq-box,
.category-box .company-box,
.category-box .links-box {
margin: 0 auto 30px auto;
padding: 0;
text-align: center;
border-radius: 10px; /* CSS3 */
 -webkit-border-radius: 10px; /* Firefox */
 -moz-border-radius: 10px; /* Safari,Chrome */
}
.category-box .schedule-box{ background-color: #0292dd; }
.category-box .news-box{ background-color: #6cbb63; }
.category-box .online-box{ background-color: #ff7a90; }
.category-box .access-box{ background-color: #ffbd00; }
.category-box .ships-box{ background-color: #1462be; }
.category-box .faq-box{ background-color: #ff9e00; }
.category-box .company-box{ background-color: #ff0000; }
.category-box .links-box{ background-color: #5dc000; }

.category-box .schedule-box img,
.category-box .news-box img,
.category-box .online-box img,
.category-box .access-box img,
.category-box .ships-box img,
.category-box .faq-box img,
.category-box .company-box img,
.category-box .links-box img {
height: 80px;
margin: 0 0 20px 0;
}

.category-box .schedule-box a,
.category-box .news-box a,
.category-box .online-box a,
.category-box .access-box a,
.category-box .ships-box a,
.category-box .faq-box a,
.category-box .company-box a,
.category-box .links-box a {
display: block;
padding: 80px 0 0 0;
font-size:27px;
color: #fff;
text-decoration: none;
height:220px;
}

/* オンラインのリンクが復活したら以下はコメントアウト 523行目、785行目*/
/* .category-box .online-box {
display: block;
padding: 80px 0 0 0;
font-size:27px;
color: #fff;
text-decoration: none;
height:220px;
}*/
/* オンラインのリンクが復活したらコメントアウト ここまで*/

.category-box .schedule-box a:hover,
.category-box .news-box a:hover,
.category-box .online-box a:hover,
.category-box .access-box a:hover,
.category-box .ships-box a:hover,
.category-box .faq-box a:hover,
.category-box .company-box a:hover,
.category-box .links-box a:hover {
background-color: #ccc;
border-radius: 10px; /* CSS3 */
 -webkit-border-radius: 10px; /* Firefox */
 -moz-border-radius: 10px; /* Safari,Chrome */
}

.category-box .sns-box {
margin: 0 auto 30px auto;
padding: 0;
text-align: center;
background-color: #81c0c0;
height:300px;
position: relative;
border-radius: 10px; /* CSS3 */
 -webkit-border-radius: 10px; /* Firefox */
 -moz-border-radius: 10px; /* Safari,Chrome */
}
.category-box .sns-box .sns1 img {
height: 43px;
margin: 0 0 0 0;
position: absolute;
top: 47%;
left: 37%;
-webkit-transform: translate(-50%,-50%);
-moz-transform: translate(-50%,-50%);
-ms-transform: translate(-50%,-50%);
-o-transform: translate(-50%,-50%);
transform: translate(-50%,-50%);
}
.category-box .sns-box .sns2 img {
height: 50px;
margin: 0 0 0 0;
position: absolute;
top: 47%;
left: 63%;
-webkit-transform: translate(-50%,-50%);
-moz-transform: translate(-50%,-50%);
-ms-transform: translate(-50%,-50%);
-o-transform: translate(-50%,-50%);
transform: translate(-50%,-50%);
}
.category-box .sns-box a {
padding: 0 0 0 0;
}
.category-box .sns-box a:hover {
}
.category-box .sns-box .junbi {
padding: 0 0 0 0;
font-size:27px;
color: #fff;
position: absolute;
bottom: 27%;
left: 0;
right: 0;
margin: auto;
}


/* ************************************************ 
*	トップページ乗合タクシー
* ************************************************ */	
.taxi-box {
padding: 0;
margin: 50px auto 0 auto;
text-align: center;
}
.taxi-box img{
width: 100%;
vertical-align: bottom;
}


/* ************************************************ 
*	トップページお問い合わせ
* ************************************************ */	
.contact-bnbox {
width: 82%;
padding: 0;
margin: 80px auto 30px auto;
position: relative;
z-index: 0;
height:100%;
}

.contact-bnbox .tel1 a{
color: #00357f;
font-size: 36px;
font-weight: bold;
text-decoration: none;
position: absolute;
top: 180px;
left: 106px;
z-index: 1;
}
.contact-bnbox .tel2 a{
color: #00357f;
font-size: 36px;
font-weight: bold;
text-decoration: none;
position: absolute;
top: 180px;
right: 60px;
z-index: 1;
}
.contact-bnbox .tel1 a:before,
.contact-bnbox .tel2 a:before {
  position: absolute;
  top: 0;
  left: -38px;
  width: 28px;
  height: 28px;
  content: url(../images/tel_icon.svg);
}
.contact-bnbox .mail-box{
position: absolute;
bottom: 30px;
right: 40px;
z-index: 1;
}
.contact-bnbox .mail-box .mail-box-text{
text-align: center;
margin: auto;
}

.contact-bnbox .mail-box2{
  position: absolute;
  bottom: 30px;
  left: 46px;
  z-index: 1;
  }
  .contact-bnbox .mail-box2 .mail-box2-text{
  text-align: center;
  margin: auto;
  }


/* ************************************************ 
*	トップページLINE
* ************************************************ */	
.line-box {
padding: 10px;
margin: 20px auto 0 auto;
text-align: center;
background-color: #efefef;
}
.line-box img{
vertical-align: bottom;
}
.line-box2 {
padding: 10px;
margin: 0 auto 0 auto;
text-align: center;
}
.line-box2 img{
width: 50%;
}


/* ************************************************ 
*	各ページタイトル・ボーダー
* ************************************************ */	
h4.midashi-title {
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
align-items: center;
font-size: 130%;
}
h4.midashi-title:before{
border-top: 5px solid #51bb7d;
content: "";
flex-grow: 1;
margin-right: 20px;
}
h4.midashi-title:after {
border-top: 5px solid #51bb7d;
content: "";
flex-grow: 1;
margin-left: 20px;
}

.contents-box{
margin: 0 0 80px 0;
padding: 0 0 60px 0;
border-bottom: 1px solid #333;;
}


/* ************************************************ 
*	パンくずリスト
* ************************************************ */	
.breadcrumbs {
margin: auto; 
max-width: 960px;
padding: 10px 0 10px 0;
_width: 960px;
text-align:left;
font-size: 80%;
overflow: hidden;
color: #333;
}
.breadcrumbs a{
color: #333;
text-decoration: underline;
transition: 0.5s;
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-o-transition: 0.5s;
-ms-transition: 0.5s;
}
.breadcrumbs a:hover{
color: #333;
text-decoration: none;
}


/* ************************************************ 
*	メイン（本文）コンテンツ
* ************************************************ */	
#main {
margin:0 0 0 0;
padding: 0 0 0 0;
word-break:break-all;
}

.clear	{ clear: both; } 
.mT10	{ margin-top:10px; }
.mT20	{ margin-top:20px; }
.mT30	{ margin-top:30px; }
.mT40	{ margin-top:40px; }
.mB10	{ margin-bottom:10px; }
.mB20	{ margin-bottom:20px; }

.imgcenter{
text-align:center;
margin: 0 auto;
padding: 0;
}
.imgcenter img {
  vertical-align: bottom;
}
.htext{
text-align:center;
}

/* 記事部分 */	
p {
padding: 0;
line-height: 180%;
}

p a {
color: #333;
text-decoration:underline;
transition: 0.5s;
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-o-transition: 0.5s;
-ms-transition: 0.5s;
}

p a:hover {
color:#00357f;
text-decoration:none;
}

p a:active, a:focus {
outline: 0;
}


/* フォント */	
.mincho {
font-family:'century','Times New Roman','Baskerville','Optima','Palatino','Georgia','ヒラギノ明朝 Pro W3','Hiragino Mincho Pro','HGS明朝E','ＭＳ Ｐ明朝','MS PMincho',serif;
}

.bold {
font-weight: bold;
}

.italic {
font-style: italic; 
}
.dllink {
margin: 10px auto 5px auto;
padding: 0;
background-color:#1462be;
text-align:center;
width: 40%;
}
.dllink a{
color: #fff;
display: block;
padding: 10px 0px;
font-size:18px;
line-height: 210%;
}
.dllink a:hover{
color: #fff;
background-color:#03335d;
}


/* ************************************************ 
*	オンライン予約
* ************************************************ */	
.pagetitle-box-online {
width: 100%;
min-width: 1260px;
padding: 35px 0px 20px 0px;
margin: 0 auto 0 auto;
text-align: center;
background: linear-gradient(
    -45deg,
    #ececec 25%, #fff 25%,
    #fff 50%, #ececec 50%,
    #ececec 75%, #fff 75%,
    #fff
  );
background-size: 16px 16px;
position:relative;
z-index: 0;
height: 135px;
}
.pagetitle-box-online {
border-bottom: 10px solid #ff7a90;
}
.pagetitle-online {
margin: 0 auto 0 auto;
padding: 0 0 0 0;
font-size: 24px;
font-weight: bold;
color: #ff7a90;
}
.pagetitle-online img{
height: 70px;
margin: 0 0 10px 0;
}
h3.midashi-title-online {
position: relative;
padding: 0 0 5px 0;
font-size: 21px;
border-bottom: 4px solid #efefef;
margin: 0 0 20px 0;
}
h3.midashi-title-online:before {
  position: absolute;
  bottom: -4px;
  left: 0;
  width: 160px;
  height: 4px;
  content: '';
  background: #ff7a90;
}
h3.midashi-title-online-teishi {
padding: 0 0 5px 0;
font-size: 21px;
margin: 50px auto 100px auto;
text-align:center;
}

.online-linkbox {
margin: 0 0 50px 0;
padding: 0;
}
.online-iwafunelink {
margin: 0 auto 20px auto;
padding: 0;
background-color:#ff9e00;
text-align:center;
}
.online-awashimalink {
margin: 0 auto 20px auto;
padding: 0;
background-color:#0292dd;
text-align:center;
}
.online-link {
margin: 0 auto 20px auto;
padding: 0;
background-color:#ff7a90;
text-align:center;
}

.online-iwafunelink a,
.online-awashimalink a,
.online-link a {
color: #fff;
display: block;
padding: 25px 0px;
text-decoration: none;
font-size: 21px;
}
.online-iwafunelink a:hover,
.online-awashimalink a:hover,
.online-link a:hover {
color: #fff;
background-color:#ccc;
}

p.online-textbox {
margin: 0;
padding: 0;
}
p.online-textbox a{
color: #00357f;
text-decoration: none;
}
p.online-textbox a:hover{
color: #333;
text-decoration: underline;
}

.online-about-box {
margin: 20px 0 50px 0;
padding: 20px;
background: linear-gradient(
    -45deg,
    #ececec 25%, #fff 25%,
    #fff 50%, #ececec 50%,
    #ececec 75%, #fff 75%,
    #fff
  );
background-size: 12px 12px;
}
.online-about-box .text-box{
padding: 20px;
background-color: #fff;
}
.online-about-box .text-box h4{
padding: 0 0 20px 0;
font-weight: normal;
font-size: 15px;
text-align: center;
margin: 0 auto;
}
.online-about-box .text-right{
font-size: 18px;
text-align: right;
}
.online-about-box .form-box{
margin: 0 0 20px 0;
padding: 0 0 0 0;
}
.online-about-box .submit-box{
text-align: center;
margin: 0 auto;
padding: 0 0 0 0;
}

#anqcontact,
#anqabout1,
#anqabout2,
#anqabout3,
#anqabout4,
#anqstep1,
#anqstep2,
#anqstep3,
#anqschedule3 {
margin: -30px 0 0 0;
padding-top: 30px;
}
#anqschedule1,
#anqschedule2,
#anqaccess1,
#anqaccess2,
#anqships1,
#anqships2,
#anqcompany1,
#anqcompany2,
#anqcompany3,
#anqcompany4 {
margin: -70px 0 0 0;
padding-top: 70px;
}
#anqcontact-top {
margin: 30px 0 0 0;
padding-top: -30px;
}

/* ************************************************ 
*	オンライン予約1　ご予約日の選択
* ************************************************ */	
table#calendar {
width: 100%;
margin: 10px 0 0 0;
padding: 0 0 0 0;
border-top: 1px #999 solid;
border-left: 1px #999 solid;
border-collapse: collapse;
border-spacing: 0;
}
table#calendar th {
font-weight: normal;
text-align: center;
padding: 2px 0;
white-space: nowrap; 
vertical-align: middle;
border-right: 1px #999 solid;
border-bottom: 1px #999 solid;
background-color:#efefef;
width:14.2857%;
}
table#calendar td {
text-align: center;
padding: 5px 3px;
white-space: normal;
vertical-align: top;
border-right: 1px #999 solid;
border-bottom: 1px #999 solid;
height:50px;
}

table#calendar tbody td:before {
  background: #efefef;
  margin-right: 10px;
  padding: 10px 5px;
  display: flex;
  justify-content: center;
  align-items: center;
}
table#calendar .day {
font-size:16px;
display:block;
width:100%;
text-align: center;
}
table#calendar .day-g {
font-size:16px;
display:block;
color:#999;
width:100%;
text-align: center;
}

table#calendar .maru,
table#calendar .sankaku {
font-size:24px;
text-align: center;
font-weight: bold;
text-decoration: none;
}
table#calendar .batsu {
text-align: center;
}
table#calendar .maru a{ 
color: #0292dd;
text-decoration: none;
}
table#calendar .sankaku a{
color: #ff9e00;
text-decoration: none;
}
table#calendar .batsu{
font-size:40px;
color: #999;
font-weight: normal;
}
table#calendar .maru a:hover,
table#calendar .sankaku a:hover {
color: #ff0000;
}

.calendar-title-box {
margin: 50px 0 0 0;
padding: 0;
text-align: center;
width: 35%;
float: left;
}
.calendar-title {
margin: 0;
padding: 0;
font-size:24px;
font-weight:normal;
}

.calendar-arrow-box-left {
margin: 50px 0 0 0;
padding: 0;
float: left;
width: 32.5%;
}
.calendar-arrow-box-right {
margin: 50px 0 0 0;
padding: 0;
float: left;
width: 32.5%;
}
.arrow-box-left{
height:25px;
width:30px;
text-align:center;
line-height:190%;
margin: 0 0 0 0;
float: right;
}
.arrow-box-right{
height:25px;
width:30px;
text-align:center;
line-height:190%;
margin: 0 0 0 0;
float: left;
}
.arrow-box-left a{
color:#333;
text-decoration: none;
display: block;
border: 1px solid #999;
padding: 0 5px 0 0;
}
.arrow-box-right a{
color:#333;
text-decoration: none;
display: block;
border: 1px solid #999;
padding: 0 0 0 5px;
}
.arrow-box-left a:hover,
.arrow-box-right a:hover{
color:#fff;
background-color: #ff7a90;
}

.calendar-under-box {
margin: 5px 0 0 0;
padding: 0;
}
.maru2 {
font-size:24px;
font-weight: bold;
color: #0292dd;
position:relative;
top: 3px;
}
.sankaku2 {
font-size:24px;
font-weight: bold;
color: #ff9e00;
position:relative;
top: 3px;
}
.batsu2 {
font-size:40px;
color: #999;
font-weight: normal;
position:relative;
top: 8px;
}
.haifun {
font-size:50px;
color: #999;
font-weight: normal;
position:relative;
top: 10px;
}


/* ************************************************ 
*	オンライン予約2　出発便の選択
* ************************************************ */	
table.reserve {
width: 100%;
margin: 30px 0 50px 0;
padding: 0 0 0 0;
border-collapse: collapse;
border-spacing: 0;
border: 1px #999 solid;
}

table.reserve th {
font-weight: normal;
text-align: center;
padding: 10px;
vertical-align: middle;
white-space: nowrap; 
border-bottom: 1px #999 solid;
border-right: 1px #999 solid;
background-color: #efefef;
width:33%;
}

table.reserve td {
text-align: center;
padding: 10px 0;
white-space: normal;
vertical-align: middle;
border-bottom: 1px #999 solid;
border-right: 1px #999 solid;
}
table.reserve tbody td:before {
  background: #efefef;
  margin-right: 10px;
  padding: 10px 5px;
  display: flex;
  justify-content: center;
  align-items: center;
}
table.reserve td.time{
font-size: 24px;
}
table.reserve td .ok{
}
table.reserve td .ok a{
background-color: #ff9e00;
padding: 5px 20px;
color: #fff;
text-decoration: none;
border-radius: 10px; /* CSS3 */
 -webkit-border-radius: 10px; /* Firefox */
 -moz-border-radius: 10px; /* Safari,Chrome */
}
table.reserve td .ok a:hover{
background-color: #333;
}
table.reserve td .no{
background-color: #ccc;
padding: 5px 20px;
color: #fff;
border-radius: 10px; /* CSS3 */
 -webkit-border-radius: 10px; /* Firefox */
 -moz-border-radius: 10px; /* Safari,Chrome */
}
.reserve-linkbox {
margin: 0 0 50px 0;
padding: 0;
}
.reserve-link {
margin: 0 auto 20px auto;
padding: 0;
background-color:#ff7a90;
text-align:center;
}

.reserve-link a {
color: #fff;
display: block;
padding: 15px 0px;
text-decoration: none;
font-size: 18px;
}
.reserve-link a:hover {
color: #fff;
background-color:#999;
}


/* ************************************************ 
*	オンライン予約3　お客様情報の入力
* ************************************************ */	
.reserve-entry-box {
margin: 30px auto 0 auto;
padding: 0 0 0 0;
width: 80%;
}
.reserve-entry-red {
color: #c20018;
}
.reserve-entry-text {
margin: 3px 0 0 0;
padding: 0;
}
.select-box {
margin: 0 0 15px 0;
padding: 0;
}
.reserve-entry-text-box {
margin: 0 0 10px 0;
padding: 0;
}
table.reserve-entry input[type="text"]{
margin: 0 0 10px 0;
}
table.reserve-entry {
width: 100%;
margin: 0 0 30px 0;
padding: 0 0 0 0;
border-top: 1px #999 solid;
border-left: 1px #999 solid;
border-right: 1px #999 solid;
border-collapse: collapse;
border-spacing: 0;
}

table.reserve-entry th {
font-weight: normal;
text-align: left;
padding: 10px;
white-space: nowrap; 
vertical-align: middle;
border-bottom: 1px #999 solid;
border-right: 1px #999 solid;
width:30%;
background-color:#efefef;
}

table.reserve-entry td {
text-align: left;
padding: 10px 10px 0px 10px;
white-space: normal;
vertical-align: middle;
border-bottom: 1px #999 solid;
}
.reserve-entrylink-box {
margin: 30px auto 30px auto;
padding: 0;
text-align:center;
}
.reserve-entrylink {
margin: 20px auto 20px auto;
padding: 0;
background-color:#333;
text-align:center;
}
.reserve-entrylink a{
color: #fff;
padding: 15px 0;
font-size:100%;
text-decoration: none;
display: block;
font-size: 18px;
}
.reserve-entrylink a:hover{
color: #fff;
background-color:#ff7a90;
}


/* ************************************************ 
*	オンライン予約4　お客様情報の確認　完了画面　キャンセル
* ************************************************ */	
table.reserve-confirm {
width: 100%;
margin: 0 0 30px 0;
padding: 0 0 0 0;
border-top: 1px #999 solid;
border-left: 1px #999 solid;
border-right: 1px #999 solid;
border-collapse: collapse;
border-spacing: 0;
}

table.reserve-confirm th {
font-weight: normal;
text-align: left;
padding: 10px;
white-space: nowrap; 
vertical-align: middle;
border-bottom: 1px #999 solid;
border-right: 1px #999 solid;
width:30%;
background-color:#efefef;
}
table.reserve-confirm th.blue {
background-color:#cce8ff;
}
table.reserve-confirm td {
text-align: left;
padding: 10px;
white-space: normal;
vertical-align: middle;
border-bottom: 1px #999 solid;
}
.reserve-backlink {
margin: 20px auto 20px auto;
padding: 0;
background-color:#999;
text-align:center;
}
.reserve-backlink a{
color: #fff;
padding: 15px 0;
font-size:100%;
text-decoration: none;
display: block;
font-size: 18px;
}
.reserve-backlink a:hover{
color: #fff;
background-color:#ccc;
}

.reserve-finish-box {
margin: 30px auto 30px auto;
}

.reserve-finishlink {
margin: 20px auto 20px auto;
padding: 0;
background-color:#ff7a90;
text-align:center;
}
.reserve-finishlink a {
color: #fff;
display: block;
padding: 15px 0px;
text-decoration: none;
font-size: 18px;
}
.reserve-finishlink a:hover {
color: #fff;
background-color:#999;
}

h4.cancel-title {
margin: 50px auto 50px auto;
text-align: center;
font-size: 21px;
font-weight: normal;
}


/* ************************************************ 
*	オンライン予約サイトについて
* ************************************************ */
.about-linkbox {
margin: 0 0 0 0;
padding: 0;
}
.about-link {
margin: 20px 0.5% 0 0.5%;
padding: 0;
background-color:#ff7a90;
text-align:center;
width: calc(100%/4 - 1%);
float: left;
}
.about-link a {
color: #fff;
display: block;
padding: 10px 0px;
text-decoration: none;
font-size: 14px;
}
.about-link a:hover {
color: #fff;
background-color:#999;
}

h3.about-title {
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
align-items: center;
font-size: 21px;
text-align: center;
margin: 50px 0 0 0;
}
h3.about-title:before{
border-top: 3px solid #ff7a90;
content: "";
flex-grow: 1;
margin-right: 20px;
}
h3.about-title:after {
border-top: 3px solid #ff7a90;
content: "";
flex-grow: 1;
margin-left: 20px;
}
.about-subtitle {
margin: 0 auto 10px auto;
padding: 10px 0;
font-size: 18px;
text-align: center;
background-color: #00357f;
color: #fff;
}
.about-box img{
margin: 0 0 0 0;
padding: 0;
border: 1px solid #999;
width: calc(100% - 2px);
}
.about-box {
margin: 30px 0 20px 0;
padding: 0;
}
.about-box a{
color: #00357f;
text-decoration: none;
}
.about-box a:hover{
color: #333;
text-decoration: underline;
}
.about-maru {
font-size:18px;
font-weight: bold;
color: #0292dd;
}
.about-sankaku {
font-size:18px;
font-weight: bold;
color: #ff9e00;
}
.about-batsu {
font-size:30px;
color: #999;
font-weight: normal;
position:relative;
top: 2px;
left: 2px;
line-height: 24px;
}
.about-haifun {
font-size:44px;
color: #999;
font-weight: normal;
position:relative;
top: 6px;
left: 3px;
line-height: 15px;
}
.about-ok {
background-color: #ff9e00;
padding: 3px 15px;
color: #fff;
text-decoration: none;
border-radius: 10px; /* CSS3 */
 -webkit-border-radius: 10px; /* Firefox */
 -moz-border-radius: 10px; /* Safari,Chrome */
}
.about-no {
background-color: #ccc;
padding: 3px 15px;
color: #fff;
border-radius: 10px; /* CSS3 */
 -webkit-border-radius: 10px; /* Firefox */
 -moz-border-radius: 10px; /* Safari,Chrome */
}
.about-textbox {
margin: 30px 0 30px 0;
padding: 20px;
background: linear-gradient(
    -45deg,
    #ececec 25%, #fff 25%,
    #fff 50%, #ececec 50%,
    #ececec 75%, #fff 75%,
    #fff
  );
background-size: 12px 12px;
}
.about-textbox .text-box{
padding: 20px;
background-color: #fff;
}


/* ************************************************ 
*	予約から乗船までの流れについて
* ************************************************ */
.first-linkbox {
margin: 0 0 0 0;
padding: 0;
}
.first-link {
margin: 20px 0.5% 0 0.5%;
padding: 0;
background-color:#ff7a90;
text-align:center;
width: calc(100%/3 - 1%);
float: left;
}
.first-link a {
color: #fff;
display: block;
padding: 10px 0px;
text-decoration: none;
font-size: 16px;
}
.first-link a:hover {
color: #fff;
background-color:#999;
}

.first-box {
margin: 30px 0 20px 0;
padding: 0;
}
.first-box a{
color: #00357f;
text-decoration: none;
}
.first-box a:hover{
color: #333;
text-decoration: underline;
}
ol.step{
  counter-reset:list;
  list-style-type:none;
  padding:0;
}
ol.step li{
  position:relative;
  padding: 0 0 0 30px;
  margin: 10px 0 10px 0px;
  font-size:16px;
  line-height: 30px;
}
ol.step li:before{
  counter-increment: list;
  content: counter(list);
  position: absolute;
  left: -10px;
  width: 30px;
  height: 30px;
  text-align: center;
  color: #fff;
  background: #ff7a90;
  border-radius: 50%;
  top: 15px;
  -moz-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
h4.first-title {
font-size: 18px;
text-align: left;
margin: 35px 0 10px 0;
color: #ff7a90;
}
ul.step{
  list-style-type:disc;
  padding:0;
}
ul.step li{
  padding: 0 0 0 0;
  margin: 0 0 0 25px;
  line-height: 180%;
}
.first-box p.att{
margin: 0;
padding: 0 0 0 25px;
}


/* ************************************************ 
*	時刻表・運賃表
* ************************************************ */	
.pagetitle-box-schedule {
width: 100%;
min-width: 1260px;
padding: 35px 0px 20px 0px;
margin: 0 auto 0 auto;
text-align: center;
background: linear-gradient(
    -45deg,
    #ececec 25%, #fff 25%,
    #fff 50%, #ececec 50%,
    #ececec 75%, #fff 75%,
    #fff
  );
background-size: 16px 16px;
position:relative;
z-index: 0;
height: 135px;
}
.pagetitle-box-schedule {
border-bottom: 10px solid #0292dd;
}
.pagetitle-schedule {
margin: 0 auto 0 auto;
padding: 0 0 0 0;
font-size: 24px;
font-weight: bold;
color: #0292dd;
}
.pagetitle-schedule img{
height: 70px;
margin: 0 0 10px 0;
}
h3.midashi-title-schedule {
position: relative;
padding: 0 0 5px 0;
font-size: 21px;
border-bottom: 4px solid #efefef;
}
h3.midashi-title-schedule2 {
position: relative;
padding: 0 0 5px 0;
margin: 0 0 40px 0;
font-size: 21px;
border-bottom: 4px solid #efefef;
}
h3.midashi-title-schedule:before,
h3.midashi-title-schedule2:before {
  position: absolute;
  bottom: -4px;
  left: 0;
  width: 160px;
  height: 4px;
  content: '';
  background: #0292dd;
}
h3.midashi-title-schedule3 {
position: relative;
padding: 0 0 5px 0;
margin: 50px 0 20px 0;
font-size: 21px;
border-bottom: 4px solid #efefef;
}
h3.midashi-title-schedule3:before {
  position: absolute;
  bottom: -4px;
  left: 0;
  width: 160px;
  height: 4px;
  content: '';
  background: #e50012;
}
h3.midashi-title-schedule span{
padding: 0 0 5px 0;
font-size: 16px;
color: #e50012;
font-weight: normal;
}

h3.schedule-title {
margin: 0 0 0 0;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
align-items: center;
font-size: 21px;
text-align: center;
}
h3.schedule-title2 {
margin: 50px 0 0 0;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
align-items: center;
font-size: 21px;
text-align: center;
}
h3.schedule-title:before,
h3.schedule-title2:before {
border-top: 3px solid #0292dd;
content: "";
flex-grow: 1;
margin-right: 20px;
}
h3.schedule-title:after,
h3.schedule-title2:after {
border-top: 3px solid #0292dd;
content: "";
flex-grow: 1;
margin-left: 20px;
}


.schedule-att-box {
margin: 20px 0 0 0;
padding: 12px;
background-color: #efefef;
}
.schedule-att-textbox {
margin: 0 0 0 0;
padding: 12px;
background-color: #fff;
}

.schedule-att-textbox .date{
margin: 0 0 5px 0;
color: #666;
}
.schedule-att-textbox p{
height: 55px;
overflow: hidden;
}

.schedulelink {
margin: 5px auto 0 auto;
padding: 0;
background-color:#e50012;
text-align:center;
}
.schedulelink a{
color: #fff;
display: block;
padding: 10px 0px;
text-decoration: none;
}
.schedulelink a:hover{
color: #fff;
background-color:#999;
}

h4.midashi-title-schedule {
margin: 20px auto 0 auto;
padding: 7px 0;
font-size: 21px;
text-align:center;
color: #fff;
background-color:#0292dd;
}
.schedule-setumei {
margin: 20px 0 10px 0;
padding: 0;
text-align:right;
}
.schedule-setumei img{
width: 50px;
height: 20px;
margin: 0 0 0 0;
padding: 0 5px 0 30px;
position: relative;
top:5px;
}

table.schedule-page1 {
width: 100%;
margin: 0 0 30px 0;
padding: 0 0 0 0;
border-collapse: collapse;
border-spacing: 0;
border: 1px #999 solid;
font-size: 18px;
}

table.schedule-page1 th {
font-weight: normal;
text-align: center;
padding: 10px;
vertical-align: middle;
white-space: nowrap; 
border-bottom: 1px #999 solid;
border-right: 1px #999 solid;
background-color: #efefef;
}

table.schedule-page1 td {
text-align: center;
padding: 5px 3px;
white-space: normal;
vertical-align: middle;
border-bottom: 1px #999 solid;
border-right: 1px #999 solid;
}
table.schedule-page1 td.time{
font-size: 24px;
padding: 0px 15px;
}
table.schedule-page1 td img{
width:17px;
height:19px;
position: relative;
top:8px;
padding: 0 10px;
}
table.schedule-page1 td.blue{
background-color: #cce8ff;
}
table.schedule-page1 tbody td:before {
  background: #efefef;
  margin-right: 10px;
  padding: 10px 5px;
  display: flex;
  justify-content: center;
  align-items: center;
}
table.schedule-page1 th:last-child,
table.schedule-page1 td:last-child {
border-right: none;
}


table.schedule-page1new {
width: 100%;
margin: 0 0 30px 0;
padding: 0 0 0 0;
border-collapse: collapse;
border-spacing: 0;
border: 1px #999 solid;
}

table.schedule-page1new th {
font-weight: normal;
text-align: center;
padding: 10px;
vertical-align: middle;
border-bottom: 1px #999 solid;
border-right: 1px #999 solid;
background-color: #efefef;
}

table.schedule-page1new td {
text-align: center;
padding: 5px 10px;
vertical-align: middle;
border-bottom: 1px #999 solid;
border-right: 1px #999 solid;
}
table.schedule-page1new td.time{
font-size: 24px;
}
table.schedule-page1new td img{
width:17px;
height:19px;
position: relative;
top:8px;
padding: 0 10px;
}
table.schedule-page1new td.blue{
background-color: #cce8ff;
}
table.schedule-page1new th:last-child,
table.schedule-page1new td:last-child {
border-right: none;
}


.schedule-pdf-box {
margin: 0 0 50px 0;
padding: 10px 0px 10px 40px;
background-image: url("../images/pdf_icon.png");
background-position: 5px center;
background-repeat: no-repeat;
background-size: auto 25px;
line-height: 150%;
background-color: #efefef;
}
.schedule-pdf-box a{
color: #00357f;
text-decoration: none;
}
.schedule-pdf-box a:hover{
color: #333;
text-decoration: underline;
}

table.schedule-page2 {
width: 100%;
margin: 20px 0 30px 0;
padding: 0 0 0 0;
border-collapse: collapse;
border-spacing: 0;
border: 1px #999 solid;
font-size: 18px;
}

table.schedule-page2 th {
font-weight: normal;
text-align: center;
padding: 10px;
vertical-align: middle;
white-space: nowrap; 
border-bottom: 1px #999 solid;
border-right: 1px #999 solid;
background-color: #efefef;
}

table.schedule-page2 td {
text-align: center;
padding: 10px;
white-space: normal;
vertical-align: middle;
border-bottom: 1px #999 solid;
border-right: 1px #999 solid;
}
table.schedule-page2 td.price{
text-align: right;
}

.schedule-text-box {
margin: 0 0 50px 0;
padding: 0;
}
.schedule-redtext {
margin: 0 0 50px 0;
padding: 0;
color:#e50012;
}
.schedule-redtext2 {
margin: 0 0 30px 0;
padding: 0;
color:#e50012;
}
.schedule-redtext3 {
margin: 0 0 15px 0;
padding: 0;
color:#e50012;
}

.schedule-tenimotsu-box { 
width: calc(100% - 60px);
margin: 20px auto 50px auto;
padding: 15px;
border: 10px solid #e50012;
text-align: left;
font-size: 18px;
color: #e50012;
}
.schedule-tenimotsu-box span{ 
text-decoration: underline;
}

.schedule-about-box {
margin: 20px 0 15px 0;
padding: 20px;
background: linear-gradient(
    -45deg,
    #ececec 25%, #fff 25%,
    #fff 50%, #ececec 50%,
    #ececec 75%, #fff 75%,
    #fff
  );
background-size: 12px 12px;
}
.schedule-about-box .text-box{
padding: 20px;
background-color: #fff;
}
.schedule-about-box p{
padding: 0;
}
.schedule-about-box h4{
padding: 0;
font-size: 18px;
font-weight: normal;
margin: 0 0 10px 0;
}
.schedule-about-box .img-box{
margin: 20px auto;
padding: 0;
text-align: center;
}
.schedule-about-box .img-box img{
width: 80%;
}

table.schedule-page3 {
width: 100%;
margin: 20px 0 0 0;
padding: 0 0 0 0;
border-collapse: collapse;
border-spacing: 0;
border: 1px #999 solid;
font-size:18px;
}

table.schedule-page3 th {
font-weight: normal;
text-align: center;
padding: 10px;
vertical-align: middle;
white-space: nowrap; 
border-bottom: 1px #999 solid;
border-right: 1px #999 solid;
background-color: #cce8ff;
width: 50%;
}

table.schedule-page3 td {
text-align: center;
padding: 10px;
white-space: normal;
vertical-align: middle;
border-bottom: 1px #999 solid;
border-right: 1px #999 solid;
}

.jyutakuimg-box{
margin: 30px auto 20px auto;
padding: 0;
text-align: center;
}
.jyutakuimg-box img{
width: 90%;
}
.jyutakuimg-box2{
margin: 0;
padding: 0;
text-align: right;
}
.jyutakuimg-box2 img{
width: 70%;
padding-top:40px;
vertical-align: bottom;
}
.awashimabus-box{
margin: 0 auto 0 auto;
padding: 0;
text-align: center;
}

h4.awashimabus-info {
     position: relative;
margin: 15px 0 15px 0;
padding:0.5em 0.5em 0.5em 1.4em;
background: linear-gradient(
    -45deg,
    #ececec 25%, #fff 25%,
    #fff 50%, #ececec 50%,
    #ececec 75%, #fff 75%,
    #fff
  );
background-size: 12px 12px;
}
h4.awashimabus-info::after {
     position: absolute;
     top: 50%;
     left:0;
     transform:translateY(-50%);
     content: '';
     width: 18px;
     height:4px;
     background-color:#ff0000;
}
h4.awashimabus-info a{
color: #00357f;
text-decoration: none;
}
h4.awashimabus-info a:hover{
color: #333;
text-decoration: underline;
}


/* ************************************************ 
*	のりば案内
* ************************************************ */	
.pagetitle-box-access {
width: 100%;
min-width: 1260px;
padding: 30px 0px 25px 0px;
margin: 0 auto 0 auto;
text-align: center;
background: linear-gradient(
    -45deg,
    #ececec 25%, #fff 25%,
    #fff 50%, #ececec 50%,
    #ececec 75%, #fff 75%,
    #fff
  );
background-size: 16px 16px;
position:relative;
z-index: 0;
height: 135px;
}
.pagetitle-box-access {
border-bottom: 10px solid #ffbd00;
}
.pagetitle-access {
margin: 0 auto 0 auto;
padding: 0 0 0 0;
font-size: 24px;
font-weight: bold;
color: #ffbd00;
}
.pagetitle-access img{
height: 75px;
margin: 0 0 10px 0;
}
h3.midashi-title-access {
position: relative;
padding: 0 0 5px 0;
font-size: 21px;
border-bottom: 4px solid #efefef;
}
h3.midashi-title-access:before {
  position: absolute;
  bottom: -4px;
  left: 0;
  width: 160px;
  height: 4px;
  content: '';
  background: #ffbd00;
}

h3.access-title {
margin: 0 0 0 0;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
align-items: center;
font-size: 21px;
text-align: center;
}
h3.access-title:before{
border-top: 3px solid #ffbd00;
content: "";
flex-grow: 1;
margin-right: 20px;
}
h3.access-title:after {
border-top: 3px solid #ffbd00;
content: "";
flex-grow: 1;
margin-left: 20px;
}
.access-about-box {
margin: 20px 0 70px 0;
padding: 20px;
background: linear-gradient(
    -45deg,
    #ececec 25%, #fff 25%,
    #fff 50%, #ececec 50%,
    #ececec 75%, #fff 75%,
    #fff
  );
background-size: 12px 12px;
}
.access-about-box p{
padding: 20px;
background-color: #fff;
}
.access-about-box .img-box{
margin: 0 auto 0 auto;
padding: 20px 0 0 0;
text-align: center;
background-color: #fff;
}
.access-about-box a{
color: #00357f;
text-decoration: none;
}
.access-about-box a:hover{
color: #333;
text-decoration: underline;
}

.accessimg-box {
margin: 20px 0 30px 0;
padding: 0 0 0 0;
width:100%;
}
.accessmap-box {
margin: 20px 0 70px 0;
padding: 0 0 0 0;
width:100%;
height:500px;
overflow: hidden;
}
.accessmap-box iframe{
width:960px;
height:500px;
}


/* ************************************************ 
*	就航船舶
* ************************************************ */
.pagetitle-box-ships {
width: 100%;
min-width: 1260px;
padding: 55px 0px 0px 0px;
margin: 0 auto 0 auto;
text-align: center;
background: linear-gradient(
    -45deg,
    #ececec 25%, #fff 25%,
    #fff 50%, #ececec 50%,
    #ececec 75%, #fff 75%,
    #fff
  );
background-size: 16px 16px;
position:relative;
z-index: 0;
height: 135px;
}
.pagetitle-box-ships {
border-bottom: 10px solid #1462be;
}
.pagetitle-ships {
margin: 0 auto 0 auto;
padding: 0 0 0 0;
font-size: 24px;
font-weight: bold;
color: #1462be;
}
.pagetitle-ships img{
height: 50px;
margin: 0 0 10px 0;
}
h3.midashi-title-ships {
position: relative;
padding: 0 0 5px 0;
font-size: 21px;
border-bottom: 4px solid #efefef;
}
h3.midashi-title-ships:before {
  position: absolute;
  bottom: -4px;
  left: 0;
  width: 160px;
  height: 4px;
  content: '';
  background: #1462be;
}

/* スライド */	
#ships-slide{
width:100%;
padding: 0px;
margin: 30px auto 30px auto;
}

/* スライドショーpager */
.cycle-pager { 
    text-align: center; width: 100%; z-index: 500; position: relative; overflow: hidden;
}
.cycle-pager span { 
    font-family: arial; font-size: 40px; width: 16px; height: 16px; margin: 15px 3px;
    display: inline-block; color: #efefef; cursor: pointer; 
}
.cycle-pager span.cycle-pager-active { color: #00357f;}
.cycle-pager > * { cursor: pointer;}

table.ships {
width: 100%;
margin: 30px 0 80px 0;
padding: 0 0 0 0;
border: none;
border-collapse: collapse;
border-spacing: 0;
border-top: 1px solid #999;
}
table.ships tr{
border-bottom: 1px solid #999;
}
table.ships th {
font-weight: bold;
text-align: center;
padding: 15px 10px;
white-space: nowrap;
vertical-align: middle;
background-color: #efefef;
width: 25%;
}
table.ships td {
text-align: left;
padding: 15px 10px;
white-space: normal;
vertical-align: middle;
}


/* ************************************************ 
*	会社案内
* ************************************************ */
.pagetitle-box-company {
width: 100%;
min-width: 1260px;
padding: 30px 0px 25px 0px;
margin: 0 auto 0 auto;
text-align: center;
background: linear-gradient(
    -45deg,
    #ececec 25%, #fff 25%,
    #fff 50%, #ececec 50%,
    #ececec 75%, #fff 75%,
    #fff
  );
background-size: 16px 16px;
position:relative;
z-index: 0;
height: 135px;
}
.pagetitle-box-company {
border-bottom: 10px solid #ff0000;
}
.pagetitle-company {
margin: 0 auto 0 auto;
padding: 0 0 0 0;
font-size: 24px;
font-weight: bold;
color: #ff0000;
}
.pagetitle-company img{
height: 75px;
margin: 0 0 10px 0;
}
h3.midashi-title-company {
position: relative;
padding: 0 0 5px 0;
font-size: 21px;
border-bottom: 4px solid #efefef;
}
h3.midashi-title-company:before {
  position: absolute;
  bottom: -4px;
  left: 0;
  width: 160px;
  height: 4px;
  content: '';
  background: #ff0000;
}
.greeting-box {
margin: 40px 0 0 0;
padding: 0;
}
.greeting-box h3.midashi-title {
color: #00357f;
padding: 0 0 0 0;
margin: 0 0 30px 0;
font-size: 18px;
line-height: 160%;
}
.greeting-box .end-name {
text-align: right;
padding: 0 0 0 0;
margin: 70px 0 0 0;
}

.company-imgtop {
width:100%;
min-width: 1260px;
margin: 0px auto 0px auto;
position: relative;
z-index:9;
}
.company-imgbox {
position: relative;
z-index:0;
top: -20px;
left: 0;
min-width: 1260px;
}

table.company {
width: 100%;
margin: 30px 0 50px 0;
padding: 0 0 0 0;
border: none;
border-collapse: collapse;
border-spacing: 0;
border-top: 1px solid #999;
}
table.company tr{
border-bottom: 1px solid #999;
}
table.company th {
font-weight: bold;
text-align: center;
padding: 15px 10px;
white-space: nowrap;
vertical-align: middle;
background-color: #efefef;
width: 25%;
}
table.company td {
text-align: left;
padding: 15px 10px;
white-space: normal;
vertical-align: middle;
}

h4.company-info {
     position: relative;
margin: 15px 0 15px 0;
     padding:0;
background: linear-gradient(
    -45deg,
    #ececec 25%, #fff 25%,
    #fff 50%, #ececec 50%,
    #ececec 75%, #fff 75%,
    #fff
  );
background-size: 12px 12px;
}

h4.company-info label{
color: #333;
text-decoration: none;
display: block;
font-size: 18px;
padding:0.5em 0.5em 0.5em 1.4em;
}
h4.company-info label:hover{
color: #ff0000;
text-decoration: none;
}

h4.company-info::after {
     position: absolute;
     top: 50%;
     left:0;
     transform:translateY(-50%);
     content: '';
     width: 18px;
     height:4px;
     background-color:#ff0000;
}


.hidden_box_waku {
margin: 0;
padding: 0px 30px;
}
.hidden_box {
margin: 0;
padding: 0;
}
.hidden_box .titleleft{
margin: 0 0 0 -1em;
padding: 0;
}

/*ボタン装飾*/
.hidden_box label {
    cursor :pointer;
    text-decoration: underline;
}

/*ボタンホバー時*/
.hidden_box label:hover {
color:#ff0000;
text-decoration:none;
}

/*チェックは見えなくする*/
.hidden_box input {
    display: none;
}

/*中身を非表示にしておく*/
.hidden_box .hidden_show {
    height: 0;
    padding: 0;
    overflow: hidden;
    opacity: 0;
    transition: 0.8s;
}

/*クリックで中身表示*/
.hidden_box input:checked ~ .hidden_show {
    padding: 10px 0;
    height: auto;
    opacity: 1;
}

ul.companylist{
margin: 0 0 10px 0;
padding: 0 0 0 0;
list-style: none;
}
ul.companylist li{
margin: 0 0 20px 0;
padding: 10px 10px 10px 50px;
background-image: url("../images/pdf_icon.png");
background-position: 10px center;
background-repeat: no-repeat;
background-size: auto 30px;
background-color: #efefef;
}
ul.companylist li a{
color:#444;
transition: 0.5s;
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-o-transition: 0.5s;
-ms-transition: 0.5s;
text-decoration:underline;
}
ul.companylist li a:hover{
color:#ff0000;
}

.adobe-box {
margin: 30px 0 0 0;
padding: 0;
}


/* ************************************************ 
*	よくある質問
* ************************************************ */
.pagetitle-box-faq {
width: 100%;
min-width: 1260px;
padding: 50px 0px 5px 0px;
margin: 0 auto 0 auto;
text-align: center;
background: linear-gradient(
    -45deg,
    #ececec 25%, #fff 25%,
    #fff 50%, #ececec 50%,
    #ececec 75%, #fff 75%,
    #fff
  );
background-size: 16px 16px;
position:relative;
z-index: 0;
height: 135px;
}
.pagetitle-box-faq {
border-bottom: 10px solid #ff9e00;
}
.pagetitle-faq {
margin: 0 auto 0 auto;
padding: 0 0 0 0;
font-size: 24px;
font-weight: bold;
color: #ff9e00;
}
.pagetitle-faq img{
height: 55px;
margin: 0 0 10px 0;
}
h3.midashi-title-faq {
position: relative;
padding: 0 0 5px 0;
font-size: 21px;
border-bottom: 4px solid #efefef;
}
h3.midashi-title-faq:before {
  position: absolute;
  bottom: -4px;
  left: 0;
  width: 160px;
  height: 4px;
  content: '';
  background: #ff9e00;
}
.page-faq-box {
width: 92%;
margin: 30px 0 50px 8%;
padding: 0;
}
.cp_qa *, .cp_qa *:after, .cp_qa *:before {
font-family: 'Roboto','Sawarabi Gothic','Noto Sans JP',sans-serif;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.cp_qa dt,.cp_qa dd {
	position: relative;
	padding: 15px 10px 15px 15px;
	border-radius: 5px;
}
.cp_qa dt {
	margin: 0 0 1em 0;
	background: #ffeccc;
    font-weight: normal;
    font-size: 18px;
}
.cp_qa dd {
	margin: 0 0 3em 0;
	background: #efefef;
    font-weight: normal;
}
.cp_qa dd a{
	color: #00357f;
	text-decoration: none;
}
.cp_qa dd a:hover{
	color: #333;
	text-decoration: underline;
}
/* 吹き出し▶︎ */
.cp_qa dt::before,.cp_qa dd::before{
	position: absolute;
	z-index: 99;
	top: 0.5em;
	display: inline-block;
	width: 0;
	height: 0;
	content: '';
	border-style: solid;
}
/* 質問吹き出し▶︎ */
.cp_qa dt::before {
	left: -0.5em;
	border-width: 10px 15px 10px 0;
	border-color: transparent #ffeccc transparent transparent;
}
/* 答え吹き出し▶︎ */
.cp_qa dd::before {
	left: -0.5em;
	border-width: 10px 15px 10px 0;
	border-color: transparent #efefef transparent transparent;
}
/* ?!アイコン */
.cp_qa dt::after,.cp_qa dd::after {
	font-size: 36px;
	position: absolute;
	top: 0;
	color: #ffffff;
	border-radius: 50%;
	display: inline-block;
	width: 1.7em;
	height: 1.7em;
	line-height: 1.2em;
}
/* ?アイコン */
.cp_qa dt::after {
	left: -2.2em;
	margin: 0 0 0 0;
	padding: 0.25em 0em 0.25em 0.5em;
	background: #ff9e00;
	content: 'Q';
}
/* !アイコン */
.cp_qa dd::after {
	left: -2.2em;
	margin: 0 0 0 0;
	padding: 0.25em 0em 0.25em 0.5em;
	content: 'A';
	background: #00357f;
}


/* ************************************************ 
*	リンク
* ************************************************ */	
.pagetitle-box-link {
width: 100%;
min-width: 1260px;
padding: 30px 0px 25px 0px;
margin: 0 auto 0 auto;
text-align: center;
background: linear-gradient(
    -45deg,
    #ececec 25%, #fff 25%,
    #fff 50%, #ececec 50%,
    #ececec 75%, #fff 75%,
    #fff
  );
background-size: 16px 16px;
position:relative;
z-index: 0;
height: 135px;
}
.pagetitle-box-link {
border-bottom: 10px solid #5dc000;
}
.pagetitle-link {
margin: 0 auto 0 auto;
padding: 0 0 0 0;
font-size: 24px;
font-weight: bold;
color: #5dc000;
}
.pagetitle-link img{
height: 75px;
margin: 0 0 10px 0;
}
h3.midashi-title-link {
position: relative;
padding: 0 0 5px 0;
font-size: 21px;
border-bottom: 4px solid #efefef;
}
h3.midashi-title-link:before {
  position: absolute;
  bottom: -4px;
  left: 0;
  width: 160px;
  height: 4px;
  content: '';
  background: #5dc000;
}

h3.link-title {
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
align-items: center;
font-size: 21px;
text-align: center;
}
h3.link-title:before{
border-top: 3px solid #5dc000;
content: "";
flex-grow: 1;
margin-right: 20px;
}
h3.link-title:after {
border-top: 3px solid #5dc000;
content: "";
flex-grow: 1;
margin-left: 20px;
}

ul.link-info {
margin: 0 0 30px 0;
}
ul.link-info li{
position: relative;
margin: 15px 0 15px 0;
padding:0;
background: linear-gradient(
    -45deg,
    #ececec 25%, #fff 25%,
    #fff 50%, #ececec 50%,
    #ececec 75%, #fff 75%,
    #fff
  );
background-size: 12px 12px;
}
ul.link-info li::after {
     position: absolute;
     top: 50%;
     left:0;
     transform:translateY(-50%);
     content: '';
     width: 18px;
     height:4px;
     background-color:#5dc000;
}
ul.link-info li a {
color: #333;
text-decoration: none;
display: block;
font-size: 18px;
padding:0.5em 0.5em 0.5em 1.4em;
}
ul.link-info li a:hover {
color: #5dc000;
text-decoration: none;
}

.link-p-box {
margin: 0;
padding: 0px 0px 25px 30px;
}
.link-about-box {
margin: 20px 0 0 0;
padding: 20px;
background: linear-gradient(
    -45deg,
    #ececec 25%, #fff 25%,
    #fff 50%, #ececec 50%,
    #ececec 75%, #fff 75%,
    #fff
  );
background-size: 12px 12px;
}
.link-about-box p{
padding: 20px;
background-color: #fff;
}


/* ************************************************ 
*	お知らせ
* ************************************************ */
.pagetitle-box-news {
width: 100%;
min-width: 1260px;
padding: 45px 0px 5px 0px;
margin: 0 auto 0 auto;
text-align: center;
background: linear-gradient(
    -45deg,
    #ececec 25%, #fff 25%,
    #fff 50%, #ececec 50%,
    #ececec 75%, #fff 75%,
    #fff
  );
background-size: 16px 16px;
position:relative;
z-index: 0;
height: 135px;
}
.pagetitle-box-news {
border-bottom: 10px solid #6cbb63;
}
.pagetitle-news {
margin: 0 auto 0 auto;
padding: 0 0 0 0;
font-size: 24px;
font-weight: bold;
color: #6cbb63;
}
.pagetitle-news img{
height: 60px;
margin: 0 0 10px 0;
}
h3.midashi-title-news {
position: relative;
padding: 0 0 5px 0;
font-size: 21px;
border-bottom: 4px solid #efefef;
}
h3.midashi-title-news:before {
  position: absolute;
  bottom: -4px;
  left: 0;
  width: 160px;
  height: 4px;
  content: '';
  background: #6cbb63;
}

ul.news {
margin: 0 0 30px 0;
}
ul.news li{
position: relative;
margin: 0px 0 10px 0;
padding: 12px 12px 12px 30px;
background-color: #efefef;
}
ul.news li::after {
     position: absolute;
     top: 50%;
     left:0;
     transform:translateY(-50%);
     content: '';
     width: 18px;
     height:4px;
     background-color:#6cbb63;
}
.news-p-box {
margin: 0 0 40px 0;
padding: 0px 0px 0px 0px;
line-height: 150%;
}
.news-p-box a {
color: #00357f;
text-decoration: none;
}
.news-p-box a:hover {
color: #333;
text-decoration: underline;
}

.news-p-box p.pdf {
margin: 0 0 0 0;
padding: 0px 0px 0px 40px;
background-image: url("../images/pdf_icon.png");
background-position: 5px center;
background-repeat: no-repeat;
background-size: auto 25px;
line-height: 150%;
}
.news-p-box p.pdf a{
color: #00357f;
text-decoration: none;
}
.news-p-box p.pdf a:hover{
color: #333;
text-decoration: underline;
}

.news-end-box {
margin: 0 0 50px 0;
padding: 25px 0px;
border-top: 1px solid #666;
border-bottom: 1px solid #666;
}
.news-end-box h4{
margin: 0 0 0 0;
padding: 0px 0px 20px 0px;
color: #6cbb63;
font-size: 18px;
}

.pager{
margin: 0 auto 0 auto;
text-align:center;
}
.news-page-navi{
margin: 0 3px;
padding: 6px 0px;
text-align:center;
border:1px solid #999;
}
.news-page-navi a{
color: #333;
padding: 6px 10px;
}
.news-page-navi a:hover{
color: #00357f;
text-decoration:underline;
}


/* ************************************************ 
*	サイトマップ
* ************************************************ */
.pagetitle-box-sitemap {
width: 100%;
min-width: 1260px;
padding: 30px 0px 25px 0px;
margin: 0 auto 0 auto;
text-align: center;
background: linear-gradient(
    -45deg,
    #ececec 25%, #fff 25%,
    #fff 50%, #ececec 50%,
    #ececec 75%, #fff 75%,
    #fff
  );
background-size: 16px 16px;
position:relative;
z-index: 0;
height: 135px;
}
.pagetitle-box-sitemap {
border-bottom: 10px solid #00357f;
}
.pagetitle-sitemap {
margin: 0 auto 0 auto;
padding: 0 0 0 0;
font-size: 24px;
font-weight: bold;
color: #00357f;
}
.pagetitle-sitemap img{
height: 75px;
margin: 0 0 10px 0;
}
ul.sitemap {
  list-style-type:none;
  padding:0;
}
ul.sitemap li {
  padding: 0 0 0 0;
  margin: 15px 0 15px 10px;
  line-height: 180%;
}
ul.sitemap li a{
  padding: 0 0 0 10px;
  margin: 0 0 0 0;
color: #00357f;
text-decoration: none;
border-left: 5px solid #00357f;
font-size: 16px;
}
ul.sitemap li a:hover{
  padding: 0 0 0 10px;
  margin: 0 0 0 0;
color: #333;
text-decoration: underline;
}
ul.sitemap li li a{
padding: 0 0 0 0;
margin: 0 0 0 0;
color: #00357f;
text-decoration: none;
border-left: none;
font-size: 15px;
}
ul.sitemap li li a:hover{
  padding: 0 0 0 0;
  margin: 0 0 0 0;
color: #333;
text-decoration: underline;
}


/* ************************************************ 
*	バナーエリア
* ************************************************ */	
.banner-box {
width: 100%;
min-width:1260px;
padding: 70px 0 100px 0;
margin: 50px auto 0px auto;
text-align:left;
background: linear-gradient(
    -45deg,
    #ececec 25%, #fff 25%,
    #fff 50%, #ececec 50%,
    #ececec 75%, #fff 75%,
    #fff
  );
background-size: 18px 18px;
position:relative;
z-index: 0;
}
.banner-box .banner1 {
background-color: #fff;
padding: 20px;
border: 3px #009fff solid;
margin: 0 auto 30px auto;
height: 100px;
}
.banner-box .banner2 {
background-color: #fff;
padding: 30px 20px 10px 20px;
border: 3px #4684c1 solid;
margin: 0 auto 30px auto;
height: 100px;
}
.banner-box .banner3 {
background-color: #fff;
padding: 20px;
border: 3px #182986 solid;
margin: 0 auto 30px auto;
height: 100px;
}
.banner-box .banner5 {
  background-color: #fff;
  padding: 20px;
  border: 3px #BFCCDF solid;
  margin: 0 auto 30px auto;
  height: 100px;
}
.banner-box .banner1 img,
.banner-box .banner2 img,
.banner-box .banner3 img {
width: 100%;
vertical-align: bottom;
}
.banner-box .banner4 {
margin: 0 auto 0 auto;
}



/* ************************************************ 
*	フッターエリア
* ************************************************ */	
#footer {
clear:both;
width:100%;
min-width:1260px;
font-size: 130%;
margin: 0px auto 0px auto;
padding: 0px 0px 0px 0px;
}

.footer-topbg {
width:100%;
margin: -10px auto -15px auto;
position: relative;
z-index:9;
}
.footer-bottombg {
width:100%;
margin: -80px auto -20px auto;
position: relative;
z-index:10;
}
.footer-top {
width:100%;
margin: 0px auto 0px auto;
padding: 0px 0px 0px 0px;
background-color:#bfccdf;
position: relative;
z-index:9;
}
.footer-end {
width:100%;
margin: 0px auto 0px auto;
padding: 0px 0px 0px 0px;
background-color:#7f9abf;
position: relative;
z-index:9;
}
.footer-inner-end {
margin: 0px auto 0px auto;
padding: 30px 0px 100px 0px;
width: 960px;
}
.footer-inner {
margin: 0px auto 0px auto;
padding: 30px 0px 100px 0px;
width: 960px;
}
.footer-inner a{
font-size: 21px;
margin: 0px auto 25px auto;
padding: 17px 0px 15px 0px;
color: #00357f;
background-color: #fff;
text-decoration: none;
display: block;
text-align: center;
border-radius: 10px; /* CSS3 */
 -webkit-border-radius: 10px; /* Firefox */
 -moz-border-radius: 10px; /* Safari,Chrome */
}
.footer-inner a:hover{
color: #fff;
background-color: #00357f;
}

#footer .name-box{
margin: 0 auto;
text-align: center;
}
#footer .name{
font-size: 27px;
line-height: 150%;
margin: 0 0 20px 0;
color: #fff;
}
#footer .add{
line-height: 150%;
margin: 0 0 20px 0;
padding: 0;
color: #fff;
}
#footer .mail{
line-height: 150%;
margin: 0 0 0 0;
padding: 0;
}
#footer .mail a{
font-size: 90%;
margin: 0 0 0 0;
padding: 0;
color: #fff;
background-color: #7f9abf;
text-decoration: none;
display: inline-block;
}
#footer .mail a:hover{
text-decoration: underline;
}

.copyright {
color:#fff;
margin: 0px auto 0px auto;
padding: 0 0 40px 0;
text-align:center;
font-size: 80%;
width: 100%;
}



/* ************************************************ 
*	ライン
* ************************************************ */
.line-dotted {
margin: 0 0 0 0;
padding: 0 0 0 0;
border-bottom:1px dotted #CCC;
}

.line-solid {
margin: 0 0 0 0;
padding: 0 0 0 0;
border-bottom:1px solid #CCC;
}


/* ************************************************ 
*	画像装飾
* ************************************************ */
.pict_right {
margin:0 0 10px 20px; 
padding: 2px 2px 2px 2px; 
float: right;
border: 1px solid #DCDCDC;
}

.pict_left {
margin:0 10px 10px 0; 
padding: 2px 2px 2px 2px; 
float: left;
border: 1px solid #DCDCDC;
}

.pict1px{
margin: 0 0 5px 0; 
padding: 2px 2px 2px 2px; 
border: 1px solid #CCC;
}

.pict_shadow{
background: #fff;
margin: 0px auto;
border: 1px solid #ccc;
padding: 5px 5px 5px 5px;
border-radius: 1px; /* CSS3 */
 -webkit-border-radius: 1px; /* Firefox */
 -moz-border-radius: 1px; /* Safari,Chrome */
box-shadow: 2px 2px 3px #C0C0C0;
}



/* ************************************************ 
*	角丸
* ************************************************ */
.border-radius{
border-radius: 5px; /* CSS3 */
 -webkit-border-radius: 5px; /* Firefox */
 -moz-border-radius: 5px; /* Safari,Chrome */
}



/* ************************************************ 
*	ボックスシャドウ・テキストシャドウ
* ************************************************ */
.box-shadow{
box-shadow: 2px 2px 3px #ccc; /* CSS3 */
 -webkit-box-shadow: 2px 2px 3px #ccc; /* Safari,Chrome */
 -moz-box-shadow: 2px 2px 3px #ccc; /* Firefox */
}
.text-shadow{
text-shadow: 1px 1px 3px #DEDEDE; /* CSS3 */
 -webkit-text-shadow: 1px 1px 3px #DEDEDE; /* Safari,Chrome */
 -moz-text-shadow: 1px 1px 3px #DEDEDE; /* Firefox */
}



/* ************************************************ 
*	CSS3ボタン
* ************************************************ */
.bt-more a {
font-size: 9px;
font-weight: normal;
color: #333;
text-align: center;
text-decoration: none;
text-shadow: 0px -1px 0px #fff;
width: 50px;
float: left;
display: block;
padding: 0 0 0 0;
margin: 10px 0 0 0;
border: 1px solid #ccc;
border-radius: 5px;
 -webkit-border-radius: 5px;
 -moz-border-radius: 5px;
background-color: #eee;
background: -webkit-gradient(linear,left top,left bottom,color-stop(0, #ddd),color-stop(.75, #eee),color-stop(1, #ddd));
background: -moz-linear-gradient(#ddd, #eee 75%, #ddd);
}

.bt-more a:hover {
background-color: #fff;
background: -webkit-gradient(linear,left top,left bottom,color-stop(0, #eee),color-stop(.75, #fff),color-stop(1, #eee));
background: -moz-linear-gradient(#eee, #fff 75%, #eee);
}

.bt-more a:active {
background-color: #999;
background: -webkit-gradient(linear,left top,left bottom,color-stop(0, #999),color-stop(.75, #ccc),color-stop(1, #999));
background: -moz-linear-gradient(#999, #ccc 75%, #999);
}

.bt-order a{
font-size: 14px;
color:#fff;
display: block;
text-align:center;
background-color: #999;
margin: 20px 0 20px 0 ;
padding: 10px 15px;
border-radius: 3px;
 -webkit-border-radius: 3px;
 -moz-border-radius: 3px;
}

.bt-order a:hover{
color:#867888;
background: #ddd;
text-decoration:none;
transition: 0.5s;
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-o-transition: 0.5s;
-ms-transition: 0.5s;
}




/* ************************************************ 
*   レスポンシブ
* ************************************************ */
/* PC 画面の横幅が960px以上 */
@media only screen and (min-width: 960px){
#top-nav_bg { display: none; }
 iframe {
    width: 100%;
    height:100%;
}
a[href*="tel:"] {
pointer-events: none;
cursor: default;
text-decoration: none;
}
.show_sp { display: none; }
}


.news-p-box2 p.pdf {
  margin: 0 0 0 0;
  padding: 0px 0px 0px 180px;
  background-image: url("../images/pdf_icon.png");
  background-position: 150px center;
  background-repeat: no-repeat;
  background-size: auto 25px;
  line-height: 150%;
}
.news-p-box2 p.pdf a{
  color: #00357f;
  text-decoration: none;
}
.news-p-box2 p.pdf a:hover{
  color: #333;
  text-decoration: none;
}


.header-rightbox2 {
	margin: 0;
	padding: 0;
	position: relative;
	z-index:0;
	/*float: right;*/
	width:960px;
}


.header-rightbox2 .ticket_btn,
.header-rightbox2 .yoyaku_btn,
.header-rightbox2 .qr_btn {
	margin: 20px 0 0 60px;
	padding: 0;
	width: 80%;
	text-align: center;
}
.header-rightbox2 .ticket_btn a{
	margin: 0 auto;
	padding: 15px 0;
	font-size: 18px;
	color: #fff;
	background-color: #ff7a90;
	text-decoration: none;
	display: block;
	line-height: 1.6;
border-radius: 5px; /* CSS3 */
 -webkit-border-radius: 5px; /* Firefox */
 -moz-border-radius: 5px; /* Safari,Chrome */
}
.header-rightbox2 .yoyaku_btn a{
	margin: 0 auto;
	padding: 15px 0;
	font-size: 18px;
	color: #fff;
	background-color: #c71585;
	text-decoration: none;
	display: block;
	line-height: 1.6;
border-radius: 5px; /* CSS3 */
 -webkit-border-radius: 5px; /* Firefox */
 -moz-border-radius: 5px; /* Safari,Chrome */
}
.header-rightbox2 .qr_btn a{
	margin: 0 auto;
	padding: 13px 0;
	font-size: 18px;
	color: #fff;
  background-color: #0292dd;
	text-decoration: none;
	display: block;
	line-height: 1.8;
  border-radius: 5px; /* CSS3 */
 -webkit-border-radius: 5px; /* Firefox */
 -moz-border-radius: 5px; /* Safari,Chrome */
}

.header-rightbox2 .ticket_btn a:hover,
.header-rightbox2 .yoyaku_btn a:hover,
.header-rightbox2 .qr_btn a:hover {
	color: #fff;
	background-color: #ccc;
}

.header-rightbox2 .ticket_btn img{
	vertical-align: bottom;
	height: 30px;
	margin-right: 10px;
}
.header-rightbox2 .yoyaku_btn img{
	vertical-align: bottom;
	height: 30px;
	margin-right: 10px;
}
.header-rightbox2 .qr_btn img{
	vertical-align: bottom;
	height: 34px;
	margin-right: 10px;
}


.about-link2 {
  margin: 20px 0.5% 0 0.5%;
  padding: 0;
  background-color:#ff7a90;
  text-align:center;
  width: calc(100%/3 - 1%);
  float: left;
  }
  .about-link2 a {
  color: #fff;
  display: block;
  padding: 10px 0px;
  text-decoration: none;
  font-size: 14px;
  }
  .about-link2 a:hover {
  color: #fff;
  background-color:#999;
  }