@charset "utf-8";
/* ===================================================
	Facilities CSS
====================================================== */
#contents_wrap section:not(#sec01) { padding: 100px 0; }

.cmn_arrow_link_01 { margin-top: 2em; }
.v_rl { writing-mode: vertical-rl; font-feature-settings: "palt" 0;}
.upr/* 縦中横 */ { -webkit-text-combine: horizontal; -ms-text-combine-horizontal: all; -moz-text-combine-upright: all; text-combine-upright: all; }

@media screen and (min-width: 601px) and (max-width: 1540px) {
	.inner_lg { width: calc(100% - 140px); }
}
@media screen and (min-width: 601px) and (max-width: 1340px) {
	.inner_md { width: calc(100% - 140px); }
}
@media screen and (min-width: 601px) {
	#facilities #contents_wrap { font-size: 16px; }
	.cmn_tit_02 { font-size: 36px; }
	.txt { padding-top: 45px; }
	.txt p:not(.tit) { line-height: 2; }
}
@media screen and (max-width: 600px) {
	#contents_wrap section:not(#sec01) { padding: 10vw 0; }
	.cmn_tit_01::before { margin: 0 auto; }
	.txt p:not(.tit) { line-height: 1.8; }
}


/* ---------------------------------------------------
	#sec01
------------------------------------------------------ */
#sec01 { display: flex; flex-wrap: wrap; padding: 60px 0 100px; }
#sec01 .txt { position: relative; padding: 0 calc(50vw - 600px) 0 50px; }
#sec01 .txt .v_rl { position: absolute; top: 0; left: 0; transform: translateX(-100%); display: flex; align-items: center; justify-content: center; width: 150px; height: 470px; font-size: 36px; color: #7e6b2e; background: #fff; }
#sec01 .txt p:last-child { margin-top: 1.5em; line-height: 2; }
#sec01 .txt picture { display: block; }

@media screen and (max-width: 1276px) {
	#sec01 .txt { padding: 0 3vw 0 50px; }
}
@media screen and (min-width: 601px) {
	#sec01 .photo { width: 59.3%; }
	#sec01 .txt { width: 40.7%; }
	#sec01 .cnav { margin: 100px auto 0; }
}
@media screen and (max-width: 600px) {
	#sec01 { flex-direction: column; padding: 6vw 0 10vw; overflow: hidden;}
	#sec01 .photo img { height: 300px; object-position: 60% 75%; }
	#sec01 .txt { display: flex; flex-direction: column-reverse; width: 100%; padding: 0 3vw; }
	#sec01 .txt .v_rl { transform: translateY(-100%); left: auto; right: -2px; top: -32px; font-size: 22px; width: 100px; height: 270px; line-height: 1.3; }
	#sec01 .txt p:last-child { margin: 1.25em 0 1.6em; line-height: 1.8; }
	#sec01 .cnav { margin: 10vw auto 0; }
}


/* ---------------------------------------------------
	#sec02
------------------------------------------------------ */
#sec02 { background: url(../img/cmn_bg.jpg); }
#sec02 .wrap { position: relative; }
#sec02 .wrap .txt { position: absolute; top: 50px; left: 50px; z-index: 1; width: 450px; padding: 35px 45px; background: rgba(255 255 255/90%); }
#sec02 .txt .tit { font-size: 30px; color: #7e6b2e; }
#sec02 .txt p:not(.tit) { margin-top: 1em; }
#sec02 picture { display: block; }
#sec02 .box, #sec02 .box ul.photo { display: flex; }
#sec02 .box { margin-top: 80px; }
#sec02 .box ul.photo { justify-content: space-between; }
#sec02 .box ul.photo li+li { margin-left: 10px; }
#sec02 .box .txt { padding-top: 35px; }

@media screen and (min-width: 601px) {
	#sec02 .box .photo { width: calc(100% - 400px); }
	#sec02 .box .txt { width: 400px; }
	#sec02 .box:nth-child(odd) .txt { padding-left: 80px; }
	#sec02 .box:nth-child(even) { flex-direction: row-reverse; }
	#sec02 .box:nth-child(even) .txt { padding-right: 80px; }
}
@media screen and (max-width: 600px) {
	#sec02 .cmn_tit_01 { margin-bottom: 1em; }
	#sec02 .wrap .txt { position: static; width: 100%; margin-top: 1em; padding: 0; background: none; }
	#sec02 .txt .tit { font-size: 22px; }
	#sec02 .txt p:not(.tit) { margin-top: .5em; }
	#sec02 picture { width: 100%; }
	#sec02 .box { flex-direction: column; margin-top: 8vw; }
	#sec02 .box .txt { margin-top: 1em; padding: 0; }
	#sec02 .box ul.photo li+li { margin-left: 5px; }
}


