@charset "utf-8";

/* default.css */
@import url('https://fonts.googleapis.com/css2?family=EB+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600;1,700&family=Noto+Sans+JP:wght@400;500;600;700&family=Noto+Serif+JP:wght@500;600;700&display=swap');
@charset "UTF-8";
/*! destyle.css v4.0.0 | MIT License | https://github.com/nicolas-cusan/destyle.min.css */
*,::before,::after{box-sizing:border-box;border-style:solid;border-width:0}html{line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{margin:0}main{display:block}p,table,blockquote,address,pre,iframe,form,figure,dl{margin:0}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit;margin:0}ul,ol{margin:0;padding:0;list-style:none}dt{font-weight:700}dd{margin-left:0}hr{box-sizing:content-box;height:0;overflow:visible;border-top-width:1px;margin:0;clear:both;color:inherit}pre{font-family:monospace,monospace;font-size:inherit}address{font-style:inherit}a{background-color:transparent;text-decoration:none;color:inherit}abbr[title]{text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:inherit}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}svg,img,embed,object,iframe{vertical-align:bottom}button,input,optgroup,select,textarea{-webkit-appearance:none;appearance:none;vertical-align:middle;color:inherit;font:inherit;background:transparent;padding:0;margin:0;border-radius:0;text-align:inherit;text-transform:inherit}button,[type="button"],[type="reset"],[type="submit"]{cursor:pointer}button:disabled,[type="button"]:disabled,[type="reset"]:disabled,[type="submit"]:disabled{cursor:default}:-moz-focusring{outline:auto}select:disabled{opacity:inherit}option{padding:0}fieldset{margin:0;padding:0;min-width:0}legend{padding:0}progress{vertical-align:baseline}textarea{overflow:auto}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{outline-offset:-2px}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}[type="number"]{-moz-appearance:textfield}label[for]{cursor:pointer}details{display:block}summary{display:list-item}[contenteditable]:focus{outline:auto}table{border-color:inherit;border-collapse:collapse}caption{text-align:left}td,th{vertical-align:top;padding:0}th{text-align:left;font-weight:700}
@charset "UTF-8";
/*************************************************************
    /css/default.css
**************************************************************
1) html, body, section
2) align, float, clear
3) flexbox
4) img
5) a
6) fonts
7) background-color
8) pcOnly, spOnly
9) newContainer
-------------------------------------------------------------*/


/* 1) html, body, section
-------------------------------------------------------------*/
html {
	font-size: 62.5%;
}
body {
	position: relative;
	line-height: 2;
	font-family: 'Noto Sans JP', 'Hiragino Kaku Gothic ProN', 'Hiragino Kaku Gothic Pro', '游ゴシック', 'Yu Gothic', 'メイリオ', 'Meiryo', sans-serif;
	font-weight: normal;
	font-weight: 400;
	letter-spacing: 0.1em;
	-webkit-font-feature-settings: "palt";
	font-feature-settings: "palt";
	color: #555;
}
section {
	position: relative;
}
@media screen and (max-width:769px) {
	body {
		font-size: 1.5rem;
		letter-spacing: 0.05em;
	}
}
@media screen and (min-width:770px) {
	body {
		font-size: 1.6rem;
	}
}

/* 2) align, float, clear
-------------------------------------------------------------*/
.acenter { text-align: center; }
.aleft { text-align: left; }
.aright { text-align: right; }
.fleft { float: left; }
.fright { float: right; }
.clear { clear: both; }
.clearfix::after {
	content: ‘’;
	display: block;
	clear: both;
}

/* 3) flexbox
-------------------------------------------------------------*/
.flexbox {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
@media screen and (min-width:770px) {
	.pcFlexbox {
		display: -webkit-box;
		display: flex;
		-webkit-box-pack: justify;
    	-webkit-justify-content: space-between;
    	justify-content: space-between;
	}
}
@media screen and (max-width:769px) {
	.spFlexbox {
		display: -webkit-box;
		display: flex;
		-webkit-box-pack: justify;
    	-webkit-justify-content: space-between;
    	justify-content: space-between;
	}
}

/* 4) img
-------------------------------------------------------------*/
img {
	max-width: 100%;
	vertical-align: top;
}

/* 5) a
-------------------------------------------------------------*/
a {
	color: #555;
	text-decoration: underline;
}
a:hover {
	text-decoration: none;
	transition: 0.3s linear;
}
.btn {
	line-height: 56px;
	text-align: center;
}
.btn a {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	font-weight: 500;
	background-color: #0070b2; 
	color: #fff;
	border-radius: 28px;
	text-decoration: none;
}
.btn a:hover {
	background-color: #111d39; 
}
/* ベージュのボタン */
.beigeBtn {
	width: 280px;
	line-height: 44px;
	text-align: center;
}
.beigeBtn a {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	font-weight: 500;
	background-color: #d7d5c8;
	color: #111d39;
	border-radius: 22px;
	text-decoration: none;
}
.beigeBtn a::after {
	position: absolute;
	content: "";
	width: 12px;
	height: 12px;
	background: url(../img/cct/common/arrow3.png) no-repeat;
	background-size: 100% auto;
	top: 50%;
	right: 15px;
	transform: translateY(-50%);
}
.beigeBtn a:hover {
	background-color: #111d39;
	color: #fff;
}
.beigeBtn a:hover::after {
	background-image: url(../img/cct/common/arrow4.png);
}
@media screen and (min-width: 770px) {
	.btn {
		line-height: 60px;
	}
	.btn a {
		border-radius: 30px;
	}
	.beigeBtn {
		line-height: 60px;
	}
	.beigeBtn a {
		border-radius: 30px;
	}
}

/* 電話番号スマホのみリンク */
@media screen and (min-width: 751px) {
	a[href^="tel:"] {
    	pointer-events: none;
		cursor: default;
	　text-decoration: none;
	}
}

/* 6) fonts
-------------------------------------------------------------*/
.gothic {
	font-family: 'Noto Sans JP', 'Hiragino Kaku Gothic ProN', 'Hiragino Kaku Gothic Pro', '游ゴシック', 'Yu Gothic', 'メイリオ', 'Meiryo', sans-serif;
}
.mincho {
	font-family: 'Noto Serif JP', 'Hiragino Mincho ProN', 'Hiragino Mincho Pro', '游明朝', 'Yu Mincho', serif;
	font-weight: normal;
	font-weight: 500;
}
@media screen and (max-width:769px) {
	/* 明朝がスマホで細く見える */
	.mincho {
		font-family: 'Noto Serif JP', 'Hiragino Mincho ProN', 'Hiragino Mincho Pro', '游明朝', 'Yu Mincho', serif;
		font-weight: bold;
		font-weight: 600;
	}
}
.en {
	font-family: 'EB Garamond', 'Times New Roman', Times, serif;
}
.f_400, normal {
	font-weight: normal;
	font-weight: 400;
}
.f_500 {
	font-weight: normal;
	font-weight: 500;
}
.f_600 {
	font-weight: bold;
	font-weight: 600;
}
.f_700, bold {
	font-weight: bold;
	font-weight: 700;
}
.logoBlue { color: #0070b2; }
.navy { color: #111d39; }
.gold { color: #918969; }
.nowrap { white-space:nowrap }

/* 7) background-color
-------------------------------------------------------------*/
.bg_logoBlue { background-color: #0070b2; color: #fff; }
.bg_navy { background-color: #111d39; color: #fff; }
.bg_gold { background-color: #918969; color: #fff; }
.bg_beige { background-color: #ebeae4; }
.bg_lightBeige { background-color: #f7f6f3; }
.bg_lightBlue { background-color: #f0f6fa; }

/* 8) pcOnly, spOnly
-------------------------------------------------------------*/
@media screen and (max-width:769px) {
	.pcOnly {
		display: none;
	}
}
@media screen and (min-width:770px) {
	.spOnly {
		display: none;
	}
}

/* 9) newContainer
-------------------------------------------------------------*/
@media screen and (max-width:699px) {
	.newContainer {
		padding-left: 20px;
		padding-right: 20px;
	}
}
@media screen and (min-width:700px) and (max-width:769px) {
	.newContainer {
		padding-left: 40px;
		padding-right: 40px;
	}
}
@media screen and (min-width:770px) {
	.newContainer {
		padding-left: 50px;
		padding-right: 50px;
	}
}
/*************************************************************
 /css/header-footer.css
**************************************************************
 1) header
 2) footer
 3) fixed_tab
 4) @media print
------------------------------------------------------------*/



/*************************************************************
 1) header
**************************************************************/
header {
	position: relative;
}

/*---------- extraNav PCのみ表示 ----------*/
.extraNav {
	position: relative;
	padding: 8px 0;
	-webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
}
.extraNav li {
	font-size: 1.5rem;
	line-height: 30px;
	color: #fff;
}
.extraNav li a {
	position: relative;
	display: block;
	line-height: 28px;
	padding:0 15px 0 33px;
	color: #fff;
	border: solid 1px #0070b2;
	border-radius: 15px;
	text-decoration: none;
}
.extraNav a:hover {
	background-color: #7baed7;
	border-color: rgba(255, 255, 255, 0.5);
}
.extraNav li a::before {
	position: absolute;
	width: 16px;
	height: 17px;
	content: "";
	top: 7px;
	left: 12px;
	background-repeat: no-repeat;
	background-position: right center;
	background-size: auto 100%;
}
.extraNav li.tel {
	position: relative;
	padding:0 17px 0 0;
}
/*
.extraNav li.tel::before {
	position: absolute;
	width: 12px;
	height: 17px;
	content: "";
	top: 7px;
	left: 0;
	background: url(../img/cct/common/icon_tel.png);
	background-size: 100% auto;
}
*/
.extraNav li.accessNav a::before {
	background-image: url(../img/cct/common/icon_access.png);
}
.extraNav li.searchNav a::before {
	background-image: url(../img/cct/common/icon_search.png);
}
.extraNav li.contactNav a::before {
	background-image: url(../img/cct/common/icon_contact.png);
}
.extraNav li.faqNav a::before {
	background-image: url(../img/cct/common/icon_faq.png);
}
.extraNav li.giftNav a::before {
	background-image: url(../img/cct/common/icon_gift.png);
}
.extraNav li.enNav a {
	padding:0 22px;
	margin-left: 12px;
	border-color: rgba(255, 255, 255, 0.5);
}

/*---------- ロゴ ----------*/
.logoWrap {
	position: fixed;
	width: 100%;
	height: 60px;
	top: 0;
	background: #fff;
	padding:15px 0 0 20px;
	box-sizing: border-box;
}
.logoWrap .hdLogo {
	width: 180px;
	height: 31px;
	background: url(../img/cct/common/logo1.png) no-repeat;
	background-size: 100% auto;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}
.logoWrap .hdLogo a {
	display: block;
	width: 100%;
	height: 100%;
}

#gNav ul.globalNav {
	font-weight: bold;
	font-weight: 600;
}

/* スマホ用
------------------------------------------------------------*/
@media screen and (max-width:1199px) {	
	/*---------- extraNav 非表示 ----------*/
	.extraNav {
		display: none;
	}
	
	/*---------- ロゴ ----------*/
	.logoWrap {
		z-index: 999;
	}
	
	/*---------- gNav ----------*/
	#gNav {
    	position: fixed;
		top: 0;
		z-index: -1;
		opacity: 0;
		width:100%;
    	height: 100vh;
		background:#fff;
		transition: all 0.3s;
	}
	/*アクティブクラスがついたら透過なしにして最前面へ*/
	#gNav.panelactive {
		opacity: 1;
		z-index: 999;
	}
	/*ナビの数が増えた場合縦スクロール*/
		#gNav.panelactive #gNav-list {
    		position: fixed;
    		z-index: 999;
    		width: 100%;
    		height: 100vh;
    		overflow: auto;
    		-webkit-overflow-scrolling: touch;
		}
	/*ナビゲーション リスト*/
	#gNav ul {
    	display: none;
    	z-index: 999;
		line-height: 2.2;
	}
	#gNav.panelactive ul {
    	display: block;
	}
	#gNav.panelactive #gNav-list > ul > li {
		margin-left: 18%;
		width: 64%;
	}
	#gNav.panelactive #gNav-list ul li.topNav {
		width: 180px;
		height: 31px;
		border: none;
		margin-top: 15px;
		margin-left: 20px;
		margin-bottom: 40px;
		background: url(../img/cct/common/logo1.png) no-repeat;
		background-size: 100% auto;
		overflow: hidden;
		text-indent: 200%;
		white-space: nowrap;
	}
	#gNav.panelactive li a {
		color: #0070b2;
		display: block;
		text-decoration: none;
	}
	#gNav.panelactive ul.globalNav {
		font-size: 1.7rem;
	}
	#gNav.panelactive ul.globalNav > li {
		border-bottom: solid 1px #cce2ef;
		padding: 11px 5px;
		box-sizing: border-box;
	}
	#gNav.panelactive ul.globalNav > li:last-of-type {
		border-bottom-color: #0070b2;
	}
	#gNav.panelactive ul.globalNav li.has-child ul {
		text-indent: 1.1em;
	}

	/*---------- addNav  ----------*/
	#gNav.panelactive ul.addNav {
	 	padding: 14px 0 50px;
	}
	#gNav.panelactive ul.addNav li {
	 	font-size: 1.5rem;
	}
	#gNav.panelactive ul.addNav li.tel {
		font-size: 1.6rem;
		border-top: solid 1px #0070b2;
		padding-top: 10px;
	}
	#gNav.panelactive ul.addNav li a {
		position: relative;
		/*padding-left: 26px;*/
	}
	/*
	#gNav.panelactive ul.addNav li a::before {
		position: absolute;
		width: 16px;
		height: 17px;
		content: "";
		top: 50%;
		left: 5px;
		margin-top: -8px;
		background-repeat: no-repeat;
		background-position: center center;
		background-size: auto 100%;
	}
	*/
	#gNav.panelactive ul.addNav li.accessNav a::before {
		background-image: url(../img/cct/common/icon_access2.png);
	}
	#gNav.panelactive ul.addNav li.searchNav a::before {
		background-image: url(../img/cct/common/icon_search2.png);
	}
	#gNav.panelactive ul.addNav li.contactNav a::before {
		background-image: url(../img/cct/common/icon_contact2.png);
	}
	#gNav.panelactive ul.addNav li.faqNav a::before {
		background-image: url(../img/cct/common/icon_faq2.png);
	}
	#gNav.panelactive ul.addNav li.giftNav a::before {
		background-image: url(../img/cct/common/icon_gift2.png);
	}
	#gNav.panelactive ul.addNav li.tel a::before {
		margin-top: -7px;
		background-image: url(../img/cct/common/icon_tel2.png);
		background-position: right center;
	}
	#gNav.panelactive ul.addNav li.enNav a {
		display: inline-block;
		line-height: 30px;
		padding: 0 28px;
		margin: 10px 0 20px 5px;
		border: solid 1px #0070b2;
		border-radius: 15px;
	}

	/* ハンバーガーメニュー */
	.openbtn {
		position:fixed;
    	z-index: 9999;
		top:5px;
		right: 17px;
		cursor: pointer;
    	width: 50px;
    	height:50px;
	}	
	.openbtn span {
    	display: inline-block;
    	transition: all .4s;
    	position: absolute;
    	left: 3px;
    	height: 1px;
		background-color: #0070b2;
  		width: 44px;
	}
	.openbtn span:nth-of-type(1) {
		top:15px;	
	}
	.openbtn span:nth-of-type(2) {
		top:24px;
	}
	.openbtn span:nth-of-type(3) {
		top:33px;
	}
	.openbtn.active span:nth-of-type(1) {
    	top: 16px;
    	left: 5px;
    	transform: translateY(5px) rotate(-45deg);
    	width: 80%;
	}
	.openbtn.active span:nth-of-type(2) {
		opacity: 0;
	}
	.openbtn.active span:nth-of-type(3) {
    	top: 16px;
    	left: 5px;
    	transform: translateY(5px) rotate(45deg);
    	width: 80%;
	}
}

