@charset "UTF-8";

/* ------------------------- :root環境変数設定 ------------------------------ */

:root {
	--scrollbar_width: 0px;
	--content_min_w: 390px;
}

/* ------------------------- ページ基本共通設定 ------------------------------ */
*, *:after, *:before {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	backface-visibility: hidden;
	min-height: 0%;
}

*:after, *:before {
	background-position: left top;
	background-size: 100% auto;
	background-repeat: no-repeat;
}

.gc-touch * {
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	user-select: none;
}

::-webkit-input-placeholder {
	color: #8F9696;
	opacity: 1;
}

::-moz-placeholder {
	color: #8F9696;
	opacity: 1;
}

:-ms-input-placeholder {
	color: #8F9696;
}

:focus::-webkit-input-placeholder {
	opacity: 1;
	color: transparent;
}

:focus:-moz-placeholder {
	opacity: 1;
	color: transparent;
}

:focus::-moz-placeholder {
	opacity: 1;
	color: transparent;
}

:focus:-ms-placeholder {
	opacity: 1;
	color: transparent;
}

html,
body {
	overscroll-behavior: none;
}

body {
	font-size: 1rem;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
	font-style: normal;
	font-weight: 400;
	letter-spacing: normal;
	line-height: 1.857;
	color: #000000;
	min-width: var(--content_min_w);
	background-color: #ffffff;
}

img {
	max-width: 100%;
	height: auto;
}

a {
	text-decoration: underline;
	color: inherit;
	text-underline-offset: 0.25em;
}

.gc-normal a:hover {
	text-decoration: none;
}

.font-yu-gothic{
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
}

.font-hiragino-kaku-gothic{
	font-family: Hiragino Kaku Gothic ProN、ヒラギノ角ゴ ProN、Hiragino, sans-serif;
}

.font-zen-old-mincho {
  font-family: "Zen Old Mincho", serif;
}

.font-marcellus {
  font-family: "Marcellus", serif;
}

.m-link_underline{
	text-decoration: underline;
}

.gc-normal .m-link_underline:hover{
	text-decoration: none;
}

.m-link_hoverline{
	text-decoration: none;
}

.gc-normal .m-link_hoverline:hover{
	text-decoration: underline;
}

/**/

.t-sitewrap {
	
}

/* #sitewrap,#sitecontent, .t-sitewrap, .t-sitecontent */

#sitewrap{
	
}

#sitewrap #sitecontent{
	
}

.t-sitewrap{
}

.t-sitecontent{
	background-color: #ffffff;
}

.t-sitecontent{
	overflow: clip;
}

.t-first_load{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 200vh;
	background-color: #fff;
	z-index: 99999;
}

/**/
/* ================= .m-main_content_wrap ================= */
/**/

:root{
	/*--bw: 1136px;*/
	--bw: 1704px;
	--bp: 108px;
}

@media screen and (max-width: 1920px) {
	:root{
		--bp: 5.625%;
	}
}

/*
@media screen and (max-width: 1280px) {
	:root{
		--bp: 72px;
	}
}*/

@media screen and (max-width: 900px) {
	:root{
		--bp: 40px;
	}
}

@media screen and (max-width: 700px) {
	:root{
		--bp: 20px;
	}
}

.m-main_content_wrap{
	padding: 0 var(--bp);
}

.m-main_content{
	max-width: var(--bw);
	margin: 0 auto;
}

/* m-clearfix
===========================================================*/
.m-clearfix::after {
  content: ""; 
  display: block;
  clear: both;
  visibility: hidden;
  height:0;
}

/**/
/* ================= .m-title ================= */
/**/

.m-title01_block_wrap{
	--text_m: 18px;
	font-size: 56px;
	display: flex;
	white-space: nowrap;
	margin: 0 0 60px 0;
}

.m-title01_block_wrap:last-child{
	margin-bottom: 0;
}

.m-title01_block{
	display: flex;
}

.m-title01_block_head{
	font-family: "Marcellus", serif;
	font-weight: 400;
	color: #1D8888;
	line-height: 1;
	padding: 0 calc( 1 * var(--text_m) ) 0 0;
}

.m-title01_block_text{
	margin: 0 calc( -1 * var(--text_m) ) calc( -1 * var(--text_m) ) 0;
}

.m-title01_block_wrap.type01 .m-title01_block_text{
	display: block;
}

.m-title01_block_wrap.type02 .m-title01_block_text{
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
}

.m-title01_block_text > *{
	padding: 0 calc( 1 * var(--text_m) ) calc( 1 * var(--text_m) ) 0;
}

.m-title01_01{
	font-size: 100%;
	font-family: "Marcellus", serif;
	font-weight: 400;
	color: #1D8888;
	line-height: 1;
}

.m-title01_02{
	font-size: 18px;
	font-family: "Zen Old Mincho", serif;
	font-weight: 400;
}

@media screen and (max-width: 900px) {
	.m-title01_block_wrap{
		--text_m: 15px;
		margin: 0 0 50px 0;
	}
	.m-title01_block_wrap{
		font-size: 46px;
	}
	.m-title01_02{
		font-size: 17px;
	}
}

@media screen and (max-width: 700px) {
	.m-title01_block_wrap{
		--text_m: 12px;
		margin: 0 0 40px 0;
	}
	.m-title01_block_wrap{
		font-size: 36px;
	}
	.m-title01_02{
		font-size: 16px;
	}
	
}

/**/
/* ================= .m-list_table ================= */
/**/

.m-list_table{
	--line: 1.857;
	width: 100%;
	line-height: var(--line);
}

.m-list_table_head{
	display: flex;
	align-items: center;
	height: calc( 1em * var(--line) );
}

.m-list_table tr th{
	white-space: nowrap;
	padding: 0 0.5em 0.5em 0;
}

.m-list_table tr td{
	width: 100%;
	padding: 0 0 0.5em 0;
}

.m-list_table tr:last-child th,
.m-list_table tr:last-child td{
	padding-bottom: 0;
}

/**/
/* ================= .m-bg_animation ================= */
/**/

.m-bg_animation{
	position: relative;
}

.m-bg_animation_bg{
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #F9F9F9;
	transition: height 2.0s ease 0s;
}

.m-bg_animation_in{
	position: relative;
}

.m-bg_animation.gc-active .m-bg_animation_bg{
	height: 0;
}

/**/
/* ================= .m-thumb_cut_wrap ================= */
/**/

.m-thumb_cut_wrap{
	transition: width 0.8s ease 0s;
	position: relative;
}

.m-thumb_cut{
	width: 0;
	overflow: hidden;
	transition: width 0.8s ease 0s;
}

.m-thumb_cut_wrap.gc-active .m-thumb_cut{
	width: 100%;
}

.m-thumb_cut_in{
	
}

.m-thumb_cut_wrap.type_vert{

}

.m-thumb_cut_wrap.type_vert .m-thumb_cut{
	width: 100%;
	height: 0;
	transition: height 0.8s ease 0s;
}

.m-thumb_cut_wrap.type_vert.gc-active .m-thumb_cut{
	height: 100%;
}

.m-thumb_cut_wrap.gc-end .m-thumb_cut{
	overflow: visible;
}

.m-thumb_cut_wrap.gc-end .m-thumb_cut_in{
	width: 100% !important;
}

.m-thumb_cut_wrap.type_vert.gc-end{
	height: auto !important;
}

/**/
/* ================= .m-acc_content_wrap ================= */
/**/

.m-acc_content_wrap{

}

.m-acc_content_head{

}

.m-acc_switch{
	cursor: pointer;
}

.m-acc_content{
	display: none;
}

/**/
/* ================= .m-btn_wrap ================= */
/**/

.m-btn_wrap{
	position: relative;
	display: flex;
	flex-direction: column;
}

.m-btn_wrap::before{
	content:"";
	position: absolute;
	display: block;
	top: 0.5px;
	left: 0.5px;
	bottom: 0.5px;
	right: 0.5px;
	background-color: #FFFFFF;
}

.m-btn_wrap .m-btn{
  position: relative;
  flex-grow: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  text-decoration: none !important;
  cursor: pointer;
}


.m-btn_wrap .m-btn.no_hover{
	opacity: 1 !important;
	transition: none !important;
	cursor: default !important;
}

.m-btn_wrap .m-btn_text{
  position: relative;
  line-height: 1.43;
  display: inline-block;
}

.m-btn_wrap .m-btn_img{
  position: absolute;
  top: 50%;
  right: 15px;
  height: 0;
  display: flex;
  align-items: center;
  line-height: 0;
}

.m-btn_wrap .m-btn_img:first-child{
  margin-left: 0;
}

.m-btn_wrap .m-btn_img:last-child{
  margin-right: 0;
}

.m-btn_wrap .m-btn a{
	text-decoration: none !important;
	color: inherit;
}

/* .m-btn_wrap.type01 .m-btn */

.m-btn_wrap.type01{
	min-width: 160px;
}

.m-btn_wrap.type01,
.m-btn_wrap.type01::before,
.m-btn_wrap.type01 .m-btn{
	border-radius: 9999px;
}

.m-btn_wrap.type01 .m-btn{
	font-size: 15px;
	font-weight: 500;
	padding: 5px 24px;
	transition: opacity 0.4s ease 0s;
	color: #fff;
	background-color: #1D8888;
	border: 1px solid #1D8888;
	min-height: 38px;
}

/*
.gc-normal .m-btn_wrap.type01 .m-btn:hover{
	opacity: 0.7;
}*/

/* .m-btn_wrap.type02 .m-btn */

.m-btn_wrap.type02{
	min-width: 152px;
}

.m-btn_wrap.type02,
.m-btn_wrap.type02::before,
.m-btn_wrap.type02 .m-btn{
	border-radius: 8px;
}

.m-btn_wrap.type02 .m-btn{
	font-size: 14px;
	font-weight: 500;
	padding: 6px 24px;
	transition: color 0.4s ease 0s, border-color 0.4s ease 0s, background-color 0.4s ease 0s;
	color: #000000;
	background-color: #FFFFFF;
	border: 1px solid #FFFFFF;
	min-height: 48px;
}

.gc-normal .m-btn_wrap.type02 .m-btn:hover{
	color: #fff;
	background-color: #1D8888;
	border: 1px solid #1D8888;
}

/* .m-btn_wrap.type01.type_btn_select01 */

.m-btn_wrap1.type_btn_select01{
	position: relative;
}

.m-btn_wrap.type01.type_btn_select01 .m-btn{
	font-size: 18px;
	font-family: "Marcellus", serif;
	font-weight: 400;
	min-height: 44px;
}

.m-btn_wrap.type01.type_btn_select01 .m-btn{
	background-color: #EFEFEF;
	border-color: #EFEFEF;
	color: #000000;
	transition: color 0.4s ease 0s, background-color 0.4s ease 0s, border-color 0.4s ease 0s;
}

.gc-normal .m-btn_wrap.type01.type_btn_select01:hover .m-btn,
.m-btn_wrap.type01.type_btn_select01.gc-active .m-btn{
	background-color: #263F3F;
	border-color: #263F3F;
	color: #fff;
}

.m-btn_wrap.type01.type_btn_select01 .m-flex_text{
	--data_x: 30px;
}

.m-btn_select01_list_area{
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	z-index: 10;
	display: none;
}


.m-btn_select01_list_wrap{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	padding: 12px 0 0 0;
}

.m-btn_select01_list{
	display: inline-block;
	min-width: 100%;
	background-color: #fff;
	box-shadow: 0px 3px 6px 0 rgba(0,0,0,0.16);
	border-radius: 10px;
	padding: 33px 22px;
	line-height: 1;
	font-weight: 700;
}

.m-btn_select01_list li{
	margin: 0 0 26px 0;
}

.m-btn_select01_list li:last-child{
	margin-bottom: 0;
}

