/* style.css */

@charset "UTF-8";

@import url(https://fonts.googleapis.com/css?family=Anton);

@font-face{ 
	font-family: 'LogoTypeG'; /* お好きな名前にしましょう */
	src: url('../fonts/LogoTypeG.eot'); /* IE9以上用 */
	src: url('../fonts/LogoTypeG.eot?#iefix') format('embedded-opentype'), /* IE8以前用 */
		url('../fonts/LogoTypeG.woff') format('woff'), /* モダンブラウザ用 */
		url('../fonts/LogoTypeG.ttf') format('truetype'); /* iOS, Android用 */
	font-weight: normal; /* 念の為指定しておきます */
	font-style: normal;
}


/* 全体、その他
============================================*/
html { font-size: 62.5%; }

body {
	background: url(../images/body_bg.png) repeat;
	color: #000;
	text-align: justify;
	text-justify: inter-ideograph;
	-ms-text-justify: inter-ideograph;
	font-size: 14px; font-size: 1.4rem;
	line-height: 1.6;
	font-family: YuGothic, '游ゴシック','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,sans-serif;
	font-family: 'LogoTypeG';
	-webkit-text-size-adjust: 100%;
}

strong {
	font-weight: bold;
	color: #FF7BAC;
}

a{
	outline: none;
	color: #FF7BAC;
	-webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
a:focus{
	outline: none;
}
a:hover {
	filter: alpha(opacity=50);
	-moz-opacity:0.5;
	opacity:0.5;
}

span.supText {
font-size: 60%;
vertical-align: top;
position: relative;
top: -0.2em;
}
span.subText {
font-size: 60%;
vertical-align: bottom;
position: relative;
top: 0.2em;
}

.imgcenter {
    display: block;
		text-align: center;
}
.imgright { float: right; padding-left: 20px; padding-bottom: 20px; }
.imgleft { float: left; padding-right: 20px; padding-bottom: 20px; }

#wrapper {
	width: 100%;
	min-width: 1000px;
	overflow: hidden;
}

.is-sp {display: none;}

/* header
============================================*/
#header {
	margin: 0 auto;
	width: 100%;
	background: url(../images/header_bg.png) repeat;
}

#header h1 {
	margin: 0;
	width: 100%;
	height: 80px;
	position: fixed;
	top: 0;
	left: 0;
    z-index: 1000;
	text-align: center;
	background: #fff;
	padding: 10px;
}

#header .contact {
	position: fixed;
	z-index: 90;
	right: 20px;
	bottom: 20px;
	text-align: center;
}
#header .contact.fixed {
    position: fixed;
    top: -10px;
    z-index: 10001;
}


#header .contact .regist {
	position: absolute;
	left: 15px;
	top: 155px;
	width: 170px;
	height: 20px;
	font-size: 15px;
	line-height: 20px;
	border-radius: 10px; 
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px; 
	background: #00ADC3;
	color: #FFF;
}


#spin {
	padding: 30px 0 30px;
	width: 100%;
	min-height: 800px;
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-content: center;
	background: #fff;
	text-align: center;
}
#spin img {
	width: 100%;
}

#spin .img {
	width: 100%;
	max-width: 600px;
}
#spin .movie {
	width: 100%;
	max-width: 600px;
}
.video {
	display: block;
	width: 100%;
  }
#spin .movie p {
	text-align: center;
	color: #00ADC3;
	font-size: 20px; font-size: 2.0rem;
	letter-spacing: 0.05em;
}
#sns {
	padding: 10px 0 30px;
	width: 100%;
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-content: center;
	background: #fff;
	text-align: center;
}
#sns > div {
	margin: 5px;
}
#sns > div img {
	max-width: 440px;
}
/* nav
============================================*/
#nav {
	position: relative;
	width: 100%;
	height: 70px;
	background: url(../images/nav_bg.png) repeat-x center bottom;
	box-sizing: border-box;
    position: fixed;
    top: 0;
	left: 0;
    width: 100%;
    z-index: 10000;
	height: 140px;
}
#nav ul {
	margin: 0 auto;
	width: 1000px;
	display: flex;
	justify-content: center;
	padding-top: 10px;
	padding-top: 80px;
}
#nav li {
	text-align: center;
	position: relative;
}
#nav li a {
	display: block;
	position: relative;
	top: 0;
	color: #FFF;
	text-decoration: none;
}
#nav li a:hover {
	top: 8px;
}

