/*
 * Style
 */

/* ==============================================
  layaout
============================================== */
body {
	width: 1200px;
}
.inner {
	position: relative;
	width: 1100px;
	margin: 0 auto;
	padding: 0 50px;
}
.pc_only {
	display: inline-block;
}
.sp_only,
.display920 {
	display: none;
}
.indent {
	display: inline-block;
	padding-left: 1em;
	text-indent: -1em;
}

@media screen and (max-width: 767px) {
	body {
		width: 100%;
		min-width: 100%;
	}
	.inner {
		width: 96%;
		padding: 0 2%
	}
	.pc_only {
		display: none !important;
	}
	.sp_only {
		display: inline-block;
		width: 100%;
	}
}

/*
  main area
---------------------------------------------- */
.main_area {
	position: relative;
	height: 700px;
	background: url(../img/main_visual_bg.jpg) no-repeat center center;
	background-size: cover;
}
.main_area:before {
	position: absolute;
	left: 50%;
	bottom: 7px;
	content: "";
	display: block;
	width: 576px;
	height: 535px;
	margin-left: 75px;
	background: url(../img/main_visual.png) no-repeat left bottom;
	background-size: contain;
}
.main_area .logo {
	position: absolute;
	top: 70px;
	left: 50%;
	width: 276px;
	height: 232px;
	margin-left: -392px;
	text-indent: 101%;
	white-space: nowrap;
	overflow: hidden;
	background: url(../img/main_logo.svg) no-repeat left top;
	background-size: contain;
}
.main_area h1 {
	position: absolute;
	top: 330px;
	left: 50%;
	width: 632px;
	height: 166px;
	margin-left: -580px;
	text-indent: 101%;
	white-space: nowrap;
	overflow: hidden;
	background: url(../img/main_title.png) no-repeat left top;
	background-size: contain;
}
.main_area .count_area {
	position: absolute;
	top: 516px;
	left: 50%;
	width: 672px;
	height: 144px;
	margin-left: -600px;
	background: url(../img/main_count_bg.svg) no-repeat left top;
}
.main_area .count_day {
	position: absolute;
	right: 150px;
	bottom: 40px;
	font-size: 50px;
	font-family: 'Roboto Condensed', sans-serif;
}

@media only screen and (min-width: 768px) and (-webkit-min-device-pixel-ratio: 2) {
	.main_area h1 {
		background: url(../img/main_title@2x.png) no-repeat left top;
		background-size: contain;
	}
}

@media screen and (max-width: 1400px) {
	.main_area:before {
		margin-left: 175px;
	}
	.main_area .logo {
		margin-left: -292px;
	}
	.main_area h1 {
		margin-left: -480px;
	}
	.main_area .count_area {
		margin-left: -500px;
	}
}

@media screen and (max-width: 767px) {
	.main_area {
		height: auto;
		padding-top: 92vw;/*690*/
		margin-bottom: 92vw;
	}
	.main_area:before {
		top: 28.4vw;
		left: 44vw;
		bottom: auto;
		width: 65.6vw;
		height: 60.93vw;
		margin-left: 0;
	}
	.main_area .inner {
		width: 100%;
		margin-top: -92vw;
	}
	.main_area .logo {
		top: 2.8vw;
		left: 2vw;
		width: 27.2vw;
		height: 22.93vw;
		margin-left: 0;
	}
	.main_area h1 {
		top: 7.33vw;
		left: 30.63vw;
		width: 68vw;
		height: 18vw;
		margin-left: 0;
	}
	.main_area .count_area {
		top: 47vw;
		left: 4vw;
		width: 36vw;
		height: 32.53vw;
		margin-left: 0;
		background: url(../img/sp_main_count_bg.svg) no-repeat left top;
		background-size: contain;
	}
	.main_area .count_day {
		right: 13.2vw;
		bottom: 5.8vw;
		font-size: 7vw;
		letter-spacing: -0.05em;
	}
}