/* タブレット〜PC用
------------------------------------------------------------*/
@media screen and (min-width:770px) and (max-width:1199px) {
	/*---------- ロゴ ----------*/
	.logoWrap {
		height: 68px;
		padding:17px 0 0 50px;
	}
	.logoWrap .hdLogo {
		width: 200px;
		height: 34px;
	}
	
	/*---------- gNav ----------*/
	/*ナビゲーション　リスト*/
	#gNav.panelactive #gNav-list {
		display: -webkit-box;
		display: flex;
	}
	#gNav.panelactive #gNav-list > ul {
		width: 50%;
	}
	#gNav.panelactive #gNav-list > ul.globalNav > li {
		width: 70%;
		font-size: 1.8rem;
		margin-left: 25%;
		padding: 11px 0;
	}
	#gNav.panelactive #gNav-list > ul.globalNav > li a {
		padding: 0 0 0 20px;
	}
	#gNav.panelactive #gNav-list ul li.topNav {
		width: 200px;
		height: 34px;
		margin-top: 17px;
		margin-left: 50px;
		margin-bottom: 10vh;
	}
	#gNav.panelactive ul.globalNav > li:last-of-type {
		border-bottom: none;
	}
	#gNav.panelactive ul li a {
		line-height: 40px !important;
		border-radius: 20px;
	}
	#gNav.panelactive ul li a:hover {
		background-color: #d9eaf3;
	}

	/*---------- addNav  ----------*/
	#gNav.panelactive ul.addNav {
	 	padding: 10vh 0 0;
		margin: 62px 0 0;
	}
	#gNav.panelactive #gNav-list > ul.addNav li {
		width: 68%;
		font-size: 1.7rem;
		margin-left: 12%;
	}
	#gNav.panelactive #gNav-list > ul.addNav li.tel {
		font-size: 1.8rem;
		border-top: none;
		padding-top: 0;
	}
	#gNav.panelactive ul.addNav li a {
		padding-left: 10px;
	}
	#gNav.panelactive ul.addNav li a::before {
		width: 18px;
		height: 19px;
		left: 20px;
		margin-top: -9px;
	}
	/*#gNav.panelactive ul.addNav li.tel a::before {
		margin-top: -8px;
	}*/
	#gNav.panelactive ul.addNav li.enNav a {
		display: block;
		text-align: center;
		padding: 0;
		margin: 30px 0;
		border-radius: 20px;
	}

	/* ハンバーガーメニュー */
	.openbtn {
		top: 0;
		right: 46px;
    	width: 68px;
    	height:68px;
	}	
	.openbtn span {
    	left: 4px;
  		width: 60px;
	}
	.openbtn span:nth-of-type(1) {
		top: 24px;
	}
	.openbtn span:nth-of-type(2) {
		top: 34px;
	}
	.openbtn span:nth-of-type(3) {
		top: 44px;
	}
	.openbtn.active span:nth-of-type(1) {
    	top: 29px;
    	left: 8px;
	}
	.openbtn.active span:nth-of-type(3) {
    	top: 29px;
    	left: 8px;
	}
}

/* PC用
------------------------------------------------------------*/
@media screen and (min-width:1200px) {
	/*---------- ロゴ ----------*/
	.logoWrap {
		position: relative;
		height: 68px;
		padding:17px 0 0 50px;
	}
	.logoWrap .hdLogo {
		width: 200px;
		height: 34px;
	}

	/*---------- gNav ----------*/
	/* 非表示 */
	.openbtn,
	#gNav .globalNav li.topNav,
	#gNav .addNav {
		display: none;
	}
	#gNav {
		position: relative;
		margin-top: -68px;
		right: 0;
		width: auto;
		margin-left: 255px;
		padding-right: 39px;
		z-index: 2;
	}
	#gNav ul.globalNav {
		line-height: 58px;
		padding-top: 5px;
		display: -webkit-box;
		display: flex;
		-webkit-box-pack: end;
    	-webkit-justify-content: flex-end;
    	justify-content: flex-end;
	}
	#gNav ul.globalNav ul {
		display: block;
	}
	#gNav ul.globalNav li {
		position: relative;
		padding: 0 11px;
	}
	#gNav ul.globalNav li a {
		display: block;
		text-decoration: none;
		color: #111d39;
		transition:all .4s;
	}
	#gNav ul.globalNav li a {
		position: relative;
		padding-bottom: 5px;
	}
	#gNav ul.globalNav li a.current::before {
		position: absolute;
		content: "";
		left: 0;
		bottom: 0;
		width: 100%;
		height: 5px;
		background: #0070b2;
	}
	#gNav ul.globalNav li a::before {
		position: absolute;
		content: "";
		left: 0;
		bottom: 0;
		width: 0;
		height: 5px;
		background: #0070b2;
  		transition: width 0.2s ease;
	}
	#gNav ul.globalNav li a:hover::before {
		width: 100%;
	}
	#gNav ul.globalNav ul li a {
		text-align: center;
		background: rgba(255, 255, 255, 0.85);
		margin: 10px 0 0;
		padding: 0 11px;
		border-radius: 5px;
	}
	#gNav ul.globalNav ul li a::before {
		border-radius: 0 0 5px 5px;
	}
	#gNav ul.globalNav ul li a:hover {
		background: rgba(255, 255, 255, 1);
	}
	
	/*下の階層を持っているulの指定*/
	#gNav ul.globalNav li.has-child ul{
		position: absolute;
		left: 50%;
		margin-left: -98px;
		z-index: 4;
		width:195px;
		visibility: hidden;
		opacity: 0;
		transition: all .4s;
	}
	#gNav ul.globalNav li.has-child:hover > ul,
	#gNav ul.globalNav li.has-child:active > ul {
		visibility: visible;
		opacity: 1;
	}
	
	/*---------- スクロールするとヘッダが一度消えてから高さが変わる ----------*/
	#header{
		height: 114px;
		width:100%;
	}
	#header.HeightMin {
		position: fixed;
		height: 68px;
    	z-index: 999;/*最前面へ*/
		animation: DownAnime 0.8s forwards;
	}
	#header.HeightMin .extraNav {
		/*display: none;*/
		overflow: hidden;
		height: 0;
		margin: 0;
		padding: 0;
		/*display: noneにするとページトップに戻るたびにアニメーションしてしまう*/
	}
	#header.HeightMin .logoWrap
	#header.HeightMin #gNav {
		position: fixed;
		top: 0 ;
	}
	@keyframes DownAnime{
		from {
			opacity: 0;
			transform: translateY(-114px);
		}
		to {
  			opacity: 1;
			transform: translateY(0);
		}
	}
}

/*---------- gNavの文字詰め PC用 ----------*/
@media screen and (min-width: 1230px) and (max-width:1300px) {
	#gNav ul.globalNav {
		letter-spacing: 0;
	}
}
@media screen and (min-width: 1200px) and (max-width:1229px) {
	#gNav ul.globalNav {
		letter-spacing: -0.05em;
	}
}

/*************************************************************
 2) footer
**************************************************************/
footer {
	width: 100%;
}

