/*
Last Updated: 2022-10-19
Author:zeal
name:mizudocho
*/

/*----------------------------------------
	全体
----------------------------------------*/

html{
	font-family:'游ゴシック体', 'Yu Gothic', YuGothic,'メイリオ',Meiryo,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ ゴシック',sans-serif;
	font-size:62.5%;
	color:  #000;
	-webkit-text-size-adjust:100%;
	line-height:1.5;
	font-weight: 500;
}

.meiryo{
	font-family:'メイリオ',Meiryo,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ ゴシック',sans-serif;
}
.yugo{
	font-family:'游ゴシック体', 'Yu Gothic', YuGothic,'メイリオ',Meiryo,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ ゴシック',sans-serif;
}
.yumin{
		font-family:'游明朝体','Yu Mincho','ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro','ＭＳ Ｐ明朝','ＭＳ 明朝','Sawarabi Mincho',serif;
}

.lora{
	font-family: 'Lora', serif;
}


body{ font-size:1.4rem; font-size: 1.4em; }
img{ vertical-align: bottom; }
img {
    image-rendering: -webkit-optimize-contrast;
}

a{
	color:#14184c;
	transition: all 0.3s;
}
a:hover{
	color:#252b7e;
	transition: all 0.3s;
}
.op img{ transition: all 0.3s; }
.op:hover img{
	opacity:0.70;
	transition: all 0.3s;
}
.op:hover{
	opacity: 0.7;
}
.max_respon{max-width:100%;}
#container{ overflow: hidden; }
li{ list-style:none; }
.center{ text-align:center; }

@media screen and (min-width: 600px) {
.tb_center{ text-align:center; }
}



@media screen and (max-width: 599px) {
	.copy{ font-size: 1.8rem; }

	p{text-align:left;}

	.sp_text_left{
		text-align: left;
	}

}/*END*/


/*----------------------------------------
	text
----------------------------------------*/

