@charset "utf-8";

/*==============================
 Body
==============================*/
body {
	position: relative;
	font-size: 100%;
	word-wrap: break-word;
}
a {
	color: #333;
	text-decoration: none;
}
a:hover {
	color: #06C;
	text-decoration: none;
	opacity: 1;
	filter: alpha(opacity=100);
	-moz-opacity: 1;
}
.sp, .youtube_sp {
	display: none;
}

/*==============================
 Header
==============================*/
header {
	position: relative;
	width: 100%;
	clear: both;
	border-bottom: solid 1px #999;
}
header .inner {
	position: relative;
	width: 100%;
	max-width: 1200px;
	height: 120px;
	clear: both;
	display: block;
	margin: 0 auto;
}
header .inner a.logo {
	position: absolute;
	width: 300px;
	top: 5px;
	left: 0px;
}
header .inner h1,
#top h1.top_h1 {
	position: absolute;
	width: auto;
	top: 20px;
	right: 180px;
	display: block;
	z-index: 1000;
	font-size: 1.2em;
	line-height: 1em;
	text-align: right;
}
#top h1.top_h1 {
	color: #FFF;
}
header .inner ul.sns_header,
#top ul.sns_header {
	position: absolute;
	top: 10px;
	right: 20px;
	z-index: 1000;
	padding: 5px 0;
}
header .inner ul.sns_header {
	border-left: solid 1px #999;
}
#top ul.sns_header {
	border-left: solid 1px #FFF;
}
header .inner ul.sns_header li,
#top ul.sns_header li {
	width: 22px;
	display: inline-block;
	margin-left: 20px;
}
header .inner .header_tel,
#top .header_tel {
	position: absolute;
	width: 317px;
	top: 55px;
	right: 320px;
	display: block;
	z-index: 1000;
	font-size: 1.2em;
	line-height: 2em;
	text-align: right;
}
#top .header_tel {
	color: #FFF;
}
header .inner a.btn_contact,
#top a.btn_contact {
	position: absolute;
	width: 300px;
	height: 50px;
	top: 55px;
	right: 10px;
	display: block;
	z-index: 1000;
	font-size: 1.6em;
	line-height: 50px;
	text-align: center;
	color: #FFF;
	border-radius: 25px;
	background: url(../images/icon_mail_w.png) no-repeat 90% center #02428C;
	background-size: 22px;
	box-sizing: border-box;
}
header .inner a.btn_contact:hover,
#top a.btn_contact:hover {
	background: url(../images/icon_mail_w.png) no-repeat 90% center rgba(2,66,140,0.5);
	background-size: 22px;
}
header .inner_sp {
	display: none;
}

/*==============================
 Globalnavi PC
==============================*/
nav.pc_nav,
nav.footer_nav {
	width: 100%;
	clear: both;
}
nav.footer_nav {
	width: 100%;
	clear: both;
	background: #02428C;
}
nav.pc_nav ul,
nav.footer_nav ul {
	width: 90%;
	max-width: 1200px;
	display: flex;
		justify-content: space-between;
        align-content: center;
		align-items: center;
		/*flex-wrap: wrap;*/
	margin: 0 auto;
	padding: 10px 0;
}
nav.pc_nav ul li,
nav.footer_nav ul li {
	width: auto;
	display: inline-block;
}
nav.pc_nav ul li a,
nav.footer_nav ul li a {
	width: 100%;
    height: 40px;
	display: flex;
		justify-content: flex-start;
        align-content: center;
		align-items: center;
	padding-left: 25px;
	font-size: 1.5em;
	font-weight: bold;
	line-height: 1em;
	text-align: right;
}
nav.pc_nav ul li a {
	color: #02428C;
	background: url("../images/arrow_right_w.png") no-repeat left center;
	background-size: 20px;
}
nav.pc_nav ul li a:hover {
	color: rgba(2,66,140,0.5);
}
nav.footer_nav ul li a {
	color: #FFF;
	background: url("../images/arrow_right.png") no-repeat left center;
	background-size: 20px;
}
nav.footer_nav ul li a:hover {
	color: rgba(255,255,255,0.75);
}

/*==============================
 Common
==============================*/
main {
	width: 100%;
	clear: both;
	display: block;
}
main article {
	clear: both;
	display: block;
}
main .block,
main .block2,
main .block3 {
	position: relative;
	width: 100%;
	clear: both;
	margin: 0 auto;
}
main .block {
	max-width: 1080px;
}
main .block2 {
	max-width: 1200px;
}
main .block3 {
	max-width: 960px;
}


/*----- Topicpath -----*/
.topicpath {
	width: 100%;
	clear: both;
}
.topicpath ul {
	max-width: 1080px;
	margin: 0 auto;
}
.topicpath ul li {
	float: left;
	display: inline-block;
	padding: 10px 0;
	font-size: 1.1em;
	line-height: 1em;
}
.topicpath ul li+li {
	margin-left: 20px;
}
.topicpath ul li a {
	text-decoration: none;
}
.topicpath ul li a:hover {
	text-decoration: underline;
}

/*----- Title ------*/
h2.page_title {
	width: 100%;
	clear: both;
	margin: 0 auto;
	padding: 15px 0;
	font-size: 2.4em;
	font-weight: bold;
	line-height: 1em;
	color: #FFF;
	text-align: center;
	background: #02428C;
}
h2.page_title br {
	display: none;
}

/*==============================
 [Top]
==============================*/
#top {
	position: relative;
	width: 100%;
	clear: both;
}
#top .main_visual {
	width: 100%;
	display: flex;
		justify-content: space-between;
        align-content: center;
		align-items: center;
	margin: 0 auto;
	background: url("../images/top/main_visual.jpg") no-repeat center top;
}
#top .main_visual .inner {
	position: relative;
	width: 90%;
	height: 640px;
	display: flex;
		justify-content: space-between;
        align-content: center;
		align-items: center;
	margin: 0 auto;
}
#top .main_visual .inner img.copy_main {
	position: absolute;
	width: 740px;
	top: 300px;
	left: 0px;
}
#top .main_visual .inner img.copy_2nd {
	position: absolute;
	width: 788px;
	bottom: 20px;
	right: 0px;
}
#top .logo_top {
	width: 300px;
	display: block;
	margin: 30px auto;
}
#top .main_visual .inner .bnrBox {
	position: absolute;
	width: 280px;
	top: 140px;
	right: -4%;
	display: flex;
		justify-content: space-between;
        align-content: center;
		align-items: center;
		flex-wrap: wrap;
}
#top .main_visual .inner .bnrBox a {
	width: 100%;
	display: block;
	margin: 5px 0;
}


/*==============================
 [Top] 営業終了のお知らせ
==============================*/
#top .greeting {
	position: relative;
	width: 90%;
	max-width: 820px;
	display: flex;
		justify-content: space-between;
        align-content: flex-start;
		align-items: flex-start;
		flex-wrap: wrap;
	margin: 20px auto 60px;
	padding: 50px;
	border: solid 1px #ccc;
	box-sizing: border-box;
	box-shadow: 5px 5px 20px 0 rgba(0,0,0,0.2);
}
#top .greeting h2 {
	width: 100%;
	display: block;
	font-size: 1.8em;
	font-weight: bold;
	line-height: 1.6em;
}
#top .greeting h2 span {
	margin-left: -0.5em;
}
#top .greeting p {
	width: 100%;
	display: block;
	margin-top: 30px;
	font-size: 1.5em;
	line-height: 1.8em;
	text-align: justify;
}
#top .greeting p b {
	width: 100%;
	display: block;
	margin: 10px 0;
	font-size: 1.1em;
}