/*
  overview area
---------------------------------------------- */
.overview_area {
	padding: 35px 0 45px;
	color: #fff;
	background: #00aca8 url(../img/bg_nami.png) repeat-x center bottom;
}
.overview_area .lead_block {
	margin: 25px 0 40px;
	text-align: right;
}
.overview_area .lead_block .lead_text {
	display: inline-block;
	width: 58%;
	margin-right: 3.8%;
	text-align: left;
	vertical-align: middle;
	line-height: 2;
}
.overview_area .lead_block .lead_movie {
	display: inline-block;
	width: 37.2%;
	vertical-align: middle;
}
/*
@media all and (-ms-high-contrast:none) {
	.overview_area .left_area .lead_text {
		margin: 23px 0 37px;
	}
}
*/
.overview_area .left_area {
	float: left;
	width: 655px;
	padding-top: 20px;
}
.anchor_link li {
	display: inline-block;
	margin-left: 5px;
}
.anchor_link li:first-child {
	margin-left: 0;
}
.anchor_link a {
	position: relative;
	display: block;
	width: 160px;
	height: 40px;
	line-height: 40px;
	padding-left: 35px;
	color: #00aca8;
	text-decoration: none;
	border-radius: 5px;
	background: #fff;
	box-shadow:0px 3px 0px 0px #cfeceb;
}
.anchor_link a:before {
	position: absolute;
	top: 50%;
	left: 15px;
	content: "";
	width: 0;
	height: 0;
	margin-top: -5px;
	border-style: solid;
	border-width: 10px 6px 0 6px;
	border-color: #00aca9 transparent transparent transparent;
}
.overview_area .right_area {
	float: right;
	width: 320px;
}
.overview_area .count_area {
	position: relative;
	display: table;
	margin: 0 auto 23px;
	width: 290px;
	height: 156px;
	background: url(../img/count_bg.png) no-repeat left top;
}
.overview_area .count_day {
	position: absolute;
	right: 95px;
	bottom: 15px;
	font-size: 71px;
	font-family: 'Roboto Condensed', sans-serif;
}
.btn_entry {
	display: inline-block;
	width: 320px;
	height: 60px;
	line-height: 60px;
	/*padding-left: 45px;*/
	padding-left: 50px;
	/*font-size: 133.3%;/*20*/
	font-size: 120.0%;/*18*/
	font-weight: 600;
	color: #fff;
	text-align: center;
	text-decoration: none;
	border-radius: 5px;
	background: #004182 url(../img/btn_mark.png) no-repeat 30px center;
	box-shadow:0px 3px 0px 0px #002e5c;
}

/*   */
.btn_entry_disabled {
	display: inline-block;
	width: 320px;
	height: 60px;
	line-height: 60px;
	padding-left: 45px;
	font-size: 133.3%;/*20*/
	font-weight: 600;
	color: #fff;
	text-align: center;
	text-decoration: none;
	border-radius: 5px;
	background: #999 url(../img/btn_mark.png) no-repeat 30px center;
}

/*   */

@media only screen and (min-width: 768px) and (-webkit-min-device-pixel-ratio: 2) {
	.btn_entry {
		background: #004182 url(../img/btn_mark@2x.png) no-repeat 30px center;
		background-size: 42px 40px;
	}
	.overview_area .right_area .count_area {
		background: url(../img/count_bg@2x.png) no-repeat left top;
		background-size: 290px 156px;
	}
}

@media screen and (max-width: 767px) {
	.overview_area .lead_block {
		margin: 0 0 20px;
	}
	.overview_area .lead_block .lead_text {
		display: block;
		width: 100%;
		margin-right: 0;
		margin-bottom: 20px;
		line-height: 1.53;
	}
	.overview_area .lead_block .lead_movie {
		display: block;
		width: 100%;
		text-align: center;
	}
	.overview_area .left_area {
		float: none;
		width: 100%;
	}
	.overview_area .left_area .lead_text {
		margin: 0 0 25px;
	}
	.overview_area .display920 {
		display: block;
	}
	.anchor_link {
		max-width: 340px;
		margin: 0 auto;
		text-align: center;
	}
	.anchor_link li,
	.anchor_link li:first-child {
		margin: 0 5px 10px;
		text-align: left;
	}
	.overview_area .right_area {
		float: right;
		width: 320px;
		width: 32%;
	}
	.overview_area .right_area .count_area,
	.overview_area .right_area .btn_entry {
		display: none;
	}
	.btn_entry {
		display: table;
		margin: 0 auto 30px;
		width: 290px;
		text-align: center;
		background: #004182 url(../img/btn_mark.png) no-repeat 15px center;
	}

/*  */
	.overview_area .right_area .btn_entry_disabled {
		display: none;
	}
	.btn_entry_disabled {
		display: table;
		margin: 0 auto 30px;
		width: 290px;
		text-align: center;
		background: #999999 url(../img/btn_mark.png) no-repeat 30px center;
	}
/*  */
}

