@charset "utf-8";
/* ===================================================
	room CSS
====================================================== */
/* ---------------------------------------------------
lead_col
------------------------------------------------------ */
#lead_col { padding: 120px 0; text-align: center;}
#lead_col h2 { padding: 50px 0 0; font-size: 40px; background: url(../../img/tit_icon.svg)no-repeat top center; background-size: 33px; line-height: 1.5;}
#lead_col h2 span { display: table; margin: 10px auto 0; padding: 15px 30px 50px; font-size: 15px; color: #cfd5db; border-top: 1px solid #cfd5db;}
#lead_col p { line-height: 2;}

@media screen and (max-width: 600px) {
	#lead_col { padding: 100px 0 50px;}
	#lead_col h2 { padding: 50px 0 20px; font-size: 26px; background-size: 25px;}
	#lead_col h2 span { font-size: 13px; padding: 10px 0 0;}
	#lead_col p { text-align: left;}
}

/* ---------------------------------------------------
sec1
------------------------------------------------------ */
#sec1 { padding: 80px 0 100px; background: url(../../group/img/sec_bg1.png)repeat-x top,url(../../group/img/sec_bg2.png);}
#sec1 h2 { padding-bottom: 80px; text-align: center; font-size: 30px;}
#sec1 .flex_col { position: relative; margin-bottom: 100px;}
#sec1 .flex_col:last-of-type { margin-bottom: 130px;}
#sec1 .flex_col h3 { font-size: 35px; font-feature-settings: initial; writing-mode: tb-rl; writing-mode: vertical-rl; color: #7d690d;}
#sec1 .flex_col h3 span { display: block; padding: 5px 0 0; font-size: 12px;}
#sec1 .flex_col img { margin-bottom: 40px;}
#sec1 .flex_col .season_icon { position: absolute; right: -25px; top: -30px; background: #ca6829; border-radius: 50%; width: 145px; height: 145px; color: #fff; display: flex; justify-content: center; font-size: 31px; align-items: center;     line-height: 1.4;}
.sec1_col { width: 88%;}
.sec1_detail { display: flex; margin: 0 0 50px;}
.sec1_detail .price { width: 260px; font-size: 24px; border-right: 1px solid #b7b7b7;}
.sec1_detail .price span { font-size: 19px; padding: 0 20px 0 0;}
.sec1_detail .txt { width: calc(100% - 260px); padding: 5px 0 5px 60px;}
#sec1_btn1 { display: block; width: 100%; padding: 17px 0; text-align: center; border-radius: 50px; border: 1px solid #c0622a; color: #c0622a; font-size: 18px;}
#sec1_btn1 span::after { display: inline-block; content: ">"; margin: 0 0 0 130px;}
#sec1 .sec_note { margin: 125px auto 0; padding: 70px 14.4%; border: 1px solid #b7b7b7;}
#sec1 .sec_note dt { margin: 0 0 25px; padding: 0 0 20px; text-align: center; font-size: 17px; border-bottom: 1px solid #b7b7b7;}
#sec1 .sec_note dd li { padding-left: 1em; text-indent: -.5em; margin-bottom: 6px;}
#sec1 .sec_note dd li::before { content: "・";}

@media screen and (max-width: 600px) {
	#sec1 { padding: 50px 0;}
	#sec1 h2 { padding-bottom: 30px; font-size: 26px;}
	#sec1 .flex_col h3 { font-size: 24px; line-height: 1.2; margin: 0 0 10px; writing-mode: inherit; writing-mode: inherit; text-align: center;}
	#sec1 .sec_note { margin: 50px auto 0; padding: 50px 5%;}
	#sec1 .sec_note dt { padding: 0 0 10px; margin: 0 0 10px;}
	.sec1_col { width: 100%;}
	#sec1 .flex_col { margin-bottom: 50px;}
	#sec1 .flex_col img { margin: 0 0 10px;}
	.sec1_detail { display: block; margin-bottom: 30px;}
	.sec1_detail .price { width: 100%; padding: 0 0 10px; font-size: 20px; border-right: none; border-bottom: 1px solid #b7b7b7; text-align: center;}
	.sec1_detail .txt { width: 100%; padding: 10px 0;}

	#sec1 .flex_col .season_icon { width: 80px; height: 80px; font-size: 18px; top: 10px; right: -5%;}
	#sec1_btn1 { padding: 15px 8%; box-sizing: border-box; line-height: 1.4; border-radius: 30px;}
	#sec1_btn1 span::after { margin: 0 0 0 10px;}
	#sec1 .flex_col:last-of-type { margin-bottom: 50px;}
}

/* ---------------------------------------------------
sec2
------------------------------------------------------ */
#sec2 { padding: 80px 0 100px; background: url(../../group/img/sec2_bg.png)no-repeat right -15px bottom 0,url(../img/bg.jpg); color: #fff;}
#sec2 h2 { margin: 0 0 50px; text-align: center; font-size: 35px;}
#sec2 h2 span { font-size: 12px; display: block; opacity: .5;}
#sec2 .sec_txt { width: 33%;}
#sec2 .sec_txt h3 { margin: 0 0 15px; font-size: 28px; border-bottom: 1px solid #626978;}
#sec2 .sec_txt p:nth-of-type(1) { padding: 0 0 30px;}
#sec2 .flex_col >img { width: 58%;}
#sec2 .flex_col { margin-bottom: 60px;}
#sec2 dl { display: flex; border-bottom: 1px solid #b2b2b2;}
#sec2 dt { width: 210px; padding: 40px 20px 40px 60px; background-color: rgba(244, 242, 237, .2); box-sizing: border-box;}
#sec2 dd { width: calc(100% - 210px); padding: 40px 60px;}

@media screen and (max-width: 600px) {
	#sec2 { padding: 50px 0;}
	#sec2 h2 { font-size: 26px; margin: 0 0 30px;}
	#sec2 dl { display: block;}
	#sec2 dt,
	#sec2 dd { padding: 15px 5%; width: 100%; box-sizing: border-box;}
	#sec2 dd span { padding: 0; display: block;}
	#sec2 .flex_col >img,
	#sec2 .sec_txt { width: 100%;}
	#sec2 .sec_txt h3 { padding: 10px 0; margin: 0 0 10px; text-align: center; font-size: 20px;}
	#sec2 .sec_txt p:nth-of-type(1) { padding: 0 0 20px;}
	#sec2 .flex_col { margin-bottom: 50px;}
}

/* ---------------------------------------------------
sec3
------------------------------------------------------ */
#sec3 { padding: 100px 0 150px;}
#sec3 h2 { margin: 0 0 50px; text-align: center; font-size: 35px;}
#sec3 h2 span { font-size: 12px; display: block; opacity: .5;}
#sec3 .sec_txt { width: 33%;}
#sec3 .sec_txt h3 { margin: 0 0 15px; font-size: 28px; border-bottom: 1px solid #626978;}
#sec3 .flex_col >img { width: 58%;}
#sec3 .flex_col { margin-bottom: 60px;}
#sec3 dl { display: flex; border-bottom: 1px solid #b2b2b2;}
#sec3 dt { width: 210px; padding: 40px 20px 40px 60px; background-color: #f4f2ed; box-sizing: border-box;}
#sec3 dd { width: calc(100% - 210px); padding: 40px 60px;}
#sec3 .sec_note { margin: 125px auto 0; padding: 70px 14.4% 80px; border: 1px solid #b7b7b7;}
#sec3 .sec_note h4 { margin: 0 0 25px; padding: 0 0 20px; text-align: center; font-size: 17px; border-bottom: 1px solid #b7b7b7;}
#sec3 .sec_note p { font-size: 18px; text-align: center; letter-spacing: 3px;}
#sec3 .sec_note p .tel-link { padding: 0 0 0 20px; font-size: 32px;}
#sec3 .sec_note p .tel-link span { font-size: 14px; padding: 0 0 0 10px;}

@media screen and (max-width: 600px) {
	#sec3 { padding: 50px 0;}
	#sec3 h2 { font-size: 26px; margin: 0 0 30px;}
	#sec3 dl { display: block;}
	#sec3 dt,
	#sec3 dd { padding: 15px 5%; width: 100%; box-sizing: border-box;}
	#sec3 dd span { padding: 0; display: block;}
	#sec3 .flex_col >img,
	#sec3 .sec_txt { width: 100%;}
	#sec3 .sec_txt h3 { padding: 10px 0; margin: 0 0 10px; text-align: center; font-size: 20px;}
	#sec3 .flex_col { margin-bottom: 50px;}

	#sec3 .sec_note { margin-top: 50px; padding: 50px 5%;}
	#sec3 .sec_note h4 { font-size: 16px;}
	#sec3 .sec_note p { font-size: 15px; letter-spacing: 1px; padding: 0; line-height: 1.4;}
	#sec3 .sec_note p .tel-link { display: block; font-size: 26px; padding: 0;}
	#sec3 .sec_note p .tel-link span { display: block; padding: 0;}
}