/*---------- ベージュバック ----------*/
footer .bg_beige {
	text-align: center;
	padding-top: 40px;
	padding-bottom: 32px;
}
/* お問い合わせ・資料請求・メルマガ登録 ボタン */
footer .bg_beige .contactFt {
	line-height: 60px;
	text-align: center;
}
footer .bg_beige .contactFt a {
	position: relative;
	display: block;
	width: 100%;
	max-width: 590px;
	height: 100%;
	font-weight: 500;
	background-color: #0070b2; 
	color: #fff;
	padding: 0 5px 0 22px;
	margin: 0 auto;
	border-radius: 30px;
	text-decoration: none;
	box-sizing: border-box;
}
footer .bg_beige .contactFt a:hover {
	background-color: #111d39;
	transition: 0.3s linear;
}
footer .bg_beige .contactFt a::before {
	position: absolute;
	content: "";
	width: 22px;
	height: 23px;
	top: 50%;
	left: 22px;
	margin-top: -11px;
	background: url(../img/cct/common/icon_contact.png) no-repeat;
	background-size: auto 100%;
}
@media screen and (max-width:350px) {
	/* 文字サイズを小さく */
	footer .bg_beige .contactFt a {
		font-size: 1.3rem;
	}
}
@media screen and (max-width:400px) {
	/* アイコン非表示 */
	footer .bg_beige .contactFt a {
		padding: 0 5px;
	}
	footer .bg_beige .contactFt a::before {
		background: none;
	}
}
/* 電話 */
footer .bg_beige .telFt {
	width: 100%;
	max-width: 590px;
	margin: 35px auto 0;
}
footer .bg_beige .telFt a {
	text-decoration: none;
}
footer .bg_beige .telFt p.txt {
	font-size: 1.3rem;
	border: solid 1px #8d909c;
}
footer .bg_beige .telFt p.txt .time {
	display: inline-block;
	padding-left: 1em;
}
@media screen and (max-width:350px) {
	/* 文字サイズを小さく */
	footer .bg_beige .telFt p.txt {
		font-size: 1.2rem;
	}
}
footer .bg_beige .telFt p.num {
	display: inline-block;
	line-height: 1.4;
	font-size: 2.3rem;
	font-weight: 600;
	margin: 8px 0 0;
}
footer .bg_beige .telFt p.num .jp {
	font-size: 1.9rem;
	font-weight: 400;
}
footer .bg_beige .telFt p.num br {
	display: none;
}
footer .bg_beige .telFt p.num .group {
	padding-left: 1em;
}

/*---------- ネイビーバック ----------*/
footer .bg_navy ul.ftMenu ul li {
	line-height: 1.1;
}
footer .bg_navy ul.ftMenu ul li a {
	display: block;
	color: #fff;
	border-right: solid 1px rgba(255, 255, 255, 0.5);
	text-decoration: none;
}
footer .bg_navy .leftSide p.ftLogo {
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}
footer .bg_navy .leftSide p.companyAddress span {
	display: inline-block;
}

/* スマホ用
------------------------------------------------------------*/
@media screen and (max-width:1079px) {	
	/*---------- ネイビーバック ----------*/
	footer .bg_navy {
		text-align: center;
		padding-bottom: 80px;
	}
	/* フッターメニュー */
	footer .bg_navy ul.ftMenu ul {
		display: -webkit-box;
		display: flex;
		-webkit-flex-wrap: wrap;
    	flex-wrap: wrap;
	}
	footer .bg_navy ul.ftMenu ul li {
		width: 33.333%;
		line-height: 1.1;
		padding: 17px 0;
	}
	footer .bg_navy ul.ftMenu ul,
	footer .bg_navy ul.ftMenu ul li:nth-of-type(1),
	footer .bg_navy ul.ftMenu ul li:nth-of-type(2),
	footer .bg_navy ul.ftMenu ul li:nth-of-type(3) {	
		border-bottom: solid 1px rgba(255, 255, 255, 0.5);
	}
	/* 会社情報 */
	footer .bg_navy .leftSide p.ftLogo {
		width: 120px;
		height: 85px;
		background: url(../img/cct/common/logo2.png) no-repeat;
		background-size: 100% auto;
		margin: 60px auto 35px;
	}
	footer .bg_navy .leftSide p.companyName {
		font-size: 1.7rem;
		margin: 30px 0 6px;
	}
	footer .bg_navy .leftSide p.companyAddress {
		font-size: 1.1rem;
		line-height: 1.7;
		margin: 0 0 30px;
	}
	footer .bg_navy .leftSide .copyright {
		font-size: 1rem;
		letter-spacing: 0;
	}
}
@media screen and (max-width:599px) {	
	footer .bg_beige {
		padding-top: 38px;
		padding-bottom: 34px;
	}
	footer .bg_beige .telFt p.num br {
		display: inline;
	}
	footer .bg_beige .telFt p.num .group {
		padding-left: 0;
	}
	footer .bg_navy {
		padding-bottom: 60px;
	}
	/* フッターメニュー　3の倍数は右線なし */
	footer .bg_navy ul.ftMenu ul li:nth-of-type(3n) a {
		border-right: none;
	}
	footer .bg_navy ul.ftMenu ul li {
		padding: 17px 0;
	}
	footer .bg_navy .leftSide p.ftLogo {
		display: none;
	}
	footer .bg_navy .leftSide p.companyAddress {
		margin: 0 0 20px;
	}
}
@media screen and (max-width:350px) {
	/* フッターメニューの文字を小さく */
	footer .bg_navy ul.ftMenu ul li {
		font-size: 1.3rem;
	}
}

/* タブレット用
------------------------------------------------------------*/
@media screen and (min-width:600px) and (max-width:1079px) {	
	footer .bg_navy ul.ftMenu ul li {
		width: 16.666%;
	}
	footer .bg_navy ul.ftMenu ul li:nth-of-type(1),
	footer .bg_navy ul.ftMenu ul li:nth-of-type(2),
	footer .bg_navy ul.ftMenu ul li:nth-of-type(3) {	
		border-bottom: none;
	}
	footer .bg_navy ul.ftMenu ul li:last-of-type a {
		border-right: none;
	}
	/* 会社情報 */
	footer .bg_navy .leftSide p.ftLogo {
		width: 136px;
		height: 95px;
		margin: 80px auto 30px;
	}
	footer .bg_navy .leftSide p.companyName {
		font-size: 1.8rem;
		margin: 0 0 6px;
	}
	footer .bg_navy .leftSide p.companyAddress {
		margin: 0 0 50px;
	}
	footer .bg_navy .leftSide p.companyAddress br {
		display: none;
	}
	footer .bg_navy .leftSide p.companyAddress span {
		margin-left: 1em;
	}
}

/* PC用
------------------------------------------------------------*/
@media screen and (min-width:1080px) {
	/*---------- ベージュバック ----------*/
	footer .bg_beige {
		padding-top: 50px;
		padding-bottom: 37px;
	}
	/* お問い合わせ・資料請求・メルマガ登録 ボタン */
	footer .bg_beige .contactFt {
		line-height: 64px;
		margin: 0 0 40px;
	}
	footer .bg_beige .contactFt a {
		border-radius: 32px;
	}
	/* 電話 */
	footer .bg_beige .telFt {
		margin: 0 auto;
	}
	footer .bg_beige .telFt p.txt {
		font-size: 1.5rem;
	}
	footer .bg_beige .telFt p.txt .time {
		padding-left: 2em;
	}
	footer .bg_beige .telFt p.num {
		font-size: 2.5rem;
	}
	footer .bg_beige .telFt p.num .jp {
		font-size: 2.1rem;
	}
}
@media screen and (min-width:1040px) {
	/*---------- ネイビーバック ----------*/
	footer .bg_navy {
		padding: 50px 50px 47px;
		display: -webkit-box;
		display: flex;
		-webkit-box-pack: justify;
    	-webkit-justify-content: space-between;
    	justify-content: space-between;
		-webkit-box-orient: horizontal;
    	-webkit-box-direction: reverse;
    	-webkit-flex-direction: row-reverse;
    	flex-direction: row-reverse;
	}
	/* フッターメニュー */
	footer .bg_navy ul.ftMenu ul {
		margin-bottom: 25px;
		display: -webkit-box;
		display: flex;
		-webkit-box-pack: end;
    	-webkit-justify-content: flex-end;
    	justify-content: flex-end;	
	}
	footer .bg_navy ul.ftMenu ul li a {
		padding: 0 18px;
	}
	footer .bg_navy ul.ftMenu ul li:last-of-type a {
		border-right: none;
		padding-right: 0;
	}
	footer .bg_navy ul.ftMenu a span:hover {
		opacity: 0.6;
		transition: 0.3s linear;
	}
	/* 会社情報 */
	footer .bg_navy .leftSide p.ftLogo {
		width: 200px;
		height: 34px;
		background: url(../img/cct/common/logo3.png) no-repeat;
		background-size: 100% auto;
		margin: 0 0 35px;
	}
	footer .bg_navy .leftSide p.companyName {
		font-size: 1.9rem;
	}
	footer .bg_navy .leftSide p.companyAddress {
		font-size: 1.3rem;
	}
	footer .bg_navy .leftSide .copyright {
		font-size: 1rem;
		position: absolute;
		bottom: 50px;
		right: 50px;
	}
}
@media screen and (min-width:1200px) {
	/*---------- ベージュバック ----------*/
	footer .bg_beige {
		display: -webkit-box;
		display: flex;
		-webkit-box-pack: center;
    	-webkit-justify-content: center;
    	justify-content: center;
		align-items: flex-start;
	}
	footer .bg_beige .contactFt a {
		width: 450px;
	}
}
@media screen and (min-width:1280px)  {
	/* 住所の改行なし */
	footer .bg_navy .leftSide p.companyAddress br {
		display: none;
	}
	footer .bg_navy .leftSide p.companyAddress span {
		margin-left: 1em;
	}
}

/*************************************************************
 3) fixed_tab
**************************************************************/
#fixed_tab {
	position: relative;
	z-index: 1;
}
#fixed_tab ul {
	position: fixed;
	width: 100%;
	bottom: 0;
	left: 0;
	display: -webkit-box;
	display: flex;
	align-items: center;
}
#fixed_tab li a {
	display: block;
	width: 100%;
	height: 100%;
	color: #fff;
	text-decoration: none;
}
/* アクセス　予約検索 */
#fixed_tab li.site {
	width: 32%;
	font-size: 1.3rem;
	line-height: 50px;
	text-align: center;
	background-color: #0070b2;
	border-radius: 5px 5px 0 0;
	margin: 0 0 0 5px;
}
#fixed_tab li.site a {
	position: relative;
	padding: 0 0 0 25px;
	box-sizing: border-box;
	transition: 0.3s linear;
}
#fixed_tab li.site a::before {
	position: absolute;
	width: 23px;
	height: 24px;
	content: "";
	top: 50%;
	left: 50%;
	margin: -12px 0 0 -3.6em;
	background-repeat: no-repeat;
	background-position: right;
	background-size: auto 100%;
}
#fixed_tab li.accessTab a::before {
	background-image: url(../img/cct/common/icon_access.png);
}
#fixed_tab li.searchTab a::before {
	background-image: url(../img/cct/common/icon_search.png);
}
/* SNS */
#fixed_tab li.sns {
	position: absolute;
	width: 40px;
	height: 40px;
	background-repeat: no-repeat;
	background-size: 100% auto;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	background-color: #fff;
	border-radius: 20px;
}
#fixed_tab li.fbTab {
	background-image: url(../img/cct/common/icon_fb.png);
	right: 4%;
}
#fixed_tab li.igTab {
	background-image: url(../img/cct/common/icon_ig.png);
	right: 18.5%;
}

