@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&family=Oswald:wght@200;300;400;600;700&display=swap');

@page {
/*
    size: A4 portrait;
    margin: 0mm;
*/
  size: 210mm 297mm;

}


html {
	font-family:'Noto Sans JP', sans-serif;
	font-size: 62.5%;
	color: #595757;
    -moz-text-size-adjust:100%;
    -webkit-text-size-adjust:100%;
    -ms-text-size-adjust:100%;
}

body {
	margin: 0 auto;
}

a, a:hover{
	text-decoration: none;
}
	
header{
	display: none!important;
}


nav{
	display: none!important;
}

.slicknav_menu{
	display: none!important;
}

#main_ttl{
	width: 100%;
	height: 123.5mm;
	margin: 0 auto!important;
	padding: 0;
	position: absolute;
	z-index: 10!important;
	text-align: center;
}

#main_ttl img{
	width: 100%;
	max-width: 190mm;
	height: 123.5mm;
}

#main_v{
	width: 100%;
	max-width: 190mm;
	height: auto;
	margin: 0 auto;
	padding: 0;
	position: relative;
	overflow: hidden;
}

#main_v.slider{
	width: 100%;
	max-width: 190mm;
	height: 123.5mm;
	position: relative;
	z-index: 1;
	background: url(../images/mv01.jpg);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 190mm auto;
}

#main_v.slider img, #main_v > img{
	width: 100%;
	max-width: 190mm;
	height: 123.5mm;
	height: auto;
}

#main_v .slick-dots{
	position: absolute;
	bottom: 53px;
	z-index: 20;
}

#main_v .slick-dots li{
	width: auto;
	height: auto;
	padding: 0;
}

#main_v .slick-dots li button{
	width: 8px;
	height: 8px;
	padding: 0;	
	border-radius: 4px;
	background: #fff;
	opacity: 0.5;
}
#main_v .slick-dots li.slick-active button, #main_v .slick-dots li button:hover{
	opacity: 1.0;
}

.slick-dots li button:before{
	font-size: 0;
}


.scrollme{
	opacity: 1.0!important;
	top: 0;
}

#contents{
	width: 100%;
	max-width: 190mm;
	height: auto;
	padding: 0;
	margin: 0 auto;
}

#contents.top h1{
	text-align: center;
	font-size: 3.0rem;
	letter-spacing: 0.1em;
	font-weight: 100;
	margin-top: 5.3rem;
}

#contents.top #slide{
	font-size: 0;
	width: 100%;
	margin-top: 45px;
	display: flex;
	align-items: center;
	justify-content: center;
}

#contents.top #slide img{
	width: 25%;
	height: auto;
}

#contents.top #read{
	text-align: center;
	width: 540px;
	margin: 0 auto;
}

#contents.top #read h2{
	font-size: 3.0rem;
	font-weight: 500;
	letter-spacing: 0.17em;
	line-height: 1.8em;
	color: #005bac;
	margin-top: 5.0rem;
	padding: 4.0rem 0 0;
	border-bottom: 1px dashed #727171;
	background-image: url(../images/h2_mark.png);
	background-position: center top;
	background-repeat: no-repeat;
}

#contents.top #read .read{
	font-size: 2.0rem;
	letter-spacing: 0.1em;
	margin-top: 2.2rem;
}

#contents.top #read .txt{
	font-size: 1.3rem;
	line-height: 1.5em;
	letter-spacing: 0.1em;
	margin-top: 1.6rem;
}

#contents.top h2.business_ttl{
	font-size: 1.7rem;
	font-weight: 500;
	letter-spacing: 0.13em;
	line-height: 1.0em;
	color: #005bac;
	border-left: 45px solid #b5b5b6;
	margin-left: 48px;
	padding-left: 0.5em;
	margin-top: 56px;
	page-break-before: always!important;

}


#contents.top #business section{
	position: relative;
	width: 100%;
	max-width: 190mm;
	height: 392px;
	margin: 30px 0 60px;
}

#contents.top #business section:nth-child(1){
	background: url(../images/business_back_01.jpg)!important;
	background-repeat: no-repeat!important;
	background-position: -200px center!important;
}

#contents.top #business section:nth-child(2){
	background: url(../images/business_back_02.jpg)!important;
	background-repeat: no-repeat;
	background-position: -40px center!important;
	page-break-after: always!important;
}

#contents.top #business section:nth-child(3){
	background: url(../images/business_back_03.jpg)!important;
	background-repeat: no-repeat;
	background-position: -200px center!important;
}

#contents.top #business section:nth-child(4){
	background: url(../images/business_back_04.jpg)!important;
	background-repeat: no-repeat;
	background-position: -40px center!important;
}