/*==============================
[Top] コンセプト
==============================*/
#concept {
	position: relative;
	width: 100%;
	clear: both;
	display: block;
	margin: 0 auto 30px;
	padding-bottom: 40px;
	text-align: center;
	background: rgb(2,66,140);
}
#concept2 {
	position: relative;
	width: 100%;
	clear: both;
	display: block;
	margin: 0 auto 30px;
	padding-bottom: 20px;
	text-align: center;
	background: rgb(2,66,140);
}
#concept img.concept_copy {
	width: 620px;
	clear: both;
	padding: 30px 0;
}
#concept2 img.concept_copy {
	width: 620px;
	clear: both;
	padding: 40px 0;
}
#concept img.concept_l,
#concept2 img.concept_l {
	position: absolute;
	width: 195px;
	top: -50px;
	left: 0px;
}
#concept img.concept_r,
#concept2 img.concept_r {
	position: absolute;
	width: 195px;
	top: -50px;
	right: 0px;
}
#concept a.btn_access {
	position: absolute;
	width: 200px;
	bottom: -60px;
	right: -40px;
	z-index: 1000;
}
#concept2 a.btn_access {
	position: absolute;
	width: 200px;
	bottom: -100px;
	right: -80px;
	z-index: 1000;
}
#concept h2.concept_read,
#concept2 h2.concept_read {
	width: 100%;
	clear: both;
	display: block;
	margin: 0 auto 30px;
	font-size: 1.6em;
	line-height: 1.6em;
	letter-spacing: 0.05em;
	text-align: center;
	color: #FFF;
}
#concept a.btn_booking {
	width: 480px;
	height: 60px;
	clear: both;
	display: block;
	margin: 0 auto;
	font-size: 1.8em;
	font-weight: bold;
	line-height: 60px;
	text-align: center;
	color: #02428C;
	border-radius: 30px;
	background: url(../images/arrow_right2.png) no-repeat 95% center #FFF;
	background-size: 40px;
}
#concept a.btn_booking:hover {
	background: url(../images/arrow_right2.png) no-repeat 95% center rgba(255,255,255,0.75);
	background-size: 40px;
}

/*-- simplyScroll --*/
.simply-scroll-container {
    position: relative;
}
.simply-scroll-clip {
    position: relative;
    overflow: hidden;
}
.simply-scroll-list {
    overflow: hidden;
    margin: 0;
    padding: 0;
}
.simply-scroll-list li {
    float: left; /* Horizontal scroll only */
    padding: 0;
    margin: 0;
    width: 400px;
    height: 400px;
}
.simply-scroll-list li img {
    display: block;
}

/*==============================
[Top] News / カレンダー / YouTube
==============================*/
#top .block_news_calendar {
	width: 100%;
	max-width: 1180px;
	display: flex;
		justify-content: space-between;
		align-content: flex-start;
		align-items: flex-start;
		flex-wrap: wrap;
	margin: 0 auto;
}
#top .top_cms {
	position: relative;
	width: 530px;
	overflow: hidden;
	margin-bottom: 40px;
	box-sizing: border-box;
}
#top .top_news {
	position: relative;
	width: 32.2%;
	max-width: 380px;
	align-self: stretch;
	overflow: hidden;
	margin-bottom: 40px;
	box-sizing: border-box;
}

#top .top_cms .top_cms_title,
#top .top_news .top_news_title,
#top .calendar .calendar_title,
#top .youtube .youtube_title {
	width: 100%;
	clear: both;
	padding: 10px 0 20px;
	font: normal 2.4em/1em "Arial Black",Arial,Helvetica,"sans-serif";
	text-align: center;
	color: #00408C;
	border-bottom: solid 1px #CCC;
}
#top .top_news .top_news_inner {
	width: 100%;
    height: 1440px;
	overflow: auto;
	margin-bottom: 40px;
}
#top .top_cms dl.news_list,
#top .top_news dl.news_list {
	width: 96%;
	/*width: 450px;*/
	float: left;
	clear: both;
	padding: 15px 0;
}
#top .top_cms dl.news_list+dl,
#top .top_news dl.news_list+dl {
	border-top: solid 1px #CCC;
}
#top .top_cms dl.news_list dt,
#top .top_news dl.news_list dt {
	width: 100%;
	clear: both;
	margin-bottom: 10px;
	font-size: 1.2em;
	line-height: 1.6em;
	color: #999;
}
#top .top_cms dl.news_list dt span,
#top .top_news dl.news_list dt span,
#news dl.news_list dt span {
	width: 80px;
	height: 24px;
	display: inline-block;
	margin-right: 10px;
	font-size: 0.9em;
	line-height: 24px;
	text-align: center;
	color: #FFF;
	border-radius: 15px;
}
#top .top_cms dl.news_list dt span.mark_news,
#top .top_news dl.news_list dt span.mark_news,
#news dl.news_list dt span.mark_news {
	background: #2693FF;
}
#top .top_cms dl.news_list dt span.mark_info,
#top .top_news dl.news_list dt span.mark_info,
#news dl.news_list dt span.mark_info {
	background: #85B200;
}
#top .top_cms dl.news_list dt span.mark_event,
#top .top_news dl.news_list dt span.mark_event,
#news dl.news_list dt span.mark_event {
	background: #EE7C28;
}
#top .top_cms dl.news_list dd,
#top .top_news dl.news_list dd {
	width: 100%;
	clear: both;
	font-size: 1.3em;
	line-height: 1.6em;
}
#top .top_cms dl.news_list dd span,
#top .top_news dl.news_list dd span {
	font-size: 0.9em;
}
#top .top_cms a.btn_cms,
#top .top_news a.btn_news {
	width: 300px;
	height: 50px;
	clear: both;
	display: block;
	margin: 0 auto;
	font-size: 1.6em;
	line-height: 50px;
	text-align: center;
	color: #FFF;
	border-radius: 25px;
	background: url(../images/arrow_right2_w.png) no-repeat 95% center #02428C;
	background-size: 20px;
}
#top .top_cms a.btn_cms:hover,
#top .top_news a.btn_news:hover {
	background: url(../images/arrow_right2_w.png) no-repeat 95% center rgba(2,66,140,0.5);
	background-size: 20px;
}

/*-- カレンダー --*/
#top .calendar {
	width: 66.2%;
	max-width: 780px;
	float: right;
	clear: right;
	display: block;
	overflow: hidden;
	margin-bottom: 40px;
	box-sizing: border-box;
}
#top .calendar .wpsbc-calendar {
	width: 98.5%;
	max-width: none !important;
	display: block;
	box-sizing: border-box;
}
#top .calendar a.btn_resv {
	width: 300px;
	height: 50px;
	clear: both;
	display: block;
	margin: 0 auto;
	font-size: 1.6em;
	line-height: 50px;
	text-align: center;
	color: #FFF;
	border-radius: 25px;
	background: url(../images/arrow_right2_w.png) no-repeat 95% center #02428C;
	background-size: 20px;
}
#top .calendar a.btn_resv:hover {
	background: url(../images/arrow_right2_w.png) no-repeat 95% center rgba(2,66,140,0.5);
	background-size: 20px;
}