@media screen and (min-width:450px)  {
	/* SNSアイコンの位置 */
	#fixed_tab li.fbTab {
		right: 20px;
	}
	#fixed_tab li.igTab {
		right: 80px;
	}
}

/* PC用
------------------------------------------------------------*/
@media screen and (min-width:770px)  {
	#fixed_tab ul {
		position: fixed;
		display: block;
		width: 68px;
		top: 50%;
		bottom: auto;
		left: auto;
		right: 0;
		margin-top: -200px;
	}
	/* アクセス　予約検索 */
	#fixed_tab li.site {
		width: 100%;
		height: 140px;
		font-size: 1.4rem;
		line-height: 68px;
		text-align: center;
		writing-mode: vertical-rl;
		border-radius: 5px 0 0 5px;
		margin: 0 0 5px;
	}
	#fixed_tab li.site a {
		padding: 34px 0 0;
		border-radius: 5px 0 0 5px;
	}
	#fixed_tab li.site a::before {
		position: absolute;
		width: 26px;
		height: 28px;
		top: 17px;
		left: 50%;
		margin: 0 0 0 -13px;
		background-position: center;
	}
	#fixed_tab li.site a:hover {
		background-color: #111d39;
	}
	/* SNS */
	#fixed_tab li.sns {
		position: relative;
		transition: 0.3s linear;
	}
	#fixed_tab li.fbTab,
	#fixed_tab li.igTab {
		right: auto;
		margin: 23px auto 0;
	}
	#fixed_tab li.sns:hover {
		background-color: #111d39;
	}
	#fixed_tab li.fbTab:hover {
		background-image: url(../img/cct/common/icon_fb2.png);
	}
	#fixed_tab li.igTab:hover {
		background-image: url(../img/cct/common/icon_ig2.png);
	}
}

/*************************************************************
 4) @media print
**************************************************************/
@media print {
	.no-print {
		display: none;
	}
}
/**************************************************************
 /css/design.css
****************************************************************
 1) ページ共通
 　1-1) secTitle
 	1-2) plan
	1-3) otherPage
	1-4) introduction
	1-5) 開いたときのアニメーション
 2) クルーズプラン
 3) クラブハウスプラン
 4) 料理
 5) パーティーTOP
 6) パーティー下層ページ共通
 7) パーティー　料金
 8) パーティー　レストランシップ紹介
 9) パーティー　クルージングコース
 10) パーティー　陸上クラブハウス紹介
 11) クリスマスデコレーション
------------------------------------------------------------*/



/**************************************************************
 1) ページ共通
 1-1) secTitle
**************************************************************/
.secTitle {
	text-align: center;
}
.secTitle span {
	display: block;
}
.secTitle .en {
	font-size: 3.6rem;
	line-height: 1.08;
	margin: 0 0 4px;
}
.secTitle .mincho {
	font-size: 1.2rem;
	line-height: 1.4;
}
p.lead {
	line-height: 1.7;
	margin: 22px 0 0;
}

/* PC用
------------------------------------------------------------*/
@media screen and (min-width:770px) {
	.titleWrap {
		max-width: 1300px;
		margin: 0 auto;
	} 
	.secTitle {
		text-align: left;
	}
	.secTitle span {
		display: inline-block;
	}
	.secTitle .en {
		font-size: 4.2rem;
		padding-right: 15px;
	}
	.secTitle .mincho {
		font-size: 1.3rem;
	}
	p.lead {
		margin: 25px 0 110px;
	}
}

/**************************************************************
 1) ページ共通
 1-2) plan
**************************************************************/
.plan {
	background-color: #f0f6fa;
	padding: 70px 0 50px;
}
.plan.special {
	border-bottom: solid 1px #e5e9ec;
}
.plan.special::before,
.partyPlan.cruise::before,
.partyPlan.clubhouse::before,
.partyPlan.set::before {
	position: absolute;
	content: "";
	display:  block;
	width: 90%;
	height: 1px;
	background: #c1c5c7;
	top: 0;
	left: 5%;
}

/*---------- カルーセルで1つ表示の時 ----------*/
.carouselWrap {
	max-width: 340px;
	margin: 22px auto 0;
}
@media screen and (min-width:750px) {
	/*---------- カルーセルで2つ表示の時 ----------*/
	.carouselWrap {
		max-width: 94%;
	}
	/* ボックスの高さを揃える */
	.carouselWrap .slick-track {
  		display: flex;
	}
	.carouselWrap .slick-slide {
  		height: auto !important;
	}
}
/*---------- プランボックス ----------*/
.planBox {
	line-height: 1.6;
	margin: 10px 20px 0;
	background-color: #fff;
	border: solid 1px #d8d8d8;
	border-radius: 8px;
}
.planBox a {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	text-decoration: none;
}
.planBox a p.planType {
	position: absolute;
	display: inline-block;
	font-size: 1.2rem;
	line-height: 2.2;
	font-family: 'Noto Serif JP', 'Hiragino Mincho ProN', 'Hiragino Mincho Pro', '游明朝', 'Yu Mincho', serif;
	padding: 0 12px;
	color: #fff;
	background-color: #0070b2;
	border-radius: 3px;
	top: -10px;
	right: 20px;
}
.planBox a p.planType.clubhouse {
	background-color: #a9274c;
}
.planBox a p.planType.set {
	background-color: #006837;
}
.planBox a img  {
	width: 100%;
	border-radius: 8px 8px 0 0;
}
.planBox a .txtWrap {
	padding: 16px 18px;
}
.planBox a .subCatch {
	font-size: 1.4rem;
	font-family: 'Noto Serif JP', 'Hiragino Mincho ProN', 'Hiragino Mincho Pro', '游明朝', 'Yu Mincho', serif;
	letter-spacing: 0.03em;
	color: #111d39;
}
.planBox a .planName {
	font-size: 1.7rem;
	font-family: 'Noto Serif JP', 'Hiragino Mincho ProN', 'Hiragino Mincho Pro', '游明朝', 'Yu Mincho', serif;	
	letter-spacing: 0.03em;
	color: #111d39;
	margin: 8px 0 0;
}
@media screen and (max-width:769px) {
	.planBox a .subCatch,
	.planBox a .planName {
		font-weight: 600;
	}
}
.planBox a .txt {
	font-size: 1.4rem;
	margin: 22px 0 0;
}
.planBox a .period {
	display: inline-block;
	font-size: 1.2rem;
	line-height: 1.4;
	padding: 2px 9px 2px 11px;
	border: solid 1px #d8d8d8;
	border-radius: 3px;
	margin: 8px 0 0;
}
/*---------- ドットナビゲーションの設定 ----------*/
.carouselWrap .slick-dots {
    text-align:	center;
	margin: 12px 0 0 0;
}
.carouselWrap .slick-dots li {
    display:	inline-block;
	margin:	0 6px;
}

.carouselWrap .slick-dots button {
    color: transparent;
    outline: none;
    width: 10px;/*ドットボタンのサイズ*/
    height: 10px;/*ドットボタンのサイズ*/
    display: block;
    border-radius: 50%;
    background:	#aeaeae;/*ドットボタンの色*/
}

.carouselWrap .slick-dots .slick-active button{
    background: #0070b2;/*ドットボタンの現在地表示の色*/
}
/*---------- トップページのベーシックプラン ----------*/
.topPlan.basic {
	padding: 70px 0 40px;
}
.topPlan.basic .planBox {
	text-align: center;
	background-color: transparent;
	border: none;
	border-radius: 0;
}
.topPlan.basic .planBox a img  {
	border-radius: 8px;
}
.topPlan.basic .planBox a .planName {
	font-size: 1.8rem;
	margin: 13px 0 0;
	font-weight: 600;
}

/* PC用
------------------------------------------------------------*/
@media screen and (min-width:770px) {
	.plan {
		padding: 140px 0 40px;
	}
	.plan.special::before,
	.partyPlan.cruise::before,
	.partyPlan.clubhouse::before,
	.partyPlan.set::before {
		width: 94%;
		left: 3%;
	}
	.carouselWrap {
		width: 100%;
		max-width: 1200px;
		-webkit-box-pack: start;
    	-webkit-justify-content: flex-start;
    	justify-content: flex-start;
		margin: 60px auto 0;
		-webkit-flex-wrap: wrap;
    	flex-wrap: wrap;
	}
	/*---------- プランボックス ----------*/
	.planBox {
		width: 360px;
		line-height: 1.7;
		margin: 0 30px 100px;
	}
	.carouselWrap .planBox:nth-child(3n) {
		margin:0 0 100px 30px;
	}
	.carouselWrap .planBox:nth-child(3n-2) {
		margin: 0 30px 100px 0;
	}
	.planBox a:hover {
		opacity: 0.7;
	}
	.planBox a p.planType {
		font-size: 1.3rem;
	}
	.planBox a .txtWrap {
		padding: 23px 25px;
	}
	.planBox a .subCatch {
		font-size: 1.6rem;
	}
	.planBox a .planName {
		font-size: 1.9rem;
		margin: 20px 0 0;
	}
	.planBox a .txt {
		font-size: 1.5rem;
		margin: 26px 0 0;
	}
	.planBox a .period {
		display: inline-block;
		margin: 10px 0 0;
	}
/*---------- トップページのベーシックプラン ----------*/
	.topPlan.basic {
		padding: 140px 0 40px;
	}
	.topPlan.basic .carouselWrap {
		-webkit-box-pack: justify;
    	-webkit-justify-content: space-between;
    	justify-content: space-between;
	}
	.topPlan.basic .carouselWrap .planBox {
		width: 250px;
		margin: 0 0 80px;
	}
}

/* 770〜1199pxの崩れ修正
------------------------------------------------------------*/
@media screen and (min-width:770px) and  (max-width:1199px) {
	/* 2列に */
	.carouselWrap {
		-webkit-justify-content: space-around;
    	-ms-flex-pack: distribute;
    	justify-content: space-around;
	}
	/*---------- プランボックス ----------*/
	.planBox,
	.carouselWrap .planBox:nth-child(3n),
	.carouselWrap .planBox:nth-child(3n-2) {
		margin: 0 10px 100px;
	}
	/* 最終列にボックスが一つの場合、左の列に揃える */
	.carouselWrap .planBox:nth-child(2n+1):last-child {
		margin-right: 50%;
	}
	/*---------- トップページのベーシックプラン ----------*/
	/* ボックスのサイズを小さくして4列キープ */
	.topPlan.basic .carouselWrap {
		-webkit-justify-content: space-around;
    	-ms-flex-pack: distribute;
    	justify-content: space-around;
	}
	.topPlan.basic .carouselWrap .planBox {
		width: 220px;
	}
}
@media screen and (min-width:900px) and  (max-width:1199px) {
	.carouselWrap {
		padding: 0 50px;
	}
}
@media screen and (min-width:770px) and  (max-width:1023px) {
/*---------- トップページのベーシックプラン ----------*/
	.topPlan.basic .carouselWrap {
		padding: 0;
		max-width: 700px; /* 2列に */
	}
	.topPlan.basic .carouselWrap .planBox {
		width: 250px; /* ボックスのサイズを元に戻す */
	}
}

/* クルーズとクラブハウスのベーシックプラン
------------------------------------------------------------*/
/* 2列 */
@media screen and (min-width:1200px) {
	.cruisePlan.basic .carouselWrap,
	.clubhousePlan.basic .carouselWrap {
		width: 780px;
		-webkit-box-pack: justify;
   		-webkit-justify-content: space-between;
    	justify-content: space-between;
	}
	.cruisePlan.basic .carouselWrap .planBox,
	.clubhousePlan.basic .carouselWrap .planBox {
		margin:0 0 100px !important;
	}
}