#contents.top #business section .inner{
	position: relative;
	width: 60%!important;
	padding: 0!important;
	padding-left: 40%!important;
	top: 5px;
}

#contents.top #business section:nth-child(even) .inner{
	width: 60%!important;
	padding: 0;
	padding-left: 0!important;
	top: 30px;
}

#contents.top #business section .inner .title{
	width: 80%;
	padding-left: 20%;
	border-bottom: 1px dashed #727171;
}

#contents.top #business section:nth-child(even) .inner .title{
	width: 90%;
	padding-left: 10%;
	border-bottom: 1px dashed #727171;
}


#contents.top #business section .inner .title h3{
	display: flex;
	align-items: center;
	justify-content: flex-start;
	flex-wrap: wrap;
	height: 46px;
	width: 100%;
	padding-left: 0.6rem;
	border-left: 5px solid #b5b5b6;
}

#contents.top #business section .inner .title h3 p{
	width: 100%;
	font-size: 2.6rem;
	font-weight: 500;
	letter-spacing: 0.07em;
	line-height: 0.7em;
	color: #005bac;
}

#contents.top #business section .inner .title h3 p.sub{
	font-size: 1.7rem;
	padding-top: 0.4em;
}

#contents.top #business section .inner .title > p{
	padding-left: 1.0rem;
	font-size: 1.1rem;
	margin: 1.3em 0 1.8em;
}

#contents.top #business section .inner .ver{
	width: 80%;
	padding-left: 20%;
}

#contents.top #business section:nth-child(even) .inner .ver{
	width: 90%;
	padding-left: 10%;
}

#contents.top #business section .inner .ver .read{
	font-size: 1.5rem;
	line-height: 1.4em;
	letter-spacing: 0.1em;
	margin-top: 20px;
}

#contents.top #business section .inner .ver .txt{
	font-size: 1.1rem;
	line-height: 1.5em;
	letter-spacing: 0.1em;
	margin-top: 10px;
}

#contents.top #business section .inner .detail{
	width: 80%;
	padding-left: 20%;
	margin-top: 22px;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}

#contents.top #business section:nth-child(even) .inner .detail{
	width: 392px;
	padding-left: 41px;
}


#contents.top #business section .inner .detail a{
	font-size: 1.2rem;
	line-height: 1.0em;
	padding: 0.7em 0;
	font-weight: 500;
	text-align: center;
	color: #fff;
	background: #005bac;
	width: 118px;
	display: block;
}

#contents.top #business section .inner .detail > div{
	width: 169px;
	padding: 8px;
	border: 1px solid #005bac;
}

#contents.top #business section .inner .detail > div > a{
	width: 100%;
}



#contents.top #business section .inner .detail a:hover{
	background: #ff8000;
}

#contents.top #page_link{
	width: 88%;
	max-width: 866px;
	margin: 75px auto 5px;
	display: flex;
	justify-content: space-between;
}

#contents.top #page_link a{
	width: 31%;
	height: auto;
}


#contents.top #page_link a div{
	width: 100%;
	height: auto;
	aspect-ratio: 767 / 396;
	overflow: hidden;
}


#contents.top #page_link a img{
	width: 100%;
	height: auto;
	transition-duration: 0.8s;
}

#contents.top #page_link a p{
	font-size: 1.8rem;
	line-height: 1.0em;
	font-weight: 500;
	color: #005bac;
	letter-spacing: 0.1em;
	border-left: 5px solid #b5b5b6;
	margin-top: 20px;
	padding-left: 10px;
}

#contents.top #page_link a p span{
	font-size: 1.2rem;
	color: #595757;
	letter-spacing: 0.2em;
}



/* 会社について */
#contents.about{
	width: 100%;
	max-width: 190mm;
	max-width: none;
	height: auto;
	margin: 0 auto;
	padding: 0;
}

#contents.about section{
	width: 100%;
	max-width: 190mm;
    padding: 0;
    margin: 0 auto;
	page-break-after: always;
}

#contents.about section:last-child{
	page-break-after: auto;
}


#contents.about section .page_ttl{
	width: 100%;
	max-width: 190mm;
	height: 90px;
	padding-top: 20px;
	background-image: url(../images/page_ttl_back.jpg);
	background-repeat: no-repeat;
	background-position: center center;
	text-align: center;
	background-size: 100% 100%;
}

#contents.about section.ceo .page_ttl{
	height: 90px;
	padding-top: 20px;
}

#contents.about section .page_ttl h1{
	font-size: 2.2rem;
	width: 12.0em;
	line-height: 1.0em;
	font-weight: 500;
	color: #fff;
	letter-spacing: 0.1em;
	margin: 0 auto;
	background-image: url(../images/page_ttl_h1_back.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 100% auto;
}