/* ---------------------------------------------------
	#sec03
------------------------------------------------------ */
#sec03 { display: flex; flex-wrap: wrap; }
#sec03>.inner_md { display: flex; justify-content: space-between; height: 420px; margin-top: 60px; }
#sec03>.inner_md>p:first-child { align-self: flex-end; }
#sec03>.inner_md>p:last-child  { align-self: flex-start; }
#sec03 .txt { padding: 45px calc(50vw - 600px) 0 90px; }

@media screen and (max-width: 1276px) {
	#sec03 .txt { padding: 45px 3vw 0 90px; }
}
@media screen and (min-width: 601px) {
	#sec03 .photo { width: 56.2%; }
	#sec03 .txt { width: 43.8%; }
	#sec03>.inner_md>p { width: 46.6%; }
}
@media screen and (max-width: 600px) {
	#sec03 .txt { margin-top: 1em; padding: 0 3vw; }
	#sec03 .cmn_tit_02 { margin-bottom: .5em; }
	#sec03>.inner_md { height: auto; margin-top: 7vw; }
	#sec03>.inner_md>p { width: 49%; }
	#sec03>.inner_md>p:first-child { padding-top: 30px; }
}


/* ---------------------------------------------------
	#sec04
------------------------------------------------------ */
#sec04 { background: url(../img/cmn_bg.jpg); }
#sec04 .inner_md { display: flex; flex-wrap: wrap; }
#sec04 .img_col { display: flex; justify-content: space-between; width: 100%; height: 300px; margin-top: 50px; }
#sec04 .img_col li { width: 31.6%; }
#sec04 .img_col li:nth-child(2) { align-self: flex-end; }

@media screen and (min-width: 601px) {
	#sec04 .txt { width: 450px; padding-right: 90px; }
	#sec04 .photo { width: calc(100% - 450px); }
}
@media screen and (max-width: 600px) {
	#sec04 .inner_md { flex-direction: column; }
	#sec04 .txt { order: 2; margin-top: 1em; }
	#sec04 .cmn_tit_02 { margin-bottom: .5em; }
	#sec04 .photo { order: 1; }
	#sec04 .img_col { order: 3; align-items: flex-start; height: auto; margin-top: 8vw; }
	#sec04 .img_col li { width: 32.6%; }
	#sec04 .img_col li:nth-child(2) { align-self: stretch; padding-top: 10px; }
}


/* ---------------------------------------------------
	#sec05
------------------------------------------------------ */
#sec05 { display: flex; }

@media screen and (min-width: 601px) {
	#sec05 .txt { width: 450px; padding-left: 90px; }
}
@media screen and (max-width: 600px) {
	#sec05 { flex-direction: column; }
	#sec05 .txt { margin-top: 1em; }
	#sec05 .cmn_tit_02 { margin-bottom: .5em; }
}


/* ---------------------------------------------------
	#sec06
------------------------------------------------------ */
#sec06 { padding: 80px 0 150px!important; border-image: linear-gradient(180deg,#ccc 1px,#0000 0) fill 0//0 100vw 0 100vw; }
#sec06 .cmn_tit_03 { color: #7e6b2e; }
#sec06 .cmn_outline { align-items: stretch; flex-wrap: wrap; border-bottom: none; }
#sec06 .cmn_outline dt,
#sec06 .cmn_outline dd { border-bottom: 1px solid #aaa; }

@media screen and (min-width: 601px) {
	#sec06 .cmn_outline { line-height: 2; }
	#sec06 .cmn_outline dt { width: 220px; }
	#sec06 .cmn_outline dd { width: calc(100% - 220px);}
}
@media screen and (max-width: 600px) {
	#sec06 { padding: 8vw 0 15vw!important; }
	#sec06 .cmn_outline { line-height: 1.8; }
	#sec06 .cmn_outline dt { border-bottom: none; }
}