.m-btn_select01_list li a{
	text-decoration: none !important;
	transition: color 0.4s ease 0s;
	color: #ACA89D;
}

.gc-normal .m-btn_select01_list li a:hover,
.m-btn_select01_list li a.gc-active{
	color: #000000;
}


@media screen and (max-width: 700px) {
	.m-btn_wrap.type01.type_btn_select01 .m-flex_text{
		--data_x: 10px;
	}
}

/* .m-btn_wrap.type03 .m-btn */

.m-btn_wrap.type03{
	min-height: 80px;
}

.m-btn_wrap.type03,
.m-btn_wrap.type03::before,
.m-btn_wrap.type03 .m-btn{
	border-radius: 8px;
}

.m-btn_wrap.type03 .m-btn{
	font-size: 18px;
	font-weight: 500;
	padding: 12px 12px;
	transition: color 0.4s ease 0s, border-color 0.4s ease 0s, background-color 0.4s ease 0s;
	color: #000000;
	background-color: #FFFFFF;
	border: 1px solid #C3C3C3;
}

.gc-normal .m-btn_wrap.type03 .m-btn:hover,
.m-btn_wrap.type03 .m-btn.gc-active{
	color: #fff;
	background-color: #263F3F;
	border: 1px solid #263F3F;
}

@media screen and (max-width: 700px) {
	
	.m-btn_wrap.type03{
		min-height: 70px;
	}

	.m-btn_wrap.type03 .m-btn{
		font-size: 16px;
	}
}

/**/
/* ================= .m-pager_block_wrap ================= */
/**/

.m-pager_block_wrap{
	display: flex;
	justify-content: center;
	font-size: 15px;
	line-height: 1;
	font-family: "Marcellus", serif;
	font-weight: 400;
	text-align: center;
	white-space: nowrap;
	margin: 80px 0 0 0;
}

@media screen and (max-width: 900px) {
	.m-pager_block_wrap{
		margin: 70px 0 0 0;
	}
}

@media screen and (max-width: 700px) {
	.m-pager_block_wrap{
		margin: 60px 0 0 0;
	}
}

.m-pager_block{
	display: flex;
	margin: 0 -8px 0 0;
}

.m-pager_block span,
.m-pager_block a{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 1px solid #C3C3C3;
	border-radius: 2px;
	height: 32px;
	min-width: 34px;
	padding: 8px;
	margin: 0 8px 0 0;
	text-decoration: none !important;
	transition: color 0.4s ease 0s,border-color 0.4s ease 0s,background-color 0.4s ease 0s;
}

@media screen and (max-width: 700px) {
	.m-pager_block_wrap{
		justify-content: center;
	}
	
	.m-pager_block{
		margin: 0 -5px 0 0;
	}

	.m-pager_block span,
	.m-pager_block a{
		height: 26px;
		min-width: 26px;
		padding: 6px;
		margin: 0 5px 0 0;
	}
}

.m-pager_block span.current,
.m-pager_block a:hover{
	background-color: #1D8888;
	border-color: #1D8888;
	color: #ffffff;
}

.m-pager_block .first,
.m-pager_block .last,
.m-pager_block .prev,
.m-pager_block .next,
.m-pager_block .dots{
	overflow: hidden;
	text-indent: 200%;
	white-space: nowrap;
}

.m-pager_block .dots{
	border: none;
	min-width:0;
	padding: 0;
}

.m-pager_block span *,
.m-pager_block a *{

}

/*
.m-pager_block .first::before,
.m-pager_block .last::before{
	background-image: url(../img/icon/icon_pager_arrow02.svg);
	width: 13px;
	height: 12px;
}

.m-pager_block .prev::before,
.m-pager_block .next::before{
	background-image: url(../img/icon/icon_pager_arrow01.svg);
	width: 7px;
	height: 12px;
}

.m-pager_block .dots::before{
	background-image: url(../img/icon/icon_pager_dots.svg);
	width: 10px;
	height: 2px;
}

.m-pager_block .first::before,
.m-pager_block .last::before,
.m-pager_block .prev::before,
.m-pager_block .next::before,
.m-pager_block .dots::before{
	content: "";
	display: block;
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-position: center center;
	transform-origin: 50% 50%;
}

.m-pager_block .last::before,
.m-pager_block .next::before{
	transform: rotate(180deg);
}*/



/**/
/* ================= .m-popup_movie_link, .m-popup_img_link ================= */
/**/

.m-popup_movie_link .m-img_thumb::before,
.m-popup_img_link .m-img_thumb::before{
	content: "";
}

.m-popup_movie_link .m-img_thumb::before{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-image: url(../img/icon/icon_movie01.svg);
	background-size: 60px auto;
	background-position: center center;
	background-repeat: no-repeat;
	background-color: rgba(0,0,0,0.45);
	z-index: 1;
}

.m-popup_img_link .m-img_thumb::before{
	position: absolute;
	bottom: 16px;
	right: 16px;
	z-index: 1;
	display: block;
	background-color: #ffffff;
	border-radius: 6px;
	height: 25px;
	width: 33px;
	background-image: url(../img/icon/icon_popup01.svg);
	background-repeat: no-repeat;
	background-size: 13px auto;
	background-position: center center;
}

/* .m-movie_big */


.m-movie_big .m-works_block_vision .m-img_thumb{
	padding-bottom: 55.95%;
	border-radius: 6px;
}

@media screen and (min-width: 701px) {
	.m-movie_big .m-popup_movie_link .m-works_block_vision .m-img_thumb::before{
		background-image: url(../img/icon/icon_movie01_big.svg);
		background-size: 126px auto;
	}
}

/**/
/* ================= .m-img_thumb .m-thumb_hover ================= */
/**/

.gc-normal a .m-img_thumb.m-thumb_hover img{
	transform-origin: 50% 50%;
	transform: scale(1.1,1.1);
	transition: transform 0.4s ease 0s;
}

.gc-normal a .m-img_thumb.m-thumb_hover::after{
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(255,255,255,0.3);
	transition: opacity 0.4s ease 0s;
	opacity: 0;
	pointer-events: none;
	z-index: 10;
}

.gc-normal a:hover .m-img_thumb.m-thumb_hover img{
	transform: scale(1.0,1.0);
}

.gc-normal a:hover .m-img_thumb.m-thumb_hover::after{
	opacity: 1;
}


/**/
/* ================= .m-hover_obj01_wrap ================= */
/**/

.m-hover_obj01_wrap{
	overflow: hidden;
	position: relative;
	display: inline-block;
	vertical-align: bottom;
	line-height: 0;
}

.m-hover_obj01{
	display: block;
	line-height: 0;
	padding: 1px;
}

.m-hover_obj01{
	transition: transform 0.2s linear 0s;
}

.m-hover_obj01:nth-child(1){
	transform: translateX(0%);
}

.m-hover_obj01:nth-child(2){
	position: absolute;
	top: 0;
	left: 0;
	transform: translateX(-150%);
}

.m-hover_obj01_wrap.type_right .m-hover_obj01:nth-child(1){
	transform: translateX(0%);
}

.m-hover_obj01_wrap.type_right .m-hover_obj01:nth-child(2){
	transform: translateX(-150%);
}

.m-hover_obj01_wrap.type_left .m-hover_obj01:nth-child(1){
	transform: translateX(0%);
}

.m-hover_obj01_wrap.type_left .m-hover_obj01:nth-child(2){
	transform: translateX(150%);
}

.m-hover_obj01_wrap.type_up .m-hover_obj01:nth-child(1){
	transform: translateY(0%);
}

.m-hover_obj01_wrap.type_up .m-hover_obj01:nth-child(2){
	transform: translateY(150%);
}

.m-hover_obj01_wrap.type_down .m-hover_obj01:nth-child(1){
	transform: translateY(0%);
}

.m-hover_obj01_wrap.type_down .m-hover_obj01:nth-child(2){
	transform: translateY(-150%);
}

.gc-normal a:hover .m-hover_obj01_wrap .m-hover_obj01:nth-child(1),
.gc-normal a:hover .m-hover_obj01_wrap.type_right .m-hover_obj01:nth-child(1),
.gc-normal button:hover .m-hover_obj01_wrap .m-hover_obj01:nth-child(1),
.gc-normal button:hover .m-hover_obj01_wrap.type_right .m-hover_obj01:nth-child(1),
.gc-normal [class*="swiper-button-"]:hover .m-hover_obj01_wrap .m-hover_obj01:nth-child(1),
.gc-normal [class*="swiper-button-"]:hover .m-hover_obj01_wrap.type_right .m-hover_obj01:nth-child(1),
.gc-normal .m-hover_obj_hover:hover .m-hover_obj01_wrap .m-hover_obj01:nth-child(1),
.gc-normal .m-hover_obj_hover:hover .m-hover_obj01_wrap.type_right .m-hover_obj01:nth-child(1){
	transform: translateX(150%);
}

.gc-normal a:hover .m-hover_obj01_wrap .m-hover_obj01:nth-child(2),
.gc-normal a:hover .m-hover_obj01_wrap.type_right .m-hover_obj01:nth-child(2),
.gc-normal button:hover .m-hover_obj01_wrap .m-hover_obj01:nth-child(2),
.gc-normal button:hover .m-hover_obj01_wrap.type_right .m-hover_obj01:nth-child(2),
.gc-normal [class*="swiper-button-"]:hover .m-hover_obj01_wrap .m-hover_obj01:nth-child(2),
.gc-normal [class*="swiper-button-"]:hover .m-hover_obj01_wrap.type_right .m-hover_obj01:nth-child(2),
.gc-normal .m-hover_obj_hover:hover .m-hover_obj01_wrap .m-hover_obj01:nth-child(2),
.gc-normal .m-hover_obj_hover:hover .m-hover_obj01_wrap.type_right .m-hover_obj01:nth-child(2){
	transform: translateX(0%);
}

.gc-normal a:hover .m-hover_obj01_wrap.type_left .m-hover_obj01:nth-child(1),
.gc-normal button:hover .m-hover_obj01_wrap.type_left .m-hover_obj01:nth-child(1),
.gc-normal [class*="swiper-button-"]:hover .m-hover_obj01_wrap.type_left .m-hover_obj01:nth-child(1),
.gc-normal .m-hover_obj_hover:hover .m-hover_obj01_wrap.type_left .m-hover_obj01:nth-child(1){
	transform: translateX(-150%);
}

.gc-normal a:hover .m-hover_obj01_wrap.type_left .m-hover_obj01:nth-child(2),
.gc-normal button:hover .m-hover_obj01_wrap.type_left .m-hover_obj01:nth-child(2),
.gc-normal [class*="swiper-button-"]:hover .m-hover_obj01_wrap.type_left .m-hover_obj01:nth-child(2),
.gc-normal .m-hover_obj_hover:hover .m-hover_obj01_wrap.type_left .m-hover_obj01:nth-child(2){
	transform: translateX(0%);
}

.gc-normal a:hover .m-hover_obj01_wrap.type_up .m-hover_obj01:nth-child(1),
.gc-normal button:hover .m-hover_obj01_wrap.type_up .m-hover_obj01:nth-child(1),
.gc-normal [class*="swiper-button-"]:hover .m-hover_obj01_wrap.type_up .m-hover_obj01:nth-child(1),
.gc-normal .m-hover_obj_hover:hover .m-hover_obj01_wrap.type_up .m-hover_obj01:nth-child(1){
	transform: translateY(-150%);
}

.gc-normal a:hover .m-hover_obj01_wrap.type_up .m-hover_obj01:nth-child(2),
.gc-normal button:hover .m-hover_obj01_wrap.type_up .m-hover_obj01:nth-child(2),
.gc-normal [class*="swiper-button-"]:hover .m-hover_obj01_wrap.type_up .m-hover_obj01:nth-child(2),
.gc-normal .m-hover_obj_hover:hover .m-hover_obj01_wrap.type_up .m-hover_obj01:nth-child(2){
	transform: translateY(0%);
}