p{ line-height: 2; font-feature-settings: "palt"; }
.text_bold{ font-weight: bold; }
.text_normal{ font-weight: normal; }
.text_pink{ color: #fc799e; }
.text_blue{ color: #0162b3; }
.text_gold{ color: #7b622b; }
.text_emerald{ color:#00b2b2; }
.text_mizu{ color:#00a1e9; }
.text_white{ color:#fff; }

.text_11{ font-size:1.1rem !important; }
.text_12{ font-size:1.2rem !important; }
.text_13{ font-size:1.3rem !important; }
.text_15{ font-size:1.5rem !important; }
.text_21{ font-size:2.1rem !important; }
.text_22{ font-size:2.2rem !important; }
.text_26{ font-size:2.6rem !important; }
.text_34{ font-size:3.2rem !important; }
.text_35{ font-size: clamp(28px, 4vw, 35px) !important; }
.text_36{ font-size:3.6rem !important; }
.text_48{ font-size:4.8rem !important; }

.lh_12{ line-height: 1.2 !important; } /* 追加 */
.lh_24{ line-height: 2.4 !important; }
.lh_22{ line-height: 2.2 !important; }
.lh_20{ line-height: 2 !important; }
.lh_23{ line-height: 2.3 !important; } /* 追加 */
.lh_25{ line-height: 2.5 !important; } /* 追加 */
.lh_18{ line-height: 1.8 !important; }
.lh_16{ line-height: 1.6 !important; }
.lh_15{ line-height: 1.5 !important; }
.lh_14{ line-height: 1.4 !important; }
.lh_14{ line-height: 1.3 !important; }
.ls_06{ letter-spacing: 0.6px; } /* 追加 */
.ls_1{ letter-spacing: 1px; }
.ls_15{ letter-spacing: 1.5px; } /* 追加 */
.ls_-1{ letter-spacing: -1px; }
.ls_2{ letter-spacing: 2px; }
.ls_3{ letter-spacing: 3px; }
.ls_4{ letter-spacing: 4px; }

@media print, screen and (min-width: 769px) {

	.text_16{ font-size:1.6rem !important; }
	.text_18{ font-size:1.8rem !important; }
	.text_20{ font-size:2.0rem !important; }
	.text_24{ font-size:2.4rem !important; }

	.text_28{ font-size:2.8rem !important; }
	.text_30{ font-size:3.0rem !important; }
	.text_32{ font-size:3.2rem !important; }
	.text_42{ font-size:4.2rem !important; }
	.text_40{ font-size:4rem !important; }
	.text_50{ font-size:5rem !important; }
	.text_55{ font-size:5.5rem !important; }	
	.ls_4{ letter-spacing: 4px; }

}/*END*/

@media print, screen and (min-width:769px) and ( max-width: 1119px) {

	.text_16{ font-size:1.6rem !important; }
	.text_30{ font-size:2.8rem !important; }
	.text_32{ font-size: 2.6rem !important; }
	.text_42{ font-size: 3.6rem !important; }

}/*END*/

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

	p{ line-height: 1.8; }
	.lh_23{ line-height: 2 !important; } /* 追加 */
	.lh_25{ line-height: 2 !important; } /* 追加 */
	.text_18{ font-size: 1.5rem; }
	.text_24{ font-size: 2.2rem !important; }
	.text_28{ font-size: 1.9rem !important; }
	.text_30{ font-size: 2rem !important; }
	.text_32{ font-size: 2rem !important; }
	.text_42{ font-size: 3rem !important; }

	.text_28{ font-size:2.2rem !important; }
	.text_30{ font-size:2.4rem !important; }
	.text_32{ font-size:2.6rem !important; }
	.text_42{ font-size:3.6rem !important; }
	.text_40{ font-size:3.6rem !important; }
	.text_50{ font-size:4rem !important; }
	.text_55{ font-size:4.3rem !important; }	

	.ls_2{ letter-spacing: 1px; }
	.ls_4{ letter-spacing: 2px; }

}/*END*/

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

	p{ line-height: 1.6; }
	.lh_23{ line-height: 1.8 !important; } /* 追加 */
	.lh_25{ line-height: 1.8 !important; } /* 追加 */
	.text_18{ font-size: 1.4rem; }
	.text_21{ font-size: 1.8rem !important; }
	.text_24{ font-size: 1.9rem !important; }

	.text_28{ font-size: 1.7rem !important; }
	.text_30{ font-size: 2.2rem !important; }
	.text_32{ font-size: 1.8rem !important; }
	.text_42{ font-size: 3rem !important; }

	.text_48{ font-size: 3.2rem !important; }	

	.ls_4{ letter-spacing: 1px; }

}/*END*/

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

	.text_30{ font-size: 2rem !important; }
	.text_42{ font-size: 2.8rem !important; }
	.ls_2{ letter-spacing: 0; }

}


/*----------------------------------------
	layout
----------------------------------------*/

.inner_frame{
	width: 100%;
	position: relative;
	box-sizing: border-box;
	padding-right: 20px;
	padding-left: 20px;
}

.pc_block{
	display: block;
}
.sp_block{
	display: none;
}
.p_t8p{
	padding-top: 8%;
}

@media print, screen and (min-width: 769px) {

	.inner_frame{
		padding-right: 1.88%;
		padding-left: 1.88%;
	}

}/*END*/

@media print, screen and (min-width: 1200px) {

	.inner_frame{
		width: 1200px;
		padding-right: 20px;
		padding-left: 20px;
		margin-right: auto;
		margin-left: auto;
	}
	.in_frame{
		max_width: 980px;
		margin-right: auto;
		margin-left: auto;
	}
	.p_l12p{
		padding-left: 12%;
	}
}/*END*/

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

	.inner_frame{
		padding-right: 3%;
		padding-left: 3%;
	}

}/*END*/

@media screen and (max-width: 599px){
	.pc_block{
		display: none;
	}
	.sp_block{
		display: block;
	}

	.inner_frame{
		padding-right: 3.5%;
		padding-left: 3.5%;
	}

}/*END*/

/*----------------------------------------
	header
----------------------------------------*/

header{
	background: #fff;
	position: fixed;
	z-index: 100;
	width: 100%;
	box-sizing: border-box;
	max-height:80px;
}
header a{
	display: block;
	color: inherit;
	text-decoration: none;
}


h1.read{
	float:left;
	padding: 23px 0 0 15px;
	color: #8c8c8c;
	font-weight: normal;
	font-size: 1.1rem;
	line-height: 1.6;
}

.head_logo{ float: left; }

.head_logo img{ max-width:224px; }


main{
	margin-top:80px;
}

.top .toplogo{
	display: block;
}
.page .pagelogo{
	display: block;
}

.top .topimg{
	display: inline-block;
}
.top .pageimg{
	display: inline-block;
}

.top .pagelogo,.top .pageimg{ display: none; }
.page .toplogo,.page .topimg{ display: none; }


.header_l{
	width:35%;
	float:left;
}
.header_r{
	width:65%;
	float:right;
}


.page header{
	position: static;
	background:#fff;
}

.page header{
	min-height:60px;
}
.nav_sp_block{
	display: none;
}
.nav_sp_none{
	display: block;
}



@media print, screen and (min-width: 1199px) {

	header{
		width: 100%;
		z-index: 100;
	}


	.head_contact{
		margin-left:20px;
	}

	.head_contact a.btn{
		box-sizing: border-box;
		background: #fff;
		color: #022873;
		text-align: center;
		padding:22px 30px;
	}
	.head_contact a.btn:hover{
		    opacity: 0.6;
		/*box-shadow:rgba(0, 0, 0, 0.3) 0px 1px 2px 0;*/
	}
	.head_contact a.btn img{
		width: 32px;
		vertical-align: 0;
	}
	header li{
		float: left;
		padding-top: 34px;
	}

	header li:last-child{
		padding-top:18px;
	}


	header li a{
		text-align: center;
		box-sizing: border-box;
		padding:0 14px;
	}

	header li a:hover{
		color: inherit;
		transition: all 0.6s;
		text-decoration: underline;
	}



	.page header a{
		color:#060d2a;
	}
	.page header a:hover{
		color:#060d2a;
		text-decoration: underline;
	}

	.page .head_contact a.btn{
		background:#022873;
		color:#fff;
	}




	#sd{
		font-weight: bold;
		letter-spacing: 0.5px;
	}


	.head_fixed{
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		z-index: 99;
		background: rgba(19,66,149,0.8);
		width: 100%;
		box-shadow:rgba(0, 0, 0, 0.2) 0px 1px 2px 0;
	}

	.page header.head_fixed{
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		z-index: 99;
		background: rgba(255,255,255,0.8);
		width: 100%;
		box-shadow:rgba(0, 0, 0, 0.2) 0px 1px 2px 0;
	}

	#sd{
		float:right;
	}


}/*END*/