#contents.about section.ceo .page_ttl h1, #contents.about section.history .page_ttl h1{
	width: 11.0em;
	background-image: url(../images/page_ttl_h1_back02.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 100% auto;
}

#contents.about section .page_ttl p{
	font-size: 1.3rem;
	line-height: 1.0em;
	font-weight: 400;
	color: #fff;
	letter-spacing: 0.05em;
	margin: 1.7em auto 0;
}

#contents.about section .contents{
	width: 100%;
	max-width: 980px;
	height: auto;
	margin: 0 auto;
	padding-top: 0;
}

#contents.about section.ceo .contents{
	padding-top: 0;
}

#contents.about section .contents h2{
	font-size: 1.8rem;
	line-height: 1.0em;
	font-weight: 500;
	letter-spacing: 0.1em;
	text-align: center;
}

#contents.about section.ceo .ceo_img{
	width: 100%;
	
	text-align: center;
}

#contents.about section.ceo .ceo_img img{
	width: 100%;
	height: auto;
}

#contents.about section.ceo .txt{
	font-size: 1.1rem;
	line-height: 1.8em;
	text-align: left;
	width: 94%;
	max-width: 710px;
	margin: 5.0rem auto 12.0rem;
}

#contents.about section .contents table{
	width: 98%;
	max-width: 190mm;
	margin: 4.0rem auto 2.0rem;
	font-size: 1.1rem;
	line-height: 1.5em;
}


#contents.about section .contents table th{
	width: 26%;
	font-weight: 400;
	background: #e6e6e6;
	border: 1px solid #595757;
	vertical-align: middle;
}

#contents.about section.profile .contents table th p{
	width: 6.5em;
	text-align-last: justify;
	text-justify: inter-ideograph;
	margin: 0 auto;
}


#contents.about section .contents table td{
	padding: 2.0em;
	padding-left: 3%;
	padding-right: 3%;
	border: 1px solid #595757;
	vertical-align: middle;
	width: auto;
}

#contents.about section .contents table td p{
	margin: 1.0em auto;
}

#contents.about section .contents > p{
	font-size: 1.1rem;
	line-height: 1.5em;
	text-align: center;
	width: 90%;
}

#contents.about section.profile .contents table td{
	padding: 1.5em;
	text-align: center;
}

#contents.about section.profile .contents table td div{
	width: auto;
	margin: 0 auto;
	text-align: center;
}

#contents.about section.profile .contents table td p{
	margin: 1.0em auto;
	display: inline-block;
	text-align: left!important;
	margin: 0 auto;
	vertical-align: top;
}

#contents.about section.profile .contents table td p{
	display: inline-block;
	text-align: left!important;
	margin: 0 auto;
	vertical-align: top;
}

#contents.about section.profile .contents table td .bank p:first-child{
	padding-right: 5.0em;
}

#contents.about section.member .contents, #contents.about section.office .contents{
	padding-top: 0;
}


#contents.about section.member .contents table tr > td{
	padding: 1.5em;
}

#contents.about section.member .contents table tr > td:first-child{
	width: 30%;
}

#contents.about section.member .contents table tr > td:last-child{
	text-align: center;
}

#contents.about section.member .contents table tr > td:last-child p{
	display: inline-block;
	text-align: left!important;
	width: 6.0em;
	margin: 0;
}

#contents.about section.profile .contents > p{
	font-size: 1.2rem;
	line-height: 1.5em;
	text-align: center;
	width: 90%;
}

#contents.about section.office table{
	margin-bottom: 5.0rem;	
}

#contents.about section.office table th{
	padding: 0.7em 1.0em;
}

#contents.about section.office table td{
	padding: 0.7em 1.0em;
}


#contents.about section.office table tr > th:nth-child(1){
	width: 20%;
}

#contents.about section.office table tr > th:nth-child(2){
	width: 39%;
}

#contents.about section.office table tr > th:nth-child(3){
	width: auto;
}

#contents.about section.office table td.name, #contents.about section.office table td.tel{
	text-align: center;
	padding: 1.0em 0;

}

#contents.about section.office table td.department{
	font-size: 90%;
	line-height: 1.4em;
	border-right: none;
}

#contents.about section.office table td.department_tel{
	text-align: center;
	border-left: none;
}

#contents.about section.chart{
	text-align: center;
	padding-bottom: 0;
}

#contents.about section.chart h2 span{
	font-size: 0.9rem;
	font-weight: 300;
}

#contents.about section.chart img{
	width: 100%;
	max-width: 190mm;
	height: auto;
	margin: 6.0rem auto 0;	
}

#contents.about section.history .contents{
	padding-top: 0;
}

#contents.about section.history table{
	margin-bottom: 0;	
}

#contents.about section.history table th{
	border: none;
	width: 10%;
	margin: 0;
	text-align: right;
	padding: 0.2em 1.0em;
	vertical-align: top;
}