/**************************************************************
 1) ページ共通
 1-3) otherPage
**************************************************************/
/* トップページ */
.topOtherPage {
	background: #f7f6f3;
}
.otherPage-item .image {
	width: 88%;
	height: 225px;
	background-repeat: none;
	background-position: center;
	background-size: cover;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}
.otherPage-item.right .image {
	margin: 0 0 0 auto;
}
/* 画像 */
.otherPage-item.wedding .image {
	background-image: url(../img/cct/index/wedding.jpg);
	border-radius: 0 0 30px 0;
}
.otherPage-item.party .image {
	background-image: url(../img/cct/index/party.jpg);
	border-radius: 30px 0 0 30px;
}
.otherPage-item.cuisine .image {
	background-image: url(../img/cct/index/cuisine.jpg);
	border-radius: 0 30px 30px 0;
}
.otherPage-item.ladyCrystal .image {
	background-image: url(../img/cct/cruise/ladyCrystal.jpg);
	border-radius: 0 0 30px 0;
}
/*.otherPage-item.cruisingCourse .image {
	background-image: url(../img/cct/cruise/cruisingCourse.jpg);
	border-radius: 30px 0 0 30px;
}*/
.otherPage-item.clubHouse .image {
	background-image: url(../img/cct/clubhouse/clubHouse.jpg);
	border-radius: 0 0 30px 0;
}
.otherPage-item.ladyCrystal.ch .image {
	border-radius: 30px 0 0 30px;
}
.otherPage-item.kitchen .image {
	background-image: url(../img/cct/cuisine/kitchen.jpg);
	border-radius: 0 0 0 30px;
}
.otherPage-item.chef .image {
	background-image: url(../img/cct/cuisine/chef.jpg);
	border-radius: 0 30px 30px 0;
}
/* 画像ここまで */
.otherPage-item .txtWrap {
	padding: 28px 20px 60px;
}
.otherPage-item .secTitle {
	text-align: left;
	margin: 0 0 24px;
}
.otherPage-item .catch {
	font-size: 1.8rem;
	line-height: 1.7;
	margin: 0 0 15px;
}
.otherPage-item .link {
	font-size: 1.6rem;
	line-height: 60px;
}
.otherPage-item .link + .link {
	margin-top: 10px;
}
.otherPage-item .link a {
	position: relative;
	display: inline-block;
	padding-right: 74px;
	text-decoration: none;
}
.otherPage-item .link a::after {
	position: absolute;
	content: "";
	width: 60px;
	height: 60px;
	top: 0;
	right: 0;
	background: #d7d5c8 url(../img/cct/common/arrow3.png) no-repeat center/13px auto;
	border: solid 1px #d7d5c8;
	border-radius: 50%;	
}
/* トップページ */
.topOtherPage .otherPage-item .link a::after {
	background-color: #fff;
}
.otherPage-item .link a:hover::after,
.topOtherPage .otherPage-item .link a:hover::after {
	border-color: #111d39;
	background: #111d39 url(../img/cct/common/arrow4.png) no-repeat center/13px auto;
	transition: 0.3s linear;
}
/* 料理 */
.otherPage-item.chef {
    -webkit-align-items: center;
    align-items: center;
}
.otherPage-item.chef .image {
	width: 50%;
	height: 260px;
}
.otherPage-item.chef .txtWrap {
	width: 50%;
	padding: 0 3% 0 6%;
}
.otherPage-item.chef .catch {
	font-size: 2.1rem;
}
.otherPage-item.chef .catch small {
	font-size: 70%;
}
.otherPage .txt {
	font-size: 1.4rem;
	text-align: justify;
}
.otherPage .txt.chef {
	padding-top: 25px;
	padding-bottom: 65px;
}

/* タブレット用
------------------------------------------------------------*/
@media screen and (min-width:750px) {
	.otherPage-item .image,
	.otherPage-item.chef .image {
		height: 400px;
	}
	.otherPage-item .txtWrap {
		padding: 28px 40px 60px;
	}
	.otherPage-item .catch br {
		display: none;
	}
}

/* PC用
------------------------------------------------------------*/
@media screen and (min-width:770px) {
	.otherPage-item {
    	-webkit-align-items: center;
    	align-items: center;
	}
	.otherPage-item.right {
    	-webkit-flex-direction: row-reverse;
    	flex-direction: row-reverse;
	}
	.otherPage-item + .otherPage-item {
		margin-top: 140px;
	}
	.otherPage-item.ladyCrystal .image {
		height: 600px;
	}
	.otherPage-item .image {
		width: 40%;
		height: 550px;
	}
	/* 画像の角アール調整 */
	.otherPage-item.cuisine .image {
		border-radius: 0 30px 0 0;
	}
	.otherPage-item.ladyCrystal.ch .image {
		border-radius: 30px 0 0 0;
	}
	.otherPage-item.ladyCrystal .image {
		border-radius: 0;
	}
	.otherPage-item .txtWrap {
		width: 60%;
		padding: 0 60px;
		margin: 0 auto;
	}
	.otherPage-item .secTitle {
		margin: 0 0 50px;
	}
	.otherPage-item .catch {
		font-size: 2.2rem;
		margin: 0 0 18px;
	}
	.otherPage-item .catch br {
		display: inline;
	}
	.otherPage-item .txt {
		margin: 0 0 40px;
	}
	.otherPage-item .txt br {
		display: none;
	}
	.otherPage-item .link {
		font-size: 1.7rem;
		line-height: 60px;
	}
	.otherPage-item .link + .link {
		margin-top: 20px;
	}
	/* 料理 */
	.otherPage-item.kitchen .image {
		width: 50%;
		background-position: right center;
	}
	.otherPage-item.kitchen .catch br {
		display: inline;
	}
	.otherPage-item.kitchen .txt {
		font-size: 1.5rem;
		margin: 0;
	}
	.otherPage-item.chef {
		padding: 0 50px 100px;
    	-webkit-justify-content: center;
    	justify-content: center;
	}
	.otherPage-item.chef .image {
		width: 450px;
		height: 550px;
		border-radius: 40px;
	}
	.otherPage-item.chef .txtWrap {
		width: auto;
		padding: 0 0 0 6%;
		margin: 0;
	}
	.otherPage-item.chef .catch {
		font-size: 2.4rem;
	}
	.otherPage-item.chef .txt br {
		display: inline;
	}
}
@media screen and (min-width:1200px) {
	.otherPage-item .txtWrap {
		width: auto;
	}
	.otherPage-item .catch br {
		display: none;
	}
	.otherPage-item .txt br {
		display: inline;
	}
}

/**************************************************************
 1) ページ共通
 1-4) introduction
**************************************************************/
.introduction .kv {
	width: 100%;
	height: 350px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}
.introduction.cruise .kv {
	background-image: url(../img/cct/cruise/kv.jpg);
}
.introduction.clubhouse .kv {
	background-image: url(../img/cct/clubhouse/kv.jpg);
}
.introduction.party .kv {
	background-image: url(../img/cct/party/kv.jpg);
}
.introduction.cuisine .kv {
	background-image: url(../img/cct/cuisine/kv.jpg);
}
.introduction .pageTitle {
	line-height: 1.03;
	padding: 62px 20px 53px;
}
.introduction .pageTitle .en {
	font-size: 4rem;
	font-weight: 500;
	margin: 0 0 10px;
}
.introduction.clubhouse .pageTitle .en {
	font-size: 3.6rem;
}
.introduction .leadWrap .image {
	height: 210px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}
.introduction.cruise .leadWrap .image {
	background-position: left center;
	background-image: url(../img/cct/cruise/image01.jpg);
}
.introduction.clubhouse .leadWrap .image {
	background-image: url(../img/cct/clubhouse/image01.jpg);
}
.introduction.cuisine .leadWrap .image {
	background-image: url(../img/cct/cuisine/image01.jpg);
}
.introduction .txtWrap {
	padding: 0 20px 45px;
}
.cruise .txtWrap,
.clubhouse .txtWrap {
	padding: 0 20px 65px;
}
.introduction .catch {
	font-size: 1.9rem;
	margin: 0 0 25px;
}
.introduction .txt {
	margin: 35px 0 0;
}
.introduction .note {
	display: block;
	font-size: 1.3rem;
	line-height: 1.5;
	text-indent: -1em;
	padding: 12px 12px 12px 25px;
	margin: 20px 0 0;
}
@media screen and (max-width:769px) {
	.introduction .pageTitle,
	.introduction .catch {
		text-align: center;
	}
	.introduction .pageTitle span {
		display: block;
	}
}
@media screen and (min-width:750px) {
	.introduction .kv {
		height: 550px;
	}
	.introduction .catch br.spOnly {
		display: none;
	}
	.introduction .leadWrap .image {
		height: 250px;
	}
	.introduction .txtWrap {
		padding: 0 40px 60px;
	}
}

/* PC用
------------------------------------------------------------*/
@media screen and (min-width:770px) {
	.introduction .pcFlexbox {
		-webkit-box-align: center;
    	-webkit-align-items: center;
    	align-items: center;
		-webkit-box-orient: horizontal;
    	-webkit-box-direction: reverse;
    	-webkit-flex-direction: row-reverse;
    	flex-direction: row-reverse;
	}
	.introduction .kvWrap {
		padding: 0 0 100px;
	}
	.introduction .kv {
		width: 64%;
		border-radius: 40px 0 0 40px;
	}
	.introduction .pageTitle {
		width: 36%;
		padding: 0 1% 0 6%;
	}
	.introduction.clubhouse .pageTitle {
		padding: 0 0.5% 0 3%;
	}
	.introduction .pageTitle span {
		display: block;
	}
	.introduction .pageTitle .en {
		font-size: 4.8rem;
		margin: 0 0 14px;
	}
	.introduction.clubhouse .pageTitle .en {
		font-size: 4.2rem;
	}
	.introduction .leadWrap {
		padding: 0 0 150px;
		align-items: stretch;	
	}
	.introduction .leadWrap .image {
		width: 34%;
		height: auto;
		border-radius: 0 40px 40px 0;
	}
	.introduction .leadWrap .txtWrap {
		width: 51%;
		padding: 60px 10% 44px 0;
	}
	.introduction .catch {
		font-size: 2.4rem;
		margin: 0 0 50px;
	}
	.introduction .txt {
		font-size: 1.7rem;
		line-height: 2.2;
		margin: 0;
	}
}
@media screen and (max-width:669px) {
	.introduction {
		padding-top: 60px;
	}
}
@media screen and (min-width:770px) and (max-width:1199px) {
	.introduction {
		padding-top: 68px;
	}
	.introduction .leadWrap .txtWrap {
		width: 60%;
	}
}

/**************************************************************
 1) ページ共通
 1-5) 開いたときのアニメーション
**************************************************************/
/* 0〜1秒 */
body {
	animation-name: fadeInAnime0-10;
	animation-duration: 1s;
	animation-fill-mode: forwards;
	opacity:0;
}
@keyframes fadeInAnime0-10 {
  from {
		opacity: 0;
  }
  to {
		opacity: 1;
  }
}

/**************************************************************
 2) クルーズプラン
**************************************************************/

/**************************************************************
 3) クラブハウスプラン
**************************************************************/