@media print, screen and (max-width: 1340px) {
	h1.read{
		padding: 23px 0 0 4px;
		font-size:1.0rem;
		letter-spacing: -0.5px;
	}

	.header_r {
	    width: 60%;
	}
	header li a{
		padding: 0 10px;
	}
	.header_l{
		width:38%;
	}

}/*END*/


@media print, screen and (max-width: 1280px) and (min-width: 1199px){
	header li:last-child {
	    padding-top: 22px;
	    width: 128px;
	}

	header li:last-child a{
		padding: 0 4px;
	}

}/*END*/




@media screen and (max-width: 1199px) {
	.head_contact{ display: none; }

	.header_l{
		width:100%;
	}

	#sd ul,
	.head_inner{
		padding:0;
	}

	#sd {
	    border-left: 6px solid #000;
	}

	.border_non a{
		border:none !important;
		padding: 0 !important;
	}



	.sd-trigger{
		float: right;
		position: fixed;
		right: 15px;
		top: 20px;
		width: 44px;
		height: 42px;
		cursor: pointer;
		border: 1px solid #000;
		z-index: 10;
		/*background: rgba(255,255,255,0.8);*/
		background: #000;
		color:#fff;
	}


	.sp_fix_btn{
		display: block;
		position: fixed;
		right: 80px;
		top: 23px;
		width: auto;
		cursor: pointer;
		z-index: 10;
	}

	.nav_sp_block{
		display: block;
	}
	.nav_sp_none{
		display: none;
	}



	.sd-trigger span {
		position: absolute;
		left: 0;
		width: 100%;
		height: 1px;
		width: 22px;
		background-color: #fff;
	}
	.sd-trigger span:nth-of-type(1) { top: 11px; left: 11px; }
	.sd-trigger span:nth-of-type(2) { top: 19px; left: 11px; }
	.sd-trigger span:nth-of-type(3) { top: 27px; left: 11px; }
	#sd{ box-sizing: border-box; }
	#sd ul{
		margin-bottom: 0;
		/*border-top: 1px dotted #555;*/
	}
	#sd li{ position: relative; }
	#sd li a{
		display: block;
		text-decoration: none;
		padding: 15px 2% 15px 8%;
		color:#000;
		border-bottom: 1px dotted #555;
	}

}/*END*/