#contents.about section.history table td{
	margin: 0;
	padding: 0.2em 1.0em;
	border: none;
	line-height: 1.4em;	
	vertical-align: top;
}

#contents.about section.history table td p{
	margin: 0;
	margin-bottom: 0.6em;
	padding: 0;
}

#contents.about section.history table td.month{
	width: 12%;	
	margin: 0;
	text-align: right;
	padding-left: 0;
	border-left: 1px solid #595757;
	border-right: 1px solid #595757;
}

#contents.about section.history table .otf th, #contents.about section.history table .otf td{
	color: #7f4f21!important;
}


#contents.about section.history table .oji th, #contents.about section.history table .oji td{
	color: #005bac!important;
}

#contents.about section.history table .red th, #contents.about section.history table .red td{
	color: #c30d23!important;
}

#contents.about section.history table td.bold{
	font-weight: 900!important;
}

#contents.about section.history .contents > div{
	width: 100%;
	max-width: 190mm;
	margin: 0 auto;
	position: relative;
	padding-bottom: 0;
}

#contents.about section.history .contents > div p{
	font-size: 1.2rem;
	line-height: 1.6em;
	position: absolute;
	right: 0;
	color: #7f4f21!important;
}

#contents.about section.history .contents > div p span{
	color: #005bac!important;
}

#contents.about section.history .last{
	display: none!important;
}


/* 事業案内 */
#contents.service{
	width: 100%;
	max-width: 190mm;
	height: auto;
	margin: 0 auto;
	padding: 0;
}

#contents.service section .page_ttl{
	width: 100%;
	max-width: 190mm;
	height: 90px;
	padding-top: 20px;
	background-image: url(../images/page_ttl_back.jpg);
	background-repeat: no-repeat;
	background-position: center center;
	text-align: center;
	background-size: 100% 100%;
}

#contents.service section .page_ttl h1{
	font-size: 2.2rem;
	width: 12.0em;
	line-height: 1.0em;
	font-weight: 500;
	color: #fff;
	letter-spacing: 0.1em;
	margin: 0 auto;
	background-image: url(../images/page_ttl_h1_back.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 100% auto;
}

#contents.service section .page_ttl p{
	font-size: 1.3rem;
	line-height: 1.0em;
	font-weight: 400;
	color: #fff;
	letter-spacing: 0.05em;
	margin: 1.7em auto 0;
}

#contents.service section .contents{
	width: 100%;
	max-width: 190mm;
	height: auto;
	margin: 0 auto;
	padding-top: 3.0rem;
}

#contents.service section .contents .division{
    padding: 0;
    margin: 0;
}


#contents.service section .contents .ferry{
	margin-bottom: 0!important;
/* 	page-break-after: always!important; */
}

#contents.service section .contents .international{
	page-break-before: always!important;
	margin-top: 0.5rem;
}

#contents.service section .contents .division .article.cargo{
	margin-top: 0!important;
	page-break-after: always!important;
	padding-bottom: 3.0rem;
}


#contents.service section .contents .division .article.passenger{
	padding-top: 0;
	margin-top: 0;
	page-break-before: always!important;
	float: left;
}

#contents.service section .contents .coastal{
	margin-bottom: 3.0rem;
	page-break-before: always!important;
	margin-top: 0.5rem;
}


#contents.service section .contents .division .title h2{
	display: flex;
	align-items: center;
	justify-content: flex-start;
	flex-wrap: wrap;
	height: 64px;
	width: 100%;
	max-width: 180mm;
	margin: 0 auto;
	padding-left: 0.6rem;
	border-left: 8px solid #b5b5b6;
	position: relative;
}

#contents.service section .contents .division .title h2 p{
	width: 100%;
	font-size: 3.6rem;
	font-weight: 500;
	letter-spacing: 0.07em;
	line-height: 0.7em;
	color: #005bac;
}

#contents.service section .contents .division .title h2 p.sub{
	font-size: 2.8rem;
	padding-top: 0.4em;
}

#contents.service section .contents .division .title h2 p.sub2{
	color: #595757;
	font-size: 2.0rem;
	padding-top: 0.4em;
	position: absolute;
	right: 0;
	bottom: 1.0em;
	text-align: right;
}

#contents.service section .contents .division .article{
	width: 100%;
	max-width: 190mm;
	display: flex;
	justify-content: flex-start;
	padding-top: 3.0rem;
}

#contents.service section .contents .international .article{
	flex-direction: row-reverse;
}


#contents.service section .contents .division .article .image{
	width: 40%;
	padding-right: 5%;
}

#contents.service section .contents .international .article .image{
	width: 40%;
	padding-right: 0;
	padding-left: 5%;
}