/* main
============================================*/
#main {
	width: 100%;
  padding-top: 130px;
}
#main .contents {
	padding-bottom: 50px;
	margin: 0 auto;
	width: 1000px;
	box-sizing: border-box;
	position: relative;
}

#main .wave {
	position: relative;
	background: #FFF;
}

#main .wave:before {
	display: block;
	width: 100%;
	height: 10px;
	background: url(../images/contents_before.png) repeat-x center bottom;
    content: "";
    left: 0;
    position: absolute;
    top: -3px;
	z-index: 40;
}

#main .wave:after {
	display: block;
	width: 100%;
	height: 10px;
	background: url(../images/contents_after.png) repeat-x center bottom;
    content: "";
    left: 0;
    position: absolute;
    bottom: -6px;
	z-index: 40;
}
#info {
	position: relative;
	top: -4px;
	padding: 50px 0;
}

#info .profile {
	float: left;
	margin: 0 10px;
	width: 480px;
	text-align: center;
}
#info .profile h3 {
	font-size: 16px; font-size: 1.6rem;
	color: #1D2087;
}
#info .profile h3 img {
	margin-bottom: 15px;
}
#info .news {
	float: left;
	width: 480px;
	margin: 0 10px;
}
#info .news h3 {
	border-bottom: #1D2087 5px solid;
}

#info .news dt {
	clear: both;
	float: left;
	width: 8em;
	padding: 11px 0;
	color: #00ADC3;
	font-size: 12px; font-size: 1.2rem;
}

#info .news dd {
	padding: 10px 0 10px 8.5em;
	border-bottom: rgba(29,32,135,0.2) 1px solid;
}

#ship {
	position: relative;
	padding-bottom: 50px;
}

#ship h3 {
	position: absolute;
	top: 0;
	z-index: 10;
    height: 180px;
    overflow: hidden;
    width: 100%;
}
#ship h3 img {
    height: auto;
    left: 50%;
    position: relative;
    transform: translate(-50%, 0);
    width: auto;
}

#ship .shop_photo {
    overflow: hidden;
    width: 100%;
	background: url(../images/header_bg.png) repeat;
}
#ship .shop_photo img {
    height: auto;
    left: 50%;
    position: relative;
    transform: translate(-50%, 0);
    width: auto;
}

#ship .text {
	margin: 10px 0;
	text-align: center;
	font-size: 14px; font-size: 1.4rem;
}

#ship h4 {
	width: 200px;
	margin: 20px auto 10px;
	text-align: center;
	color: #00ADC3;
	font-size: 28px; font-size: 2.8rem;
	letter-spacing: 0.05em;
	border-bottom: #FFF 5px solid;
}

#ship h5 {
	width: 200px;
	margin: 20px auto 10px;
	text-align: center;
	color: #fff;
	font-size: 20px; font-size: 2.0rem;
	background: #00ADC3;
	border-radius: 9999px;
}
#ship .gallery {
	width: 600px;
	margin: 20px auto 10px;
}

#ship .gallery li {
	width: 180px;
	float: left;
	margin: 10px;
	position: relative;
}

#ship .gallery li span {
	position: absolute;
	left: 0;
	top: 150px;
	width: 100%;
	padding: 0 5px;
	height: 30px;
	line-height: 30px;
	display: block;
	box-sizing: border-box;
	color: #FFF;
	font-weight: bold;
	background: rgba(29,32,135,0.5);
}



#price {
	position: relative;
}

#price h3 {
	position: relative;
	top: -5px;
	z-index: 50;
    height: 180px;
    overflow: hidden;
    width: 100%;
	margin-bottom: 20px;
}
#price h3 img {
    height: auto;
    left: 50%;
    position: relative;
    transform: translate(-50%, 0);
    width: auto;
}

#price .caution {
	text-align: center;
	font-size: 18px; font-size: 1.8rem;
	margin-bottom: 20px;
}

#price .price {
	float: left;
	width: 480px;
	margin: 20px 40px 20px 0;
}
#price .price:nth-child(2n) {
	margin-right: 0;
}

#price .price .note {
	text-align: center;
}



#price .price h4 {
	color: #FFF;
	background: #00ADC3;
	font-size: 20px; font-size: 2.0rem;
	line-height: 40px;
	text-align: center;
	margin: 0 80px;
	border-radius: 5px 5px 0 0 / 5px 5px 0 0;
	-webkit-border-radius: 5px 5px 0 0 / 5px 5px 0 0;
	-moz-border-radius: 5px 5px 0 0 / 5px 5px 0 0;
}