@media print, screen and (max-width: 767px){
	.head_logo{
		width:110px;
	}

	h1.read{
		font-size:1rem;
		padding: 2px 0 0 2px;
	}

	.header_l{
		width:90%;
	}

	main{
		margin-top:30px;
	}

	.sd-trigger{
		float: right;
		position: fixed;
		right: 0;
		top: 0;
		width: 44px;
		height: 38px;
		cursor: pointer;
		border: 1px solid #000;
		z-index: 10;
		/*background: rgba(255,255,255,0.8);*/
		background: #000;
		color:#fff;
	}


}/*END*/



@media print, screen and (max-width: 599px){
	h1.read{
		font-size:1rem;
		letter-spacing: -0.5px;
	}


}/*END*/

/*----------------------------------------
	map
----------------------------------------*/

.map{
	position: relative;
	overflow: hidden;
	width: 100%;
	height: 100%;
	padding: 35% 0 0;
	text-align: center;
}
.map iframe{
	width: 100%;
	height: 100%;
	position: absolute;
	left: 50%;
	top: 50%;
	-webkit-transform: translate3d(-50%, -50%, 0);
	-ms-transform: translate3d(-50%, -50%, 0);
	transform: translate3d(-50%, -50%, 0);
}
.map iframe:not(:target){
	left: 0\9;
	top: 0\9;
}
.map iframe{
	left: 0\9;
	top: 0\9;
}
@media all and (-ms-high-contrast: none) {
.map iframe{
		left: 50%\9 !important;
		top: 50%\9 !important;
	}
}
.map{ z-index: 2; }/*chrome対策*/

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

	.map{ padding: 60% 0 0; }

}/*END*/

/*----------------------------------------
	contact
----------------------------------------*/

.contact_frame{
	background: url("../images/contact_bg.jpg") no-repeat;
	background-size:cover;
	background-position: bottom;
	text-align: center;
}
.contact_tel_ttl img {
    max-width: 420px;
    width: 70%;
}
/*----------------------------------------
	footer
----------------------------------------*/
.foot_bg{
	background: #f6b92c;
	color:#000;
}

.foot_logo img {
    max-width: 296px;
    width: 65%;
}
.copyright{
	font-size: 1.1rem;
	text-align: center;
	padding-top: 10px;
	padding-bottom: 15px;
	color:#000;
}

.contact_tel_ttl img{
	max-width: calc(726px / 2);
}
@media screen and (max-width: 599px) {

	.copyright{ font-size: 1rem; }

}/*END*/




/*----------------------------------------
	page top
----------------------------------------*/
.page_top{
	width: 50px;
	position: fixed;
	right: 0;
	bottom: 0;
	z-index: 49;
}
.page_top a{
	display: block;
	text-align: center;
	padding-top: 28px;
	padding-bottom: 20px;
	line-height: 0;
	background: #1d1512;
}

.page_top a::after {
    content: '';
    display: block;
    width: 10px;
    height: 10px;
    border-left: 2px solid #FFF;
    border-top: 2px solid #FFF;
    -webkit-transform: scaleY(0.9) rotate(45deg);
    -moz-transform: scaleY(0.9) rotate(45deg);
    -ms-transform: scaleY(0.9) rotate(45deg);
    -o-transform: scaleY(0.9) rotate(45deg);
    transform: scaleY(0.9) rotate(45deg);
    position: absolute;
    top: 7px;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
}

@media screen and (max-width: 768px){
	.page_top{
		width: 40px;
		right: 0;
		bottom: 55px;
	}

	.page_top a{
		padding-top: 20px;
		padding-bottom: 20px;
	}

}/*END*/


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

	.sp_menu{
		position: fixed;
		bottom: 10vh!important;
		right: -150px;
		transition: all 0.4s;

	}
	.sp_menu img{
		max-width: 55px;
	}
	.sp_only{
		display: none!important;
	}
	
}



@media screen and (max-width: 599px){
	.pc_only{
		display: none!important;
	}
	.sp_menu{
		/* max-width: 500px; */
		position: fixed;
		left: 0;
		right: 0;
		bottom: -150px;
		transition: all 0.4s;
		margin: auto;
		background: #fff;
		z-index: 10;
	}
	.sp_menu li{
		float: left;
		width: 50%;
	}
}