/*-- YouTube --*/
#top .youtube {
	width: 100%;
	max-width: 1180px;
	clear: both;
	margin: 0 auto;
}
#top .youtube .left,
#top .youtube .right {
	width: 49%;
	max-width: 570px;
	display: block;
	overflow: hidden;
	margin: 30px 0;
	box-sizing: border-box;
}
#top .youtube .left {
	float: left;
}
#top .youtube .right {
	float: right;
}
#top .youtube iframe {
	width: 100%;
	max-width: 570px;
	height: 320px;
	clear: both;
}

/*==============================
[Top] SNS
==============================*/
#top .sns {
	width: 100%;
	clear: both;
	padding: 40px 0;
	background: #EEE;
}
#top .sns .sns_box {
	position: relative;
	width: 32%;
	float: left;
	display: inline-block;
	margin: 0 0.6%;
	padding: 30px 0 80px;
	border: solid 1px #02428C;
	background: #FFF;
	box-sizing: border-box;
}
#top .sns .sns_box p.icon {
	position: absolute;
	width: 44px;
	height: 44px;
	top: -22px;
	left: 45%;
	z-index: 1000;
	padding: 11px;
	border-radius: 22px;
	background: #02428C;
	box-sizing: border-box;
}
#top .sns .sns_box p.icon img {
	width: 22px;
}
#top .sns .sns_box .inner {
	width: 90%;
	height: 400px;
	display: block;
	margin: 0 auto;
}
#top .sns .sns_box .inner2 {
	width: 90%;
	height: 400px;
	display: block;
	overflow: auto;
	margin: 0 auto;
}
#top .sns .sns_box .inner3 {
	position: relative;
	width: 90%;
	height: 400px;
	display: block;
	margin: 0 auto;
}
/*-- for Instagram --*/
#top .sns .sns_box .inner3 .instaThumb {
	width: 120px;
	height: 120px;
	clear: both;
	display: block;
	margin: 0 auto;
}
#top .sns .sns_box .inner3 .instaThumb img {
	border-radius: 60px;
}
#top .sns .sns_box .inner3 .instaName {
	width: 100%;
	clear: both;
	display: block;
	padding: 15px 0;
	font-size: 1.8em;
	font-weight: bold;
	line-height: 1em;
	text-align: center;
	color: #02428C;
}
#top .sns .sns_box .inner3 .btnInvi {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0px;
	left: 0px;
	z-index: 1000;
}
#top .sns a.btn_sns {
	position: absolute;
	width: 70%;
	height: 40px;
	bottom: 20px;
	left: 15%;
	display: block;
	margin: 0 auto;
	font-size: 1.4em;
	line-height: 40px;
	text-align: center;
	color: #02428C;
	border: solid 1px #02428C;
	border-radius: 20px;
	background: url(../images/arrow_right2.png) no-repeat 95% center #FFF;
	background-size: 20px;
}
#top .sns a.btn_sns:hover {
	background: url(../images/arrow_right2.png) no-repeat 95% center rgba(2,66,140,0.1);
	background-size: 20px;
}

/*==============================
[Top] 研修
==============================*/
#top .trainer {
	width: 100%;
	max-width: 1200px;
	clear: both;
	margin: 0 auto;
	padding: 30px 0;
}
#top .trainer dl.trainer_text {
	width: 49%;
	float: left;
}
#top .trainer dl.trainer_text dt {
	width: 100%;
	clear: both;
	padding: 20px 0;
	font-size: 2.4em;
	font-weight: bold;
	line-height: 1.4em;
	color: #00408C;
}
#top .trainer dl.trainer_text dd {
	width: 100%;
	clear: both;
	margin-bottom: 40px;
	font-size: 1.6em;
	line-height: 1.8em;
}
#top .trainer dl.trainer_text a.btn_trainer,
#top .trainer dl.trainer_text a.btn_trainer_contact {
	width: 200px;
	height: 40px;
	display: inline-block;
	margin: 0 5px;
	font-size: 1.3em;
	line-height: 40px;
	text-align: center;
	color: #FFF;
	border-radius: 20px;
	background: url(../images/arrow_right2_w.png) no-repeat 95% center #02428C;
	background-size: 20px;
}
#top .trainer dl.trainer_text a.btn_trainer {
	background: url(../images/arrow_right2_w.png) no-repeat 95% center #02428C;
	background-size: 20px;
}
#top .trainer dl.trainer_text a.btn_trainer:hover {
	background: url(../images/arrow_right2_w.png) no-repeat 95% center rgba(2,66,140,0.2);
	background-size: 20px;
}
#top .trainer dl.trainer_text a.btn_trainer_contact {
	background: url(../images/icon_mail_w.png) no-repeat 94% center #02428C;
	background-size: 20px;
}
#top .trainer dl.trainer_text a.btn_trainer_contact:hover {
	background: url(../images/icon_mail_w.png) no-repeat 94% center rgba(2,66,140,0.2);
	background-size: 20px;
}
#top .trainer img {
	width: 50%;
	max-width: 600px;
	float: right;
}

/*==============================
施設紹介
==============================*/
#facilities {
	width: 100%;
	/*max-width: 1600px;*/
	clear: both;
	margin: 0 auto;
	padding-bottom: 20px;
	background: url(../images/facilities/feature_bg.jpg) no-repeat center top;
}

/*--遊びから学ぶ--*/
#facilities .feature .feature_copy {
	width: 360px;
	clear: both;
	margin: 0 auto;
}
#facilities .feature h3.feature_read {
	width: 100%;
	clear: both;
	padding: 30px 0;
	font-size: 2.4em;
	font-weight: bold;
	line-height: 1.6em;
	text-align: center;
	color: #FFF;
}
#facilities .feature .feature_block {
	position: relative;
	width: 520px;
	clear: both;
	margin: 0 auto;
	padding: 20px 0;
}
#facilities .feature .feature_block .copy {
	height: 48px;
	float: left;
	clear: both;
	margin-bottom: 20px;
}
#facilities .feature .feature_block img.feature_01_img,
#facilities .feature .feature_block img.feature_02_img,
#facilities .feature .feature_block img.feature_03_img {
	position: absolute;
	width: 280px;
}
#facilities .feature .feature_block img.feature_01_img {
	top: -20px;
	right: -290px;
}
#facilities .feature .feature_block img.feature_02_img {
	top: -60px;
	left: -290px;
}
#facilities .feature .feature_block img.feature_03_img {
	bottom: 0px;
	right: -290px;
}
#facilities .feature .feature_block .feature_text {
	width: 100%;
	float: left;
	clear: both;
	font-size: 1.4em;
	line-height: 1.6em;
}
#facilities .feature .img_block {
	width: 100%;
	max-width: 1200px;
	clear: both;
	margin: 20px auto 40px;
}
#facilities .feature .img_block img {
	width: 50%;
}