@media screen and (max-width: 320px) {
	.anchor_link a {
		width: 138px;
	}
}


/*
  info
---------------------------------------------- */
#info {
	padding: 30px 0 25px;
	color: #fff;
	background: #004182;
}
#info .inner {
}
#info .left_area {
	float: left;
	width: 880px;
}
#info .left_area h2 {
	margin-bottom: 15px;
	font-size: 133.3%;/*20*/
}
#info dl {
	border-top: 1px solid #80a0c0;
	border-bottom: 1px solid #80a0c0;
}
#info dl.pc_only {
	display: block;
	min-height: 56px;
}
#info dl +dl {
	border-top: none;
	border-bottom: 1px solid #80a0c0;
}
#info dl dt {
	position: relative;
	float: left;
	padding: 16px 15px 14px 90px;
}
#info dl dt.dis_non {
	padding: 0;
}
#info dl dd {
	overflow: hidden;
	padding: 16px 0 14px;
}
#info dl dt.dis_non + dd {
	padding: 16px 10px 14px;
}
#info dl dt.new {
	padding: 16px 15px 14px 90px;
}
#info dl dt.new:before {
	position: absolute;
	top: 14px;
	left: 0;
	content: "NEW";
	width: 70px;
	height: 28px;
	font-weight: 600;
	line-height: 30px;
	text-align: center;
	border-radius: 5px;
	background: #00aca8;
}
#info dl dd a {
	color: #ffffff;
}


#info .right_area {
	float: right;
	width: 120px;
	text-align: right;
}
#info .right_area h2 {
	margin-bottom: 15px;
	font-size: 133.3%;/*20*/
}
#info .btn_tw,
#info .btn_fb {
	display: inline-block;
	width: 80px;
	height: 80px;
	margin-bottom: 15px;
	text-indent: 101%;
	white-space: nowrap;
	overflow: hidden;
	border-radius: 5px;
}
#info .btn_tw {
	background: #55acee url(../img/ico_tw.png) no-repeat center 17px;
	box-shadow:0px 3px 0px 0px #2c77b1;
}
#info .btn_fb {
	background: #3c5998 url(../img/ico_fb.png) no-repeat center 11px;
	box-shadow:0px 3px 0px 0px #213561;
}


@media only screen and (min-width: 768px) and (-webkit-min-device-pixel-ratio: 2) {
	#info .btn_tw {
		background: #55acee url(../img/ico_tw@2x.png) no-repeat center 17px;
		background-size: 42px 54px;
	}
	#info .btn_fb {
		background: #3c5998 url(../img/ico_fb@2x.png) no-repeat center 11px;
		background-size: 60px 60px;
	}
}

@media screen and (max-width: 767px) {
	#info .left_area {
		float: none;
		width: 100%;
		margin-bottom: 20px;
	}
	#info .right_area {
		float: none;
		width: 100%;
		text-align: left;
	}
	#info .right_area h2 {
		display: inline-block;
		vertical-align: top;
		padding-right: 10px;
	}
	#info dl.pc_only {
		display: none;
	}
	#info .btn_tw,
	#info .btn_fb {
		display: inline-block;
		margin-left: 20px;
	}
	#info .btn_tw {
		background: #55acee url(../img/ico_tw.png) no-repeat center 17px;
		box-shadow:0px 3px 0px 0px #2c77b1;
	}
	#info .btn_fb {
		background: #3c5998 url(../img/ico_fb.png) no-repeat center 11px;
		box-shadow:0px 3px 0px 0px #213561;
	}
}