#price .price .price_box {
	background: #CCEFF3;
	border-radius: 5px; 
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px; 
	padding: 20px;
	box-sizing: border-box;
}

#price .price .price_box .half {
	float: left;
	width: 210px;
	background: #FFF;
	border-radius: 5px; 
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	margin-top: 50px;
}

#price .price .price_box .full {
	float: right;
	width: 210px;
	background: #FFF;
	border-radius: 5px; 
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px; 
	margin-top: 50px;
}

#price .price .price_box h5 {
	margin-top: -50px;
	text-align: center;
}

#price .price dl {
	padding: 10px;
}

#price .price dt {
	clear: both;
	float: left;
	width: 85px;
	text-align: center;
	padding: 8px 0 2px;
	line-height: 20px;
}

#price .price dd {
	padding: 5px 10px 5px 90px;
	font-size: 18px; font-size: 1.8rem;
	line-height: 20px;
	font-weight: bold;
	color: #FF7BAC;
	text-align: right;
}

#price .price .half dt {
	color: #00ADC3;
}
#price .price .half dd {
	border-bottom: #80D6E1 1px solid;
}
#price .price .full dt {
	color: #1D2087;
}
#price .price .full dd {
	border-bottom: #8E8FC3 1px solid;
}

#price .price_03 dl {
	padding: 10px;
	background: #FFF;
	border-radius: 5px; 
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px; 
}

#price .price_03 dt {
	width: 180px;
	color: #1D2087;
}
#price .price_03 dd {
	padding-left: 185px;
	text-align: center;
	border-bottom: #8E8FC3 1px solid;
}

#price .price_04 .text {
	padding: 12px;
	background: #FFF;
	border-radius: 5px; 
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px; 
	font-size: 18px; font-size: 1.8rem;
	font-weight: bold;
	color: #FF7BAC;
}


#flow {
	position: relative;
}

#flow h3 {
    height: 180px;
    overflow: hidden;
    width: 100%;
	margin-bottom: 50px;
}
#flow h3 img {
    height: auto;
    left: 50%;
    position: relative;
    transform: translate(-50%, 0);
    width: auto;
}

#flow li {
	padding: 10px;
	background: #FFF;
	border-radius: 5px; 
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	margin-bottom: 50px;
	position: relative;
}

#flow li:before {
	content: "";
	display: block;
	width: 5px;
	height: 100%;
	background: #00ADC3;
	position: absolute;
	left: 210px;
	top: 0;
	border-top: #FFF 15px solid;
	border-bottom: #FFF 15px solid;
	box-sizing: border-box;
}

#flow li:after {
	content: "";
	display: block;
	width: 120px;
	height: 30px;
	background: url(../images/flow_arrow.png) no-repeat center bottom;
	position: absolute;
	left: 50%;
	top: 100%;
	margin-left: -60px;
	margin-top: 10px;
}

#flow li:last-child:after {
	display: none;
}

#flow li h4 {
	width: 210px;
	text-align: center;
	font-size: 28px; font-size: 2.8rem;
	line-height: 30px;
	color: #FF7BAC;
	position: absolute;
	left: 0px;
	top: 50%;
	margin-top: -15px;
}

#flow li p {
	padding: 10px 20px 10px 240px;
}



#caution {
	position: relative;
}

#caution h3 {
	position: relative;
	top: -5px;
	z-index: 50;
    height: 180px;
    overflow: hidden;
    width: 100%;
}
#caution h3 img {
    height: auto;
    left: 50%;
    position: relative;
    transform: translate(-50%, 0);
    width: auto;
}

#caution ul {
	margin: 10px auto;
}

#caution li {
	margin-top: 10px;
	padding: 0 0px 10px 45px;
	font-size: 15px; font-size: 1.5rem;
	border-bottom: #CCEFF3 1px solid;
	background: url(../images/caution_icon.png) no-repeat 10px top;
}

#caution #cancel {
	margin-top: 30px;
	text-align: center;
}

#caution #cancel h4 {
	margin: 15px auto;
	width: 400px;
	text-align: center;
	font-size: 28px; font-size: 2.8rem;
	border-bottom: #00ADC3 5px solid;
	color: #FF7BAC;
}

#caution #cancel p {
	font-size: 16px; font-size: 1.6rem;
}

#caution .cancel {
	margin: 20px 0;
	width: 480px;
}

#caution .together {
	float: left;
}
#caution .charter {
	float: right;
}