/*--コース--*/
#facilities .course {
	position: relative;
	width: 100%;
	max-width: 1200px;
	clear: both;
	margin: 0 auto;
	padding-bottom: 50px;
}
#facilities .course h3.title {
	width: 100%;
	max-width: 1200px;
	height: 40px;
	clear: both;
	margin: 0 auto 20px;
	font-size: 1.8em;
	line-height: 40px;
	text-align: center;
	color: #02428C;
	border: solid 1px #02428C;
	border-radius: 20px;
}
#facilities .course img.course_copy {
	position: absolute;
	width: 444px;
	top: 80px;
	right: 60px;
	z-index: 1000;
}
#facilities .course ul.course_element {
	position: absolute;
	width: 560px;
	top: 890px;
	left: 60px;
}
#facilities .course ul.course_element li {
	width: 33.3%;
	float: left;
	padding: 5px 0;
	font-size: 1.2em;
	line-height: 1.4em;
}
#facilities .course ul.course_element li span {
	width: 20px;
	height: 20px;
	float: left;
	margin-right: 5px;
	font-size: 0.8em;
	line-height: 20px;
	text-align: center;
	color: #FFF;
	border-radius: 10px;
}
#facilities .course ul.course_element li span.red {
	background: #E60012;
}
#facilities .course ul.course_element li span.green {
	background: #07913A;
}
#facilities .course ul.course_element .note {
	width: 100%;
	float: left;
	padding: 10px 0;
	font-size: 1em;
	line-height: 1.2em;
}
#facilities .course .course_block {
	width: 100%;
	max-width: 1080px;
	clear: both;
	margin: 0 auto;
}
#facilities .course ul.course_element_photo {
	width: 100%;
	clear: both;
	margin: 20px auto;
}
#facilities .course ul.course_element_photo li {
	width: 32%;
	float: left;
	font-size: 1.4em;
	line-height: 2em;
	text-align: center;
}
#facilities .course ul.course_element_photo li+li {
	margin-left: 2%;
}
#facilities .course dl.course_more {
	position: relative;
	width: 49%;
	padding: 10px;
	border: solid 2px #F39800;
	background: #FFFFE8;
	box-sizing: border-box;
}
#facilities .course dl.fl {
	float: left;
}
#facilities .course dl.fr {
	float: right;
}
#facilities .course dl.course_more img {
	width: 38%;
	max-width: 200px;
	float: left;
}
#facilities .course dl.course_more dt {
	width: 60%;
	float: right;
	padding: 10px 0 20px;
	font-size: 1.8em;
	font-weight: bold;
	line-height: 1.2em;
}
#facilities .course dl.course_more dd {
	width: 60%;
	float: right;
	margin-bottom: 20px;
	font-size: 1.2em;
	line-height: 1.6em;
}
#facilities .course dl.course_more .pro {
	width: 60%;
	float: right;
	font-size: 1em;
	line-height: 1.2em;
}
#facilities .course dl.course_more .note {
	position: absolute;
	width: 100%;
	bottom: -20px;
	left: 0px;
	font-size: 1em;
	line-height: 1.2em;
}

/*--安全--*/
#facilities .safety {
	position: relative;
	width: 100%;
	max-width: 1080px;
	clear: both;
	margin: 0 auto 30px;
	background: #02428C;
}
#facilities .safety img {
	width: 320px;
	float: left;
}
#facilities .safety h4.safety_copy {
	position: absolute;
	width: 65%;
	top: 40px;
	left: 360px;
	font-size: 2.4em;
	line-height: 1em;
	color: #FFF;
}
#facilities .safety .safety_text {
	position: absolute;
	width: 65%;
	top: 90px;
	left: 360px;
	font-size: 1.3em;
	line-height: 1.6em;
	color: #FFF;
}

/*--その他の施設--*/
#facilities .other {
	position: relative;
	width: 100%;
	max-width: 1080px;
	clear: both;
	margin: 0 auto 30px;
	padding: 10px;
	background: #000;
	box-sizing: border-box;
}
#facilities .other img {
	width: 62%;
	max-width: 720px;
	float: left;
}
#facilities .other h4.other_copy {
	width: 36%;
	float: right;
	padding: 10px 0;
	font-size: 1.6em;
	line-height: 1.6em;
	color: #FFF;
}
#facilities .other dl.other_box {
	position: absolute;
	width: 36%;
	bottom: 10px;
	right: 10px;
	color: #FFF;
	background: #333;
	box-sizing: border-box;
}
#facilities .other dl.other_box dt {
	width: 100%;
	clear: both;
	padding: 10px 10px 0;
	font-size: 1em;
	line-height: 1.6em;
	color: #FFF;
	background: #333;
	box-sizing: border-box;
}
#facilities .other dl.other_box dd {
	width: 100%;
	clear: both;
	padding: 10px;
	font-size: 0.9em;
	line-height: 1.4em;
	color: #FFF;
	background: #333;
	box-sizing: border-box;
}
#facilities .other dl.other_box dd a {
	color: #FFF;
	text-decoration: underline;
}
#facilities .other dl.other_box img {
	width: 100%;
}

/*==============================
料金・よくあるご質問
==============================*/
#guide {
	width: 100%;
	max-width: 1080px;
	clear: both;
	margin: 0 auto;
	padding: 20px 0;
}
#guide .block {
	margin-bottom: 40px;
}
#guide h3 {
	width: 100%;
	height: 40px;
	clear: both;
	margin: 0 auto 20px;
	font-size: 1.8em;
	line-height: 40px;
	text-align: center;
	color: #02428C;
	border: solid 1px #02428C;
	border-radius: 20px;
}
#guide .fee {
	position: relative;
	width: 960px;
	height: 640px;
	clear: both;
	margin: 0 auto;
	padding: 20px 0;
	background: url(../images/guide/img_main.jpg) no-repeat center top;
	box-sizing: border-box;
}
#guide .fee .box {
	position: absolute;
	width: 900px;
	bottom: 20px;
	left: 30px;
	padding: 20px 50px;
	background: rgba(255,255,255,0.9);
	box-sizing: border-box;
}
#guide .fee .box h4 {
	width: 100%;
	clear: both;
	margin-bottom: 20px;
	font-size: 2.8em;
	font-weight: bold;
	line-height: 1em;
	text-align: center;
	color: #02428C;
}
#guide .fee .box table {
	width: 100%;
	clear: both;
	margin: 0 auto 10px;
	text-align: center;
	border: solid 1px #02428C;
	background: #FFF;
}
#guide .fee .box table th {
	width: 100px;
	padding: 10px 0;
	font-size: 1.6em;
	line-height: 1em;
	color: #FFF;
	background: #02428C;
}
#guide .fee .box table th span {
	font-size: 0.6em;
}
#guide .fee .box table td {
	width: 200px;
	font-size: 2.8em;
	font-weight: bold;
	line-height: 1em;
	color: #FF4000;
}
#guide .fee .box .time {
	float: left;
	margin-right: 10px;
}
#guide .fee .box .time .time_egyo {
	float: left;
	margin-right: 10px;
	padding: 5px 10px;
	font-size: 1.4em;
	border: solid 1px #000;
}
#guide .fee .box .time .time_time {
	float: left;
	font-size: 2.4em;
	font-weight: bold;
	line-height: 1.4em;
}
#guide .fee .box .note {
	float: left;
	font-size: 1.2em;
	line-height: 1.3em;
}
#guide .resv_copy {
	width: 100%;
	clear: both;
	margin: 0 auto;
	padding: 20px 0;
	font-size: 2em;
	font-weight: bold;
	line-height: 1em;
	text-align: center;
	color: #FF0000;
}
#guide .resv_text {
	width: 100%;
	clear: both;
	margin: 0 auto 20px;
	font-size: 1.4em;
	line-height: 1.6em;
	text-align: center;
}
#guide a.btn_booking {
	width: 480px;
	height: 50px;
	clear: both;
	display: block;
	margin: 0 auto;
	font-size: 1.6em;
	line-height: 50px;
	text-align: center;
	color: #02428C;
	border: solid 1px #02428C;
	border-radius: 25px;
	background: url(../images/arrow_right2.png) no-repeat 95% center #FFF;
	background-size: 22px;
	box-sizing: border-box;
}
#guide a.btn_booking:hover {
	background: url(../images/arrow_right2.png) no-repeat 95% center rgba(2,66,140,0.1);
	background-size: 22px;
}
#guide .tel {
	width: 40%;
	clear: both;
	display: block;
	margin: 0 auto;
	padding: 40px 0 20px;
	font-size: 1.4em;
	line-height: 2em;
	text-align: center;
}
#guide a.btn_contact {
	width: 480px;
	height: 50px;
	clear: both;
	display: block;
	margin: 0 auto;
	font-size: 1.6em;
	line-height: 50px;
	text-align: center;
	color: #FFF;
	border-radius: 25px;
	background: url(../images/icon_mail_w.png) no-repeat 95% center #02428C;
	background-size: 22px;
	box-sizing: border-box;
}
#guide a.btn_contact:hover {
	background: url(../images/icon_mail_w.png) no-repeat 95% center rgba(2,66,140,0.5);
	background-size: 22px;
}
#guide dl.faq {
	width: 80%;
	clear: both;
	display: block;
	margin: 0 auto;
	padding: 20px 0;
}
#guide dl.faq+dl {
	border-top: solid 1px #CCC;
}
#guide dl.faq img {
	float: left;
	clear: left;
	margin-right: 10px;
}
#guide dl.faq dt {
	width: 100%;
	clear: both;
	display: block;
	margin: 0 auto 20px;
}
#guide dl.faq dt p.question {
	width: 94%;
	float: right;
	display: block;
	margin: 0 auto 20px;
	font-size: 1.8em;
	font-weight: bold;
	line-height: 1.8em;
}
#guide dl.faq dd {
	width: 94%;
	float: right;
	clear: both;
	display: block;
}
#guide dl.faq dd p.answer {
	width: 95%;
	float: right;
	display: block;
	font-size: 1.4em;
	line-height: 1.6em;
}
#guide dl.faq dd p.answer span {
	font-size: 0.8em;
}
#guide dl.faq dd p.answer a {
	text-decoration: underline;
    color: #06c;
}