@media screen and (max-width: 414px) {
	#info dl dt {
		position: relative;
		float: none;
		padding: 16px 15px 14px 0;
	}
	#info dl dt.new {
		padding: 16px 15px 14px 90px;
	}
	#info dl dt.dis_non {
		padding: 16px 0 0;
	}
	#info dl dd {
		padding: 0 0 14px;
	}
	#info dl dt.dis_non + dd {
		padding: 0 10px 14px;
	}
}

@media screen and (max-width: 320px) {
	#info .btn_tw,
	#info .btn_fb {
		margin-left: 12px;
	}
}


/*
  title / button / table
---------------------------------------------- */
.tit_deco {
	margin-top: 60px;
	line-height: 1.3;
	background: url(../img/title_bg.png) repeat-x left bottom;
}
.tit_deco span {
	display: inline-block;
	font-size: 200.0%;/*30*/
	padding: 30px 0 35px 40px;
	background: url(../img/title_mark.png) no-repeat left 10px;
}

.tit_deco + .btn_entry {
	position: absolute;
	top: 24px;
	right: 50px;
}

/*  */
.tit_deco + .btn_entry_disabled {
	position: absolute;
	top: 24px;
	right: 50px;
}
/*  */

.tbl_basic {
}
.tbl_basic tr {
	border-bottom: 1px solid #94d4d1;
}
.tbl_basic th,
.tbl_basic td {
	padding: 20px 20px 16px;
	text-align: left;
	line-height: 1.75;
}
.tbl_basic tr:nth-child(odd) th,
.tbl_basic tr:nth-child(odd) td {
	background: #f8fdfd;
}
.tbl_basic th {
	width: 18%;
	color: #00aca8;
	vertical-align: top;
}
.tbl_basic td {
	width: 82%;
}

.tbl_basic td .note {
	display: inline-block;
	padding-left: 1em;
	text-indent: -1em;
	font-size: 86.7%;/*13*/
}
.tbl_basic td .note.mgl10 {
	margin-left: 10px;
}
.tbl_basic td .attention {
	text-indent: -3.5em;
	padding-left: 3.5em;
	margin-top: 10px;
	font-size: 86.7%;/*13*/
}

.item_block:not(:last-child) {
	margin-bottom: 1em;
}

.logos {
	display: inline-block;
}
.logos + .logos {
	margin-left: 55px;
}

.in_block {
	display: inline-block;
}
.in_block + .in_block {
	margin-left: 20px;
}

.time_log dt {
	float: left;
	width: 7em;
	text-align: right;
}
.time_log dd {
	overflow: hidden;
}
.time_log dd:before {
	content: "：";
}

@media only screen and (min-width: 768px) and (-webkit-min-device-pixel-ratio: 2) {
	.tit_deco {
		background: url(../img/title_bg@2x.png) repeat-x left bottom;
		background-size: 62px 10px;
	}
	.tit_deco span {
		background: url(../img/title_mark@2x.png) no-repeat left 10px;
		background-size: 32px 78px;
	}
}

@media screen and (max-width: 767px) {
	#anc02 .tit_deco,
	#anc03 .tit_deco,
	#anc04 .tit_deco {
		margin-top: 120px;
	}
	.tit_deco span {
		position: relative;
		background: none;
		padding: 30px 0 15px 40px;
	}
	.tit_deco span:before {
		position: absolute;
		left: 0;
		bottom: 20px;
		content: "";
		display: block;
		width: 32px;
		height: 78px;
		background: url(../img/title_mark@2x.png) no-repeat left 10px;
		background-size: 32px 78px;
	}
	.tbl_basic th,
	.tbl_basic td {
		display: block;
		width: 100%;
		padding: 10px 20px 8px;
		text-align: left;
		line-height: 1.75;
	}
	.tbl_basic td {
		padding: 0 20px 8px;
	}
	.tbl_basic td .note {
		display: block;
		margin-left: 0;
	}
	.tit_deco + .btn_entry {
		position: absolute;
		top: -100px;
		right: 50%;
		margin-right: -145px;
	}

/*   */
	.tit_deco + .btn_entry_disabled {
		position: absolute;
		top: -100px;
		right: 50%;
		margin-right: -145px;
	}