.gc-normal a:hover .m-hover_obj01_wrap.type_down .m-hover_obj01:nth-child(1),
.gc-normal button:hover .m-hover_obj01_wrap.type_down .m-hover_obj01:nth-child(1),
.gc-normal [class*="swiper-button-"]:hover .m-hover_obj01_wrap.type_down .m-hover_obj01:nth-child(1),
.gc-normal .m-hover_obj_hover:hover .m-hover_obj01_wrap.type_down .m-hover_obj01:nth-child(1){
	transform: translateY(150%);
}

.gc-normal a:hover .m-hover_obj01_wrap.type_down .m-hover_obj01:nth-child(2),
.gc-normal button:hover .m-hover_obj01_wrap.type_down .m-hover_obj01:nth-child(2),
.gc-normal [class*="swiper-button-"]:hover .m-hover_obj01_wrap.type_down .m-hover_obj01:nth-child(2),
.gc-normal .m-hover_obj_hover:hover .m-hover_obj01_wrap.type_down .m-hover_obj01:nth-child(2){
	transform: translateY(0%);
}

/*
.gc-normal a:hover .m-hover_obj01_wrap .m-hover_obj01,
.gc-normal a:hover .m-hover_obj01_wrap.type_right .m-hover_obj01,
.gc-normal [class*="swiper-button-"]:hover .m-hover_obj01_wrap .m-hover_obj01,
.gc-normal [class*="swiper-button-"]:hover .m-hover_obj01_wrap.type_right .m-hover_obj01{
	animation: m-hover_obj01_wrap_right 0.6s 1 forwards linear;
}

.gc-normal a:hover .m-hover_obj01_wrap.type_left .m-hover_obj01,
.gc-normal [class*="swiper-button-"]:hover .m-hover_obj01_wrap.type_left .m-hover_obj01{
	animation: m-hover_obj01_wrap_left 0.6s 1 forwards linear;
}

@keyframes m-hover_obj01_wrap_right{
	0%{
		transform: translateX(0);
		opacity: 1;
	}
	49%{
		transform: translateX(100%);
		opacity: 0;
	}
	50%{
		transform: translateX(-100%);
		opacity: 0;
	}
	100%{
		transform: translateX(0px);
		opacity: 1;
	}
}

@keyframes m-hover_obj01_wrap_left{
	0%{
		transform: translateX(0);
		opacity: 1;
	}
	49%{
		transform: translateX(-100%);
		opacity: 0;
	}
	50%{
		transform: translateX(100%);
		opacity: 0;
	}
	100%{
		transform: translateX(0px);
		opacity: 1;
	}
}*/

/**/
/* ================= .m-lead_block ================= */
/**/

.m-lead_block{
	font-size: 16px;
	font-weight: 500;
	line-height: 2.125;
	letter-spacing: 0.02em;
	margin: 0 0 70px 0;
}

.m-lead_block:last-child{
	margin-bottom: 0;
}

.m-lead_block p{
	min-height: 2.125em;
}

@media screen and (max-width: 900px) {
	.m-lead_block{
		margin: 0 0 60px 0;
	}
}

@media screen and (max-width: 700px) {
	.m-lead_block{
		margin: 0 0 50px 0;
	}
}

/**/
/* ================= .m-works_block_wrap ================= */
/**/

.m-works_block_wrap,
.m-works_block_link,
.m-works_block{
	flex-grow: 1;
	display: flex;
	flex-direction: column;
}

.m-works_block_wrap{

}

.m-works_block_link{
	text-decoration: none;
}

.m-works_block{
}

.m-works_block_vision{
	position: relative;
}

.m-works_block_vision .m-img_thumb{
	padding-bottom: 74.4%;
	border-radius: 6px;
}

.m-works_block_text{
	flex-grow: 1;
	/*padding: 15px 0 0 0;*/
	padding: 17px 0 0 0;
	transition: opacity 0.4s ease 0s;
}

.gc-normal a:hover .m-works_block_text{
	opacity: 0.5;
}

.m-works_block_title01{
	font-size: 18px;
	line-height: 1.72;
	font-family: "Zen Old Mincho", serif;
	font-weight: 500;
	margin: 0 0 8px 0;
}

.m-works_block_title02{
	font-size: 12px;
	color: #7F7F7F;
	margin: 0 0 0 0;
}

.m-works_block_info{
	display: flex;
	font-size: 14px;
	line-height: 1;
	margin: 0 0 10px 0;
	white-space: nowrap;
}

.m-works_block_info:last-child{
	margin-bottom: 0;
}

.m-works_block_info_text{
	padding: 0 10px;
	border-right: 1px solid #BEBEBE;
}

.m-works_block_info_text:first-child{
	padding-left: 0;
}

.m-works_block_info_text:last-child{
	padding-right: 0;
	border-right: none;
}

.m-works_block_icon_wrap{
	position: absolute;
	top: 12px;
	left: 12px;
	z-index: 3;
	line-height: 0;
}

.m-works_block_lead{
	font-size: 13px;
	line-height: 1.69;
	margin: 0 0 10px 0;
}

.m-works_block_lead:last-child{
	margin-bottom: 0;
}

/* expert */

.m-works_block_expert_cat{
	font-size: 12px;
	color: #787D7A;
	font-family: "Marcellus", serif;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0.02em;
	margin: 0 0 18px 0;
}

.m-works_block_expert_name{
	font-size: 18px;
	font-family: "Zen Old Mincho", serif;
	line-height: 1;
	margin: 0 0 14px 0;
}

/* .m-works_block_detail_area */

.m-works_block_detail_area{
	font-size: 14px;
	font-weight: 500;
	line-height: 1.428;
	margin: 16px 0 20px 0;
}

.m-works_block_detail_wrap{
	padding: 20px 0 0 0;
}

.m-works_block_detail{
	background-color: #F9F9F9;
	padding: 30px 16px;
}

.m-works_block_detail_in{
	padding: 16px 0;
	border-bottom: 1px solid #D7D7D7;
}

.m-works_block_detail_in:first-child{
	padding-top: 0;
}

.m-works_block_detail_in:last-child{
	border-bottom: none;
	padding-bottom: 0;
}

.m-works_block_detail_title01{
	font-weight: 700;
	margin: 0 0 4px 0;
}

.m-works_block_detail_lead{

}

.m-works_block_detail_lead .m-list_table{
	--line: 1.428;
}


/* .m-works_block_detail_area .m-btn_wrap */

.m-works_block_detail_area .m-acc_content_head{
	display: flex;
}

@media screen and (max-width: 700px) {
	.m-works_block_detail_area .m-acc_content_head{
		justify-content: end;
	}
}

.m-works_block_detail_area .m-acc_content_wrap .m-btn_wrap{
	min-height: 27px;
}

.m-works_block_detail_area .m-acc_content_wrap .m-btn_wrap,
.m-works_block_detail_area .m-acc_content_wrap .m-btn_wrap::before,
.m-works_block_detail_area .m-acc_content_wrap .m-btn{
	border-radius:  9999px;
}

.m-works_block_detail_area .m-acc_content_wrap .m-btn{
	font-size: 11px;
	font-weight: 500;
	padding: 5px 15px;
	transition: color 0.4s ease 0s, border-color 0.4s ease 0s, background-color 0.4s ease 0s;
	color: #000000;
	background-color: #FFFFFF;
	border: 1px solid #A7A7A7;
}

.gc-normal .m-works_block_detail_area .m-acc_content_wrap .m-btn:hover,
.m-works_block_detail_area .m-acc_content_wrap.gc-active .m-btn{
}

.m-works_block_detail_area .m-acc_content_wrap .m-btn .m-flex_text {
  --data_x: 10px;
}

.m-works_block_detail_area .m-acc_content_wrap .m-btn .m-flex_text_img svg{
	transform-origin: 50% 50%;
	transform: rotate(180deg);
	transition: transform 0.4s ease 0s;
}

.m-works_block_detail_area .m-acc_content_wrap.gc-active .m-btn .m-flex_text_img svg{
	transform: rotate(0deg);
}

/* .m-works_block_search_btn */

.m-works_block_search_btn{
	margin: 0 0 18px 0;
}

.m-works_block_search_btn > .m-row{
	--row_x: 8px;
	--row_y: 10px;
}

.m-works_block_search_btn > .m-row > .m-col{
	width: 50%;
}


.m-works_block_search_btn .m-btn_wrap{
	min-height: 34px;
}

.m-works_block_search_btn .m-btn_wrap,
.m-works_block_search_btn .m-btn_wrap::before,
.m-works_block_search_btn .m-btn{
	border-radius: 4px;
}

.m-works_block_search_btn .m-btn{
	font-size: 13px;
	font-weight: 500;
	padding: 6px 6px;
	transition: color 0.4s ease 0s, border-color 0.4s ease 0s, background-color 0.4s ease 0s;
	color: #000000;
	background-color: #FFFFFF;
	border: 1px solid #BEBEBE;
}

.gc-normal .m-works_block_search_btn .m-btn:hover,
.m-works_block_search_btn .m-btn.gc-active{
	color: #fff;
	background-color: #1D8888;
	border: 1px solid #1D8888;
}

.m-works_block_search_btn .m-flex_text {
  --data_x: 10px;
	--data_line: 1.6em;
}

.m-works_block_search_btn .m-flex_text  .m-flex_text_img{
	color: #595757;
}

.m-works_block_search_btn .m-flex_text  .m-flex_text_img path{
	transition: fill 0.4s ease 0s;
}

.gc-normal .m-works_block_search_btn .m-btn:hover .m-flex_text  .m-flex_text_img,
.m-works_block_search_btn .m-btn.gc-active .m-flex_text  .m-flex_text_img{
	color: #ffffff;
}

@media screen and (max-width: 1030px){
	.m-works_block_search_btn > .m-row > .m-col{
		width: 50%;
	}
}

@media screen and (max-width: 700px){
	.m-works_block_search_btn > .m-row > .m-col{
		width: 100%;
	}
}

/* .m-works_block_check_btn */

.m-works_block_check_btn{
	
}

.m-works_block_check_btn label{
	cursor: default;
}

.m-works_block_check_btn .m-btn_wrap{
	min-height: 34px;
}

.m-works_block_check_btn .m-btn_wrap,
.m-works_block_check_btn .m-btn_wrap::before,
.m-works_block_check_btn .m-btn{
	border-radius: 4px;
}

.m-works_block_check_btn .m-btn{
	font-size: 14px;
	font-weight: 500;
	padding: 6px 6px;
	transition: color 0.4s ease 0s, border-color 0.4s ease 0s, background-color 0.4s ease 0s;
	color: #ffffff;
	background-color: #263F3F;
	border: 1px solid #263F3F;
}

.m-works_block_check_btn .m-flex_text {
  --data_x: 10px;
	justify-content: space-between;
	width: 100%;
}

.m-works_block_check_btn .m-flex_text  .m-flex_text_img:nth-child(1){
	opacity: 0;
}

.m-works_block_check_btn .m-flex_text  .m-flex_text_img path{
	transition: fill 0.4s ease 0s;
}

.m-works_block_check_btn .m-btn .m-input_obj{
	border-color: transparent;
}

.m-works_block_check_btn input:disabled + .m-input_text .m-btn{
	cursor: default;
	pointer-events: none;
	opacity: 0.7;
}

/**/
/* ================= .m-search_content_area ================= */
/**/


.m-search_content_area{
	
}

.m-search_content_wrap{
	margin: 100px 0 0 0;
}

.m-search_content{
	padding: 90px 0 160px 0;
	border-bottom: 1px solid #C3C3C3;
}

.m-search_content:first-child{
	padding-top: 0;
}