/**************************************************************
 4) 料理
**************************************************************/
.menu {
	text-align: center;
	padding: 80px 0 0;
}
.menu .titleWrap {
	padding-bottom: 60px;
}
.menu .titleWrap .lead {
	font-size: 1.6rem;
	line-height: 2;
	text-align: left;
}
.menu .item {
	padding-bottom: 80px;
}
.menu .item .image {
	height: 210px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	border-radius: 30px;
	margin: 0 0 20px;
}
.menu .item .itemTitle {
	margin: 0 0 12px;
}
.menu .item.lunch .image {
	background-image: url(../img/cct/cuisine/menu01.jpg);
}
.menu .item.dinner .image {
	background-image: url(../img/cct/cuisine/menu02.jpg);
}
.menu .item.party .image {
	background-image: url(../img/cct/cuisine/menu03.jpg);
}
.menu .item .itemTitle span {
	display: block;
	line-height: 1.1;
}
.menu .item .itemTitle .en {
	font-size: 2.9rem;	
}
.menu .item .itemTitle .mincho {
	font-size: 1.2rem;	
}
.menu .item .txt {
	text-align: left;
	margin: 0 0 20px;
}
.menu .item .beigeBtn {
	margin: 0 auto;
}
.menu .item .beigeBtn + .beigeBtn {
	margin-top: 10px;
}

@media screen and (min-width:750px) {
	.menu .item .image {
		height: 300px;
	}
}

/* PC用
------------------------------------------------------------*/	
@media screen and (min-width:770px) {
	.menu {
		text-align: left;
		padding: 130px 0 150px;
	}
	.menu .titleWrap p.lead {
		font-size: 1.7rem;
		margin: 10px 0 0;
	}
	.menu .item {
		max-width: 1300px;
		margin: 0 auto;
		padding-bottom: 0;
		-webkit-justify-content: flex-start;
    	justify-content: flex-start;
    	-webkit-align-items: center;
    	align-items: center;
	}
	.menu .item + .item {
		margin-top: 100px;
	}
	.menu .item .image {
		width: 58%;
		height: 400px;
		margin: 0 7% 0 0;
		border-radius: 40px;
	}
	.menu .item .txtWrap {
		width: 34%;
	}
	.menu .item .itemTitle {
		display: inline-block;
	}
	.menu .item .itemTitle span {
		display: inline-block;
	}
	.menu .item .itemTitle .en {
		font-size: 3.5rem;
		padding-right: 12px;
	}
	.menu .item .itemTitle .mincho {
		margin: 0 0 15px;	
	}
	.menu .item .txt {
		margin: 0 0 37px;
	}
	.menu .item .beigeBtn {
		margin: 0;
	}
	.menu .item .beigeBtn + .beigeBtn {
		margin-top: 15px;
	}
}

/**************************************************************
 5) パーティー
**************************************************************/
.underLink {
	max-width: 1200px;
	margin:  10px auto 65px;
    -webkit-justify-content: center;
    justify-content: center;
	-webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}
.underLink li {
	margin: 5px 10px;
}
.intro2 .catch {
	font-size: 1.9rem;
	text-align: center;
	padding: 0 20px 35px;
}
.intro2 .txt {
	padding: 0 20px 45px;
}
.intro2 .txt br {
	display: none;
}
.intro2 .image {
	-webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	margin: 0 0 70px;
}
.intro2 .image img {
	width: 48.7%;
	margin: 5px 0;
}
.intro2 .image img:first-child {
	border-radius: 0 8px 8px 0;	
}
.intro2 .image img:nth-child(2) {
	border-radius: 8px 0 0 8px;	
}
.intro2 .image img:nth-child(3) {
	border-radius: 0 8px 8px 0;	
}
.intro2 .image img:nth-child(4) {
	border-radius: 8px 0 0 8px;	
}
@media screen and (min-width:770px) {
	.introduction.party .kvWrap {
		padding: 0 0 55px;
	}
	.underLink {
		margin:  10px auto 155px;
	}
	.underLink li {
		margin:  7.5px 10px;
	}
	.intro2 .catch {
		font-size: 2.4rem;
		padding: 0 40px 50px;
	}
	.intro2 .txt {
		font-size: 1.7rem;
		line-height: 2.2;
		padding: 0 40px 160px;
	}
	.intro2 .image {
		width: 100%;
		height: 200px;
		margin: 0 0 80px;
    	-webkit-justify-content: center;
    	justify-content: center;
		overflow: hidden;
		-webkit-flex-wrap: nowrap;
    	flex-wrap: nowrap;	
	}
	.intro2 .image img {
		width: 380px;
		margin: 0 10px;
		border-radius: 8px !important;
	}
}
@media screen and (min-width:900px) {
	.intro2 .txt {
		text-align: center;
	}
	.intro2 .txt br {
		display: inline;
	}
}
@media screen and (min-width:900px) and (max-width:999px) {
	.underLink {
		width: 600px;
	}
}
@media screen and (min-width:1000px) and (max-width:1199px) {
	.underLink li {
		width: 22%;
	}
}

/**************************************************************
 6) パーティー下層ページ共通
**************************************************************/
/*パンくずリスト*/
.breadcrumbs {
	padding-top: 60px;
}
.breadcrumbs ol {
	font-size: 1.1rem;
	line-height: 1.3;
	padding: 7px 10px 7px 20px;
	background-color: #f5f4f1;
}
.breadcrumbs li {
	display: inline-block;
}
.breadcrumbs li a {
	position: relative;
	text-decoration: none;
	padding-right: 6px;
	color: #111d39;
}
.breadcrumbs li a::after {
	position: relative;
	display: inline-block;
	content: '>';
    vertical-align: middle;
    transform: scale(0.6,1.1);
    top: -1.5px;
    margin-left: 6px;
}
/*キービジュアル*/
.introduction.under {
	padding-top: 0;
}
.introduction.under .kv {
    width: 100%;
    height: 180px;
}
.introduction.under .kv.party {
    background-image: url(../img/cct/party/kv_under.jpg);
}
.introduction.under .pageTitle .en {
    font-size: 3rem;
}
/* 会場のご案内の下層ナビゲーション */
.underVenueLink {
	margin: 30px 0 70px;
	padding: 0 20px;
}
.underVenueLink li {
	max-width: 580px;
	height: 100px;
	background-repeat: none;
	background-position: center;
	background-size: cover;
	border-radius: 5px;
	margin: 0 auto 12px;
}
.underVenueLink li.ladycrystal {
	background-image: url(../img/cct/party/nav_ladycrystal.jpg);
}
.underVenueLink li.course {
	background-image: url(../img/cct/party/nav_course.jpg);
}
.underVenueLink li.interior {
	background-image: url(../img/cct/party/nav_interior.jpg);
}
.underVenueLink li a {
	display: block;
	width: 100%;
	height: 100%;
	text-align: center;
	letter-spacing: 0.05em;
	color: #fff;
	text-decoration: none;
	background-color: rgba(0,0,0,0.3);
	text-shadow: 0 0 5px rgba(0,0,0,0.6);
	border-radius: 5px;
	transition: 0.3s linear;
}
.underVenueLink li a:hover {
	background-color: rgba(0,0,0,0);
}
.underVenueLink li a span {
	display: block;
	line-height: 1.3;
}
.underVenueLink li a .en {
	font-size: 25px;
	padding-top: 25px;
}
.underVenueLink li a .jp {
	font-size: 14px;
	font-weight: 500;
}
/* リードコピー */
.leadcopy {
	padding: 0 20px 70px;
}
/* ライトブルー背景 */
.bg_lightBlue {
	padding: 70px 20px;
	border-top: solid 1px #e5e9ec;
}

@media screen and (min-width:770px) {
	/*パンくずリスト*/
	.breadcrumbs {
		padding-top: 68px;
	}
	/*キービジュアル*/
	.introduction.under .kvWrap {
   	 	padding: 0 0 50px;
	}
	.introduction.under .kv {
   	 	width: 50%;
    	height: 300px;
		border-radius: 0 0 0 40px;
	}
	.introduction.under .pageTitle .en {
    	font-size: 4rem;
	}
	/* 会場のご案内の下層ナビゲーション */
	.underVenueLink {
		margin: -85px auto 100px;
	}
	/* リードコピー */
	.leadcopy {
		font-size: 1.6rem;
		padding: 0 40px 100px;
	}
	/* ライトブルー背景 */
	.bg_lightBlue {
		padding: 150px 40px;
	}
}

@media screen and (min-width:1000px) {
	/* 会場のご案内の下層ナビゲーション */
	.underVenueLink {
		max-width: 1200px;
		margin: -85px auto 130px;
		padding: 0 10px;
		display: -webkit-flex;
  		display: flex;
		-webkit-justify-content: space-between;
    	justify-content: space-between;
	}
	.underVenueLink li {
		width: 30.5%;
		height: 130px;
		margin: 0;
	}
	.underVenueLink li a .en {
		font-size: 27px;
		padding-top: 36px;
	}
	.underVenueLink li a .jp {
		font-size: 15px;
	}
	/* リードコピー */
	.leadcopy {
		font-size: 1.7rem;
		line-height: 2.2;
		text-align: center;
		padding: 0 40px 130px;
	}
}

@media screen and (min-width:1200px) {
	/*パンくずリスト*/
	.breadcrumbs {
		padding-top: 0;
	}
	/* ライトブルー背景 */
	.bg_lightBlue .inner {
		max-width: 1200px;
		margin: 0 auto;
	}
}

/**************************************************************
 7) パーティー　料金
**************************************************************/
.priceBtn {
	max-width: 460px;
	margin: 20px auto 0;
}
.priceBtn a {
	position: relative;
	font-size: 1.8rem;
	line-height: 60px;
	font-weight: 500;
	border-radius: 6px;
	padding-right: 2.5em;
}
.priceBtn a .pdf {
	position: absolute;
	display: block;
	width: 78px;
	font-size: 1.4rem;
	line-height: 28px;
	background-color: #fff;
	border-radius: 14px;
	top: 50%;
	right: 7px;
	transform: translateY(-50%);	
}
.priceBtn a .pdf::after {
	position: absolute;
	content: "";
    border: 0;
    border-top: solid 2px #111d39;
    border-right: solid 2px #111d39;
    display: inline-block;
    width: 6px;
    height: 6px;
    top: 50%;
    right: 8px;
    transform: translateY(-50%) rotate(45deg);
}
/* 各料金 */
.priceWrap .item .ttl {
	font-size: 2rem;
	line-height: 1.6;
	margin: 0 0 15px;
} 
.priceWrap .item ul {
	border-left: solid 1px #e5e9ec;
	margin: 0 0 45px;
}
.priceWrap .item ul.option {
	margin: 0 0 20px;
}
.priceWrap .item li {
	background-color: #fff;
	border-right: solid 1px #e5e9ec;
	border-bottom: solid 1px #e5e9ec;
}
.priceWrap .item li:first-child {
	border-top: solid 1px #e5e9ec;
}
.priceWrap .item li a {
	display: block;
	font-family: 'Noto Serif JP', 'Hiragino Mincho ProN', 'Hiragino Mincho Pro', '游明朝', 'Yu Mincho', serif;
	line-height: 1.5;
	font-weight: normal;
	font-weight: 500;
	color: #111d39;
	text-decoration: none;
	padding: 12px 10px 10px 20px;
}
.priceWrap .item li a .pdf {
	position: relative;
	display: block;
	font-family: 'Noto Sans JP', 'Hiragino Kaku Gothic ProN', 'Hiragino Kaku Gothic Pro', '游ゴシック', 'Yu Gothic', 'メイリオ', 'Meiryo', sans-serif;
	width: 78px;
	font-size: 1.4rem;
	line-height: 28px;
	text-align: center;
	background-color: #d7d5c8;
	border-radius: 14px;
	margin: 8px 0 0;
}
.priceWrap .item li a .pdf::after {
	position: absolute;
	content: "";
    border: 0;
    border-top: solid 2px #111d39;
    border-right: solid 2px #111d39;
    display: inline-block;
    width: 6px;
    height: 6px;
    top: 50%;
    right: 8px;
    transform: translateY(-50%) rotate(45deg);
}
.priceWrap p.note {
	font-size: 1.2rem;
	line-height: 1.7;
	text-indent: -1em;
	padding-left: 1em;
}