/*   */

	.logos {
		display: inline-block;
	}
	.logos + .logos {
		margin-left: 35px;
	}
	.in_block {
		display: inline-block;
	}
	.in_block + .in_block {
		display: block;
		margin-left: 0;
	}
	.item dt,
	.time_log dt {
		float: none;
		width: auto;
		font-weight: 600;
		text-align: left;
	}
	.item dt:after,
	.time_log dt:after {
		content: "：";
	}
	.item dd,
	.time_log dd {
		overflow: visible;
	}
	.item dd:before,
	.time_log dd:before {
		content: "";
	}
}

@media screen and (max-width: 414px) {
	.logos {
		display: inline-block;
		margin: 10px 20px 15px 0;
	}
	.logos + .logos {
		margin-left: 0;
	}
}

@media screen and (max-width: 320px) {
	.tit_deco span {
		font-size: 166.7%;/*25*/
	}
	.logos:nth-child(1) {
		width: 90px;
	}
	.logos:nth-child(2) {
		width: 116px;
	}
}


/*
  コース情報
---------------------------------------------- */
#anc03 .tit_deco {
	margin-bottom: 35px;
}
#anc03 .course_note {
	margin-bottom: 30px;
	padding: 0.5em 2em 0.3em;
	font-weight: bold;
	border-radius: 5px;
	text-align: center;
	border: 1px solid #00aca8;
}
#anc03 .tow_column {
	margin-bottom: 45px;
}
#anc03 .tow_column .left_area {
	float: left;
	width: 340px;
}
#anc03 .btn_pdf {
	display: inline-block;
	width: 275px;
	height: 40px;
	line-height: 42px;
	margin: 40px 0 50px;
	color: #fff;
	text-align: center;
	text-decoration: none;
	border-radius: 5px;
	background: #00aca8;
	box-shadow:0px 3px 0px 0px #008e8b;
}
#anc03 .logo_area .logos {
	margin-bottom: 20px;
}
#anc03 .logo_area .note {
	font-size: 66.7%;/*10*/
}
#anc03 .right_area {
	float: right;
	width: 600px;
}
#anc03 .right_area img {
	display: inline-block;
	border: 1px solid #ddd;
}
#anc03 h3 {
	margin-bottom: 10px;
	vertical-align: top;
	color: #00aca8;
}
#anc03 .three_column {
	display: table;
	padding-bottom: 30px;
}
#anc03 .three_column .box {
	display: table-cell;
	vertical-align: top;
}
#anc03 .three_column .box h3 {
	display: inline-block;
}
#anc03 .three_column .box .right {
	display: inline-block;
	padding-left: 30px;
}
#anc03 .three_column .box01 {
	width: 400px;
}
#anc03 .three_column .box02 {
	width: 320px;
}
#anc03 .three_column .box03 {
	width: 280px;
}

#anc03 .entry_button_box {
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	margin: 20px 0;
}
.btn_entry_site {
	display: inline-block;
	width:48%;
	height: 50px;
	line-height: 52px;
	color: #fff;
	text-align: center;
	text-decoration: none;
	border-radius: 5px;
	background: #00aca8;
	box-shadow: 0px 3px 0px 0px #008e8b;
}

/* エントリー開始前 */
.btn_entry_site.disabled {
	background: #999;
	box-shadow: none;
	cursor: default;
}
.btn_entry_site.disabled:hover {
	opacity: 1;
}

/*   */

.one_column {
	margin-bottom: 30px;
	padding-top: 30px;
/*	border-top: 1px solid #94d4d1;*/
}
.one_column.first {
	padding-top: 0;
}
#entry_info {
	padding-top: 0;
}
.decimal li {
	list-style: decimal;
	margin-left: 25px;
}
.tour_info .banner:not(:last-child) {
	margin-bottom: 30px;
}
.tour_info .banner .bnr_image {
	margin: 10px 0 15px;
}

@media only screen and (min-width: 768px) and (-webkit-min-device-pixel-ratio: 2) {
	
}