.m-search_content:last-child{
	padding-bottom: 0;
	border-bottom: none;
}

@media screen and (max-width: 900px){
	.m-search_content_wrap{
		margin: 80px 0 0 0;
	}
}

@media screen and (max-width: 700px){
	.m-search_content_wrap{
		margin: 60px 0 0 0;
	}
}

.m-search_content_area .m-works_block_lead{
	font-size: 12px;
}

.m-search_content_area .m-works_block_info{
	font-size: 13px;
}

/* .m-search_content_number */

.m-search_content_number{
	--bese_w: 0.7em;
	display: inline-block;
	vertical-align: baseline;
	text-align: center;
	white-space: nowrap;
	width: calc( var(--bese_w) * 1 );
}

.m-search_content_number.type_2digits{
	width: calc( var(--bese_w) * 2 );
}

.m-search_content_number.type_3digits{
	width: calc( var(--bese_w) * 3 );
}


/* .m-search_content_btn */

.m-search_content_btn{
	position: fixed;
	right: var(--bp);
	bottom:  var(--bp);
	z-index: 20;
	white-space: nowrap;
	box-shadow: 0px 3px 6px 0 rgba(0,0,0,0.16);
	min-width: 120px;
	transition: opacity 0.0s ease 0s;
	opacity: 0;
	pointer-events: none;
}

.gc-check_active .m-search_content_btn{
	transition: opacity 0.2s ease 0s;
	opacity: 1;
	pointer-events: all;
}

.m-search_content_btn .m-btn_wrap{
	overflow: hidden;
}

.m-search_content_btn,
.m-search_content_btn .m-btn_wrap,
.m-search_content_btn .m-btn_wrap::before,
.m-search_content_btn .m-btn{
	border-radius: 6px;
}

.m-search_content_btn .m-btn{
	font-family: "Zen Old Mincho", serif;
	font-weight: 400;
	display: block;
	transition: opacity 0.4s ease 0s;
}

.gc-normal .m-search_content_btn .m-btn:hover{
	opacity: 0.7;
}

.m-search_content_btn .m-search_content_btn_top,
.m-search_content_btn .m-search_content_btn_bottom{
	display: flex;
	justify-content: center;
}

.m-search_content_btn .m-search_content_btn_top{
	font-size: 18px;
	line-height: 1.22;
	letter-spacing: 0.04em;
	color: #ffffff;
	background-color: #1D8888;
	padding: 14px 16px;
	align-items: center;
}

.m-search_content_btn .m-search_content_btn_bottom{
	background-color: #FFFFFF;
	padding: 16px;
	line-height: 1;
	color: #7F7F7F;
	min-height: 67px;
	align-items: flex-end;
}

.m-search_content_btn .m-btn .m-btn_text01{
	font-size: 40px;
	color: #1D8888;
}

.m-search_content_btn .m-btn .m-btn_text02{
	margin: 0 2px 0 2px;
}

.m-search_content_btn .m-btn .m-btn_text02,
.m-search_content_btn .m-btn .m-btn_text03{
	font-size: 18px;
}

.gc-normal .m-search_content_btn .m-btn:hover,
.m-search_content_btn .m-btn.gc-active{
	/*color: #fff;
	background-color: #1D8888;
	border: 1px solid #1D8888;*/
}

.m-search_content_btn .m-flex_text {
	--data_x: 10px;
	--data_line: 1.0em;
	align-items: flex-end;
}

@media screen and (max-width: 700px){
	.m-search_content_btn{
		right: 0;
		bottom: 0;
		width: 100%;
	}
	.m-search_content_btn .m-btn{
		display: flex;
	}
	.m-search_content_btn,
	.m-search_content_btn .m-btn_wrap,
	.m-search_content_btn .m-btn_wrap::before,
	.m-search_content_btn .m-btn{
		border-radius: 0;
	}
	.m-search_content_btn .m-btn{
		align-items: stretch;
	}
	.m-search_content_btn .m-search_content_btn_top br{
		display: none;
	}
	.m-search_content_btn .m-search_content_btn_top{
		flex-grow: 1;
	}
	.m-search_content_btn .m-search_content_btn_bottom{
		justify-content: flex-end;
	}
}


/* .m-search_check_number_btn */

.m-search_check_number_btn{
	/*position: sticky;*/
	top: calc( var(--header_h) + var(--header_t) );
	z-index: 20;
	transition: opacity 0.0s ease 0s;
	pointer-events: none;
}

.gc-check_active .m-search_check_number_btn{
	background-color: #ffffff;
	transition: opacity 0.2s ease 0s;
	pointer-events: all;
	opacity: 1;
}

.m-search_check_number_btn .m-btn_wrap{
	min-height: 73px;
}

.m-search_check_number_btn .m-btn_wrap,
.m-search_check_number_btn .m-btn_wrap::before,
.m-search_check_number_btn .m-btn{
	border-radius: 8px;
}

.m-search_check_number_btn .m-btn{
	font-size: 21px;
	font-weight: 500;
	padding: 10px 30px;
	transition: color 0.4s ease 0s, border-color 0.4s ease 0s, background-color 0.4s ease 0s;
	color: #595757;
	box-shadow: 0px 3px 6px 0 rgba(0,0,0,0.16);
	text-align: left;
}

.gc-check_active .m-search_check_number_btn .m-btn{
	background-color: #FFFFFF;
}


.m-search_check_number_btn .m-btn *{
	transition: color 0.4s ease 0s;
}

.gc-normal .m-search_check_number_btn .m-btn:hover *{
	color: #ffffff !important;
}

.gc-normal .m-search_check_number_btn .m-btn:hover{
	background-color: #1D8888;
	color: #FFFFFF;
}

.m-search_check_number_btn .m-btn .m-btn_text01{
	font-size: 85.71%;
}

.m-search_check_number_btn .m-btn .m-btn_text02{
	font-size: 100%;
	font-weight: 700;
	color: #1D8888;
}

.m-search_check_number_btn .m-btn .m-btn_text03{
	font-size: 76.19%;
}

.gc-normal .m-search_check_number_btn .m-btn:hover,
.m-search_check_number_btn .m-btn.gc-active{
	/*color: #fff;
	background-color: #1D8888;
	border: 1px solid #1D8888;*/
}

.m-search_check_number_btn .m-flex_text {
  --data_x: 13px;
	justify-content: space-between;
	width: 100%;
}

@media screen and (max-width: 700px){
	.m-search_check_number_btn .m-btn{
		font-size: 18px;
		padding: 20px 20px;
	}
}

/**/
/* ================= .m-news_content ================= */
/**/


.m-news_content{
	display: flex;
}

.m-news_content_head{
	padding: 0 var(--bp) 0 0;
}

.m-news_content_main{
	display: flex;
	justify-content: flex-end;
	flex-grow: 1;
	flex-shrink: 1;
}

.m-news_content_main_in{
	/*max-width: 760px;*/
	width: 100%;
	padding: 0 48px 0 0;
}

.m-news_content_main:first-child:last-child .m-news_content_main_in{
	padding: 0 0 0 0;
}

	.m-news_content_main_in .m-news_btn{
		margin: 0 0 32px 0;
	}

@media screen and (max-width: 900px) {
	.m-news_content{
		flex-wrap: wrap;
	}

	.m-news_content_head{
		padding: 0;
		width: 100%;
		margin: 0 0 50px 0;
	}
	.m-news_content_main{
		width: 100%;
	}
	.m-news_content_main_in{
		display: flex;
		flex-direction: column;
		padding: 0 0 0 0;
	}
	.m-news_content_main_in .m-news_btn{
		order: 20;
		margin: 60px 0 0 0;
	}
	.m-news_content_main_in .m-news_btn .m-row{
		justify-content: center !important;
	}
}

@media screen and (max-width: 700px) {
	.m-news_content_head{
		margin: 0 0 30px 0;
	}
}

/**/
/* ================= .m-news_link_wrap ================= */
/**/

.m-news_link_wrap{
	border-top: 1px solid #A7A7A7;
}

.m-news_link{
	/*border-bottom: 1px solid #A7A7A7;*/
	border-bottom: 1px solid #D3D3D3;
}

.m-news_link_href{
	display: block;
	text-decoration: none !important;
}

.m-news_link_in{
	padding: 30px 0 0 0;
}

.m-news_link_head{
	display: flex;
	align-items: center;
	margin: 0 0 18px 0;
}

.m-news_link_head_text{
	line-height: 0;
	margin: 0 20px 0 0;
}

.m-news_link_head_text:last-child{
	margin-right: 0;
}

.m-news_link_date{
	font-size: 15px;
	line-height: 1;
}

.m-news_link_content{
	position: relative;
	display: flex;
	font-size: 18px;
	font-family: "Zen Old Mincho", serif;
	font-weight: 500;
}

.m-news_link_content::before{
	content: "";
	position: absolute;
	bottom: -1px;
	width: 0%;
	height: 1px;
	background-color: #1D8888;
	left: auto;
	right: 0;
	transition: width 0.4s ease 0.0s;
}

.gc-normal .m-news_link_href:hover .m-news_link_content::before{
	left: 0;
	right: auto;
	width: 100%;
	transition: width 0.4s ease 0s;
}

.m-news_link_content_text{
	flex-grow: 1;
	flex-shrink: 1;
	padding: 0 20px 21px 0;
}

.m-news_link_content_arrow{
	/*display: inline-flex;
	align-items: flex-start;
	padding: 0.3em 0 30px 0;*/
	position: relative;
}

.m-news_link_content_arrow::before{
	content: "";
	position: absolute;
	left: auto;
	right: 0;
	bottom: -1px;
	width: 0%;
	height: 3px;
	background-color: #1D8888;
	transition: width 0.1s ease 0.4s;
}

.gc-normal .m-news_link_href:hover .m-news_link_content_arrow::before{
	width: 100%;
	left: 0;
	right: auto;
	transition: width 0.1s ease 0.4s;
}

.m-news_link_content_arrow_obj{
	display: inline-flex;
	justify-content: center;
	align-items: center;
	width: 25px;
	height: 25px;
	border-radius: 100%;
	border: 1px solid #C3C3C3;
	color: #707070;
	vertical-align: baseline;
	padding-left: 2px;
}

@media screen and (max-width: 700px) {
	.m-news_link_in {
		padding: 20px 0 0 0;
	}
	.m-news_link_content_text {
		padding: 0 20px 16px 0;
	}
	.m-news_link_content{
		font-size: 16px;
	}
	.m-news_link_head{
		margin: 0 0 10px 0;
	}
}

/**/
/* ================= ICON ================= */
/**/

.m-works_block_icon{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	vertical-align: bottom;
	background-color: #ffffff;
	border-radius: 2px;
	font-size: 12px;
	font-family: "Marcellus", serif;
	font-weight: 400;
	line-height: 1;
	color: #1D8888;
	padding: 9px 6px;
	height: 27px;
	min-width: 46px;
}

.m-works_block_icon.type01{

}

.m-works_block_icon.type02{
	font-size: 13px;
	color: #FFFFFF;
	background-color: #1D8888;
}

.p-top_news_link_icon,
.m-news_link_icon{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 1px solid #707070;
	border-radius: 2px;
	min-width: 94px;
	height: 24px;
	font-size: 14px;
	line-height: 1;
	font-family: "Zen Old Mincho", serif;
	color: #595757;
	padding: 0 15px;
}

/**/
/* ================= .m-newsinfo_list_wrap ================= */
/**/

.m-newsinfo_list_wrap{
}

.m-newsinfo_list{
	border-top: 1px solid #C3C3C3;
}

.m-newsinfo_list_item{
	padding: 27px 0;
	border-bottom: 1px solid #C3C3C3;
}

.m-newsinfo_list_block{
	display: flex;
	align-items: flex-start;
}