/*==============================
営業カレンダー
==============================*/
#booking {
	width: 100%;
	max-width: 1080px;
	clear: both;
	margin: 0 auto 40px;
}
#booking .booking_copy {
	width: 100%;
	clear: both;
	margin: 0 auto;
	padding: 20px 0;
	font-size: 2em;
	font-weight: bold;
	line-height: 1.4em;
	text-align: center;
	color: #02428C;
}
#booking .box_text {
	width: 900px;
	clear: both;
	margin: 0 auto;
	padding: 20px 0;
	font-size: 1.4em;
	font-weight: bold;
	line-height: 1.6em;
	text-align: center;
	color: #FFF;
	background: #C61D56;
}
#booking .text {
	width: 100%;
	clear: both;
	margin: 0 auto;
	padding: 20px 0 0;
	font-size: 1.2em;
	line-height: 1.6em;
	text-align: center;
}
#booking .text strong {
	font-size: 1.2em;
}
#booking ul.booking_mark {
	width: 100%;
	clear: both;
	margin: 0 auto 20px;
}
#booking ul.booking_mark li {
	width: auto;
	float: left;
	padding: 10px 0;
	font-size: 1.2em;
	line-height: 1.8em;
}
#booking ul.booking_mark li+li {
	margin-left: 5%;
}
#booking ul.booking_mark li span {
	width: 12px;
	height: 12px;
	float: left;
	margin: 5px 5px 5px 0;
	border: solid 1px #CCC;
}
#booking ul.booking_mark li span.b1 {
	background: #FFF;
}
#booking ul.booking_mark li span.b2 {
	background: #EFF3D8;
}
#booking ul.booking_mark li span.b3 {
	background: #FAEDEB;
}
#booking ul.booking_mark li span.b4 {
	background: #DDD;
}
#booking ul.booking_mark li span.b5 {
	background: #C7E0EF;
}
#booking .booking_tel {
	width: 30%;
	display: block;
	margin: 0 auto;
	padding: 20px 0;
	font-size: 1.4em;
	line-height: 2em;
	text-align: center;
}
#booking a.booking_btn_contact {
	width: 300px;
	height: 50px;
	display: block;
	margin: 0 auto;
	font-size: 1.4em;
	line-height: 50px;
	text-align: center;
	color: #FFF;
	border-radius: 25px;
	background: #02428C;
	/*background: url(../images/icon_mail_w.png) no-repeat 90% center #02428C;
	background-size: 22px;*/
	box-sizing: border-box;
}
#booking a.booking_btn_contact:hover {
	/*background: url(../images/icon_mail_w.png) no-repeat 90% center rgba(2,66,140,0.5);
	background-size: 22px;*/
}

/*==============================
お予約の前に
==============================*/
#reservation {
	width: 100%;
    max-width: 1080px;
	clear: both;
	margin: 0 auto 40px;
}
#reservation .reservation_copy {
	width: 100%;
	clear: both;
	margin: 0 auto;
	padding: 30px 0;
	font-size: 1.8em;
	font-weight: bold;
	line-height: 1.2em;
	text-align: center;
}
#reservation ul.conditions {
	width: 100%;
	clear: both;
	margin: 0 auto;
	padding: 20px 0;
}
#reservation ul.conditions h3 {
	width: 100%;
	clear: both;
	margin: 0 auto 20px;
	padding: 15px 0;
	font-size: 1.8em;
	font-weight: bold;
	line-height: 1em;
	text-align: center;
	color: #02428C;
	/*border-top: solid 1px #999;*/
	border-bottom: solid 2px #02428C;
}
#reservation ul.conditions li {
	width: 95%;
	clear: both;
	margin: 0 0 0 5%;
	padding: 10px 0;
	font-size: 1.3em;
	line-height: 1.6em;
	list-style: disc outside
}
#reservation ul.conditions li a {
	text-decoration: underline;
    color: #06c;
}
#reservation ul.conditions a.btn_download {
	width: 300px;
	height: 50px;
	display: block;
	margin: 20px auto 10px;
	font-size: 1.4em;
	line-height: 50px;
	text-align: center;
	color: #FFF;
	border-radius: 25px;
	background: #02428C;
	box-sizing: border-box;
}
#reservation ul.conditions a.btn_download:hover {
	background: rgba(2,66,140,0.5);
}
#reservation ul.conditions .print {
	width: 100%;
	clear: both;
	margin: 0 auto;
	padding: 10px 0;
	font-size: 1.1em;
	line-height: 1.6em;
	text-align: center;
}
#reservation .note {
	width: 100%;
	clear: both;
	margin: 0 auto;
	padding: 10px 0;
	font-size: 1em;
	line-height: 1.6em;
	text-align: center;
	border-top: dotted 1px #999;
}
#reservation .resv_block {
	width: 100%;
	clear: both;
	margin: 20px auto 10px;
	padding: 30px;
	font-size: 1.4em;
	line-height: 1.6em;
	text-align: center;
	background: #EEE;
	box-sizing: border-box;
}
#reservation .resv_block #link {
	width: 300px;
	height: 50px;
	display: block;
	margin: 10px auto 0;
	font-size: 1em;
	line-height: 50px;
	text-align: center;
	color: #CCC;
	border-radius: 25px;
	background: #FFF;
	box-sizing: border-box;
}
#reservation .resv_block #link a {
	width: 100%;
	display: block;
	font-weight: bold;
	color: #02428C;
}
#reservation .group,
#booking .group {
	width: 100%;
	clear: both;
	margin: 0 auto;
	padding: 20px 0;
	text-align: center;
	box-sizing: border-box;
}
#reservation .group h4,
#booking .group h4 {
	width: 100%;
	clear: both;
	margin-bottom: 20px;
	font-size: 2.4em;
	font-weight: bold;
	line-height: 1em;
	text-align: center;
	color: #02428C;
	box-sizing: border-box;
}
#reservation .group p,
#booking .group p {
	width: 100%;
	clear: both;
	font-size: 1.4em;
	line-height: 1.6em;
	text-align: center;
}
#reservation .group a.btn_form,
#booking .group a.btn_form {
	width: 300px;
	height: 50px;
	display: block;
	margin: 20px auto 10px;
	font-size: 1.4em;
	line-height: 50px;
	text-align: center;
	color: #FFF;
	border-radius: 25px;
	background: #02428C;
	box-sizing: border-box;
}