#contents.service section .contents .division .article.passenger .inner{
	float: right;
}

#contents.service section .contents .division .article .image .box{
	width: 100%;
	max-width: 190mm;
	float: right;
	padding-top: 0.3rem;
}

#contents.service section .contents .spec{
	width: 100%;
	max-width: 190mm;
	margin: 0 auto 2.0rem;
}

#contents.service section .contents .spec > div{
	width: 100%;
}

#contents.service section .contents .spec > div h3{
	font-size: 1.4rem;
	color: #005bac;
	left: 1.6em;
	margin: 1.0rem auto 0!important;
	text-align: left;
}

#contents.service section .contents .spec > div > p{
	font-size: 1.1rem;
	line-height: 1.5em;
	font-weight: 500;
	text-align: left;
}

#contents.service section .contents .spec table{
	width: 100%;
	font-size: 0.9rem;
	line-height: 1.4em;
	text-align: center;
	margin-bottom: 1.0rem;
}

#contents.service section .contents .spec table th{
	font-weight: 300;
	padding: 0.7em 0;
	border: 1px solid #595757;
	background: #eaedf7;
}


#contents.service section .contents .spec table td{
	font-weight: 300;
	padding: 0.7em 0;
	border: 1px solid #595757;
	vertical-align: middle;
}

#contents.service section .contents .spec table td.w{
	padding: 0.3em 0!important;
}

#contents.service section .contents .coastal .article{
	page-break-after: always!important;
}

#contents.service section .contents .route{
	page-break-before: always!important;
	padding: 1.0rem 0!important;
	position: relative;
	float: left;
}

#contents.service section .contents .route  div{
	position: absolute;
}

#contents.service section .contents .coastal .spec table td{
	padding: 0.3em 0!important;
}

#contents.service section .contents .coastal table tr > th:first-child{
	width: 6.0em!important;
}


#contents.service section .contents .division .article .image img{
	width: 100%;
	height: auto;
	margin-bottom: 0.6rem;
}

#contents.service section .contents .division .article .inner{
	width: 53%;
	max-width: 190mm;
}

#contents.service section .contents .division .article .inner .txt{
    font-size: 1.1rem;
    line-height: 1.6em;
}

#contents.service section .contents .division .article h4{
	font-size: 1.4rem;
	line-height: 1.6em;
	margin: 2.0rem 0 0.3rem;
	color: #005bac;
}

#contents.service section .contents .division .passenger h4{
	margin-top: 0!important;
}

#contents.service section .contents .division .article h4 span{
	color: #b5b5b6;
}

#contents.service section .contents .division .article h3{
	font-size: 1.5rem;
	line-height: 1.6em;
	margin-bottom: 1.0rem;
}

#contents.service section .contents .division .article .inner img{
	width: 100%;
	height: auto;
	margin-top: 2.0rem;
}

#contents.service section .contents .division .map{
	width: 100%;
	max-width: 740px;
	margin: 0 auto;
	text-align: center;
}

#contents.service section .contents .ferry .map{
	margin: 0!important;
	padding: 0!important;
}

#contents.service section .contents .coastal .map{
	margin-top: 0;
	margin-bottom: 5.0rem;
}

#contents.service section .contents .division .map img{
	width: 100%;
	height: auto;
	margin-top: 0;
}

#contents.service section .contents .ferry .map img{
/* 	padding: 85mm 0 0!important; */
	float: none;
	margin-top: -70mm;
}

#contents.service section .contents .international_img{
	width: 100%;
	max-width: 190mm;
	margin: 2.0rem auto 9.0rem;
}

#contents.service section .contents .international_img img{
	width: 100%;
	height: auto;
}

#contents.service section .contents .pdf{
	margin-top: 2.0em;
	text-align: left;
}

#contents.service section .contents .pdf a{
	font-size: 1.2rem;
	display: inline-block;
	color: #005bac;
}


#contents.service section .contents .pdf a:first-child{
	margin-right: 1.0em;
}


/* 所有船舶一覧 */
#main_v.ships{
	width: 100%;
	max-width: 190mm;
	height: 90.5mm;
	position: relative;
	overflow: hidden;
}

#main_v.ships img{
	margin-top: -10mm;
}

#contents.ships{
    width: 100%;
    max-width: 190mm;
	margin: -5mm auto 0;
	padding: 0;
}

#contents.ships .type{
    width: 100%;
    max-width: 190mm;
    height: auto;
    margin: 0 auto!important;
    padding: 0!important;
}


#contents.ships .chips, #contents.ships .roro, #contents.ships .zairai_b{
    padding-top: 0;
    margin-top: 3.0rem;
}

#contents.ships .roro{
	page-break-before: always!important;
}

