@charset "UTF-8";
h2{font-size: var(--big-size); color: var(--color-bk);margin-bottom: 20px; border-bottom: 1px solid var(--color-light-gray); padding-bottom: 10px; font-weight: 700;}
h3{font-size: var(--third-size); color: var(--color-g); 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.75; padding: 0 2%; font-weight: 500;}
p a{color: var(--color-link); text-decoration: underline;}

.action-wrap{width: 100%; margin-top: 20px;}
.action-td{width: 1280px; padding: 0 30px; margin: 0 auto;}
.kv-pic{width: 96%; margin: 10px 2% 20px;}
.introduce{font-weight: 700; margin-bottom: 5px; color: var(--color-k);}

.tit{width: 100%; display: inline-block; margin: 30px 0 0; background: var(--color-link); line-height: 1.5; border-radius: 10px 10px 0 0; background: linear-gradient(to right, #3a7bd5, var(--color-link)); text-align: center;}
.tit h4{padding: 12px 20px; 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;}
.tit:first-child{margin-top: 20px;}
.tit-wrap{display: flex; justify-content: center; margin: 30px 0 20px; flex-wrap: wrap;}
.tit-wrap h2{color: var(--color-bk); font-weight: 900; font-size: 2.5rem; line-height: 1.375; letter-spacing: 1px; border-bottom: none; margin: 0; padding: 0;}
.tit-wrap h2 span{color: var(--color-g); letter-spacing: 1px;}
.tit-wrap p{width: 100%; text-align: center; margin-top: 10px; font-weight: 700;}

.button-wrap{text-align: center;}
.button{display: inline-block; padding: 0.75rem 5rem; border-radius: 10rem; color: var(--color-w); font-size: var(--first-size); transition: all 0.3s; position: relative; overflow: hidden; z-index: 1;font-weight: 700; margin: 30px 0 40px;}
.button:after{content: ""; position: absolute; bottom: 0; left: 0; width: 100%;height: 100%; background-color: #fdaa2c; border-radius: 10rem; z-index: -2;}
.button:before{content: ""; position: absolute; bottom: 0; left: 0; width: 0%; height: 100%; background: #fac505; transition: all 0.3s; border-radius: 10rem; z-index: -1;}
.button:hover{color: var(--color-w);}
.button:hover:before {width: 100%;}

/* table */
table{width: 90%; margin: 0 auto; border-collapse: collapse; border-spacing: 0; background: var(--color-w); border: 1px solid var(--color-line); line-height: 1.875;}
table.rg-table tr{text-align: left; color: var(--color-k); border-top: 1px solid var(--color-line);}
table.rg-table tr:first-child{border-top: none;}
table.rg-table tr:nth-child(even){background: #f5fffa;}
table.rg-table th{font-weight: 700; padding: 5px; text-align: center; background: #e4ffea; color: var(--color-k); font-size: var(--basics-size); border-right: 1px solid var(--color-line); border-bottom: 1px solid var(--color-line); width: 33%;}
table.rg-table th:last-child{border-right: none;}
table.rg-table td{padding: 10px; border-right: 1px solid var(--color-line);}
table.rg-table td:last-child, .table.rg-table th:last-child{border-right: none;}
table.rg-table td h2{font-size: var(--second-size); color: var(--color-g); font-weight: 700; border-bottom: none; margin-bottom: 0; padding-bottom: 0; text-align: center; line-height: 1.5; display: block;}
table.rg-table td p{font-size: var(--basics-size);}
table.rg-table td p span{font-size: var(--basics-size); color: var(--color-g); font-weight: 700;}

/* hotel */
.product_list{width: 100%; background: var(--color-w); border-bottom-right-radius: 5px; border-bottom-left-radius: 5px; display: flex; text-align: left; flex-wrap: wrap;}
.product_list li{border-right: 1px solid var(--color-line); border-left: 1px solid var(--color-line); border-bottom: 1px solid var(--color-line); width: 33.33%; display: inline-flex; align-items: stretch;}
.product_list li:nth-child(2), .product_list li:nth-child(5),
.product_list li:nth-child(8){border-right: none; border-left: none;}
.product_list li.noo{display: block;}

.card{padding: 15px; flex-grow: 1; display: flex; flex-direction: column;}
.card_td img{width: 100%; margin-bottom: 10px; transition: .5s;}
.card_td h2{font-size: var(--second-size); color: var(--color-g); font-weight: 700; transition: .5s; border-bottom: none; padding-bottom: 0; margin-bottom: 10px;}
.card_td p{line-height: 1.75; color: #00a7aa; margin-bottom: 20px; padding: 0;}
.card_price{font-size: var(--smallest-size); color: #555; text-align: right; margin-top: auto; font-weight: 500;}
.big{color: var(--color-o); font-size: var(--first-size); text-decoration: none; font-weight: 700; padding: 0 5px; line-height: 1.5;}
.card_td ul.sp{ margin-bottom: 20px;}
.card_td ul.sp li{ width: 100%; border: none; font-weight: 500; padding: 0; margin-bottom: 5px; color: var(--color-g);}
.card_td ul.sp li::before{ content: '•'; margin-right: 5px;}

.price{color: var(--color-o); font-weight: 700;}
span.price{font-size: var(--third-size);}
.att{font-size: var(--basics-size); display: block; color: var(--color-grey); font-weight: normal; line-height: 2; margin-top: 20px; font-weight: 500;}
.sp{color: var(--color-g); font-weight: 700;}
.hr{border: 0; height: 1px; margin: 20px 0; background-image: linear-gradient(to right, rgba(0,0,0,0), rgba(0,0,0,0.75), rgba(0,0,0,0));}
.del{text-decoration: line-through;}
.ps, .card_td span{display: inline-block; font-size: var(--basics-size); color: var(--color-grey); line-height: 2; padding: 0 20px; font-weight: 500; width: 100%; margin-left: 2%;}
.card_td span{padding: 0;}
.ps li{list-style-type: decimal;}
.ps li a, .att a{color: var(--color-link); cursor: pointer;}
.ps li a:hover, .att a:hover{color: #43c9cb; text-decoration: underline; transition: .5s;}
.ps li span{color: var(--color-k); font-weight: 500;}
.ps2{margin-top: 10px; margin-bottom: 10px;}
.ps2 li{list-style-type: disc; color: var(--color-g); font-weight: 700; line-height: 1.75; margin-bottom: 10px;}
.ps-btn{display: inline-block; padding: 4px 20px; background-color: #fdaa2c; color: var(--color-w); text-decoration: none; border-radius: 30px; font-weight: 700; margin: 0 10px 10px; transition: .3s;}
.ps-btn:hover{background-color: #fac505; transition: .3s;}

/* ticket */
.ticket{border: 2px solid var(--color-g); padding: 0 0 20px; margin: 0 auto; border-radius: 12px 12px 10px 10px; width: 90%;}
.ticket-tit{background: var(--color-g); border-radius: 10px 10px 0 0; padding: 7px 0 5px; text-align: center; margin-bottom: 20px; border: 1px solid var(--color-g);}
.ticket-tit h3{padding: 0; color: var(--color-w);}
.ticket p{margin: 5px 0; padding: 0 4%;}
.ticket p span{color: var(--color-o); font-weight: 700;}

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

@media screen and (max-width: 1280px) {
table.rg-table td h2, .card_td h2, .button, .tit h4{font-size: var(--third-size);}
}

@media screen and (max-width: 1023px) {
.action-td{padding: 0 5%;}
.ticket, table{width: 100%; margin: 0;}
.ticket p{padding: 0 6%;}
}

@media screen and (max-width: 800px) {
h3{padding: 0 10px;}
.product_list li{width: 50%;}
.product_list li:nth-child(2), .product_list li:nth-child(8){border-right: 1px solid var(--color-line);}
.product_list li:nth-child(4), .product_list li:nth-child(6){border-left: none;}
.product_list li:nth-child(5){border-left: 1px solid var(--color-line); border-right: 1px solid var(--color-line);}
.big{font-size: var(--third-size);}
table.rg-table th{display: none;}
table.rg-table td{display: block; border-right: none;}
table.rg-table td:first-child{margin-top: 10px;}
table.rg-table td:last-child{margin-bottom: 10px;}
table.rg-table td h2{text-align: left;}
}

@media screen and (max-width: 600px) {
h4{ font-size: var(--third-size);}
.tit-wrap h2{font-size: var(--big-size);}
}

@media screen and (max-width: 500px) {
h2{font-size: 1.75rem;}
h3{padding: 0 5px;}
p{font-size: var(--basics-size);}
.tit-wrap{margin-bottom: 10px;}
.product_list li{width: 100%;}
.product_list li:nth-child(2), .product_list li:nth-child(4), .product_list li:nth-child(6), .product_list li:nth-child(7),  .product_list li:nth-child(8){border-left: 1px solid var(--color-line);}
.product_list li:nth-child(3),.product_list li:nth-child(5), .product_list li:nth-child(7){border-right: 1px solid var(--color-line);}
}

@media screen and (max-width: 400px) {
.button{padding: 0.75rem 3rem;}
}