/*-- コロナ感染防止対策 --*/
#reservation .coronaBlock {
	width: 100%;
	display: flex;
		justify-content: space-between;
		align-items: flex-start;
		flex-wrap: wrap;
	margin: 0 auto;
	padding: 20px;
	border: solid 1px red;
	background: #FFFFF2;
	box-sizing: border-box;
}
#reservation .coronaBlock h3.coronaTitle {
	width: 100%;
	clear: both;
	margin: 0 auto 20px;
	font-size: 1.8em;
	font-weight: bold;
	line-height: 1em;
	text-align: center;
	color: red;
}
#reservation .coronaBlock ul.coronaList {
	width: 48%;
	display: block;
}
#reservation .coronaBlock ul.coronaList h4 {
	width: 100%;
	clear: both;
	padding: 5px;
	font-size: 1.3em;
	font-weight: bold;
	line-height: 1.6em;
}
#reservation .coronaBlock ul.coronaList h4 span {
	display: block;
	font-size: 0.8em;
	font-weight: normal;
	line-height: 1.6em;
	color: red;
}
#reservation .coronaBlock ul.coronaList li {
	width: 93%;
	clear: both;
	margin-left: 7%;
	padding: 5px 0;
	font-size: 1.2em;
	line-height: 1.4em;
	list-style: disc outside;
	box-sizing: border-box;
}
#reservation ul.aboutNumber {
	width: 100%;
	display: block;
	margin: 0 auto;
    text-align: center;
}
#reservation ul.aboutNumber p {
	width: 100%;
	clear: both;
	padding: 5px;
	font-size: 1.2em;
	line-height: 1.6em;
}
#reservation ul.aboutNumber li {
	width: auto;
	margin-left: 5%;
	padding: 5px 0;
	font-size: 1em;
	line-height: 1.4em;
}

/*==============================
交通アクセス
==============================*/
#access {
	width: 100%;
	max-width: 1200px;
	clear: both;
	margin: 0 auto 40px;
}
#access .access_copy {
	width: 100%;
	clear: both;
	margin: 0 auto;
	padding: 20px 0 40px;
	font-size: 2.4em;
	line-height: 1.2em;
	text-align: center;
	color: #02428C;
}
#access .access_copy br {
	display: none;
}
#access iframe {
	width: 100%;
	min-height: 600px;
	clear: both;
	margin: 0 auto 30px;
}
#access .accessBlock {
	position: relative;
	width: 100%;
	display: flex;
		justify-content: space-between;
		align-content: flex-start;
		align-items: flex-start;
		flex-wrap: wrap;
	box-sizing: border-box;
}
#access img.map {
	width: 50%;
    max-width: 600px;
	display: block;
}
#access .how {
	width: 48%;
	display: block;
}
#access .how h3 {
	width: 100%;
	clear: both;
	padding: 20px 0;
	font-size: 1.8em;
	font-weight: bold;
	line-height: 1em;
	color: #02428C;
}
#access .how h3 img {
	height: 24px;
	margin-right: 10px;
}
#access .how dl.how_box {
	width: 100%;
	clear: both;
	margin-bottom: 20px;
}
#access .how dl.how_box dt {
	width: 100%;
	clear: both;
	margin-bottom: 10px;
	font-size: 1.4em;
	line-height: 1em;
}
#access .how dl.how_box dd {
	width: 100%;
	clear: both;
	margin-bottom: 10px;
	font-size: 1.2em;
	line-height: 1.6em;
}
#access .how h4 {
	width: 100%;
	clear: both;
	margin-bottom: 10px;
	font-size: 1.8em;
	font-weight: bold;
	line-height: 1em;
}
#access .how .note {
	width: 100%;
	clear: both;
	margin-bottom: 10px;
	font-size: 1.2em;
	line-height: 1.4em;
}
#access .how .car_navi {
	width: 100%;
	clear: both;
	margin-bottom: 10px;
	padding: 10px;
	font-size: 1.2em;
	line-height: 1.4em;
	border: solid 1px #DDD;
	background: #f5f5f5;
	box-sizing: border-box;
}

/*==============================
校外学習・企業研修における
アドベンチャープログラム
==============================*/
#training {
	width: 100%;
	/*max-width: 1600px;*/
	clear: both;
	margin: 0 auto;
	padding-bottom: 60px;
	background: url(../images/training/main_bg.jpg) no-repeat center top;
	background-size: 100%;
}
#training .training_block {
	width: 900px;
	float: right;
	clear: both;
}
#training h3.read {
	width: 100%;
	clear: both;
	padding: 20px 0;
	font-size: 1.6em;
	font-weight: bold;
	line-height: 1.6em;
	color: #FFF;
}
#training img.photo {
	width: 900px;
	margin-bottom: 20px;
}
#training .point_box {
	width: 100%;
	clear: both;
}
#training dl.point {
	width: 440px;
	height: 180px;
	margin-bottom: 20px;
}
#training .fl {
	float: left;
}
#training .fr {
	float: right;
}
#training dl.point dt {
	width: 100%;
	clear: both;
	padding: 7px 5px;
	font-size: 1.5em;
	font-weight: bold;
	line-height: 1em;
	color: #FFF;
	background: #EE9800;
	box-sizing: border-box;
}
#training dl.point dd {
	width: 100%;
	clear: both;
	padding: 10px 0;
	font-size: 1.2em;
	line-height: 1.4em;
}
#training a.btn_soulmate {
	width: 400px;
	height: 50px;
	float: left;
	display: block;
	margin: 0 20px;
	padding-top: 2px;
	text-align: center;
	color: #FFF;
	border: solid 1px #02428C;
	border-radius: 25px;
	background: #FFF;
	background-size: 22px;
	box-sizing: border-box;
}
#training a.btn_contact:hover {
	background: rgba(2,66,140,0.5);
}
#training a.btn_soulmate img {
	height: 38px;
}
#training a.btn_contact {
	width: 400px;
	height: 50px;
	float: right;
	display: block;
	margin: 0 20px;
	font-size: 1.6em;
	line-height: 50px;
	text-align: center;
	color: #FFF;
	border-radius: 25px;
	background: url(../images/icon_mail_w.png) no-repeat 90% center #02428C;
	background-size: 22px;
	box-sizing: border-box;
}
#training a.btn_contact:hover {
	background: url(../images/icon_mail_w.png) no-repeat 90% center rgba(2,66,140,0.5);
	background-size: 22px;
}