#contents.ships .type .ttl{
	width: 100%;
	display: inline-flex;
	justify-content: space-between;
    padding-top: 5mm;
    margin-top: 0;
}


#contents.ships .type .ttl h2{
	position: relative;
	width: 48%;
}

#contents.ships .chips .ttl h2{
	position: relative;
	width: 70%;
}

#contents.ships .type .ttl h2 .name{
	display: inline-block;
	font-size: 2.1rem;
	line-height: 1.0em;
	color: #005bac;
	padding: 0.1em 1.6em 1.6em 0;
	margin: 0.3em 0 1.0em;
	background-image: url(../images/ships_h2_back.png);
	background-position: right center;
	background-repeat: no-repeat;
	background-size: contain;
}

#contents.ships .type .ttl h2 .sub{
	display: inline-block;
	font-size: 1.8rem;
	line-height: 1.0em;
	color: #005bac;
	margin-left: -0.8em;
	top: 1.8em;
	position: absolute;
}

#contents.ships .type .ttl > div{
	width: 50%;	
}

#contents.ships .chips .ttl > div{
	width: 27%;	
}


#contents.ships .type .ttl > div table{
	width: 100%;
	margin-bottom: 1.0rem;
	background-image: url(../images/ships_teble_back.png);
	background-position: center center;
	background-repeat: repeat-x;
	background-color: #fff;
}

#contents.ships .roro .ttl > div table{
	margin-top: 3.6rem;
}

#contents.ships .type .ttl > div table th{
	font-size: 1.0rem;
	font-weight: 400;
	text-align: center;
	padding: 0.2em 0 0.5em;
	border-left: 1px solid #595757;
	border-right: 1px solid #595757;
}

#contents.ships .type .ttl > div table td{
	font-size: 1.0rem;
	text-align: center;
	padding: 0.5em 0 0.2em;
	border-left: 1px solid #595757;
	border-right: 1px solid #595757;
}

#contents.ships .type .image{
	width: 100%;
	display: inline-flex;
	justify-content: space-between;
	margin-bottom: 1.5rem;
}

#contents.ships .type .image img{
	width: 49.6%;
	height: auto;
}


#contents.ships .type .space{
	height: 0;
}

#contents.ships .zairai_a{
	page-break-before: always!important;
}

#contents.ships .zairai{
	display: flex;
	justify-content: space-between;
	padding-bottom: 10.0rem;
}

#contents.ships .zairai .ttl{
	width: 50%;
	max-width: 85mm;
	display: block;
    padding-top: 0;
    margin-top: 0;
}

#contents.ships .zairai .ttl img{
	width: 100%;
	height: auto;
}

#contents.ships .zairai .ttl h2{
	position: relative;
	width: 100%;
}

#contents.ships .zairai .ttl > div{
	width: 100%;
}


/* 募集要項 */
#contents.recruit{
	width: 100%;
	max-width: 190mm;
	height: auto;
	margin: 0 auto;
}

#contents.recruit section .page_ttl{
	width: 100%;
	height: 85px;
	padding-top: 20px;
	background-image: url(../images/page_ttl_back.jpg);
	background-repeat: no-repeat;
	background-position: center center;
	text-align: center;
	background-size: 100% 100%;
}


#contents.recruit section .page_ttl h1{
	font-size: 2.2rem;
	width: 12.0em;
	line-height: 1.0em;
	font-weight: 500;
	color: #fff;
	letter-spacing: 0.1em;
	margin: 0 auto;
	background-image: url(../images/page_ttl_h1_back.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 100% auto;
}

#contents.recruit section .page_ttl p{
	font-size: 1.3rem;
	line-height: 1.0em;
	font-weight: 400;
	color: #fff;
	letter-spacing: 0.05em;
	margin: 1.7em auto 0;
}

#contents.recruit section .contents{
	width: 100%;
	max-width: 190mm;
	height: auto;
	margin: 0 auto;
	padding-top: 3.0rem;
}

#contents.recruit section .contents h2{
	font-size: 1.8rem;
	line-height: 1.0em;
	font-weight: 500;
	letter-spacing: 0.1em;
	text-align: center;
}

#contents.recruit section .contents table{
	width: 94%;
	max-width: 686px;
	margin: 38px auto 22px;
	font-size: 1.1rem;
	line-height: 1.5em;
}

#contents.recruit section .contents table th{
	width: 26%;
	font-weight: 400;
	background: #e6e6e6;
	border: 1px solid #595757;
	vertical-align: middle;
}

#contents.recruit section .contents table td{
	padding: 0.5em;
	padding-left: 3%;
	padding-right: 3%;
	border: 1px solid #595757;
	background: #fff;
	vertical-align: middle;
	width: auto;
}

#contents.recruit section .contents table td p{
	margin: 0.5em auto;
}