/*----------------------------------------
	common
----------------------------------------*/
/* 背景 */
.bg_lightgreen{
	background-color: #25a24f;
}
.bg_green{
	background-color: #147033;
}
.bg_orange{
	background-color: #ff9e04;
}
.up-wave svg,
.down-wave svg {
	display: block;

}
.up-wave svg{
	vertical-align: bottom;
	margin-bottom: -1px;
}
.down-wave svg {
	vertical-align: top;
	margin-top: -1px;
	transform: rotate(180deg);
}
/* レイアウト */
.rela{
	position: relative;
}
.flex{
	display: flex;
}
.flex > div{
	width: 50%;
}
.al_center{
	align-items: center;
}
.jus_between{
	justify-content: space-between;
}
.grid3{
	display: grid;
	grid-template-columns: repeat(3,1fr);
}
.gap3{
	gap: 3%;
}
.gap4{
	gap: 4%;
}
.w63{
	width: 63%!important;
}
.w40{
	width: 40%!important;
}
/* タイトル */
.main_ttl img {
    max-width: 460px;
    width: 45%;
}
.copy_ttl img {
    max-width: 500px;
    width: 100%;
}
/* テキスト */
.nowrap{
	white-space: nowrap;
}
.middle_none{
	display: block;
}
@media screen and (max-width: 768px) {
	.middle_none{
		display: none;
	}
}
@media screen and (max-width: 599px) {
	.flex{
		flex-direction: column;
	}
	.flex > div{
		width: 100%;
	}
	.grid3{
		grid-template-columns: repeat(1,1fr);
	}
	.gap3{
		gap: 20px;
	}
	.gap4{
		gap: 20px;
	}
	.w63,.w40{
		width: 100%!important;
	}
	/* タイトル */
	.main_ttl img {
		width: 60%;
	}
	.copy_ttl img {
		width: 90%;
	}
	/* テキスト */
	.middle_none{
		display: block;
	}
}
/*----------------------------------------
	MV
----------------------------------------*/
.TopMain{
padding:0 !important;
margin:0;
position: relative;
}

.mv_point{
	background:#ff9e04;
	box-sizing: border-box;
}
.mv_point_frame{
    max-width: 1290px;
    padding-right: 20px;
    padding-left: 20px;
    margin-right: auto;
    margin-left: auto;
}
.mv_point ul{
	overflow: hidden;
}
.mv_point li{
	float: left;
	width: calc(100% / 3);
	box-sizing: border-box;
	text-align: center;
	padding: 18px 0;
	border-right:1px solid #fff;
	padding: 0 5px;
}

.mv_point li:last-child{
	border-right:none;
}

@media screen and (max-width: 599px) {
	.mv_point img {
        width: 70%;
    }
	.mv_point li {
        float: none;
        width: 100%;
        border-right: none;
        padding: 10px 0;
        border-bottom: 1px solid #fff;
        margin-bottom: 5px;
    }

	.mv_point li:last-child{
		border-bottom: none;
	}


}/*END*/
/*----------------------------------------
	concept
----------------------------------------*/
.concept_sub_copy img {
    max-width: 300px;
    width: 100%;
}
.concept_deco01 {
    position: absolute;
    width: 34.8%;
    top: -8%;
    left: 7%;
}
.concept_deco02 {
    position: absolute;
    width: 30.5%;
    bottom: 0%;
    right: 8%;
}
.concept_list li{
	display: flex;
	flex-direction: column;
	gap: 20px;
	align-items: center;
}
.concept_list p{
	width: 90%;
	margin-inline: auto;
}
@media screen and (max-width: 1000px) {
	.concept_deco01{
		left: 0%;
	}
	.concept_deco02{
		right: 0%;
	}
}
@media screen and (max-width: 599px) {
	.concept_sub_copy img {
		width: 70%;
	}
	.concept_list{
		gap: 25px;
	}
	.concept_list p{
		width: 100%;
	}
}
/*----------------------------------------
	news
----------------------------------------*/
.news_inner{
	max-width: 580px;
	width: 100%;
	margin:0 auto;
	font-size: 1.6rem;
	line-height: 2.5;
}
.news_inner li{
	margin-bottom: 15px;
	overflow: hidden;
}