/*==============================
News
==============================*/
#news {
	width: 100%;
	max-width: 1080px;
	clear: both;
	margin: 0 auto 20px;
}
#news dl.news_list {
	position: relative;
	width: 100%;
	float: left;
	clear: both;
	padding: 20px 0;
	font-size: 1.3em;
	line-height: 1.6em;
}
#news dl.news_list+dl {
	border-top: solid 1px #CCC;
}
#news dl.news_list dt {
	width: 22%;
	float: left;
	clear: both;
	color: #999;
}
#news dl.news_list dd {
	width: 78%;
	float: right;
}
.wp-pagenavi {
	width: 100%;
	clear: both;
	float: left;
	margin: 30px 0 20px;
	text-align: center;
}
.wp-pagenavi a, .wp-pagenavi span {
	margin: 2px;
	padding: 3px 7px;
	text-decoration: none;
	border: 1px solid #3F85C5;
}
.wp-pagenavi a:hover, .wp-pagenavi span.current {
	border-color: #3F85C5;
}
.wp-pagenavi span.current {
	font-weight: bold;
	color: #FFF;
	background-color: #3F85C5;
}

/*-- News（詳細ページ） --*/
#news .date {
	width: 80%;
	clear: both;
	margin: 0 auto;
	padding: 40px 0 20px;
	font-size: 1.2em;
	line-height: 1em;
	color: #999;
}
#news h3.news_title {
	width: 80%;
	clear: both;
	margin: 0 auto 20px;
	font-size: 1.8em;
	line-height: 1.4em;
}
#news .content {
	width: 80%;
	clear: both;
	margin: 0 auto;
	padding: 20px 0 40px;
	font-size: 1.2em;
	line-height: 1.6em;
	border-top: solid 5px #02428C;
}
#news .page_navi {
	position: relative;
	width: 100%;
	clear: both;
	border-top: solid 1px #CCC;
}
#news .page_navi .prev {
	position: absolute;
	width: auto;
	max-width: 40%;
	top: 0px;
	left: 0px;
	display: flex;
	padding: 20px 0;
	align-items: center;
	font-size: 1.2em;
	line-height: 20px;
	box-sizing: border-box;
}
#news .page_navi .prev a {
	padding-left: 20px;
	text-decoration: none;
	background: url(../images/arrow_left2.png) no-repeat left center;
	background-size: 10px;
}
#news .page_navi .next {
	position: absolute;
	width: auto;
	max-width: 40%;
	top: 0px;
	right: 0px;
	display: flex;
	padding: 20px 0;
	align-items: center;
	font-size: 1.2em;
	line-height: 20px;
	box-sizing: border-box;
}
#news .page_navi .next a {
	padding-right: 20px;
	text-decoration: none;
	background: url(../images/arrow_right2.png) no-repeat right center;
	background-size: 10px;
}
#news .page_navi .center {
	width: 20%;
	clear: both;
	display: block;
	margin: 0 auto;
	padding: 20px 0;
	text-align: center;
}

/*==============================
お問い合わせ
==============================*/
#form {
	width: 96%;
	max-width: 960px;
	clear: both;
	margin: 0 auto;
	padding: 20px 0;
}
#form a {
	text-decoration: underline;
}
#form .text,
#form .thanks {
	width: 100%;
	clear: both;
	padding-bottom: 20px;
	font-size: 1.2em;
	line-height: 1.6em;
	text-align: center;
}
#form .note_text {
	width: 100%;
	clear: both;
	padding: 20px 0;
	font-size: 1.2em;
	line-height: 1.6em;
	text-align: center;
}
#form .note_text a {
	color: #06C;
}
#form .note_text a:hover {
	color: #999;
}
#form .note_text b {
	font-size: 1.1em;
	color: red;
}
#form .box_text {
	width: 900px;
	clear: both;
	margin: 0 auto 20px;
	padding: 20px 0;
	font-size: 1.4em;
	font-weight: bold;
	line-height: 1.6em;
	text-align: center;
	color: #FFF;
	background: #C61D56;
}
#form .text strong {
	font-size: 1.2em;
}
#form h3 {
	width: 100%;
	clear: both;
	font-size: 1.4em;
	font-weight: bold;
	line-height: 40px;
	text-indent: 20px;
	color: #02428C;
	border-radius: 20px;
	background: #EEE;
	box-sizing: border-box;
}
#form dl {
	width: 100%;
	clear: both;
	float: left;
	border-bottom: dotted 1px #CCC;
}
#form dl dt {
	position: relative;
	width: 24%;
	float: left;
	padding: 15px 0 15px 1%;
	font-size: 1.2em;
	line-height: 40px;
	box-sizing: border-box;
}
#form dl dt .must {
	position: absolute;
	width: 36px;
	height: 24px;
	top: 23px;
	right: 0px;
	font-size: 0.8em;
	line-height: 24px;
	text-align: center;
	color: red;
	border: solid 1px red;
}
#form dl dt .note,
#form dl dd .note {
	margin-top: 5px;
	font-size: 0.8em;
	line-height: 1.4em;
	color: #666;
}
#form dl dd {
	width: 75%;
	float: right;
	padding: 15px 0;
	font-size: 1.2em;
	line-height: 40px;
}
#form dl dd .error {
	margin-left: 5px;
	font-size: 1em;
	line-height: 1.2em;
	color: red;
}
#form dl dd input.ip01,
#form dl dd input.ip02,
#form dl dd input.ip03,
#form dl dd input.ip04,
#form dl dd input.ip05 {
	margin-right: 5px;
	padding: 5px;
	box-sizing: border-box;
}
#form dl dd input.ip01 {
	width: 30%;
}
#form dl dd input.ip02 {
	width: 60%;
}
#form dl dd input.ip03 {
	width: 10%;
}
#form dl dd input.ip04 {
	width: 15%;
}
#form dl dd input.ip05 {
	width: 7%;
}
#form dl dd textarea {
	width: 90%;
	margin-bottom: -10px;
	padding: 5px;
	box-sizing: border-box;
}
#form dl dd ul.check_list {
	width: 100%;
	float: left;
	clear: both;
}
#form dl dd ul.check_list li {
	width: 100%;
	float: left;
	display: block;
	padding: 5px 0;
	line-height: 2em;
}
#form label {
	display: block;
}
#form .privacy {
	width: 100%;
	float: left;
	clear: both;
	font-size: 1em;
	line-height: 1.6em;
}
#form .btn_send {
	width: 100%;
	clear: both;
	padding-top: 40px;
	padding-bottom: 40px;
	text-align: center;
}
#form .btn_confirm {
	width: 100%;
	clear: both;
	margin: 0 auto;
	padding: 20px 0;
	text-align: center;
}

/*確認画面へ進むボタン用*/
.mw_wp_form_input .btn input {
	background: url(../images/contact/btn_confirm.png) no-repeat #003077;
	width: 300px;
	height: 50px;
	text-indent: -9999px;
	overflow: hidden;
	border: none;
	border-radius: 25px;
	cursor: pointer;
	color: #FFF;
}
.mw_wp_form_confirm .btn input {
/*送信ボタン用*/
	background: url(../images/contact/btn_send.png) no-repeat #003077;
	width: 200px;
	height: 50px;
	text-indent: -9999px;
	overflow: hidden;
	border: none;
	border-radius: 25px;
	cursor: pointer;
	color: #FFF;
}
#submitback {
	width: 100%;
	text-align: center;
	clear: both;
}

/*戻るボタン用*/
#submitback input {
	background: url(../images/contact/btn_back.png) no-repeat #003077;
	width: 200px;
	height: 50px;
	text-indent: -9999px;
	overflow: hidden;
	border: none;
	border-radius: 25px;
	cursor: pointer;
}