#contents.recruit section .contents > p{
	font-size: 1.2rem;
	line-height: 1.5em;
	text-align: center;
	width: 90%;
}

/* 社員インタビュー */
#contents.interview{
	width: 100%;
	max-width: 190mm;
	padding: 0;
	margin-top: -2.5rem;
}

#contents.interview h1{
	text-align: center;
	font-size: 3.3rem;
	line-height: 0.8em;
	letter-spacing: 0.1em;
	font-weight: 100;
	margin-top: 2.8rem;
}

#contents.interview h1 span{
	font-size: 1.4rem;
}

#contents.interview hr{
	width: 55%;
	max-width: 100mm;
	margin: 1.0rem auto 2.0rem;
	border: 1px dashed #727171;
}

#contents.interview .interview_btn{
	list-style: none;
	text-align: center;
}

#contents.interview .interview_btn li{
	display: inline-block;
	border-left: 1px solid #595757;
	width: 20%;
}

#contents.interview .interview_btn li:last-child{
	border-right: 1px solid #595757;
}


#contents.interview .interview_btn li a{
	display: block;
	color: #595757;
	font-size: 1.7rem;
	line-height: 1.7em;
	text-align: center;
	width: 100%;
}

#contents.interview .interview_link{
	width: 96%;
	margin: 2.5rem auto 0;
	margin-left: 3%;
	display: inline-flex;
	justify-content: space-between;
	page-break-after: always!important;
}

#contents.interview .interview_link a{
	display: block;
	text-align: center;
}

#contents.interview .interview_link a div{
	width: 100%;
	height: auto;
	overflow: hidden;
}

#contents.interview .interview_link a div img{
	width: 100%;
	height: auto;
	transition-duration: 0.8s;
}

#contents.interview .interview_link a p.position{
	font-size: 1.7rem;
	line-height: 1.6em;
	font-weight: 500;
	color: #595757;
	letter-spacing: 0.1em;
	padding-top: 1.0rem;
}

#contents.interview .interview_link a p.name{
	font-size: 2.0rem;
	line-height: 1.2em;
	font-weight: 500;
	color: #595757;
	letter-spacing: 0.1em;
	padding-top: 0.4rem;
}

#contents.interview .interview_link a p.name_e{
	font-size: 1.4rem;
	padding-top: 0.6em;
	color: #595757;
}

#contents.interview .interview_link a:hover img{
	transform: scale(1.1);
	transition-duration: 1.8s;
}

#contents.interview .interview_link a:hover > p{
	opacity: 0.5;
}

#contents.interview article{
    padding-top: 16.0rem;
    width: 100%;
	page-break-before: always!important;
}

#contents.interview article .profile_area{
	width: 100%;
	max-width: 190mm;
	display: flex;
	justify-content: space-between;
}

#contents.interview article.pro02 .profile_area{
	flex-direction: row-reverse;
}

#contents.interview article .profile_area .ph{
	width: 60%;
}

#contents.interview article .profile_area .ph img{
	width: 100%;
	height: auto;
}

#contents.interview article .profile_area .profile{
	width: 35%;
	margin: 0 auto;	
	padding-right: 0;
}

#contents.interview article .profile_area .profile .logo{
	text-align: center;
	margin: 0 auto 20px;
}


#contents.interview article .profile_area .profile .logo img{
	width: 35%;
	height: auto;
}

#contents.interview article .profile_area .profile h3{
	font-size: 1.8rem;
	font-weight: 300;
	line-height: 1.8em;
	color: #fff;
	background: #005bac;
	padding-left: 0.5em;
}

#contents.interview article .profile_area .profile .name{
	font-size: 2.3rem;
	line-height: 1.0em;
	font-weight: 300;
	letter-spacing: 0.1em;
	padding-top: 2.0rem;
}

#contents.interview article .profile_area .profile .name span{
	font-size: 1.2rem;
}

#contents.interview article .profile_area .profile .position{
	font-size: 1.5rem;
	line-height: 1.0em;
	margin: 1.0rem auto 1.5rem;
}

#contents.interview article .profile_area .profile h4{
	font-size: 1.4rem;
	line-height: 1.3em;
	font-weight: 300;
	border-bottom: 1px solid #595757;
}

#contents.interview article .profile_area .profile > div{
	padding-top: 1.0em;
}

#contents.interview article .profile_area .profile > div p{
	font-size: 1.1em;
	line-height: 1.5em;
	padding-bottom: 0.3em;
}

#contents.interview article > div.article{
	width: 100%;
	max-width: 190mm;
	margin: 3.0rem auto 0;
	display: flex;
	justify-content: space-between;
	align-items: center;	
    page-break-inside: avoid;
}

#contents.interview article > div:nth-child(3){
	flex-direction: row-reverse;
}