.news_inner .day{
	display: block;
	width:18%;
	float: left;
}
.news_inner .title{
	display: block;
	width:79%;
	float: right;
}
.news_inner a{
	color:#fff;
}
@media screen and (max-width: 768px) {
	.news_inner{
		font-size: 1.4rem;
	}
	.news_inner .day{
		display: block;
		width:28%;
		float: left;
	}
	.news_inner .title{
		display: block;
		width:70%;
		float: right;
	}

}

/*----------------------------------------
	land_plan
----------------------------------------*/
.land_deco {
    position: absolute;
    width: 31.4%;
    top: -5%;
    left: 3%;
}
.land_point{
	position: absolute;
	width: 100.5%;
	bottom: -25%;
	left: 0%;
}
.land_kukakuzu{
    margin-right: 10%;
    text-align: end;
}
@media screen and (max-width: 1100px) {
	.land_deco {
		left: 0%;
	}
	.land_point{
		display: block;
		position: unset;
		margin-top: 20px;
	}
	.land_kukakuzu{
		margin-right: 0%;
		text-align: center;
	}
}
@media screen and (max-width: 599px) {
    .land_deco {
        left: -5%;
    }
}
/*----------------------------------------
	room_plan
----------------------------------------*/
.plan_deco {
    position: absolute;
    width: 20.35%;
    bottom: -12%;
    right: 14%;
}
.plan_box_top img{
	display: block;
    vertical-align: bottom;
    margin-bottom: -1px;
}
.plan_tab {
    display: flex;
    column-gap: 1%;
    row-gap: 10px;
    flex-wrap: wrap;
}
.plan_tab li {
    max-width: 150px;
    width: 20%;
	cursor: pointer;
    transition: all 0.4s;
    background: #fff;
    border-radius: 5px;
}

.plan_tab li.active/*,.spec_tab li.active*/{
	/*transform: scaleY(1.1, 1);*/
	transition: all 0.4s;
	background: #147033;
}
.plan_tab li.active img{
	filter: invert(100%);
}
.plan_box{ 
	display: none; 
	background: #fff;
    padding: 1% 5% 2% 5%;
    box-sizing: border-box;
}
.plan_box.show{ 
	display: block!important; 
}
.plan_box_copy img{
	max-width: 470px;
	width: 100%;
}
.plan_box_ttl img {
    max-width: 260px;
    width: 35%;
}
@media screen and (max-width: 1100px) {
	.plan_deco {
		right: 0%;
	}
}
@media screen and (max-width: 768px) {
	.plan_tab li{ 
		font-size: 1.4rem; 
	}
	
}/*END*/

@media screen and (max-width: 599px) {
	.plan_box_ttl img {
		width: 50%;
	}
	.plan_deco {
		right: 0%;
	}
	.plan_tab {
		flex-wrap: nowrap;
	}
	.plan_tab li {
		width: 35%;
	}
	.plan_box{ 
		padding: 15px 4% 15px 4%;
	}
}/*END*/