#caution .cancel h5 {
	color: #FFF;
	font-size: 20px; font-size: 2.0rem;
	line-height: 40px;
	text-align: center;
	margin: 0 80px;
	border-radius: 5px 5px 0 0 / 5px 5px 0 0;
	-webkit-border-radius: 5px 5px 0 0 / 5px 5px 0 0;
	-moz-border-radius: 5px 5px 0 0 / 5px 5px 0 0;
}
#caution .together h5 {
	background: #00ADC3;
}
#caution .charter h5 {
	background: #1D2087;
}

#caution .price_box {
	border-radius: 5px; 
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px; 
	padding: 20px;
	box-sizing: border-box;
}
#caution .together .price_box  {
	background: #CCEFF3;
}
#caution .charter .price_box  {
	background: #D2D2E7;
}

#caution .price_box dl {
	padding: 10px;
	background: #FFF;
	border-radius: 5px; 
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px; 
}

#caution .price_box dt {
	clear: both;
	float: left;
	width: 210px;
	text-align: center;
	padding: 8px 0 2px;
	line-height: 20px;
}

#caution .price_box dd {
	padding: 5px 10px 5px 220px;
	font-size: 18px; font-size: 1.8rem;
	line-height: 20px;
	font-weight: bold;
	color: #FF7BAC;
	text-align: center;
}
#caution .together .price_box dd {
	border-bottom: #80D6E1 1px solid;
}
#caution .charter .price_box dd {
	border-bottom: #8E8FC3 1px solid;
}


#access {
	position: relative;
}

#access h3 {
    height: 180px;
    overflow: hidden;
    width: 100%;
	margin-bottom: 30px;
}
#access h3 img {
    height: auto;
    left: 50%;
    position: relative;
    transform: translate(-50%, 0);
    width: auto;
}

#access .contents {
	text-align: center;
}
#access .contents p {
	margin: 15px 0;
	font-size: 18px; font-size: 1.8rem;
}

#access .contents .map_box {
	box-sizing: border-box;
	padding: 20px;
	margin: 20px auto;
	width: 740px;
	background: #00ADC3;
	border-radius: 10px; 
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px; 
}

#access .contents .map_box h4 {
	margin: 0 0 15px;
	font-size: 28px; font-size: 2.8rem;
	color: #FFF;
}



#cruising {
	position: relative;
	padding-bottom: 50px;
	font-size: 16px;
	font-size: 1.6rem;
}
#cruising h3 {
	position: relative;
	top: -5px;
	z-index: 50;
	height: 180px;
	overflow: hidden;
	width: 100%;
	margin-bottom: 20px;
}
#cruising h3 img {
    height: auto;
    left: 50%;
    position: relative;
    transform: translate(-50%, 0);
    width: auto;
}
#cruising p {
	text-align: center;
}

#cruising .slide2 {
	margin: 30px 0;
}
#cruising .slide2 img {
	width: 100%;
}
#cruising .course {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
#cruising .case {
	width: 480px;
	margin: 20px;
	background: #fff;
	border-radius: 10px;
	box-sizing: border-box;
	padding: 10px 20px;
}
#cruising .case h4 {
	margin: 10px 0;
	text-align: center;
	color: #00ADC3;
	font-size: 24px;
	font-size: 2.4rem;
	letter-spacing: 0.05em;
	border-bottom: #00ADC3 2px solid;
}
#cruising .case .text {
	font-size: 18px;
	font-size: 1.8rem;
}
#cruising .case .price {
	font-size: 22px;
	font-size: 2.2rem;
	color: #FF7BAC;
	font-weight: bold;
}
#cruising .note {
	font-size: 14px;
	font-size: 1.4rem;
}

/* footer
============================================*/
#footer {
	width: 100%;
	position: relative;
	background: url(../images/footer_bg.png) repeat-x center top;
	color: #FFF;
	text-align: center;
}
#footer .contents {
	height: 180px;
	box-sizing: border-box;
	padding: 40px 0;
	background: url(../images/footer_illust.png) no-repeat center bottom;
}

#footer h3 {
	font-size: 18px; font-size: 1.8rem;
}

#footer .copy {
	padding: 5px;
	color: #000;
	font-size: 12px; font-size: 1.2rem;
}

.sp-tel,
.sp-regist {
	display: none;
}