.m-newsinfo_list_head{
	width: 100px;
	display: flex;
	align-items: center;
	height: 1.857em;
	line-height: 0;
}

.m-newsinfo_list_content{
	width: calc( 100% - 100px);
	font-family: "Zen Old Mincho", serif;
	font-weight: 700;
}

.m-newsinfo_list_wrap .m-works_block_icon{
	width: 74px;
	height: 24px;
	font-size: 14px;
}

.m-newsinfo_list_wrap a{
	text-decoration: none;
}

.gc-normal .m-newsinfo_list_wrap a:hover{
	text-decoration: underline;
}


@media screen and (max-width: 700px) {
	.m-newsinfo_list_block{
		flex-wrap: wrap;
	}
	
	.m-newsinfo_list_head,
	.m-newsinfo_list_content{
		width: 100%;
	}

	.m-newsinfo_list_head{
		margin: 0 0 10px 0;
	}

}

/**/
/* ================= .m-search_select ================= */
/**/


/* .m-search_select */

.m-search_select{
	margin: 0 0 100px 0;
}

@media screen and (max-width: 700px) {
	.m-search_select{
		margin: 0 -20px 60px -20px;
	}
}


/* .m-search_select_block */

.m-search_select_block{
	font-size: 14px;
	background-color: #EFEFEF;
	border-radius: 8px;
	padding: 40px;
}

@media screen and (max-width: 900px) {
	.m-search_select_block{
		padding: 30px;
	}
}

@media screen and (max-width: 700px) {
	.m-search_select_block{
		font-size: 13px;
		padding: 30px 20px;
		border-radius: 0px;
	}
}

.m-search_select_block_in{

}

.m-search_select_block_in > .m-row{
	--row_x: 32px;
	--row_y: 32px;
}

.m-search_select_block_in > .m-row > .m-col{
	width: 25%;
}

.m-search_select_block_in > .m-row > .m-col > .m-col_content{
	display: flex;
	flex-direction: column;
}

.m-search_select_block_in .m-input_label{
	line-height: 0;
	flex-grow: 1;
	border-bottom: 1px solid #BBBBBB;
	padding: 0 0 8px 0;
}

.m-search_select_block_in .m-input_label .m-input_obj{
	border-color: transparent;
}

@media screen and (max-width: 1030px) {
	.m-search_select_block_in > .m-row > .m-col{
		width: 33.3%;
	}
}

@media screen and (max-width: 800px) {
	.m-search_select_block_in > .m-row > .m-col{
		width: 50%;
	}
}

@media screen and (max-width: 700px) {
	.m-search_select_block_in > .m-row{
		--row_x: 15px;
		--row_y: 15px;
	}
}

/* .m-search_select_btn */

.m-search_select_btn{
	padding: 0 0 30px 0;
	white-space: nowrap;
}

.m-search_select_btn > .m-row{
	--row_x: 16px;
	--row_y: 16px;
}

.m-search_select_btn > .m-row > .m-col{
	width: 25%;
}

/* .m-search_select_btn .m-btn */

.m-search_select_btn .m-flex_text {
  --data_x: 15px;
}

.m-search_select_btn .m-flex_text {

}

@media screen and (max-width: 1030px){
	.m-search_select_btn > .m-row > .m-col{
		width: 50%;
	}
}

@media screen and (max-width: 700px){
	.m-search_select_btn{
		padding: 0 10px 20px 10px;
	}
	.m-search_select_btn > .m-row{
		--row_x: 10px;
		--row_y: 10px;
	}
	.m-search_select_btn .m-flex_text {
	--data_x: 8px;
	}
	.m-search_select_btn .m-btn_wrap.type03 .m-btn{
		padding-left: 0;
		padding-right: 0;
	}
}

/* .m-search_map_wrap */

.m-search_map_wrap{
	padding: 0 78px;
}

.m-search_map{
	position: relative;
	height: 490px;
	background-color: #999999;
}

@media screen and (max-width: 1030px){
	.m-search_map_wrap{
		padding: 0 8px;
	}
}

/**/
/* ================= .m-input_label ================= */
/**/

.m-tab_content_area{

}

.m-tab_content_wrap{

}

.m-tab_content{
	overflow: hidden;
	height: 0;
}

.m-tab_content.gc-active{
	overflow: visible;
	height: auto;
}

.m-tab_content_in{

}

 /* ------------ .m-select_radio_wrap ------------ */

.m-select_radio_wrap{
    position: relative;
}