@media screen and (min-width:770px) {
	.leadcopy.priceLeadcopy {
		padding: 0 40px 70px;
	}
	.priceBtn {
		margin: 45px auto 0;
	}
	.priceBtn a {
		font-size: 2rem;
		line-height: 80px;
		padding-right: 1.5em;
	}
	.priceBtn a .pdf {
		right: 16px;
	}
	/* 各料金 */
	.priceWrap .item .ttl {
		font-size: 2.4rem;
	} 
	.priceWrap .item ul {
		border-right: 0;
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: wrap;
    	flex-wrap: wrap;
	}
	.priceWrap .item ul.option {
		margin: 100px 0 20px;
	}
	.priceWrap .item li {
		width: 33.333%;
		font-size: 1.7rem;
		border-right: solid 1px #e5e9ec;
	}
	.priceWrap .item li:nth-child(2),
	.priceWrap .item li:nth-child(3) {
		border-top: solid 1px #e5e9ec;
	}
	.priceWrap .item li a {
		padding: 23px 10px 12px 28px;
	}
	.priceWrap .item li a .pdf {
		margin: 9px 0 0;
	}
	.priceWrap p.note {
		text-align: right;
	}
}

/**************************************************************
 8) パーティー　レストランシップ紹介
**************************************************************/
.ladycrystalWrap .shipInformation {
	margin: 0 auto 100px;
}
.ladycrystalWrap .shipInformation h2 {
	font-size: 1.8rem;
	line-height: 1.4;
	margin: 0 0 30px;
}
.ladycrystalWrap .shipInformation .sideview,
.ladycrystalWrap .shipInformation .floor {
	max-width: 488px;
	margin: 0 auto 35px;
}
.ladycrystalWrap .shipInformation .spec {
	font-size: 1.3rem;
	line-height: 32px;
	margin: 0 0 60px;
	background-color: #fff;
	border: 1px solid #e5e9ec;
	border-bottom: 0;
	-webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}
.ladycrystalWrap .shipInformation .spec dt {
	width: 36%;
	padding-left: 12%;
	font-weight: normal;
	font-weight: 400;
	border-bottom: 1px solid #e5e9ec;
}
.ladycrystalWrap .shipInformation .spec dd {
	width: 64%;
	border-bottom: 1px solid #e5e9ec;
}
.ladycrystalWrap .shipInformation .partsWrap h3 {
	font-size: 1.8rem;
	margin: 0 0 3px;
}
.ladycrystalWrap .shipInformation .partsWrap p.txt {
	font-size: 1.4rem;
	margin: 0 0 25px;
}
.ladycrystalWrap .shipInformation .partsWrap.flyingDeck p.txt {
	margin: 0 0 10px;
}
.ladycrystalWrap .shipInformation .partsWrap + .partsWrap {
	margin-top: 40px;
	padding-top: 32px;
	border-top: 1px solid #c1c5c7;
}
/*船内画像*/
.ladycrystalWrap .shipImg .flexbox {
	-webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}
.ladycrystalWrap .shipImg .item {
	position: relative;
	width: 48.5%;
	margin: 30px 0 0;
}
.ladycrystalWrap .shipImg .item::before {
	position: absolute;
	content:'';
	width: 26px;
	height: 26px;
	top: 8px;
	left: 8px;
	background-image: url(../img/cct/party/num_white_01.png);
	background-repeat: no-repeat;
	background-size: 100% auto;
}
.ladycrystalWrap .shipImg .item.num2::before {
	background-image: url(../img/cct/party/num_02.png);
}
.ladycrystalWrap .shipImg .item.num3::before {
	background-image: url(../img/cct/party/num_03.png);
}
.ladycrystalWrap .shipImg .item.num4::before {
	background-image: url(../img/cct/party/num_04.png);
}
.ladycrystalWrap .shipImg .item.num5::before {
	background-image: url(../img/cct/party/num_05.png);
}
.ladycrystalWrap .shipImg .item.num6::before {
	background-image: url(../img/cct/party/num_06.png);
}
.ladycrystalWrap .shipImg .item.num7::before {
	background-image: url(../img/cct/party/num_07.png);
}
.ladycrystalWrap .shipImg .item.big {
	width: 100%;
}
.ladycrystalWrap .shipImg .item img {
	border-radius: 5px;
	margin: 0 0 8px;
}
.ladycrystalWrap .shipImg .item p.cap {
	font-size: 1.4rem;
	line-height: 1.55;
	text-align: center;
}
.ladycrystalWrap .shipImg .item p.cap span {
	white-space: nowrap;
}

@media screen and (min-width:770px) {
	.ladycrystalWrap .shipInformation {
		margin: 0 auto 150px;
	}
	.ladycrystalWrap .shipInformation .sideview {
		margin: 0 auto 50px;
	}
	.ladycrystalWrap .shipInformation h2 {
		font-size: 2.8rem;
		margin: 0 0 70px;
	}
	.ladycrystalWrap .shipInformation .specWrap {
		margin: 0 auto 150px;
	}
	.ladycrystalWrap .shipInformation .spec {
		width: 570px;
		font-size: 1.4rem;
		line-height: 40px;
		margin: 0 auto;
		border-right: 0;
	}
	.ladycrystalWrap .shipInformation .spec dt {
		width: 20%;
		padding-left: 6%;
	}
	.ladycrystalWrap .shipInformation .spec dd {
		width: 30%;
		border-right: 1px solid #e5e9ec;
	}
	.ladycrystalWrap .shipInformation .partsWrap {
		-webkit-flex-direction: row-reverse;
    	flex-direction: row-reverse;
	}
	.ladycrystalWrap .shipInformation .partsWrap .txtset {
		width: 570px;
	}
	.ladycrystalWrap .shipInformation .partsWrap h3 {
		font-size: 2.4rem;
		margin: 0 0 17px;
	}
	.ladycrystalWrap .shipInformation .partsWrap p.txt {
		font-size: 1.5rem;
		margin: 0;
	}
	.ladycrystalWrap .shipInformation .partsWrap.flyingDeck p.txt {
		margin: 0;
	}
	.ladycrystalWrap .shipInformation .partsWrap + .partsWrap {
		margin-top: 50px;
		padding-top: 46px;
	}
	.ladycrystalWrap .shipInformation .floor {
		padding-right: 30px;
	}
	/*船内画像*/
	.ladycrystalWrap .shipImg .wrap_full {
		display: -webkit-flex;
  		display: flex;
		-webkit-justify-content: space-between;
    	justify-content: space-between;
	}
	.ladycrystalWrap .shipImg .item {
		width: 24%;
		margin: 25px 0 0;
	}
	.ladycrystalWrap .shipImg .item.big,
	.ladycrystalWrap .shipImg .wrap_half {
		width: 49.333%;
	}
	.ladycrystalWrap .shipImg .wrap_half .item {
		width: 48.666%;
	}
	.ladycrystalWrap .shipImg .item::before {
		width: 40px;
		height: 40px;
		top: 10px;
		left: 10px;
	}
	.ladycrystalWrap .shipImg .item img {
		border-radius: 8px;
		margin: 0 0 10px;
	}
	.ladycrystalWrap .shipImg .item p.cap {
		font-size: 1.5rem;
	}
	.ladycrystalWrap .shipImg .item p.cap .space {
		padding-left: 1em;
	}
}

@media screen and (min-width:1100px) {
	.ladycrystalWrap .shipInformation .specWrap {
		margin: 0 0 150px;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: space-between;
    	justify-content: space-between;
	}
	.ladycrystalWrap .shipInformation .sideview,
	.ladycrystalWrap .shipInformation .floor {
		margin: 15px auto 0;
		padding-right: 30px;
	}
	.ladycrystalWrap .shipInformation .spec {
		margin: 0;
	}
}

@media screen and (min-width:1280px) {
	/*船内画像*/
	.ladycrystalWrap .shipImg .item {
		width: 285px;
		margin: 35px 0 0;
	}
	.ladycrystalWrap .shipImg .item.big,
	.ladycrystalWrap .shipImg .wrap_half {
		width: 590px;
	}
}

/**************************************************************
 9) パーティー　クルージングコース
**************************************************************/
.courseWrap .courseMap {
	margin: 0 auto 100px;
}
.courseWrap .courseMap .map {
	margin: 0 0 40px -1.6%;
}
.courseWrap .courseMap .mapWrap {
	margin: 0 0 95px;
}
.courseWrap .courseMap .mapWrap li {
	margin: 0 0 20px;
	-webkit-justify-content: flex-start;
    justify-content: flex-start;
	-webkit-align-items: flex-start;
    align-items: flex-start;
}
.courseWrap .courseMap .mapWrap li p.type {
	font-size: 1.2rem;
	line-height: 1.7;
	padding: 0 13px;
	margin: 3px 12px 0 0;
	color: #fff;
}
.courseWrap .courseMap .mapWrap li p.type.a {
	color: #000;
	background-color: #ff0;
}
.courseWrap .courseMap .mapWrap li p.type.b {
	background-color: #0f7735;
}
.courseWrap .courseMap .mapWrap li p.type.c {
	background-color: #bd385d;
}
.courseWrap .courseMap .mapWrap li p.type span {
	font-size: 2rem;
	font-weight: bold;
	font-weight: 600;
}
.courseWrap .courseMap .mapWrap li .txtset .mincho {
	font-size: 1.8rem;
	line-height: 1.3;
}
.courseWrap .courseMap .mapWrap li .txtset p.hour {
	font-size: 1.4rem;
}
.courseWrap .courseMap .mapWrap p.note {
	font-size: 1.4rem;
	line-height: 1.7;
	text-indent: -1em;
	padding-left: 1em;
}
.courseWrap .courseMap .map3hWrap p.type {
	display: inline-block;
	font-weight: 500;
	color: #f55af5;
	background-color: #fff;
	border: solid 1px #f55af5;
	padding: 2px 12px;
	margin: 0 12px 0 0;
	vertical-align: middle;
}
.courseWrap .courseMap .map3hWrap .name {
	display: inline-block;
	font-size: 2rem;
	vertical-align: middle;
}
.courseWrap .courseMap .map3hWrap p.txt {
	margin: 10px 0 0;
}
/* ビューポイント */
.courseWrap .viewPoint .item {
	position: relative;
	text-align: center;
	max-width: 620px;
	margin: 0 auto;
}
.courseWrap .viewPoint .item::before {
	position: absolute;
	content:'';
	width: 26px;
	height: 26px;
	top: 8px;
	left: 8px;
	background-image: url(../img/cct/party/num_01.png);
	background-repeat: no-repeat;
	background-size: 100% auto;
}
.courseWrap .viewPoint .item.num2::before {
	background-image: url(../img/cct/party/num_02.png);
}
.courseWrap .viewPoint .item.num3::before {
	background-image: url(../img/cct/party/num_03.png);
}
.courseWrap .viewPoint .item.num4::before {
	background-image: url(../img/cct/party/num_04.png);
}
.courseWrap .viewPoint .item.num5::before {
	background-image: url(../img/cct/party/num_05.png);
}
.courseWrap .viewPoint .item.num6::before {
	background-image: url(../img/cct/party/num_06.png);
}
.courseWrap .viewPoint .item.num7::before {
	background-image: url(../img/cct/party/num_07.png);
}
.courseWrap .viewPoint .item.num8::before {
	background-image: url(../img/cct/party/num_08.png);
}
.courseWrap .viewPoint .item.num9::before {
	background-image: url(../img/cct/party/num_09.png);
}