/*----------------------------------------
	equipment
----------------------------------------*/
.equipment_deco01 {
    position: absolute;
    width: 18.95%;
    top: 0%;
    left: 7%;
}
.equipment_deco02 {
    position: absolute;
    width: 8.1%;
    top: -42%;
    right: 2%;
	z-index: -1;
}
.equipment_deco03 {
    position: absolute;
    width: 6.55%;
    top: 11%;
    left: 3%;
}
.equipment_deco04 {
    position: absolute;
    width: 6.55%;
    top: 4%;
    right: 2%;
}
.equipment_deco05 {
    position: absolute;
    width: 30.5%;
    top: 27%;
    left: 12%;
}
.equipment_deco06 {
    position: absolute;
    width: 39%;
    bottom: -8%;
    right: 25%;
}
.equipment_point_ttl01{
    position: absolute;
    top: -55px;
    width: 222px;
}
.equipment_point_ttl02 img {
    max-width: 222px;
    width: 30%;
}
.equipment_copy01 img {
    max-width: 560px;
    width: 70%;
}
.equipment_copy02 img {
    max-width: 823px;
    width: 80%;
}
.equipment_circle img {
    max-width: 636px;
    width: 75%;
}
.equipment_point_box {
    border: 4px solid #147033;
    border-radius: 0px 20px 20px 20px;
    background: #147033;
    align-items: center;
}
.equipment_point_box > div:nth-child(1) > img{
	border-bottom-left-radius: 20px;
}
.equipment_point_box > div:nth-child(2) {
    padding: 3% 2%;
    box-sizing: border-box;
    border-radius: 0 10px 10px 0;
}
.equipment_point_box > div:nth-child(2) >div {
	background: #fff;
    height: 100%;
    padding: 5%;
    box-sizing: border-box;
    border-radius: 0px 20px 20px 0;
}
.equipment_box {
    background: #fff;
    border: 5px solid #000;
    border-radius: 50px;
    box-sizing: border-box;
    display: flex;
    padding: 5% 6%;
    gap: 3%;
}
.equipment_box_ttl {
    position: absolute;
    max-width: 313px;
    width: 31%;
    top: -11%;
    left: 2%;
}
.flex .equipment_box_ttl {
    width: 53%;
    top: -13%;
}
@media screen and (max-width: 1000px) {
	.equipment_deco01 {
		left: 0%;
	}
	.equipment_deco02 {
        top: -8%;
    }
	.equipment_deco03,.equipment_deco04{
		display: none;
	}
	.equipment_point_ttl01 {
        position: unset;
        display: block;
        max-width: 222px;
        width: 30%;
    }
}
@media screen and (max-width: 599px) {
	.equipment_deco02 {
        top: -2%;
    }
	.equipment_deco05,.equipment_deco06 {
		display: none;
	}
	.equipment_copy02 img {
		width: 100%;
	}
	.equipment_point_box > div:nth-child(1) > img {
		border-bottom-left-radius: 0px;
		border-top-right-radius: 20px;
	}
	.equipment_point_box > div:nth-child(2) >div {
		padding: 15px 3%;
		border-radius: 0px 0px 20px 20px;
		text-align: center;
	}
	.equipment_point_box > div:nth-child(2) >div img{
		max-width: 470px;
		width: 80%;
	}
    .equipment_box {
		padding: 55px 4%;
        gap: 20px;
        flex-direction: column;
        align-items: center;
    }
	.equipment_box_ttl {
        width: 40%;
        top: -28px;
    }
	.flex .equipment_box_ttl {
        width: 41%;
		top: -24px;
    }
}
@media screen and (max-width: 450px) {
    .equipment_box {
        padding: 30px 4%;
    }
	.equipment_box_ttl {
        top: -21px;
    }
	.flex .equipment_box_ttl {
        top: -21px;
    }
}
/*----------------------------------------
	access
----------------------------------------*/
.access_deco {
	position: absolute;
    width: 20.25%;
    top: 26%;
    right: 10%;
}
.access_info_box{
	width: 85%;
}
@media screen and (max-width: 768px) {
	.access_info_box{
		width: 100%;
	}
}
/*----------------------------------------
	loaction
----------------------------------------*/
.location_deco {
    position: absolute;
    width: 22.65%;
    top: 12%;
    left: 4%;
}
.location_grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    row-gap: 48px;
    column-gap: 40px;
    width: 100%;
}
@media screen and (max-width: 1100px) {
	.location_deco {
		left: 0%;
	}
}
@media screen and (max-width: 768px) {
	.location_grid {
        grid-template-columns: repeat(2,1fr);
    }
}

@media screen and (max-width: 599px) {
	.location_grid {
        grid-template-columns: 1fr;
		row-gap: 30px;
    }

}/*END*/

/*----------------------------------------
	outline
----------------------------------------*/
#outline table{
	width:100%;
	line-height: 1.8;
	border-top: 1px dotted #555;
	width:960px;
	margin-right:auto;
	margin-left:auto;
}
#outline th,
#outline td{
	font-weight: normal;
	text-align: left;
	border-bottom: 1px dotted #555;
	padding: 11px 6px;
	box-sizing: border-box;
}
#outline th{
	width: 26%;
	font-weight: bold;
}



@media screen and (max-width: 839px) {
	#outline table{
		width: 100%;
		padding-right: 4%;
		padding-left: 4%;
		box-sizing: border-box;
	}

}/*END*/

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

	#outline table{
		line-height: 1.6;
		font-size:1.4rem;
	}
	#outline th,
	#outline td{
		display: block;
		width: 100%;
	}
	#outline th{
		font-weight: bold;
		border-bottom: none;
		padding: 8px 2% 0 2%;
	}
	#outline td{ padding: 0 2% 8px 2%; }

}/*END*/