@media screen and (max-width:760px){
	html { font-size: 85%; }
	.is-sp {display: inherit;}

	#header .contact {
		display: none;
	}
	#nav ul {
		width: 640px;
		margin: 0 auto;
	}
	#nav li {
		margin-right: -15px;
	}
	#main .contents img {
		max-width: 100%;
	}
	#wrapper {
		width: 640px;
		min-width: 640px;
		margin: 0 auto;
	}
	#main .contents {
		padding-bottom: 20px;
		width: 100%;
	}
	#info .profile {
		margin: 0 auto 30px;
		float: none;
		width: 80%;
	}
	#info {
		padding: 30px 0;
	}
	#info .news {
		margin: 0 auto;
		float: none;
		width: 90%;
	}
	#info .news h3 {
		text-align: center;
		border-bottom: #1D2087 5px solid;
	}
	
	#info .news dt {
	}
	
	#info .news dd {
	}
	
	#info .news dd a {
		display: block;
	}
	
	#ship .text {
		margin: 10px auto;
		width: 90%;
	}
	
	#ship .gallery {
		width: 90%;
		margin: 20px auto 10px;
	}
	#ship .gallery li {
		width: 30%;
		margin: 10px;
	}
	#ship .gallery li:last-child {
		margin-right: 10px;
	}
	#ship .gallery li:nth-child(3n) {
		margin-right: 0;
	}

	#ship .gallery li img {
		width: 100%;
		height: auto;
	}
	
	#ship .gallery li span {
		display: inline-block;
		height: auto;
		position: static;
	}
	
	#price .price {
		float: none;
		margin: 20px auto;
		width: 90%;
	}
	#price .price:nth-child(2n) {
		margin-right: auto;
	}
	
	#price .price .price_box .half {
		width: 48%;
	}
	#price .price .price_box .full {
		width: 48%;
	}
	#price .price dl {
		padding-top: 0 20px 20px;
	}	
	#price .price dt {
		float: none;
		width: 100%;
	}
	#price .price dd {
		padding: 5px 10px 10px;
		text-align: center;
	}
	#cruising .case {
		margin: 20px auto;
		width: 90%;
	}
	#cruising .note {
		margin: 20px auto;
		width: 95%;
	}
	
	#flow ol {
		margin: 0 auto;
		width: 90%;
	}
	#flow li {
		padding: 10px 20px;
	}
	#flow li:before {
		display: none;
	}
	
	#flow li h4 {
		padding: 20px 0;
		width: 100%;
		color: #FF7BAC;
		position: static;
		margin-top: 0;
		border-bottom: #00ADC3 5px solid;
	}
	
	#flow li p {
		padding: 10px 0;
	}
	#caution ul {
		width: 90%;
	}

	#caution li {
		background-position: 10px 4px;
	}
	
	#caution #cancel {
		margin: 20px auto;
		width: 90%;
	}
	#caution #cancel h4 {
		border-bottom: 5px solid #00adc3;
		color: #ff7bac;
		font-size: 2.8rem;
		margin: 15px auto;
		text-align: center;
		width: 100%;
	}
	#caution #cancel p {
		text-align: left;
	}
	
	#caution .cancel {
		margin: 20px 0;
		width: 100%;
	}
	#caution .together {
		float: none;
	}
	#caution .charter {
		float: none;
	}
	#caution .price_box dl {
		padding: 10px 20px 20px;
	}
	#caution .price_box dt {
		float: none;
		width: 100%;
	}
	
	#caution .price_box dd {
		padding: 5px 10px 10px;
	}
	#access .contents iframe {
		width: 90%;
	}
	
	#access .contents .map_box {
		width: 90%;
	}
	#footer .contents {
		padding: 20px 0;
	}
	#footer {
		padding-bottom: 80px;
	}


	.sp-tel {
		display: block;
		position: fixed;
		left: 0;
		bottom: 0;
		width: 100%;
		box-sizing: border-box;
		padding: 10px;
		color: #FFF;
		text-align: center;
		z-index: 10000;
	}
	.sp-tel a {
		border: #FFF 4px solid;
		display: block;
		width: 100%;
		height: 100%;
		box-sizing: border-box;
		padding: 8px;
		font-size: 2.4rem;
		line-height: 50px;
		color: #FFF;
		text-decoration: none;
		background: #FF7BAC;
	border-radius: 33px; 
	-webkit-border-radius: 33px;
	-moz-border-radius: 33px; 
	}
	.sp-regist {
		display: block;
		position: absolute;
		right: 10px;
		top: 40px;
		width: 170px;
		height: 20px;
		font-size: 15px;
		line-height: 20px;
		text-align: center;
		border-radius: 10px; 
		-webkit-border-radius: 10px;
		-moz-border-radius: 10px; 
		background: #00ADC3;
		color: #FFF;
		z-index: 10000;
	}

}