/*プライバシーポリシー*/
#form .privacy_area {
	width: 100%;
	height: 360px;
	clear: both;
	overflow: auto;
	margin: auto 0;
	padding: 20px 20px 0;
	border: solid 5px #EEE;
	box-sizing: border-box;
}
#form .privacy_area h4 {
	width: 100%;
	clear: both;
	margin: 0 auto 20px;
	font-size: 1.6em;
	line-height: 1.2em;
	text-align: center;
}
#form .privacy_area .text {
	width: 100%;
	clear: both;
	margin: 0 auto 20px;
	font-size: 1.2em;
	line-height: 1.2em;
	text-align: left;
}
#form .privacy_area .text {
	width: 100%;
	clear: both;
	margin: 0 auto 20px;
	padding: 0;
	font-size: 1.1em;
	line-height: 1.4em;
	text-align: left;
}
#form .privacy_area .text span {
	font-weight: bold;
	line-height: 1.8em;
}
#form .privacy_area ul.number {
	width: 95%;
	float: right;
	clear: both;
	margin: 0 auto 20px;
	padding: 0;
	text-align: left;
}
#form .privacy_area ul.number li {
	width: 100%;
	clear: both;
	margin: 0 auto 10px;
	padding: 0;
	font-size: 1em;
	line-height: 1.4em;
	text-align: left;
	list-style: decimal;
}

/*==============================
サイトマップ
==============================*/
#sitemap {
	width: 100%;
	max-width: 1080px;
	clear: both;
	margin: 0 auto 20px;
}
#sitemap ul {
	width: 50%;
	clear: both;
	margin: 0 auto;
}
#sitemap ul li {
	width: 100%;
	float: left;
	clear: both;
	padding: 20px 0;
	font-size: 1.4em;
	line-height: 1.2em;
	background: url(../images/arrow_right.png) no-repeat 98% 20px;
	background-size: 20px;
}
#sitemap ul li+li {
	border-top: solid 1px #CCC;
}
#sitemap ul li br {
	display: none;
}

/*==============================
サイトポリシー／個人情報保護方針
==============================*/
#policy {
	width: 100%;
	max-width: 1080px;
	clear: both;
	margin: 0 auto;
	padding: 20px 0;
}
#policy a {
	color: #03C;
	text-decoration: underline;
}
#policy a:hover {
	color: #CCC;
}
#policy .date {
	width: 100%;
	float: right;
	clear: both;
	font-size: 1em;
	line-height: 1.6em;
	padding-bottom: 20px;
	text-align: right;
}
#policy .text,
#policy .text2,
#policy .text3 {
	width: 100%;
	clear: both;
	font-size: 1.2em;
	line-height: 1.6em;
}
#policy .text {
	margin-bottom: 20px;
}
#policy .text2 {
	padding-bottom: 10px;
}
#policy .text3 {
	margin-bottom: 20px;
	padding-top: 20px; 
}
#policy .subject {
	width: 100%;
	clear: both;
	margin-bottom: 10px;
	padding: 20px 0 5px 0;
	font-size: 1.2em;
	line-height: 1.2em;
	color: #02428C;
	border-bottom: 1px solid #999;
}
#policy .subject br {
	display: none;
}
#policy dl {
	width: 100%;
	float: left;
	clear: both;
	padding-bottom: 20px;
}
#policy dl dt {
	width: 3%;
	float: left;
	font-size: 1.1em;
	line-height: 20px;
}
#policy dl dd {
	width: 97%;
	float: right;
	font-size: 1.1em;
	line-height: 1.6em;
}
#policy dl.pri {
	width: 80%;
	float: left;
	clear: both;
	margin: 0 10%;
	padding: 10px 0;
}
#policy dl.pri dt {
	width: 3%;
	float: left;
	font-size: 1.1em;
	line-height: 1.6em;
}
#policy dl.pri dd {
	width: 97%;
	float: right;
	font-size: 1.1em;
	line-height: 1.6em;
}
#policy dl ul {
	width: 95%;
	float: right;
	clear: both;
	margin-top: 10px;
}
#policy dl ul li {
	float: left;
	clear: both;
	margin-bottom: 5px;
	font-size: 1.1em;
	line-height: 1.4em;
	list-style-position: outside;
	list-style-type: disc;
}
#policy .contact {
	width: 100%;
	clear: both;
	margin-bottom: 20px;
	padding: 10px 0;
	font-size: 1.6em;
	line-height: 1em;
	text-align: center;
	border-top: 1px solid #999;
	border-bottom: 1px solid #999;
}
#policy .tel {
	width: 100%;
	clear: both;
	margin-bottom: 20px;
	font-size: 1.8em;
	line-height: 1em;
	text-align: center;
}
#policy .tel span {
	font-size: 1.6em;
}

/*==============================
Footer
==============================*/
footer {
	width: 100%;
	display: block;
}
footer #page-top{
	position: fixed;
	width: 100px;
	right: 20px;
	bottom: 70px;
	z-index: 10000;
	border-radius: 50px;
	background: rgba(2,66,140,0.25);
}
footer .footer_top {
	position: relative;
	width: 100%;
	max-width: 1200px;
	display: flex;
		justify-content: space-between;
		align-content: flex-start;
		align-items: flex-end;
		flex-wrap: wrap;
	margin: 20px auto;
}
footer .footer_top .infoBox {
	position: relative;
	width: 50%;
	display: flex;
		justify-content: flex-start;
		align-content: flex-start;
		align-items: flex-start;
		flex-wrap: wrap;
}
footer .footer_top img.footer_logo {
	width: 240px;
	display: block;
}
footer .footer_top address {
	width: 100%;
	display: block;
    margin: 10px 0;
	font-size: 1.4em;
	line-height: 1em;
}
footer .footer_top .footer_tel {
	width: 200px;
    height: 40px;
	display: flex;
		justify-content: flex-start;
		align-content: center;
		align-items: center;
    margin-right: 10px;
}
footer .footer_top a.btn_contact {
	width: 220px;
	height: 40px;
	display: block;
	padding-left: 20px;
	font-size: 1.3em;
	line-height: 40px;
	color: #FFF;
	border-radius: 20px;
	background: url(../images/icon_mail_w.png) no-repeat 92% center #02428C;
	background-size: 22px;
	box-sizing: border-box;
}
footer .footer_top a.btn_contact:hover {
	background: url(../images/icon_mail_w.png) no-repeat 92% center rgba(2,66,140,0.5);
	background-size: 22px;
}
footer .footer_top ul.banner {
	width: 50%;
	display: flex;
		justify-content: space-between;
}
footer .footer_top ul.banner li {
	width: 31%;
    max-width: 186px;
	display: block;
}

/*--footer_bottom--*/
footer .footer_bottom {
	width: 100%;
	clear: both;
	border-top: solid 1px #CCC;
}
footer .footer_bottom .footer_bottom_inner {
	width: 100%;
	max-width: 1200px;
	clear: both;
	margin: 0 auto;
	padding: 10px 0;
}
footer .footer_bottom ul.footer_menu {
	width: 70%;
	float: left;
}
footer .footer_bottom ul.footer_menu li+li {
	float: left;
	margin-left: 30px;
}
footer .footer_bottom ul.footer_menu li a {
	float: left;
	display: inline-block;
	font-size: 1.1em;
	line-height: 1em;
}
footer .footer_bottom .copyright {
	width: 30%;
	float: right;
	font-size: 1em;
	line-height: 1em;
	text-align: right;
}
footer .footer_bottom .copyright br {
	display: none;
}