#contents.interview article > div.article .ph{
	width: 47%;
	margin-right: 3%;
}

#contents.interview article > div:nth-child(3) .ph{
	margin-right: 0;
	margin-left: 3%;
}


#contents.interview article > div.article .ph img{
	width: 100%;
	height: auto;
}

#contents.interview article > div.article .txt{
	width: 66%;
	padding-top: 0.5em;
}

#contents.interview article > div.article .txt h2{
	font-size: 1.8rem;
	line-height: 1.5em;
	font-weight: 300;
	letter-spacing: 0.1em;
	padding-left: 2.8em;
	margin-bottom: 2.0rem;
	position: relative;
}

#contents.interview article > div.article .txt h2:after{
	content: "　　";
	border-bottom: 1px solid #595757;
	position: absolute;
	top: -0.7em;
	left: 0;
}

#contents.interview article > div.article .txt p{
	font-size: 1.1rem;
	line-height: 1.6em;
}

/* 安全情報 */
#contents.safety{
	width: 100%;
	max-width: 190mm;
	height: auto;
	margin: 0 auto;
}

#contents.safety section .page_ttl{
	width: 100%;
	height: 85px;
	padding-top: 20px;
	background-image: url(../images/page_ttl_back.jpg);
	background-repeat: no-repeat;
	background-position: center center;
	text-align: center;
	background-size: 100% 100%;
}


#contents.safety section .page_ttl h1{
	font-size: 2.2rem;
	width: 12.0em;
	line-height: 1.0em;
	font-weight: 500;
	color: #fff;
	letter-spacing: 0.1em;
	margin: 0 auto;
	background-image: url(../images/page_ttl_h1_back.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 100% auto;
}

#contents.safety section .page_ttl p{
	font-size: 1.3rem;
	line-height: 1.0em;
	font-weight: 400;
	color: #fff;
	letter-spacing: 0.05em;
	margin: 1.7em auto 0;
}

#contents.safety section .contents{
	width: 100%;
	max-width: 190mm;
	height: auto;
	margin: 0 auto;
	padding-top: 3.0rem;
}

#contents.safety section .contents h2{
	font-size: 1.8rem;
	line-height: 1.0em;
	font-weight: 500;
	letter-spacing: 0.1em;
	text-align: left;
}

#contents.safety section .contents .txt{
	font-size: 1.5rem;
	line-height: 1.8em;
	text-align: left;
	width: 94%;
	max-width: 710px;
	margin: 0 auto;
}

#contents.safety section .contents .pdf{
	font-size: 1.5rem;
	line-height: 1.8em;
	text-align: left;
	width: 94%;
	max-width: 710px;
	margin: 1.0rem auto 0;
}

#contents.safety section .contents .pdf a{
	text-decoration: underline;
}

#contents.safety section .contents h2{
	font-size: 1.8rem;
	line-height: 1.0em;
	font-weight: 500;
	letter-spacing: 0.1em;
	text-align: left;
	width: 94%;
	max-width: 710px;
	margin: 4.0rem auto 2.0rem;
}

#contents.safety section .contents > h2:first-child{
	margin: 0 auto 3.0rem;
}

#contents.safety section .contents ul{
	font-size: 1.5rem;
	line-height: 1.8em;
	text-align: left;
	width: 94%;
	margin: 0 auto 3.0em;
	padding-left: 3.0em;
	list-style: decimal;
}


#contents.safety section .contents ul li{
	margin-bottom: 0.5em;
}

footer{
	width: 100%;
	max-width: none;
	height: auto;
	margin: 0 ;
	padding: 0;
	background:none;
	position: fixed;
	position: -webkit-fixed;
	bottom: 0;
	display: flex!important;

/* 	display: none; */
}

footer .fotter_inn{
	width: 100%;
	max-width: 190mm;
	height: auto;
	padding: 0;
	display: block;
	display: flex!important;
}

footer .fotter_inn .link{
	width: 100%;
	max-width: 190mm;
	padding: 0;
	text-align: center;
	display: flex!important;
}
footer .fotter_inn .link .logo{
	width: 100%;
	max-width: 190mm;
	text-align: center;
	display: flex!important;
}
footer .fotter_inn .link .logo img{
	width: 30%;
	height: auto;
	margin: 5mm auto 0!important ;
	text-align: center;
	display: flex!important;
}



footer .fotter_inn .link .contact, footer .fotter_inn .link .otf, footer .fotter_inn .link .lang, footer .fotter_inn .site_map{
	display: none;
}
footer .copyright{
	display: none;
}


.pc{
	display: block;
}

.sp{
	display: none;
}

/*
#contents.service section .contents .ferry .sp{
	display: block;
}


#contents.service section .contents .ferry .sp img{
	width: 100%;
	height: auto;
}
*/
