@charset "UTF-8";
.tit-wrap{margin-bottom: 20px; border-bottom: 3px solid #ddd; text-align: left;}
h2{position: relative; display: inline-block; font-size: var(--big-size); color: var(--color-p); font-weight: 700; padding: 0 4px 10px; letter-spacing: 1px;}
h2::after{content: ''; position: absolute; left: 0; bottom: -3px; width: 100%; height: 3px; background: linear-gradient(to right, #ff1976, #ffc11c, #1fc2ff);}
h3{font-size: var(--third-size); color: var(--color-p); padding: 0 15px; font-weight: 700; line-height: 1.75; margin-bottom: 5px;}
p{font-size: var(--fourth-size); color: var(--color-k); line-height: 1.875; padding: 0 2%; font-weight: normal;}
p, span{font-weight: 500;}

.action-wrap{width: 100%; display: inline-block;}
.action-td{width: 1280px; padding: 40px 30px; margin: 0 auto;}
.kv-pic{width: 96%; margin: 10px 2% 20px;}
.ps{padding: 0 20px;}
.ps li{list-style-type: decimal; font-size: var(--smallest-size); color: var(--color-grey); line-height: 1.75; text-align: left;font-weight: normal; font-weight: 500; margin-bottom: 5px;}
.ps li span{color: var(--color-o); font-size: var(--smallest-size);}
.ps li a{color: var(--color-link); cursor: pointer; text-decoration: underline; font-weight: 700; padding: 0 3px;}
.ps_kv li{font-size: var(--fourth-size); color: var(--color-k); margin-left: 10px;}

.button{display: inline-flex; padding: 1rem 4rem; border-radius: 20px; background: var(--color-link); color: var(--color-w); font-size: var(--first-size); transition: all 0.3s; font-weight: 700; margin: 40px 0; text-decoration: none; cursor: pointer;}
.hvr-wobble-horizontal{transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0);}
a:hover.hvr-wobble-horizontal, 
.hvr-wobble-horizontal:focus, 
a:active .hvr-wobble-horizontal, 
a.menulink:hover .card_btn,
button:hover{ animation: hvr-wobble-horizontal 1s ease-in-out; animation-iteration-count: 1;}
@keyframes hvr-wobble-horizontal {
  16.65%{transform: translateX(8px);}
  33.3%{transform: translateX(-6px);}
  49.95%{transform: translateX(4px);}
  66.6%{transform: translateX(-2px);}
  83.25%{transform: translateX(1px);}
  100%{transform: translateX(0);}
}

.pg-tit-wrap{display: flex; justify-content: center; margin: 80px 0 30px; flex-wrap: wrap;}
.pg-tit-wrap h2{color: var(--color-bk); font-weight: 900; font-size: 2.25rem; line-height: 1.375; letter-spacing: 1px; border-bottom: none; margin: 0; padding: 0;}
.pg-tit-wrap h2::after{background: none;}
.pg-tit-wrap h2 span{font-weight: 900; color: var(--color-p);}
.pg-tit-wrap p{width: 100%; text-align: center; margin: 5px 0 10px; font-weight: 500; font-size: var(--smallest-size); color: var(--color-grey);}

.division-map{display: flex; justify-content: space-between; align-items: flex-start; gap: 30px;}
.content-intro{flex: 1 1 55%; display: flex; justify-content: center; flex-wrap: wrap;}
.content-intro-pic{flex: 1 1 40%; overflow: hidden; position: relative; border-radius: 20px 0 20px 0;}
.content-intro-pic img{width: 100%; display: block; transition: transform 0.4s ease;}
.first{flex-direction: row;}
.second{flex-direction: row-reverse; margin: 80px 0;}

/* table */
.rg_container{width: 90%; margin: 0 5%;}
.tit{ width: 100%; display: inline-block; border-radius: 20px 20px 0 0; text-align: center; background: linear-gradient(to right, var(--color-p), var(--color-link));}
.tit h4{padding: 10px 20px 12px; color: var(--color-w); font-size: var(--second-size); font-weight: 700;}
.tit h4 span{font-size: var(--basics-size); color: #fff6e8; font-weight: 500;}
table{width: 100%; border-collapse: collapse; border-spacing: 0; background: var(--color-w);}
table.rg_table tr{text-align: left; color: var(--color-k); border: 1px solid var(--color-line);}
table.rg_table tr:last-child{border-bottom: none;}
table.rg_table.zebra tr:nth-child(even) {background:#f6f4f9;}
table.rg_table th{font-weight: 700; padding: 10px 1em; background: #f6f4f9; font-size: var(--fourth-size); border: 1px solid var(--color-line); color: var(--color-bk); text-align: center; width: 25%;}
table.rg_table th:first-child{border-right: 1px solid var(--color-line);}
table.rg_table td{padding: 1em; border: 1px solid var(--color-line); text-align: center;}
table.rg_table td h3{padding: 0; margin: 0; line-height: 1.5; display: flex; align-items: center; justify-content: center; font-size: var(--basics-size);}
table.rg_table td p{padding: 0; margin: 0; color: var(--color-k); font-size: var(--basics-size);}
table.rg_table td p.sp{color: var(--color-g);}
table.rg_table td p span{margin-top: 0;}
table.rg_table td a{color: #3365c1; text-decoration: underline;}
.pic{display: flex; width: 100%; justify-content: space-between; position: relative; margin-bottom: 20px;}
.pic img{width: 31.3%; margin: 0 1%; object-fit: cover;}

/* tab */
.tabs{font-size: 0; list-style: none; overflow: hidden; display: flex; justify-content: space-between;}
.tabs li{width: 100%; text-align: center; border-radius: 15px 15px 0 0; border: 2px solid var(--color-k); border-bottom: none; background: var(--color-w); margin-left: -1px; position: relative; z-index: 1;}
.tabs li:nth-child(1){margin-left: 0;}
.tabs li a{text-decoration: none; display: block; padding: 6px 25px; position: relative; color: var(--color-w);}
.tabs li.active, .tabs li:hover{background: var(--color-p); border-radius: 15px 15px 0 0;}
.tabs li a h2, .tabs li a span{color: var(--color-bk); display: inline; font-weight: 700;}
.tabs li.active a h2, .tabs li a:hover h2,
.tabs li.active a span, .tabs li a:hover span
{color: var(--color-w);}
.tabs li h2{font-size: var(--second-size); padding: 0;}
.tabs li h2::after{background: none;}
.tabs li span{font-size: var(--basics-size);}

/* hotel */
.hotel-wrap{display: flex; flex-wrap: wrap; justify-content: space-between; border: 2px solid var(--color-k); border-bottom: none;}
.hotel-wrap li{display: inline-flex; border-radius: 15px; width: 33.33%; padding: 1em 1.2em; border-bottom: 2px solid var(--color-k); border-right: 2px solid var(--color-k); border-radius: 0; background: var(--color-w);}
.hotel-wrap li:nth-child(3), .hotel-wrap li:nth-child(6), .hotel-wrap li:nth-child(9){border-right: none;}
.card{flex-grow: 1; display: flex; flex-direction: column; text-align: left;}
.card_td img{width: 100%; transition: .5s;}
.block{ background: var(--color-bk); transition: .5s;}
.card_td h2{font-size: var(--third-size); line-height: 1.75; color: var(--color-p); border: none; margin: 10px 0 0px; padding: 0; letter-spacing: 0;}
.card_td h2::after{content: ''; position: static; left: 0; bottom: 0; height: 0; background: none;}
.card_td h2 img{width: 20px; vertical-align: middle; margin: 0 5px;}
.card_td p{padding: 0; margin-bottom: 10px;}
.feature{ margin-bottom: 10px;}
.card_td ul.feature li{list-style-type: disc; padding: 0 10px 0 0; margin: 0 0 0 1.2em; color: var(--color-grey); width: 100%; display: list-item; border: none;}
.card_td ul.feature li p{padding: 0;}
.hotel-price-wrap{padding: 0; font-size: var(--first-size); line-height: 1.5; color: var(--color-r); font-weight: 700; margin: auto 0 0; text-align: right;}
.hotel-price-wrap span{font-size: var(--smallest-size); color: var(--color-grey); font-weight: 500; margin: 0 5px;}
.hotel-price-wrap span.card_btn, .intro-btn{font-size: var(--basics-size); color: var(--color-w); background: var(--color-link); border-radius: 20px; text-align: center; padding: 5px 25px 7px; margin-top: 8px; float: right; transition: .5s; font-weight: 700;}
a.menulink{transition: .5s; flex-grow: 1; display: flex; flex-direction: column;}
a.menulink:hover h2{ color: var(--color-link); transition: .5s;}
a.menulink:hover .block{transition: .5s;}
a.menulink:hover img{opacity: 70%; transition: .5s;}

/* highlight */
.introduce{font-weight: 700; color: var(--color-bk); text-align: left;}
.price{color: var(--color-r); font-weight: 700;}
.att{font-size: var(--smallest-size); display: block; color: var(--color-grey); font-weight: normal; line-height: 2; margin: 20px 0 5px; font-weight: 500;}

.hr{border: 0; height: 1px; margin: 20px 0; width: 100%; background-image: linear-gradient(to right, rgba(0,0,0,0), rgba(0,0,0,0.75), rgba(0,0,0,0));}
button{border:0; background-color: none; outline:none;}
button:hover{background: var(--color-p); cursor: pointer;}
.intro-btn{float: none; margin-top: 30px; padding: 10px 25px; font-size: var(--fourth-size); border-radius: 30px;}
.m-br{display: none;}

@media screen and (max-width: 1360px) {
.action-td{width: 95%;}
.tit h4{width: 100%;}
}

@media screen and (max-width: 1280px) {
.button{font-size: var(--third-size);}
}

@media screen and (max-width: 1060px) {
.division-map{gap: 20px;}
.content-intro{flex: 1 1 65%;}
.content-intro-pic{flex: 1 1 30%;}
.intro-btn{margin-top: 20px;}
}

@media screen and (max-width: 1023px) {
.rg_container{width: 100%; margin: 0;}
.hotel-wrap{border-right: none;}
.hotel-wrap li{width: 50%;}
.hotel-wrap li:nth-child(3), .hotel-wrap li:nth-child(6), .hotel-wrap li:nth-child(9){border-right: 2px solid var(--color-k);}
}

@media screen and (max-width: 800px) {
h3{ padding: 0 10px;}
.tabs li a{padding: 10px 5px;}
.tabs li h2, .tabs li span{font-size: var(--third-size);}
.pic{position: relative; width: 100%; padding-top: 56.25%; overflow: hidden; margin-bottom: 20px;}
.pic img{position: absolute; width: 100%; height: 100%; top: 0; left: 0; transition: opacity 1s ease; margin: 0;}
.pic img.active{opacity: 1;}
.division-map{flex-wrap: wrap; justify-content: center;}
.content-intro{flex: none; width: 100%; padding: 0;}
.content-intro-pic{flex: none; width: 70%;}
.content ul{margin-left: 20px;}
table.rg_table thead{display: none;}
table.rg_table th{font-size: var(--basics-size);}
table.rg_table tr:last-child{border: 1px solid var(--color-line);}
table.rg_table td{display: inline-block; padding: 0 1em; border: none; text-align: left; width: 50%;}
table.rg_table td:nth-child(1),table.rg_table td:nth-child(2){padding-top: 1em; padding-bottom: 10px;}
table.rg_table td:nth-child(3), table.rg_table td:nth-child(4){padding-bottom: 1em;}
table.rg_table td h3{justify-content: flex-start;}
table.rg_table td p{display: inline-block; color: var(--color-g);}
table.rg_table td[data-title]::before{content: attr(data-title); display: inline-block; margin-right: 2px; font-weight: 500; color: var(--color-k); font-size: var(--basics-size);}
table.rg_table2 td{width: 100%;}
.ps{padding: 0 10px;}
.ps_kv li{font-size: var(--basics-size);}
}

@media screen and (max-width: 768px) {
.tabs li a h2, .tabs li a span{display: block;}
.tabs li span{width: 100%;}
}

@media screen and (max-width: 640px) {
.hotel-wrap li{width: 100%; padding: 1em;}
.content-intro-pic{width: 100%;}
.tabs li h2, .tabs li span{font-size: var(--fourth-size);}
}

@media screen and (max-width: 500px) {
h2{font-size: 1.75rem;}
h3{padding: 0 5px;}
p{font-size: var(--basics-size);}
.pg-tit-wrap{margin: 60px 0 20px;}
.pg-tit-wrap h2{font-size: var(--big-size);}
.att, .ps{font-size: var(--smallest-size);}
.button{padding: 1rem 3rem; margin: 20px 0 40px; font-size: var(--fourth-size);}
.action-td{padding: 20px;}
.hotel-price-wrap{padding: 0; font-size: var(--third-size);}
table.rg_table td{width: 100%;}
table.rg_table td:nth-child(1),table.rg_table td:nth-child(2){padding-bottom: 5px;}
table.rg_table td:nth-child(2){padding-top: 0;}
table.rg_table td:nth-child(3){padding-bottom: 5px;}
.second{margin: 60px 0;}
.tabs li h2, .tabs li span{font-size: var(--basics-size);}
}

@media screen and (max-width: 376px) {
.button{padding: 1rem 2rem;}
.tit h4{font-size: var(--third-size);}
.m-br{display: block;}
}