.courseWrap .viewPoint .item + .item {
	margin: 40px auto 0;
}
.courseWrap .viewPoint .item img {
	border-radius: 8px;
	margin: 0 0 8px;
}
.courseWrap .viewPoint .item .name {
	font-size: 1.8rem;
	font-family: 'Noto Serif JP', 'Hiragino Mincho ProN', 'Hiragino Mincho Pro', '游明朝', 'Yu Mincho', serif;
	font-weight: normal;
	font-weight: 500;
	color: #111d39;
	margin: 0 0 5px;
}
.courseWrap .viewPoint .item p.cap {
	font-size: 1.4rem;
	line-height: 1.7;
}
@media screen and (min-width:600px) {
	/* ビューポイント */
	.courseWrap .viewPoint {
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: space-between;
    	justify-content: space-between;
		-webkit-flex-wrap: wrap;
    	flex-wrap: wrap;
	}
	.courseWrap .viewPoint .item {
		max-width: 48%;
		margin: 40px 0 0;
	}
	.courseWrap .viewPoint .item + .item {
		margin: 40px 0 0;
	}
}
@media screen and (min-width:770px) {
	.courseWrap .courseMap {
		margin: 0 auto 110px;
	}
	.courseWrap .courseMap .map {
		margin: 0 0 0 -1.6%;
	}
	.courseWrap .courseMap .mapWrap {
		margin: 0 0 150px;
	}
	.courseWrap .courseMap .mapWrap .map {
		max-width: 882px;
	}
	.courseWrap .courseMap .mapWrap .txtWrap {
		margin: 0 0 0 3.167%;
	}
	.courseWrap .courseMap .mapWrap li p.type {
		display: inline-block;
		margin: 0 0 12px;
	}
	.courseWrap .courseMap .map3hWrap {
		-webkit-justify-content: flex-start;
    	justify-content: flex-start;
	}
	.courseWrap .courseMap .map3hWrap .map {
		max-width: 609px;
	}
	.courseWrap .courseMap .map3hWrap .txtWrap {
		margin: 0 0 0 3.167%;
	}
	.courseWrap .courseMap .map3hWrap p.type {
		margin: 0 12px 7px 0;
	}
	.courseWrap .courseMap .map3hWrap .name {
		display: block;
		font-size: 2.4rem;
		margin: 0 0 30px;
	}
	.courseWrap .courseMap .map3hWrap p.txt {
		margin: 0;
	}
	/* ビューポイント */
	.courseWrap .viewPoint .item::before {
		width: 40px;
		height: 40px;
		top: 10px;
		left: 10px;
	}
	.courseWrap .viewPoint .item img {
		margin: 0 0 10px;
	}
	.courseWrap .viewPoint .item .name {
		font-size: 2.2rem;
		margin: 0 0 8px;
	}
	.courseWrap .viewPoint .item p.cap {
		font-size: 1.5rem;
	}
}
@media screen and (min-width:1000px) {
	.courseWrap .courseMap {
		margin: 0 auto 85px;
	}
	.courseWrap .courseMap .mapWrap li {
		margin: 0 0 50px;
	}
	.courseWrap .courseMap .mapWrap li p.type {
		font-size: 1.4rem;
		line-height: 1.3;
		padding: 0 20px 2px;
	}
	.courseWrap .courseMap .mapWrap li p.type span {
		font-size: 2.4rem;
	}
	.courseWrap .courseMap .mapWrap li .txtset .mincho {
		font-size: 2.2rem;
		line-height: 1.4;
	}
	.courseWrap .courseMap .mapWrap li .txtset p.hour {
		font-size: 1.5rem;
	}
	.courseWrap .courseMap .map3hWrap .txtWrap {
		margin: 0 0 0 6.667%;
	}
	.courseWrap .courseMap .map3hWrap p.type {
		font-size: 1.8rem;
		padding: 0 20px;
	}
	.courseWrap .courseMap .map3hWrap .name {
		font-size: 2.8rem;
	}
	/* ビューポイント */
	.courseWrap .viewPoint .item {
		max-width: 30.5%;
		margin: 65px 0 0;
	}
	.courseWrap .viewPoint .item + .item {
		margin: 65px 0 0;
	}
}

/**************************************************************
 10) パーティー　陸上クラブハウス紹介
**************************************************************/
.interiorWrap .overheadView {
	margin: 0 auto 70px;
}
.interiorWrap .overheadView .spOnly {
	max-width: 460px;
	margin: 0 auto;
}
/*クラブハウス画像*/
.interiorWrap .interiorImg .flexbox {
	-webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}
.interiorWrap .interiorImg .item {
	position: relative;
	width: 48.5%;
	margin: 30px 0 0;
}
.interiorWrap .interiorImg .item::before {
	position: absolute;
	content:'';
	width: 26px;
	height: 26px;
	top: 8px;
	left: 8px;
	background-image: url(../img/cct/party/num_white_01.png);
	background-repeat: no-repeat;
	background-size: 100% auto;
}
.interiorWrap .interiorImg .item.num1::before {
	background-image: url(../img/cct/party/num_01.png);
}
.interiorWrap .interiorImg .item.num2::before {
	background-image: url(../img/cct/party/num_02.png);
}
.interiorWrap .interiorImg .item.num3::before {
	background-image: url(../img/cct/party/num_03.png);
}
.interiorWrap .interiorImg .item.num4::before {
	background-image: url(../img/cct/party/num_04.png);
}
.interiorWrap .interiorImg .item.num5::before {
	background-image: url(../img/cct/party/num_05.png);
}
.interiorWrap .interiorImg .item.num6::before {
	background-image: url(../img/cct/party/num_06.png);
}
.interiorWrap .interiorImg .item.num7::before {
	background-image: url(../img/cct/party/num_07.png);
}
.interiorWrap .interiorImg .item.big {
	width: 100%;
}
.interiorWrap .interiorImg .item img {
	border-radius: 5px;
	margin: 0 0 8px;
}
.interiorWrap .interiorImg .item p.cap {
	font-size: 1.4rem;
	line-height: 1.55;
	text-align: center;
}
.interiorWrap .interiorImg .item p.cap span {
	white-space: nowrap;
}
@media screen and (min-width:770px) {
	.interiorWrap .overheadView {
		max-width: 1146px;
		margin: 0 auto 150px;
	}
	/*クラブハウス画像*/
	.interiorWrap .interiorImg .flexbox {
		-webkit-flex-wrap: wrap;
    	flex-wrap: wrap;
	}
	.interiorWrap .interiorImg .wrap_full {
		display: -webkit-flex;
  		display: flex;
		-webkit-justify-content: space-between;
    	justify-content: space-between;
	}
	.interiorWrap .interiorImg .item {
		width: 24%;
		margin: 25px 0 0;
	}
	.interiorWrap .interiorImg .item.big,
	.interiorWrap .interiorImg .wrap_half {
		width: 49.333%;
	}
	.interiorWrap .interiorImg .wrap_half .item {
		width: 48.666%;
	}
	.interiorWrap .interiorImg .item::before {
		width: 40px;
		height: 40px;
		top: 10px;
		left: 10px;
	}
	.interiorWrap .interiorImg .item img {
		border-radius: 8px;
		margin: 0 0 10px;
	}
	.interiorWrap .interiorImg .item p.cap {
		font-size: 1.5rem;
	}
}
@media screen and (min-width:1280px) {
	/*クラブハウス画像*/
	.interiorWrap .interiorImg .item {
		width: 285px;
		margin: 39px 0 0;
	}
	.interiorWrap .interiorImg .item.big,
	.interiorWrap .interiorImg .wrap_half {
		width: 590px;
	}
}

/**************************************************************
 11) クリスマスデコレーション
**************************************************************/
/*---------- フッタ上のデコレーション ----------
footer {
	background: url("../img/cct/common/ft_decoration_new.png") repeat-x left top/300px auto;
	padding-top: 120px;
}
*/

/* PCのフッタ上の画像 
@media screen and (min-width:770px){
	.otherPage-item.ladyCrystal .image {
		border-radius: 0 0 30px 0;
	}
	.otherPage-item.ladyCrystal.ch .image {
		border-radius: 30px 0 0 30px;
	}
}
*/

/*---------- フッタ上のスカイブルーバックのグラデーション ----------
.gradient,
.partyPlan.clubhouse/* パーティーの一番下のプラン（毎年確認） */ {
	background: linear-gradient(to bottom,  #f0f6fa 0%,#f0f6fa 90%,#ffffff 100%);

}
*/

/*---------- PCの左右のデコレーション ----------
@media screen and (min-width:1000px){
	article,
	.plan,
	.bg_lightBlue,
	.topOtherPage {
		background-image: url("../img/cct/common/xmas_lr_decoration.png"), url("../img/cct/common/xmas_lr_decoration.png");
		background-repeat: repeat-y;
		background-position: left top, right top;
	}
	.plan,
	.bg_lightBlue,
	.topOtherPage {
		background-image: url("../img/cct/common/xmas_lr_decoration2.png"), url("../img/cct/common/xmas_lr_decoration2.png");
	}
*/
	/*---------- 左右のデコレーションとグラデーションの両方を入れる ----------
	.gradient,
	.partyPlan.clubhouse {
		background: url("../img/cct/common/xmas_lr_decoration2.png"), url("../img/cct/common/xmas_lr_decoration2.png"), linear-gradient(to bottom,  #f0f6fa 0%,#f0f6fa 90%,#ffffff 100%);
		background-repeat: repeat-y;
		background-position: left top, right top;
	}
}
*/
@charset "utf-8";

.riot-area {
	color: #555 !important;
	font-size: 10pt;
	vertical-align: middle;
}

.riot-area input, .riot-area select, .riot-area button, .riot-area label {
	color: #555 !important;
	cursor: pointer;
}

.riot-area select {
	height:    1.7em;
	font-size:  11pt;
	vertical-align: middle;
}

.riot-area select:hover {
	color: #111 !important;
}

.riot-area option {
}

.fa-refresh {
	cursor: pointer;
}

.fa-spin {
	cursor: default;
}

.pointer {
	cursor: pointer;
}

.border {
	border: 1px solid black;
}

.block {
	display: block;
}

.inline {
	display: inline;
}

.inline-block {
	display: inline-block;
}

.text-left {
	text-align: left;
}

.text-right {
	text-align: right;
}

.text-center {
	text-align: center;
}

.float-left {
	float: left;
}

.float-right {
	float: right;
}

.float-clear {
	clear: both;
}


input[type="submit"],
button.button {
	margin:  0;
	padding: 0.2em 0.6em;
	border: 1px solid #c0c0c0;
	border-radius: 3px;
	background-color: #e0e0e0;
	color: #404040;
}

input[type="submit"]:hover,
button.button:hover {
	color: #222 !important;
	border-color: #ccc;
	background-color: #ddd;
	background-image: -webkit-linear-gradient(#eee, #ddd);
	background-image: linear-gradient(#eee, #ddd);
	text-decoration: none;
}

button.button:disabled {
	color: #999 !important;
	border-color: #d5d5d5 !important;
	background-color: #eee !important;
	background-image: -webkit-linear-gradient(#eee, #eee) !important;
	background-image: linear-gradient(#eee, #eee) !important;
	cursor: default !important;
}

button.delete{
	color: #900;
}

button.button.delete:hover:not(:disabled) {
	color: #fff !important;
	text-decoration: none;
	border-color: #b33630;
	background-color: #cd504a;
	background-image: linear-gradient(#dc5f59, #b33630);
}