.m-select_radio_wrap,
.m-select_radio_wrap *{
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.m-select_radio_list_field{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 999999;
    display: none;
    opacity: 0;

 }

 .m-select_radio_list_zone{
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 2;
    white-space: nowrap;
 }

 .m-select_radio_list_bg{
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 200vh;
    z-index: 1;
    background-color: rgba(0,0,0,0.0);
 }

.m-select_radio_list_area{
    position: absolute;
    /*top: 20px;*/
    bottom: 0;
    left: 0;
    min-width: 100%;
    border-radius: 4px;
    background-color: #ffffff;
    box-shadow: 0px 3px 6px 0 rgba(0,0,0,0.16);
    overflow: hidden;
    font-size: 16px;
    line-height: 1;
    color: #ACA89D;
    padding: 0 0 0 0;
    min-width: 200px;
    width: 100%;
}

.m-select_radio_wrap.type_overflow .m-select_radio_list_area{
    padding: 0 0 38px 0;
}

.m-select_radio_list_wrap{
    height: 100%;
}

.m-select_radio_wrap.type_overflow .m-select_radio_list_wrap{
	overflow-x: hidden;
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
    overscroll-behavior: none;
}

.m-select_radio_list{
    padding: 0.375em 0 0.5em 0;
}

.m-select_radio_list_item{

}

.m-select_label{
    cursor: pointer;
    display: block;
    padding: 0.5em 1.2em;
}

.m-select_label input{
    display: none;
}

.m-select_label .m-select_text{
    display: block;
    overflow: hidden;
}

.m-select_label input:checked + .m-select_text{
    color: #000000;
}

.m-select_radio_arrow{
    display: none;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 1;
    background-image: url(../img/icon/icon_select_arrow01.svg);
    background-size: 11px auto;
    background-repeat: no-repeat;
    background-position: center center;
    background-color: #ffffff;
    height: 38px;
    cursor: pointer;
}

.m-select_radio_wrap.type_overflow .m-select_radio_arrow{
    display: block;
}

.m-select_radio_wrap{

}

.m-select_radio{
    cursor: pointer;
}

.m-contact_parts input[type="text"],
.m-contact_parts input[type="tel"],
.m-contact_parts input[type="email"],
.m-contact_parts textarea,
.m-select_box,
.m-select_radio{
    font-size: 16px;
    line-height: 1.75;
    padding: 7px 15px;
    border: 1px solid #C5D3D3;
    border-radius: 4px;
    min-height: 44px;
    width: 100%;
	background-color: #ffffff;
}

.m-contact_parts input[type="text"].gc-error,
.m-contact_parts input[type="tel"].gc-error,
.m-contact_parts input[type="email"].gc-error,
.m-contact_parts textarea.gc-error{
    border-color: #D73428;
    background-color: #FDF4ED;
}

.m-input_error{
    color: #D73428;
    margin: 8px 0 17px 0;
}

.m-contact_parts + .m-input_error{
	 margin: -12px 0 17px 0;
}

.m-select_box,
.m-select_radio{
    position: relative;
    padding-left: 18px;
    padding-right: 18px;
    white-space: nowrap;
}

@media screen and (max-width: 700px) {
    .m-contact_parts input[type="text"],
    .m-contact_parts input[type="tel"],
    .m-contact_parts input[type="email"],
    .m-contact_parts textarea,
    .m-select_box,
    .m-select_radio{
        font-size: 16px;
        padding: 7px 12px;
    }
    .m-select_box,
    .m-select_radio{
        padding-left: 12px;
        padding-right: 12px;
    }
}

.m-select_box_in,
.m-select_radio_in{
    position: relative;
    padding: 0 15px 0 0;
}

.m-select_box_in::after,
.m-select_radio_in::after{
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    width: 11px;
    height: 7px;
    margin: -3.5px 0 0 0;
    background-image: url(../img/icon/icon_select_arrow01.svg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
    pointer-events: none;
}

.m-select_box select{
    -webkit-appearance: none;
    appearance: none;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    opacity: 0;
}

.m-select_box_text,
.m-select_radio_text{
    overflow: hidden;
    height: 1.75em;
}

.m-contact_parts textarea{
    height: 260px;
}

.m-contact_parts input[type="text"]:focus,
.m-contact_parts input[type="tel"]:focus,
.m-contact_parts input[type="email"]:focus,
.m-contact_parts textarea:focus{
    border-color: #50A2A2;
	outline: 2px solid rgba(123 , 178 , 178 , 0.3);
}

.gc-val_no{
	color: #8F9696;
}

/* ------------ .m-contact_parts_wrap ------------ */

.m-contact_parts_wrap{
    margin: calc( 64px * 4 / 4) 0 0 0;
}

.m-contact_parts_wrap:last-child{
    margin-bottom: 0;
}

.m-contact_parts{
    margin: 0 0 26px 0;
}

.m-contact_parts:last-child{
    margin-bottom: 0;
}

@media screen and (max-width: 700px) {
    .m-contact_parts_wrap{
         margin: 48px 0 0 0;
    }
    .m-contact_parts{
        margin: 0 0 26px 0;
    }
}

.m-contact_parts_head{
    margin: 0 0 10px 0;
}

.m-contact_parts_head_in{
    display: flex;
    align-items: center;
}

.m-contact_parts_title01{
}

.m-contact_icon{
    display: inline-block;
    color: #009B63;
    margin: 0 0 0 6px;
}

@media screen and (max-width: 700px) {
    .m-contact_parts_title01{
    }
}

.m-contact_parts_in{

}


/* .m-contact_region_area */

.m-contact_region_area{
	margin: 58px 0 32px 0;
}

@media screen and (max-width: 700px) {
    .m-contact_region_area{
         margin: 48px 0 26px 0;
    }
}

/* .m-contact_region_area_head */

.m-contact_region_area_head{
    margin: 0 0 26px 0;
}

.m-contact_region_area_head_in{
    display: flex;
    align-items: center;
}

.m-contact_region_area_head_title01{
}

.m-contact_region_wrap{

}

/* .m-contact_region */

.m-contact_region{
    margin: 0 0 42px 0;
}

.m-contact_region:last-child{
    margin-bottom: 0;
}

@media screen and (max-width: 700px) {
    .m-contact_region{
        margin: 0 0 26px 0;
    }
}

.m-contact_region_head{
	border-bottom: 1px solid #C3C3C3;
    margin: 0 0 22px 0;
}

.m-contact_region_head_in{
    display: flex;
    align-items: center;
}

.m-contact_region_title01{
	margin: 0 0 6px 0;
}

@media screen and (max-width: 700px) {
    .m-contact_parts_title01{
    }
}


.m-contact_region .m-row{
	--row_x: 20px;
	--row_y: 20px;
}

@media screen and (max-width: 900px) {
	.m-contact_region .m-row{
		--row_x: 15px;
		--row_y: 15px;
	}
}

@media screen and (max-width: 700px) {
	.m-contact_region .m-row{
		--row_x: 12px;
		--row_y: 12px;
	}
}

/**/
/* ================= .m-input_label ================= */
/**/

.m-input_label{
	display: block;
	cursor: pointer;
}

.m-input_label input{
	display: none;
}

.m-input_label .m-input_text{
	display: block;
}

.m-input_obj{
	position: relative;
	display: inline-block;
	width: 20px;
	height: 20px;
	border: 1px solid #BEBEBE;
	background-color: #FFFFFF;
}

.m-input_label input[type="checkbox"] + .m-input_text .m-input_obj,
.m-input_obj.type_checkmark{
	border-radius: 2px;
}

.m-input_label input[type="checkbox"] + .m-input_text .m-input_obj::before,
.m-input_obj.type_checkmark::before{
	content: "";
	background-image: url(../img/icon/icon_checkmark01.svg);
	background-size: 100% auto;
	background-repeat: no-repeat;
	background-position: center center;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 16px;
	height: 12px;
	margin: -6px 0 0 -8px;
}

.m-input_label input + .m-input_text .m-input_obj::before,
.m-input_obj.type_checkmark::before{
	opacity: 0;
}

.m-input_label input:checked + .m-input_text .m-input_obj::before,
.m-input_obj.type_checkmark.gc-active::before{
	opacity: 1;
}

.m-input_label input:checked + .m-input_text .m-input_obj.type02,
.m-input_obj.type_checkmark.type02.gc-active{
	background-color: #000;
	border-color: #000;
}

.m-input_label input[type="checkbox"] + .m-input_text .m-input_obj.type02::before,
.m-input_obj.type_checkmark.type02::before{
	background-image: url(../img/icon/icon_contact_check01.svg);
	width: 12px;
	height: 9px;
	margin: -4.5px 0 0 -6px;
}

/*
.m-input_label input[type="checkbox"] + .m-input_text:before,
.m-input_label input[type="radio"] + .m-input_text:before,
.m-input_label.checkbox_type .m-input_text:before,
.m-input_label.radio_type .m-input_text:before{
	content: "";
	position: absolute;
	top: 0.8em;
	left: 0;
	width: 1.388em;
	height: 1.388em;
	margin: -0.694em 0 0 0;
	border: 1px solid #707070;
	background-color: #fff;
	display: block;
	border-radius: 2px;
}

.m-input_label input[type="radio"] + .m-input_text:after,
.m-input_label.radio_type .m-input_text:after,
.m-input_label input[type="checkbox"] + .m-input_text:after,
.m-input_label.checkbox_type .m-input_text:after{
	content: "";
	position: absolute;
	top: 0.8em;
	left: 0.294em;
	margin:  -0.4em 0 0 0;
	width: 0.8em;
	height: 0.8em;
	display: none;
	background-color: #139CCD;
	border-radius: 2px;
}

.m-input_label input[type="radio"] + .m-input_text:before,
.m-input_label.radio_type + .m-input_text:before,
.m-input_label input[type="radio"] + .m-input_text:after,
.m-input_label.radio_type + .m-input_text:after{
	border-radius: 100%;
}

.m-input_label input[type="checkbox"] + .m-input_text:before,
.m-input_label.checkbox_type + .m-input_text:before,
.m-input_label input[type="checkbox"] + .m-input_text:after,
.m-input_label.checkbox_type + .m-input_text:after{
	border-radius: 2px;
}

.m-input_label input[type="radio"]:checked + .m-input_text:before,
.m-input_label.radio_type.gc-active .m-input_text:before,
.m-input_label input[type="checkbox"]:checked + .m-input_text:before,
.m-input_label.radio_type.gc-active .m-input_text:before{
}

.m-input_label input[type="radio"]:checked + .m-input_text:after,
.m-input_label.radio_type.gc-active .m-input_text:after,
.m-input_label input[type="checkbox"]:checked + .m-input_text:after,
.m-input_label.checkbox_type.gc-active .m-input_text:after{
	display: block;
}

.m-input_error .m-input_label input[type="checkbox"] + .m-input_text:before,
.m-input_error .m-input_label input[type="radio"] + .m-input_text:before,
.m-input_error .m-input_label.checkbox_type .m-input_text:before,
.m-input_error .m-input_label.radio_type .m-input_text:before{
	border-color: #FB4848;
	background-color: #FEEFEF;
}*/


/* .m-btn_wrap.type01 .m-btn */

.m-btn_wrap.type_select_btn01{
	min-width: 96px;
}

.m-btn_wrap.type_select_btn01,
.m-btn_wrap.type_select_btn01::before,
.m-btn_wrap.type_select_btn01 .m-btn{
	border-radius: 4px;
}

.m-btn_wrap.type_select_btn01 .m-btn{
	font-size: 16px;
	font-weight: 500;
	padding: 3px 22px;
	transition: color 0.2s ease 0s , background-color 0.2s ease 0s , border-color 0.2s ease 0s , opacity 0.2s ease 0s;
	color: #000000;
	background-color: #FFFFFF;
	border: 1px solid #C5D3D3;
	min-height: 32px;
}

.m-input_label input[type="checkbox"]:checked + .m-input_text.m-btn_wrap.type_select_btn01 .m-btn{
	background-color: #1D8888;
	border-color: #1D8888;
	color: #FFFFFF;
}

/**/
/* ================= .swiper-container_wrap ================= */
/**/


.swiper-container_wrap{
	position: relative;
}

/* .swiper_arrow_wrap.type01 */

.swiper_arrow_wrap.type01{
	white-space: nowrap;
	color: #595757;
	margin: 0 0 30px 0;
	display: flex;
	justify-content: flex-end;
	line-height: 1;
}

.swiper_arrow_wrap.type01 .swiper_arrow_wrap_in{
	display: flex;
	align-items: center;
}

.swiper_arrow_wrap.type01 .swiper-button-prev,
.swiper_arrow_wrap.type01 .swiper-button-next{
	position: static;
	display: flex;
	align-items: center;
	justify-content: center;
	background-image: none;
	margin: 0;
	padding: 0;
	width: 48px;
	height: 32px;
	border: 1px solid #A7A7A7;
	border-radius: 12px;
}

.swiper_arrow_wrap.type01 .swiper_arrow_number{
	margin: 0 20px;
	font-size: 15px;
}

/* ------------------------- .m-popup ------------------------------ */

.m-popup{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 30000;
    display: none;
}

.m-popup_bg{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 200%;
	background-color: #1E2929;
	mix-blend-mode: multiply;
	z-index: 29000;
	display: none;
}

.m-popup_in{
	opacity: 0;
	position: relative;
	width: 100%;
	height: 100%;
	overflow-x: hidden;
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
	overscroll-behavior: contain;
}

.m-popup_content{
	position: relative;
	width: 100%;
	min-height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	padding-top: 110px;
	padding-bottom: 110px;
}

.m-popup_content_bg{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.m-popup_content_in{
	position: relative;
	width: 100%;
}

.m-popup_close_wrap{
    position: absolute;
    top: 40px;
    right: 40px;
}

.m-popup_close{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    cursor: pointer;
	line-height: 0;
}

.m-popup_close_obj{
	display: block;
	width: 20px;
	height: 20px;
	background-image: url(../img/icon/icon_popup_close01.svg);
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-position: center center;
}

.m-popup_loading{
	position: absolute;
	z-index: 10;
	width: 100%;
	height: 100%;
	background-image: url(../img/icon/loading_white.svg);
	background-size: 50px auto;
	background-position: center center;
	background-repeat: no-repeat;
}

@media screen and (max-width: 700px) {

	.m-popup_close_wrap{
		top: 26px;
		right: 7px;
	}

	.m-popup_content{
		padding-top: 70px;
		padding-bottom: 70px;
		padding-left: 15px;
		padding-right: 15px;
	}

}

/* .m-popup.type_vision */

.m-popup.type_vision .m-popup_in{
	overflow: hidden;
}

.m-popup.type_vision .m-popup_content,
.m-popup.type_vision .m-popup_content_in{
	height: 100%;
}

.m-popup_img{
	position: relative;
	white-space: nowrap;
	height: 100%;
	text-align: center;
	padding: 0 0px;
}

.m-popup_img_bg{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.m-popup_img::before{
	content: "";
	display: inline-block;
	vertical-align: middle;
	height: 100%;
}

.m-popup_img img,
.m-popup_img video{
	position: relative;
	max-width: 100%;
	max-height: 100%;
	vertical-align: middle;
}

.swiper-container_wrap.type_popup{
	padding: 0 60px;
}

.swiper-container_wrap.type_popup,
.swiper-container_wrap.type_popup .swiper-container,
.swiper-container_wrap.type_popup .swiper-wrapper,
.swiper-container_wrap.type_popup .swiper-slide{
	width: 100%;
	height: 100%;
}

.swiper-container_wrap.type_popup .swiper_arrow_wrap.type01{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
}

.swiper-container_wrap.type_popup .swiper_arrow_wrap.type01 .swiper_arrow_wrap_in{
	display: flex;
	align-items: center;
	width: 100%;
	height: 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.swiper-container_wrap.type_popup .swiper_arrow_wrap.type01 .swiper-button-prev,
.swiper-container_wrap.type_popup .swiper_arrow_wrap.type01 .swiper-button-next{
	background-color: #FFFFFF;
	border-color: #FFFFFF;
	color: #1E2929;
}

.swiper-container_wrap.type_popup  .swiper-button-close_wrap{
	display: none;
}

.swiper-container_wrap.type_popup  .swiper-button-close{
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #ffffff;
	width: 48px;
	height: 48px;
	border-radius: 100%;
	margin: 0 40px;
	cursor: pointer;
}

.swiper-container_wrap.type_popup  .swiper-button-close_obj{
	display: block;
	width: 14px;
	height: 14px;
	background-image: url(../img/icon/icon_swiper_close01.svg);
	background-size: 14px auto;
	background-position: center center;
	background-repeat: no-repeat;
	cursor: pointer;
}

@media screen and (max-width: 700px) {
	.swiper-container_wrap.type_popup{
		padding: 0 0 80px 0;
	}

	.swiper-container_wrap.type_popup .swiper_arrow_wrap.type01{
		height: auto;
		bottom: 0;
		top: auto;
		margin: 0;
	}

	.swiper-container_wrap.type_popup .swiper_arrow_wrap.type01 .swiper_arrow_wrap_in{
		height: auto;
		justify-content: center;
	}

	.m-popup.type_vision.type_slide .m-popup_close_wrap{
		display: none;
	}
	.swiper-container_wrap.type_popup  .swiper-button-close_wrap{
		display: block;
	}
}

/* .m-movie_sound_switch */

.m-movie_sound_switch{
	position: relative;
	display: inline-flex;
	cursor: pointer;
}

.m-movie_sound_switch_obj{
	display: block;
	width: 24px;
	height: 21px;
}

.m-movie_sound_switch_obj::before,
.m-movie_sound_switch_obj::after{
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-size: 100% auto;
	background-position: 0 0;
	background-repeat: no-repeat;
}

.m-movie_sound_switch_obj::before{
	background-image: url(../img/icon/icon_volume@2x.webp);
}

.m-movie_sound_switch_obj::after{
	opacity: 0;
	background-image: url(../img/icon/icon_volume_off@2x.webp);
}

 .m-movie_sound_switch.gc-movie_off .m-movie_sound_switch_obj::before{
	opacity: 0;
}

.m-movie_sound_switch.gc-movie_off .m-movie_sound_switch_obj::after{
	opacity: 1;
}

/* ------------------------- .m-html_popup ------------------------------ */

.m-html_popup{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 30000;
	background-color: rgba(30, 41, 41, 0.75);
    display: none;
}


.m-html_popup_loading{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-image: url(../img/icon/loading_white.svg);
	background-size: 50px auto;
	background-position: center center;
	background-repeat: no-repeat;
}

.m-html_popup_bg{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 29999;
}

.m-html_popup_in{
	width: 100%;
	height: 100%;
	overflow-x: hidden;
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
	overscroll-behavior: contain;
}

.m-html_popup_content{
	position: relative;
	width: 100%;
	min-height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	padding-top: 110px;
	padding-bottom: 110px;
}

.m-html_popup_content_bg{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.m-html_popup_content_in{
	opacity: 0;
	position: relative;
	width: 100%;
	max-width: 980px;
	transition: opacity 0.4s ease 0s;
}

.m-html_popup.gc-active .m-html_popup_content_in{
	opacity: 1;
}

.m-html_popup_close_wrap{
    position: absolute;
    top: -24px;
    right: -24px;
	z-index: 1;
}

.m-html_popup_close{
	display: flex;
	align-items: center;
	justify-content: center;
    width: 50px;
    height: 50px;
    background-color: #FFFFFF;
    border-radius: 100%;
    cursor: pointer;
	box-shadow: 2px 0px 12px 0 rgba(2,36,24,0.4);
	line-height: 0;
}

.m-html_popup_close_obj{
	display: block;
	width: 20px;
	height: 20px;
	background-image: url(../img/icon/icon_html_popup_close.svg);
	background-size: 100% auto;
	background-position: center center;
	background-repeat: no-repeat;
}

.m-html_popup_content_html{

}

.m-html_popup_block{
	background-color: #FFFFFF;
	border-radius: 16px;
	padding: 54px 56px 80px 56px;
}

@media screen and (max-width: 900px) {
	.m-html_popup_block{
		padding: 50px 30px 80px 30px;
	}
}

@media screen and (max-width: 700px) {
	.m-html_popup_block{
		padding: 50px 20px 60px 20px;
	}

	.m-html_popup_close_wrap{
		top: -15px;
		right: -15px;
	}

	.m-html_popup_close{
		width: 40px;
		height: 40px;
	}

	.m-html_popup_close_obj{
		width: 15px;
		height: 15px;
	}

}

/* ------------------------- .m-process_list_wrap ------------------------------ */


.m-process_list_wrap{
	/*max-width: 1280px;*/
	/*max-width: 1136px;*/
	max-width: 1040px;
	margin: 0 auto;
}

.m-process_list_wrap:first-child{
	margin-top: 0;
}

.m-process_list{
	display: flex;
}

.m-process_list_item{
	width: 184px;
	display: flex;
	flex-direction: column;
}

.m-process_list_item.type_bar{
	flex-grow: 1;
	width: auto;
	min-width: 15px;
}

.m-process_list_block{
	flex-grow: 1;
	display: flex;
	justify-content: center;
	align-items: center;
	min-height: 112px;
	background-color: #EFEFEF;
	border-radius: 8px;
	padding: 20px 10px;
}

.m-process_list_block.gc-active{
	color: #FFFFFF;
	background-color: #1D8888;
}

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

.m-process_list_block_title01{
	font-size: 18px;
	line-height: 1;
	font-family: "Marcellus", serif;
	margin: 0 0 8px 0;
}

.m-process_list_block_lead{
	font-size: 15px;
	line-height: 1.6;
}

.m-process_list_bar_block{
	flex-grow: 1;
	position: relative;
	display: flex;
	align-items: center;
}

.m-process_list_bar_block::before{
	content: "";
	display: block;
	height: 2px;
	width: 100%;
	background-color: #1D8888;
}

@media screen and (max-width: 700px) {

	.m-process_list{
		flex-wrap: wrap;
	}

	.m-process_list_item{
		width: 100%;
	}

	.m-process_list_item.type_bar{
		min-height: 15px;
	}
	.m-process_list_bar_block{
		justify-content: center;
		min-height: 0px;
	}
	.m-process_list_bar_block::before{
		height: 100%;
		width: 2px;
	}
	.m-process_list_block{
		min-height: 0px;
	}
	.m-process_list_block_lead{
		height: auto !important;
	}
}

/* ------------------------- .m-contact ------------------------------ */

.m-contact{
	background-color: #E9F2F2;
	padding-top: calc(  168px * 4 / 4);
	padding-bottom: calc( 160px * 4 / 4);
}

@media screen and (max-width: 900px) {
	.m-contact{
		padding-top: calc(  168px * 3 / 4);
		padding-bottom: calc( 160px * 3 / 4);
	}
}

@media screen and (max-width: 700px) {
	.m-contact{
		padding-top: calc(  168px * 2 / 4);
		padding-bottom: calc( 160px * 2 / 4);
	}
}

.m-contact .m-input_obj{
	border-color: #C5D3D3;
}

/* .m-contact_row_wrap */

.m-contact_row_wrap{

}

.m-contact_row{
	display: flex;
	justify-content: space-between;
}

.m-contact_row_head{
	width: 31.6%;
	display: flex;
	flex-direction: column;
}

.m-contact_row_head_top{
}

.m-contact_row_head_in{
	flex-grow: 1;
}

.m-contact_row_head_obj{
	position: sticky;
	top: calc( var(--header_h) + var(--header_t) + 100px );
}

.m-contact_row_text{
	min-width: calc( 624px + 40px) ;
	width: calc( 54.92% + 40px );
}

.m-contact_row_text_in{
	padding: 0 0 0 40px;
}

@media screen and (max-width: 1160px) {
	.m-contact_row_head{
		width: 44%;
	}
	.m-contact_row_text{
		min-width: 580px;
		flex-grow: 1;
	}
}

@media screen and (max-width: 900px) {
	.m-contact_row{
		flex-wrap: wrap;
	}
	.m-contact_row_head{
		width: 100%;
		margin: 0 0 50px 0;
	}
	.m-contact_row_text{
		width: 100%;
		min-width: 0px;
	}
	.m-contact_row_text_in{
		padding: 0 0 0 0;
	}
}

.m-contact_row_head_content{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	min-height: 600px;
	/*max-height: 730px;
	height: calc( 100vh - ( var(--header_h) + var(--header_t) + 20px ) );*/
}

@media screen and (max-width: 900px) {
	.m-contact_row_head_content{
		min-height: 0px;
		max-height: none;
		height: auto;
	}
}

.m-contact_row_head_lead{
	font-size: 16px;
	line-height: 1.75;
	margin: 0 0 calc( 78px * 4 / 4 ) 0;
}

@media screen and (min-width: 901px) {

	.m-contact_row_head .m-title01_block_wrap{
		margin: 0 0 70px 0;
	}

}

@media screen and (max-width: 900px) {
	.m-contact_row_head_lead{
		margin: 0 0 calc( 78px * 3 / 4 ) 0;
	}
}

@media screen and (max-width: 700px) {
	.m-contact_row_head_lead{
		margin: 0 0 calc( 78px * 2 / 4 ) 0;
	}
}

/* .m-contact_office_area */

.m-contact_office_area{
	padding: 0 0 20px 0;
}

.m-contact_office_wrap{
	display: flex;
	flex-wrap: wrap;
}

.m-contact_office_title01{
	font-size: 24px;
	font-family: "Marcellus", serif;
	font-weight: 400;
	line-height: 1;
	color: #1D8888;
	border-bottom: 1px solid #C3C3C3;
	padding: 0 0 15px 0;
}

.m-contact_office{
	width: 100%;
	border-bottom: 1px solid #C3C3C3;
}

.m-contact_office_in{
	padding: 22px 0 22px 0;
}


@media screen and (min-width: 701px) and (max-width: 900px) {

	.m-contact_office{
		width: 50%;
	}
	.m-contact_office_in{
		padding-left: 15px;
		padding-right: 15px;
	}
	.m-contact_office:nth-child(2n + 1) .m-contact_office_in{
		padding-left: 0;
	}
	.m-contact_office:nth-child(2n) .m-contact_office_in{
		padding-right: 0;
	}
	.m-contact_office:nth-child(2n + 1):last-child{
		width: 100%;
	}
	.m-contact_office:nth-child(2n + 1):last-child .m-contact_office_in{
		width: 50%;
	}
}

.m-contact_office_title02{
	position: relative;
	font-size: 18px;
	line-height: 1.4;
	font-family: "Zen Old Mincho", serif;
	font-weight: 400;
	padding: 0 0 0 22px;
	margin: 0 0 18px 0;
}

.m-contact_office_title02::before{
	content: "";
	display: block;
	position: absolute;
	top: 0.7em;
	left: 0;
	width: 10px;
	height: 10px;
	margin: -5px 0 0 0;
	border-radius: 100%;
	background-color: #1D8888;
}

.m-contact_office_lead{
	font-size: 13px;
}

/* ------------------------- .m-step_list_wrap ------------------------------ */


.m-step_list_wrap{
	/*max-width: 700px;*/
	max-width: 624px;
	margin: 0 auto;
}

.m-step_list_wrap:first-child{
	margin-top: 0;
}

.m-step_list{
	display: flex;
}

.m-step_list_item{
	width: 188px;
	display: flex;
	flex-direction: column;
}

.m-step_list_item.type_bar{
	flex-grow: 1;
	width: auto;
	min-width: 15px;
}

.m-step_list_block{
	flex-grow: 1;
	display: flex;
	justify-content: center;
	align-items: center;
	min-height: 80px;
	background-color: #FFFFFF;
	border: 1px solid #C5D3D3;
	border-radius: 6px;
	padding: 12px 10px;
	color: #9B9B9B;
}

.m-step_list_block.gc-active{
	color: #000000;
}

.m-step_list_block.gc-active .m-step_list_text02{
	color: #1D8888;
}

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

.m-step_list_text{
	display: flex;
	align-items: baseline;
	white-space: nowrap;
}

.m-step_list_text01{
	font-size: 13px;
	font-family: "Marcellus", serif;
	font-weight: 400;
	margin: 0 7px 0 0;
}

.m-step_list_text02{
	font-size: 28px;
	width: 38px;
	text-align: center;
	font-family: "Marcellus", serif;
	font-weight: 400;
	margin: 0 10px 0 0;
}

.m-step_list_text03{
	font-size: 13px;
	font-weight: 500;
	width: 80px;
}

.m-step_list_block_title01{
	font-size: 18px;
	line-height: 1;
	font-family: "Marcellus", serif;
	margin: 0 0 8px 0;
}

.m-step_list_block_lead{
	font-size: 15px;
	line-height: 1.6;
	min-height: 3.2em;
}

.m-step_list_bar_block{
	flex-grow: 1;
	position: relative;
	display: flex;
	align-items: center;
}

.m-step_list_bar_block::before{
	content: "";
	display: block;
	height: 2px;
	width: 100%;
	background-color: #1D8888;
}

@media screen and (max-width: 700px) {


	.m-step_list_text01{
		width: 27px;
	}

	.m-step_list_text02{
		width: 38px;
		text-align: center;
	}

	.m-step_list_text03{
		width: 80px;
	}

	.m-step_list{
		flex-wrap: wrap;
	}

	.m-step_list_item{
		width: 100%;
	}

	.m-step_list_item.type_bar{
		min-height: 15px;
	}
	.m-step_list_bar_block{
		justify-content: center;
		min-height: 0px;
	}
	.m-step_list_bar_block::before{
		height: 100%;
		width: 2px;
	}
	.m-step_list_block{
		min-height: 0px;
	}
	.m-step_list_block_lead{
		height: auto !important;
	}
}

/* ------------------------- .m-table01 ------------------------------ */

.m-table01{
	width: 100%;
	line-height: 2;
}

.m-table01 p{
	transform: translateY(0px);
}

.m-table01 tr th{
	white-space: nowrap;
	padding: 32px 25px 27px 11px;
	border-bottom: 1px solid #1D8888;
	font-size: 14px;
	/*line-height: calc( 2 * 16/ 14);*/
	font-weight: 500;
}

.m-table01 tr td{
	width: 100%;
	padding: 32px 11px 27px 68px;
	border-bottom: 1px solid #BBBBBB;
}

.m-table01 tr:first-child th,
.m-table01 tr:first-child td{
	padding-top: 0;
}

@media screen and (max-width: 700px) {
	.m-table01 tr th{
		padding: 32px 11px 32px 11px;
	}
	.m-table01 tr td{
		padding: 29px 11px 24px 11px;
	}
}

/* =================================================== */
/**/
/* ページ共通の機能モジュール */
/**/
/* =================================================== */

/**/
/* ================= .m-link_block ================= */
/**/
.m-link_block {
	display: block;
	text-decoration: none !important;
}

/**/
/* ================= .m-imghover ================= */
/**/
.m-imghover {
	text-decoration: none !important;
	transition: opacity 0.4s ease 0s;
}
.gc-normal .m-imghover:hover {
	opacity: 0.7;
}

/**/
/* ================= .m-img_thumb ================= */
/**/

.m-img_thumb{
	position: relative;
	overflow: hidden;
	padding-bottom: 66.6%;
}
.m-img_thumb img,
.m-img_thumb video{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
	font-family: 'object-fit: cover; object-position: center center;';
}

/**/
/* ================= .m-delay_img_obj ================= */
/**/
.m-delay_img_obj {
	opacity: 0;
}
.m-delay_img_obj.gc-load_active {
	opacity: 1;
}

/**/
/* ================= .m-window_content ================= */
/**/

.m-window_content {
	position: relative;
	width: calc(100vw - var(--scrollbar_width) );
	left: 50%;
	margin: 0 0 0 calc(-50vw + var(--scrollbar_width) * 0.5);
}
@media screen and (max-width: 375px) {
	.m-window_content {
		width: 375px;
		margin: 0 0 0 -187.5px;
	}
}

/**/
/* ================= .m-zoom_content_wrap ================= */
/**/

.m-zoom_content_wrap {
	overflow: hidden;
}

.m-zoom_content{
	
}

/**/
/* ================= .m-img_obj ================= */
/**/

.m-img_obj {
	display: inline-block;
	vertical-align: bottom;
	line-height: 0;
	position: relative;
}

.m-img_obj img[width] {
	max-width: none;
}

.m-img_obj .m-img_obj_default {
	display: block;
	position: relative;
	z-index: 1;
	transition: opacity 0.4s ease 0s;
}
.m-img_obj .m-img_obj_hover {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	opacity: 0;
	width: 100%;
	height: 100%;
	transition: opacity 0.4s ease 0s;
}

/* .m-hover_change */

.m-hover_change {
	cursor: pointer;
}
.gc-normal #sitewrap a:hover .m-img_obj .m-img_obj_hover,
.gc-normal .m-hover_change:hover .m-img_obj .m-img_obj_hover {
	opacity: 1;
}
.gc-normal #sitewrap a:hover .m-img_obj .m-img_obj_default,
.gc-normal .m-hover_change:hover .m-img_obj .m-img_obj_default {
	opacity: 0;
}

/**/
/* ================= .m-row ================= */
/**/

.m-row {
	--row_x: 10px;
	--row_y: 10px;
	--row_w: auto;
	--row_wrap: wrap;
	display: flex;
	flex-wrap: var(--row_wrap);
	margin: 0  calc( var(--row_x) * -1 )  calc( var(--row_y) * -1 ) 0;
}

.m-row > .m-col {
	padding: 0 var(--row_x) var(--row_y) 0;
	width: var(--row_w);
	display: flex;
	flex-direction: column;
}


.m-row > .m-col > .m-col_content {
	flex-grow: 1;
}

@media screen and (min-width:951px) {
	.m-row[style*="--pc_row_w"] > .m-col {
		width: var(--pc_row_w);
	}
	
	.m-row[style*="--pc_row-x"] {
		margin-right: calc(var(--pc_row-x) * -1);
	}

	.m-row[style*="--pc_row-y"] {
		margin-bottom: calc(var(--pc_row-y) * -1);
	}

	.m-row[style*="--pc_row-x"] > .m-col {
		padding-right: calc(var(--pc_row-x));
	}

	.m-row[style*="--pc_row-y"] > .m-col {
		padding-bottom: calc(var(--pc_row-y));
	}
}

@media screen and (max-width: 900px) and (min-width: 701px) {
	.m-row[style*="--pad_row_w"] > .m-col {
		width: var(--pad_row_w);
	}
	
	.m-row[style*="--pad_row_x"] {
		margin-right: calc(var(--pad_row_x) * -1);
	}

	.m-row[style*="--pad_row_y"] {
		margin-bottom: calc(var(--pad_row_y) * -1);
	}

	.m-row[style*="--pad_row_x"] > .m-col {
		padding-right: calc(var(--pad_row_x));
	}

	.m-row[style*="--pad_row_y"] > .m-col {
		padding-bottom: calc(var(--pad_row_y));
	}
}

@media screen and (max-width:700px) {
	.m-row[style*="--sp_row_w"] > .m-col {
		width: var(--sp_row_w);
	}
	.m-row[style*="--sp_row_x"] {
		margin-right: calc(var(--sp_row_x) * -1);
	}

	.m-row[style*="--sp_row_y"] {
		margin-bottom: calc(var(--sp_row_y) * -1);
	}

	.m-row[style*="--sp_row_x"] > .m-col {
		padding-right: calc(var(--sp_row_x));
	}

	.m-row[style*="--sp_row_y"] > .m-col {
		padding-bottom: calc(var(--sp_row_y));
	}
}

/**/
/* ================= .m-flex_text ================= */
/**/

.m-flex_text {
	--data_x: 10px;
	--data_line: 1.43em;
	display: inline-flex;
	vertical-align: bottom;
	line-height: var(--data_line);
}

.m-flex_text > * {
	margin-right: var(--data_x);
}

.m-flex_text > *:last-child {
	margin-right: 0;
}

.m-flex_text > .m-flex_text_lead {
	line-height: inherit;
}

.m-flex_text > .m-flex_text_img {
	line-height: 0;
	display: inline-flex;
	align-items: center;
}

.m-flex_text > .m-flex_text_img img[width] {
	max-width: none;
}

.m-flex_text > .m-flex_text_img {
	height: var(--data_line);
}

@media screen and (min-width:951px) {
	.m-flex_text[style*="--pc_data_line"] {
		line-height: var(--pc_data_line);
	}

	.m-flex_text[style*="--pc_data_x"] > * {
		margin-right: var(--pc_data_x);
	}

	.m-flex_text[style*="--pc_data_line"] > .m-flex_text_img {
		height: var(--pc_data_line);
	}
}

@media screen and (max-width: 900px) and (min-width: 701px) {
	.m-flex_text[style*="--pad_data_line"] {
		line-height: var(--pad_data_line);
	}

	.m-flex_text[style*="--pad_data_x"] > * {
		margin-right: var(--pad_data_x);
	}

	.m-flex_text[style*="--pad_data_line"] {
		height: var(--pad_data_line);
	}
}

@media screen and (max-width:700px) {
	.m-flex_text[style*="--sp_data_line"] {
		line-height: var(--sp_data_line);
	}

	.m-flex_text[style*="--sp_data_x"] > * {
		margin-right: var(--sp_data_x);
	}

	.m-flex_text[style*="--sp_data_line"] {
		height: var(--sp_data_line);
	}
}

/**/
/* ================= .m-list ================= */
/**/
.m-list {
	--data_y: 0px;
	margin: 0;
}

.m-list:first-child {
	margin-top: 0;
}

.m-list:last-child {
	margin-bottom: 0;
}

.m-list > li {
	position: relative;
	margin-bottom: var(--data_y);
}

.m-list > li:last-child {
	margin-bottom: 0;
}

@media screen and (min-width:951px) {
	.m-list[style*="--pc_data_y"] li {
		margin-bottom: var(--pc_data_y);
	}
}

@media screen and (max-width: 900px) and (min-width: 701px) {
	.m-list[style*="--pad_data_y"] li {
		margin-bottom: var(--pad_data_y);
	}
}

@media screen and (max-width:700px) {
	.m-list[style*="--sp_data_y"] li {
		margin-bottom: var(--sp_data_y);
	}
}

/* .m-list.type_number */
.m-list.type_number {
	counter-reset: section;
}

.m-list.type_number > li {
	counter-increment: number;
	padding: 0 0 0 1.2em;
}

.m-list.type_number > li:before {
	content: counter(number, decimal) ".";
	position: absolute;
	top: 0;
	left: 0;
}

/* .m-list.type_checkmark */
.m-list.type_checkmark > li {
	padding: 0 0 0 1.0em;
}

.m-list.type_checkmark > li:before {
	content: "\0203b";
	position: absolute;
	top: 0;
	left: 0;
}

/* .m-list.type_point */
.m-list.type_point > li {
	padding: 0 0 0 1.0em;
}

.m-list.type_point > li:before {
	content: "\030fb";
	position: absolute;
	top: 0;
	left: 0;
}

/* .m-list.type_circle */
.m-list.type_circle{
	--c_color: inherit;
	--c_padding: 1.8em;
}
.m-list.type_circle > li {
	padding: 0 0 0 var(--c_padding);
}

.m-list.type_circle > li:before {
	content: "\025cf";
	position: absolute;
	top: 0;
	left: 0;
	color: var(--c_color);
}

/* .m-list.type_square */

.m-list.type_square > li {
	padding: 0 0 0 20px;
}

.m-list.type_square > li:before {
	content: "";
	display: block;
	position: absolute;
	top: calc(1em - 5px);
	left: 0;
	width: 10px;
	height: 10px;
	background: #000;
}

/* ---------------------------------------------- .m-scroll_content_zone ----------------------------------------------*/

.drag_scroll{
	cursor: grab;
}

.m-scroll_content_zone{
	
}

.m-scroll_content_area{
	position: relative;
	overflow: hidden;
}

.m-scroll_content_wrap{
	overflow-x: scroll;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
}

.m-scroll_content{
	display: inline-block;
	vertical-align: bottom;
	cursor: grab;
}

.m-scroll_content_bar_area{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	margin: 60px 0 0 0;
}

.m-scroll_content_bar_wrap{
	margin: 0 auto;
	max-width: 100%;
}

.m-scroll_content_bar{
	position: relative;
	height: 13px;
}

.m-scroll_content_bar_obj{
	position: absolute;
	top: 50%;
	left: 0;
	height: 7px;
	margin: -3.5px 0 0 0;
	width: 50%;
	z-index: 2;
	cursor: grab;
	padding: 0 3px;
}

.m-scroll_content_bar_obj:before{
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background-color: #FA8C28;
	border-radius: 9999px;
}

.m-scroll_content_bar_border{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #BFBFBF;
	border-radius: 9999px;
}

@media screen and (max-width: 830px) {
	.m-scroll_content_bar_area{
		margin: 30px 0 0 0;
	}
}

/* ---------------------------------------------- .gc-vert_scroll ----------------------------------------------*/

.gc-drag_scroll{
	cursor: grab;
}

/* ---------------------------------------------- .gc-vert_scroll ----------------------------------------------*/

.gc-vert_scroll{

}

/* ---------------------------------------------- .m-accordion ----------------------------------------------*/

.m-accordion{

}

.m-accordion_switch{
	cursor: pointer;
}

.m-accordion_content{
	display: none;
}

.m-accordion.gc-active .m-accordion_active_obj{
	display: none;
}

.m-accordion:not(.gc-active) .m-accordion_active_none{
	display: none;
}


/**/
/* ================= .m-move_anime================= */
/**/
.m-anime00 { transform: translate(0px, 0px) !important; }
.m-anime01 { transform: translate(0px, 60px) !important; }
.m-anime02 { transform: translate(60px, 0px) !important; }
.m-anime03 { transform: translate(0px, -60px) !important; }
.m-anime04 { transform: translate(-60px, 0px) !important; }
.m-anime00, .m-anime01, .m-anime02, .m-anime03, .m-anime04 { transition: opacity 0.8s ease 0s,transform 0.8s ease 0s !important; opacity: 0 !important; }
.m-anime00.gc-active, .m-anime01.gc-active, .m-anime02.gc-active, .m-anime03.gc-active, .m-anime04.gc-active { opacity: 1 !important; transform: translate(0px, 0px) !important; }