@media screen and (max-width: 767px) {
	#anc03 .course_note {
		padding: 0.5em 1em 0.3em;
		text-align: left;
	}
	#anc03 .tow_column .left_area {
		float: none;
		width: 100%;
	}
	#anc03 .btn_pdf {
		display: block;
		margin: 40px auto 50px;
	}
	#anc03 .logo_area {
		display: table;
		margin: 0 auto 20px;
	}
	#anc03 .logo_area .logos {
		height: auto;
	}
	#anc03 .logo_area .note {
		display: inline-block;
		vertical-align: top;
		padding-left: 10px;
	}
	#anc03 .right_area {
		display: none;
	}
	#anc03 .course_map img {
		display: inline-block;
		margin-top: 20px;
		border: 1px solid #ddd;
	}
	#anc03 h3 {
		margin-bottom: 10px;
		vertical-align: top;
		color: #00aca8;
	}
	#anc03 .three_column {
		display: block;
		width: 100%;
		padding-bottom: 0;
	}
	#anc03 .entry_button_box_disabled a:nth-child(2) {
		letter-spacing: -0.05em;
	}
	#anc03 .three_column .box {
		display: block;
	}
	#anc03 .three_column .box h3 {
		display: block;
	}
	#anc03 .three_column .box .right {
		display: block;
		padding-left: 0;
	}
	#anc03 .three_column .box01,
	#anc03 .three_column .box02,
	#anc03 .three_column .box03 {
		width: 100%;
		margin-bottom: 30px;
		padding-top: 30px;
		border-top: 1px solid #94d4d1;
	}
	#anc03 .entry_button_box a,
	#anc03 .entry_button_box a:nth-child(even) {
		display: block;
		width: 275px;
		margin: 20px auto 0;
	}
}

@media screen and (max-width: 320px) {
	#anc03 .entry_button_box_disabled a {
		width: 49%;
		font-size: 86.7%;/*13*/
	}
}



/*
  slide
---------------------------------------------- */
#photo_gallery {
	visibility: hidden;
	height: 0;
}
#anc04 .tit_deco {
	margin-bottom: 10px;
}

.slide_copyright {
	margin-top: 10px;
	text-align: right;
}
.slide_copyright p {
	font-size: 86.7%;/*13*/
	line-height: 1;
	margin-bottom: 0.5em;
}

@media screen and (max-width: 767px) {
	.photo_gallery_wrap {
		max-width: 90%;
		margin: 0 auto;
	}
}

.result_link_area {
	text-align: center;
	margin: 30px 0;
	padding-top: 30px;
	border-top: 1px solid #94d4d1;
}

.result_link_area a {
	display: inline-block;
	width: 275px;
	height: 40px;
	line-height: 42px;
	color: #fff;
	text-align: center;
	text-decoration: none;
	border-radius: 5px;
	background: #00aca8;
	box-shadow:0px 3px 0px 0px #008e8b;
	transition: opacity 0.2s linear 0s;
}

.result_link_area a:hover {
	opacity: .8;
}


/*
  footer
---------------------------------------------- */
footer {
	min-height: 135px;
	margin-top: 50px;
	padding: 25px 0;
	color: #fff;
	background: #00aca8;
}
footer .anchor_link {
	position: absolute;
	top: 15px;
	left: 286px;
}
footer .anchor_link a:before {
	border-width: 0 6px 10px 6px;
	border-color: transparent transparent #00aca9 transparent;
}
footer .left_area {
	float: left;
}
footer small {
	display: block;
	margin-top: 5px;
	font-size: 73.3%;/*11*/
}
footer .right_area {
	float: right;
}

@media only screen and (min-width: 768px) and (-webkit-min-device-pixel-ratio: 2) {
	
}

@media screen and (max-width: 767px) {
	footer .anchor_link {
		position: relative;
		top: auto;
		left: auto;
	}
	footer .left_area {
		float: none;
		position: relative;
		left: 50%;
		margin-left: -170px;
		margin-top: 20px;
	}
	footer small {
		display: block;
		margin-top: 5px;
		font-size: 73.3%;/*11*/
	}
	footer .right_area {
		float: none;
		position: relative;
		top: -80px;
		left: 50%;
		margin-left: 98px;
		margin-bottom: -80px;
	}
}

@media screen and (max-width: 320px) {
	footer .left_area {
		margin-left: -140px;
	}
	footer .right_area {
		margin-left: 78px;
	}
}