@charset "UTF-8";
/* Scss Document */
/*colors*/
@media screen and (min-width: 769px) { .for_pc { display: block; } }
@media screen and (max-width: 768px) { .for_pc { display: none; } }

@media screen and (min-width: 769px) { .for_sp { display: none; } }
@media screen and (max-width: 768px) { .for_sp { display: block; } }

@media screen and (min-width: 500px) { .for_ss { display: none; } }
@media screen and (max-width: 499px) { .for_ss { display: block; } }
@media screen and (max-width: 340px) { .for_ss { display: none; } }

/*テキスト*/
p + p { margin-top: 1em; }

/*余白*/
.com-mt-01 { margin-top: 10.5rem; }

.com-mt-02 { margin-top: 5.25rem; }

.mt0 { margin-top: 0px !important; }

.mr0 { margin-right: 0px !important; }

.mb0 { margin-bottom: 0px !important; }

.ml0 { margin-left: 0px !important; }

.pt0 { padding-top: 0px !important; }

.pr0 { padding-right: 0px !important; }

.pb0 { padding-bottom: 0px !important; }

.pl0 { padding-left: 0px !important; }

.mt5 { margin-top: 5px !important; }

.mr5 { margin-right: 5px !important; }

.mb5 { margin-bottom: 5px !important; }

.ml5 { margin-left: 5px !important; }

.pt5 { padding-top: 5px !important; }

.pr5 { padding-right: 5px !important; }

.pb5 { padding-bottom: 5px !important; }

.pl5 { padding-left: 5px !important; }

.mt10 { margin-top: 10px !important; }

.mr10 { margin-right: 10px !important; }

.mb10 { margin-bottom: 10px !important; }

.ml10 { margin-left: 10px !important; }

.pt10 { padding-top: 10px !important; }

.pr10 { padding-right: 10px !important; }

.pb10 { padding-bottom: 10px !important; }

.pl10 { padding-left: 10px !important; }

.mt15 { margin-top: 15px !important; }

.mr15 { margin-right: 15px !important; }

.mb15 { margin-bottom: 15px !important; }

.ml15 { margin-left: 15px !important; }

.pt15 { padding-top: 15px !important; }

.pr15 { padding-right: 15px !important; }

.pb15 { padding-bottom: 15px !important; }

.pl15 { padding-left: 15px !important; }

.mt20 { margin-top: 20px !important; }

.mr20 { margin-right: 20px !important; }

.mb20 { margin-bottom: 20px !important; }

.ml20 { margin-left: 20px !important; }

.pt20 { padding-top: 20px !important; }

.pr20 { padding-right: 20px !important; }

.pb20 { padding-bottom: 20px !important; }

.pl20 { padding-left: 20px !important; }

.mt25 { margin-top: 25px !important; }

.mr25 { margin-right: 25px !important; }

.mb25 { margin-bottom: 25px !important; }

.ml25 { margin-left: 25px !important; }

.pt25 { padding-top: 25px !important; }

.pr25 { padding-right: 25px !important; }

.pb25 { padding-bottom: 25px !important; }

.pl25 { padding-left: 25px !important; }

.mt30 { margin-top: 30px !important; }

.mr30 { margin-right: 30px !important; }

.mb30 { margin-bottom: 30px !important; }

.ml30 { margin-left: 30px !important; }

.pt30 { padding-top: 30px !important; }

.pr30 { padding-right: 30px !important; }

.pb30 { padding-bottom: 30px !important; }

.pl30 { padding-left: 30px !important; }

.mt35 { margin-top: 35px !important; }

.mr35 { margin-right: 35px !important; }

.mb35 { margin-bottom: 35px !important; }

.ml35 { margin-left: 35px !important; }

.pt35 { padding-top: 35px !important; }

.pr35 { padding-right: 35px !important; }

.pb35 { padding-bottom: 35px !important; }

.pl35 { padding-left: 35px !important; }

.mt40 { margin-top: 40px !important; }

.mr40 { margin-right: 40px !important; }

.mb40 { margin-bottom: 40px !important; }

.ml40 { margin-left: 40px !important; }

.pt40 { padding-top: 40px !important; }

.pr40 { padding-right: 40px !important; }

.pb40 { padding-bottom: 40px !important; }

.pl40 { padding-left: 40px !important; }

.mt45 { margin-top: 45px !important; }

.mr45 { margin-right: 45px !important; }

.mb45 { margin-bottom: 45px !important; }

.ml45 { margin-left: 45px !important; }

.pt45 { padding-top: 45px !important; }

.pr45 { padding-right: 45px !important; }

.pb45 { padding-bottom: 45px !important; }

.pl45 { padding-left: 45px !important; }

.mt50 { margin-top: 50px !important; }

.mr50 { margin-right: 50px !important; }

.mb50 { margin-bottom: 50px !important; }

.ml50 { margin-left: 50px !important; }

.pt50 { padding-top: 50px !important; }

.pr50 { padding-right: 50px !important; }

.pb50 { padding-bottom: 50px !important; }

.pl50 { padding-left: 50px !important; }

/*20240718追加*/
.pt70 { padding-top: 70px !important; }

/*ヘッダー*/
#header { /*background-color: #FFF;*/ /*@media screen and (max-width: 767px) {
	position: relative;
	top: auto;
	left: auto;
}*/ }

/*メインビジュアル*/
#main_visual { text-align: center; position: relative; }
#main_visual .wrapper { width: 90%; max-width: 1200px; margin: auto; }
#main_visual .image { filter: grayscale(100%); /* モノクロにする */ -webkit-filter: grayscale(100%); /* モノクロにする */ transition: filter 2s, -webkit-filter 2s; transition-delay: 1s; position: relative; z-index: 0; }
#main_visual .image.loaded { filter: grayscale(0); /* モノクロを解除する */ -webkit-filter: grayscale(0); /* モノクロを解除する */ }
#main_visual .tit { margin-top: -40px; position: relative; z-index: 1; }
#main_visual .date { margin-top: 10px; }
@media (max-width: 768px) { #main_visual .date img { height: 9.1145833333vw; } }

/*パンくずリスト*/
#pankuzu { margin-top: 3rem; }
#pankuzu a { display: inline-block; }
#pankuzu a:hover { text-decoration: underline; }
#pankuzu a:after { content: '>'; display: inline-block; margin-left: .5em; margin-right: .5em; }

/*固定バナー*/
#banner_pc { position: fixed; right: 20px; bottom: 20px; z-index: 1; animation: banner_pc_move 1s ease-out infinite alternate; }

@keyframes banner_pc_move { from { transform: translateY(0); }
  to { transform: translateY(-20px); } }
/*ページメニュー*/
.page-menu { background-color: #f5f5f5; padding: 2rem 4rem; }
@media screen and (max-width: 414px) { .page-menu { padding: 2rem 2rem; } }
.page-menu .tit { font-weight: bold; font-size: 24px; margin-bottom: 1em; }
@media screen and (max-width: 767px) { .page-menu .tit { font-size: 3.5vw; } }
@media screen and (max-width: 414px) { .page-menu .tit { font-size: 18px; } }
.page-menu .page-menu-list li { position: relative; padding-left: 1em; }
.page-menu .page-menu-list li + li { margin-top: 1em; }
.page-menu .page-menu-list li:before { content: ''; display: block; width: 5px; height: 5px; background-color: #000; border-radius: 50%; position: absolute; top: .7em; left: 0; }
.page-menu .page-menu-list li a:hover { text-decoration: underline; }
.page-menu .page-menu-list__sub { margin-top: 1em; }
.page-menu .page-menu-list__sub li { font-size: .9em; }
.page-menu .page-menu-list__sub li:before { width: 3px; height: 3px; }

/*見出し*/
header.large { text-align: center; margin-bottom: 50px; }
header.large span { display: block; }
header.large .jp { font-size: 32px; font-weight: bold; }
@media screen and (max-width: 767px) { header.large .jp { font-size: 4vw; } }
@media screen and (max-width: 414px) { header.large .jp { font-size: 20px; } }
header.large .en { font-size: 20px; color: #bda366; }
@media screen and (max-width: 767px) { header.large .en { font-size: 3vw; } }
@media screen and (max-width: 414px) { header.large .en { font-size: 15px; } }
header.large + [class^="comp_con_bw"] { margin-top: 0; }

header.largest { text-align: left; margin-bottom: 50px; border-bottom: solid 3px #000; position: relative; padding-bottom: 1em; }
header.largest:after { position: absolute; content: ''; display: block; border-bottom: solid 3px #bda366; bottom: -3px; width: 20%; }
header.largest h1 { font-size: 38px; font-weight: bold; line-height: 1.4; }
header.largest h1::before { display: block; width: 0; height: 0; margin-top: calc((1 - 1.4) * .5em); content: ""; }
header.largest h1::after { display: block; width: 0; height: 0; margin-bottom: calc((1 - 1.4) * .5em); content: ""; }
@media screen and (max-width: 767px) { header.largest h1 { font-size: 4.5vw; } }
@media screen and (max-width: 414px) { header.largest h1 { font-size: 26px; } }
header.largest + [class^="comp_con_bw"] { margin-top: 0; }

.comp_st { margin-bottom: 1em; }

/*section*/
section [class^="comp_con_bw"]:first-child { margin-top: 0; }

[class^="comp_con_bw"] > [class^="comp_con_bw"] { width: 100%; }

section.hotel_section { padding-top: 80px; padding-bottom: 80px; }
@media screen and (max-width: 1024px) { section.hotel_section { padding-top: 50px; padding-bottom: 50px; } }
@media screen and (max-width: 414px) { section.hotel_section { padding-top: 40px; padding-bottom: 40px; } }
section.hotel_section:nth-of-type(2n) { background-color: #f5f5f5; }
section.hotel_section h3 { font-size: 32px; line-height: 1.3; text-align: center; margin-bottom: 40px; }
@media screen and (max-width: 1024px) { section.hotel_section h3 { font-size: 22px; } }
section.hotel_section h3 .old { display: block; margin-top: 10px; font-size: 70%; }

/*cont_lr*/
@media screen and (min-width: 769px) { .cont_lr { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; align-items: center; margin-top: 50px; } }
@media screen and (max-width: 768px) { .cont_lr { margin-top: 30px; } }
.cont_lr:first-of-type { margin-top: 0; }
@media screen and (min-width: 769px) { .cont_lr > .img, .cont_lr > .text { flex-shrink: 0; }
  .cont_lr > .img { width: 40%; }
  .cont_lr > .text { width: 60%; }
  .cont_lr.img_r .text { order: 1; padding-right: 8.333333%; }
  .cont_lr.img_r .img { order: 2; }
  .cont_lr.img_l .text { order: 2; padding-left: 8.333333%; }
  .cont_lr.img_l .img { order: 1; } }
.cont_lr .text { /*.btns{
	margin-top: 20px;
	@media screen and (min-width: 769px) {	
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		justify-content: space-between;	
	}
	.comp_btn_member{
		@media screen and (min-width: 769px) {	
			width: calc((100% - 20px)/2);
			min-width: 0;
			display: inline-flex;
			align-items: center;
			justify-content: center;
		}
		@media screen and (max-width: 1024px) and (min-width: 769px) {
			font-size: 1.5vw;
		}
		&:first-child{
			@media screen and (min-width: 769px) {
				margin-right: 20px;
			}
			@media screen and (max-width: 768px) {
				margin-bottom: 20px;
			}
		}
	}
}		*/ }
@media screen and (max-width: 768px) { .cont_lr .text { margin-top: 20px; } }
.cont_lr .text p + p { margin-top: 1em; }
.cont_lr .text .btn { margin-top: 20px; }
@media screen and (max-width: 768px) { .cont_lr .text .btn { text-align: center; } }
.cont_lr .text .detail { margin-top: 30px; }
@media screen and (max-width: 768px) { .cont_lr .text .detail { margin-top: 20px; } }
.cont_lr .text .detail:first-child { margin-top: 0; }
.cont_lr .img img { width: 100%; display: block; }
.cont_lr h3 { font-size: 22px; line-height: 1.6; margin-bottom: 20px; }
@media screen and (max-width: 1024px) { .cont_lr h3 { margin-bottom: 10px; font-size: 18px; } }

/*faci-icons*/
.faci-icons-wrap { overflow: hidden; }

.faci-icons { display: flex; flex-wrap: wrap; }
@media (min-width: 1200px) { .faci-icons { margin: -1.5rem; } }
.faci-icons li { display: flex; align-items: center; font-size: 1.3rem; }
@media (min-width: 1200px) { .faci-icons li { margin: 1.5rem; } }
@media (min-width: 769px) and (max-width: 1200px) { .faci-icons li { width: calc(50% - 3rem); margin-left: 3rem; margin-top: 3rem; }
  .faci-icons li:nth-child(2n+1) { margin-left: 0; }
  .faci-icons li:nth-child(-n+2) { margin-top: 0; } }
@media (max-width: 768px) { .faci-icons li { width: 100%; }
  .faci-icons li + li { margin-top: 1rem; } }
.faci-icons li .icon { display: block; margin-right: 1rem; flex-shrink: 0; flex-grow: 0; }

/*hotel-list*/
#hotels .new { position: absolute; left: 0; top: 50%; transform: translate(-50%, -50%); background-color: #bda366; font-size: 1.6rem; line-height: 1; color: #fff; width: 56px; height: 56px; border-radius: 50%; }
#hotels .new em { display: block; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }
@media only screen and (min-width: 768px) and (max-width: 1279px) { #hotels .new { transform: translate(-30%, -50%); } }
@media only screen and (max-width: 767px) { #hotels .new { transform: translate(-50%, -50%); } }
@media only screen and (min-width: 768px) and (max-width: 1279px) { #hotels .new { font-size: 1.42222rem; } }
@media only screen and (max-width: 767px) { #hotels .new { font-size: 1.42222rem; } }
@media only screen and (min-width: 768px) and (max-width: 1279px) { #hotels .new { width: 48px; } }
@media only screen and (max-width: 767px) { #hotels .new { width: 40px; } }
@media only screen and (min-width: 768px) and (max-width: 1279px) { #hotels .new { height: 48px; } }
@media only screen and (max-width: 767px) { #hotels .new { height: 40px; } }
#hotels .con_tab ul { display: flex; position: relative; padding-left: 1rem; }
@media only screen and (min-width: 768px) and (max-width: 1279px) { #hotels .con_tab ul { padding-left: 0.8rem; } }
@media only screen and (max-width: 767px) { #hotels .con_tab ul { padding-left: 0.5rem; } }
#hotels .con_tab ul:before { content: ""; position: absolute; width: 100%; height: 1px; background-color: #5e5e5e; top: 0; left: 0; z-index: 0; }
#hotels .con_tab ul li { margin-left: -1px; position: relative; z-index: 1; /* &:nth-child(-n+4) a { background-color: #846b30; }*/ }
#hotels .con_tab ul li:first-child { margin-left: 0; }
#hotels .con_tab ul li:first-child a { padding: 2.5rem 4rem; }
@media only screen and (min-width: 768px) and (max-width: 1279px) { #hotels .con_tab ul li:first-child a { padding: 2rem 3.2rem; } }
@media only screen and (max-width: 767px) { #hotels .con_tab ul li:first-child a { padding: 1.25rem 2rem; } }
#hotels .con_tab ul li a { display: flex; align-items: center; position: relative; color: #fff; background-color: #bda366; border: 1px solid #5e5e5e; height: 100%; box-sizing: border-box; padding: 2.5rem 1.5rem; }
@media only screen and (min-width: 768px) and (max-width: 1279px) { #hotels .con_tab ul li a { padding: 2rem 1.2rem; } }
@media only screen and (max-width: 767px) { #hotels .con_tab ul li a { padding: 1.25rem 0.75rem; } }
#hotels .con_tab ul li a span { display: block; }
#hotels .con_tab ul li a .new { top: 0; left: 8%; transform: translate(0, -50%); width: 40px; height: 40px; font-size: 1.28rem; }
@media only screen and (min-width: 768px) and (max-width: 1279px) { #hotels .con_tab ul li a .new { width: 32px; } }
@media only screen and (max-width: 767px) { #hotels .con_tab ul li a .new { width: 32px; } }
@media only screen and (min-width: 768px) and (max-width: 1279px) { #hotels .con_tab ul li a .new { height: 32px; } }
@media only screen and (max-width: 767px) { #hotels .con_tab ul li a .new { height: 32px; } }
@media only screen and (min-width: 768px) and (max-width: 1279px) { #hotels .con_tab ul li a .new { font-size: 1.28rem; } }
@media only screen and (max-width: 767px) { #hotels .con_tab ul li a .new { font-size: 1.28rem; } }
#hotels .con_tab ul li a.active { background-color: #fff; color: #000; }
#hotels .con_tab.start { margin-top: 6.5rem; }
@media only screen and (min-width: 768px) and (max-width: 1279px) { #hotels .con_tab.start { margin-top: 5.2rem; } }
@media only screen and (max-width: 767px) { #hotels .con_tab.start { margin-top: 3.25rem; } }
#hotels .con_tab.start ul:before { top: auto; bottom: 0; }
#hotels .con_tab.start ul li a.active { border-bottom: 1px solid #fff; }
#hotels .con_tab.end { margin-top: 6.5rem; }
@media only screen and (min-width: 768px) and (max-width: 1279px) { #hotels .con_tab.end { margin-top: 5.2rem; } }
@media only screen and (max-width: 767px) { #hotels .con_tab.end { margin-top: 3.25rem; } }
#hotels .con_tab.end ul li a.active { border-top: 1px solid #fff; }
#hotels .con_tab .atn { display: none; margin-top: 1.5rem; text-indent: -1em; padding-left: 1em; font-size: 1.42222rem; line-height: 1.4; }
@media only screen and (min-width: 768px) and (max-width: 1279px) { #hotels .con_tab .atn { margin-top: 1.2rem; } }
@media only screen and (max-width: 767px) { #hotels .con_tab .atn { margin-top: 0.75rem; } }
@media only screen and (max-width: 599px) { #hotels .con_tab .outer_btn { padding-top: 2rem; overflow-x: scroll; -webkit-overflow-scrolling: touch; }
  #hotels .con_tab .outer_btn > ul { width: 1300px; }
  #hotels .con_tab .atn { display: block; } }
@media only screen and (max-width: 599px) { #hotels .con_tab .outer_btn > ul { width: 1180px; } }

.hotel-list-container { overflow: hidden; margin: 4rem .5em 0; }

.hotel-list { display: flex; flex-wrap: wrap; overflow: hidden; margin: -2rem -1.5rem; }
@media screen and (max-width: 499px) { .hotel-list { margin: -1.5rem -1rem; } }
.hotel-list > li { width: 25%; padding: 2rem 1.5rem; display: flex; flex-direction: column; }
@media screen and (max-width: 768px) { .hotel-list > li { width: 50%; } }
@media screen and (max-width: 499px) { .hotel-list > li { padding: 1.5rem 1rem; } }
.hotel-list > li .text { margin-top: 1.6rem; display: flex; flex-direction: column; height: 100%; }
.hotel-list > li .text p { font-size: 1.3rem; }
.hotel-list > li .text .tit { font-weight: bold; }
.hotel-list > li .text .tit + p { margin-top: .6em; margin-bottom: 2rem; }
.hotel-list > li .text .icons-wrap { margin-top: auto; overflow: hidden; }
.hotel-list > li .text .icons { display: flex; flex-wrap: wrap; margin: -.5rem; }
.hotel-list > li .text .icons li { width: calc((100% - 3rem/4)); max-width: 4rem; margin: .5rem; }
.hotel-list > li .text .plans { margin-top: 2rem; }
.hotel-list > li .text .plans li + li { margin-top: 1rem; }
.hotel-list > li .text .plans li a { font-size: 1.3rem; text-decoration: underline; }
.hotel-list > li .text .plans li a:hover { text-decoration: none; }
.hotel-list > li .text .plans li a .ic { display: inline-block; vertical-align: middle; }
.hotel-list > li .text .plans li a .ic svg { width: 1.3rem; height: 1.3rem; }
.hotel-list > li .text .btn { margin-top: auto; }
.hotel-list > li .text .btn .comp_btn_member { width: 100%; min-width: 0; padding: 1rem 1rem; }
@media (max-width: 413px) { .hotel-list > li .text .btn .comp_btn_member { font-size: 1.4rem; } }

.campaign-wrapper { width: 100%; height: 550px; position: relative; }
@media screen and (max-width: 767px) { .campaign-wrapper { height: 400px; } }
.campaign-wrapper iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

#campaign-inner { background-color: #f5f5f5; padding: 2rem 3rem; height: 550px; }
@media screen and (max-width: 767px) { #campaign-inner { padding: 2rem; height: 400px; } }
#campaign-inner .btn { text-align: center; padding: 3.25rem 0 6.5rem; }
#campaign-inner section { border-top: 1px solid #bda366; padding: 6.5rem 0; }
#campaign-inner section + section { margin-top: 0; }
#campaign-inner section:first-of-type { margin-top: 0; }
#campaign-inner section:last-of-type { border-bottom: 1px solid #bda366; }
@media only screen and (min-width: 768px) and (max-width: 1279px) { #campaign-inner section { padding: 5.2rem 0; } }
@media only screen and (max-width: 767px) { #campaign-inner section { padding: 3.25rem 0; } }

/*line*/
#line { font-size: 1.5rem; border: 1px solid #bda366; }
@media (min-width: 768px) { #line { padding: 40px; } }
@media (max-width: 1024px) { #line { padding: 40px 20px 30px; } }
@media (max-width: 768px) { #line { padding: 15px; } }
#line .flex { margin-top: 1rem; }
@media (min-width: 768px) { #line .flex { display: flex; align-items: center; justify-content: space-between; gap: 80px; } }
@media (min-width: 1025px) { #line .flex figure { width: 35%; } }
@media (min-width: 768px) { #line .flex figure { width: 25%; flex-shrink: 0; } }
@media (min-width: 768px) { #line .flex .text { padding: 0 30px; width: 70%; } }
@media (max-width: 768px) { #line .flex .text { margin-top: 40px; } }
#line .flex .qr { text-align: center; font-size: 90%; flex-shrink: 0; }
@media (max-width: 1023px) { #line .flex .qr { width: 20%; } }
#line .flex .comp_btn_ghost { margin-top: 30px; }
#line .add_info { margin-top: 30px; }

/*フッター*/
#footer .con_footer_rsrv .inner .box_btn_plan { margin-top: 0; display: block; }
#footer .con_footer_rsrv .inner .box_btn_plan li:nth-child(n+2) { margin-top: 2rem; }

#footer .con_dacorp_footer { margin-top: 0; border-top: 0; }

/*detail*/
dl.detail { font-size: 15px; line-height: 1.6; }
dl.detail > div { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-wrap: wrap; margin-bottom: 10px; }
dl.detail > div > dt { flex-basis: 100px; max-width: 100px; position: relative; padding-right: 1em; }
dl.detail > div > dt:after { content: '：'; display: block; position: absolute; right: 0; top: 0; }
dl.detail > div > dt.wide { margin-bottom: 0; }
dl.detail > div > dd { flex-basis: calc(100% - 100px); max-width: calc(100% - 100px); }
dl.detail > div > dd.wide { flex-basis: 100%; max-width: 100%; }
dl.detail > div > dd a { color: #bda366; text-decoration: underline; }
dl.detail > div > dd a:hover { text-decoration: none; }

/*dots*/
ul.dots li { position: relative; padding-left: 1em; }
ul.dots li:before { content: '・'; display: block; position: absolute; top: 0; left: 0; }

/*文字装飾*/
.chu { font-size: 90%; color: #bda366; }

.center { text-align: center; }

a.has-line { text-decoration: underline; }
a.has-linea:hover { text-decoration: none; }

.mb0 { margin-bottom: 0 !important; }

.mt0 { margin-top: 0 !important; }

/* slick
-------------------------------------- */
.slick-slider { position: relative; display: block; box-sizing: border-box; -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -ms-touch-action: pan-y; touch-action: pan-y; -webkit-tap-highlight-color: transparent; }

.slick-list { position: relative; overflow: hidden; display: block; margin: 0; padding: 0; }
.slick-list:focus { outline: none; }
.slick-list.dragging { cursor: pointer; cursor: hand; }

.slick-slider .slick-track, .slick-slider .slick-list { -webkit-transform: translate3d(0, 0, 0); -moz-transform: translate3d(0, 0, 0); -ms-transform: translate3d(0, 0, 0); -o-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }

.slick-track { position: relative; left: 0; top: 0; display: block; margin-left: auto; margin-right: auto; }
.slick-track:before, .slick-track:after { content: ""; display: table; }
.slick-track:after { clear: both; }
.slick-loading .slick-track { visibility: hidden; }

.slick-slide { float: left; min-height: 1px; outline: none; display: none; }
[dir="rtl"] .slick-slide { float: right; }
.slick-slide a { outline: none; }
.slick-slide img { display: block; }
.slick-slide.slick-loading img { display: none; }
.slick-slide.dragging img { pointer-events: none; }
.slick-initialized .slick-slide { display: block; }
.slick-loading .slick-slide { visibility: hidden; }
.slick-vertical .slick-slide { display: block; height: auto; border: 1px solid transparent; }

.slick-arrow.slick-hidden { display: none; }

/*.slick-arrow { z-index: 5; position: absolute; top: 50%; transform: translateY(-50%); width: 31px; height: 60px; padding: 0; text-indent: -9999px; border: none; background-color: transparent; background-image: url(../images/slider_arrow_w.png); background-repeat: no-repeat; background-position: center; background-size: auto; outline: none; cursor: pointer; transition: .4s; @media (max-width: 767px) { width: 15.5px; height: 30px; background-size: 15.5px auto; } &.slick-next { right: 20px; @media (max-width: 767px) { right: 10px; } } &.slick-prev { left: 20px; transform: translateY(-50%) rotate(180deg); @media (max-width: 767px) { left: 10px; } } &:hover { opacity: .7; } .arrow-b & { background-image: url(../images/slider_arrow_b.png);   }
}*/
.slick-dots { display: flex; justify-content: center; }
@media (min-width: 769px) { .slick-dots { position: absolute; bottom: -35px; left: 0; width: 100%; } }
@media (max-width: 768px) { .slick-dots { margin-top: 25px; } }
.slick-dots li { width: 50px; height: 2px; margin: 0 5px; border: none; border-radius: none; appearance: none; -webkit-appearance: none; font-size: 0; line-height: 1; outline: none; background: #000; transition: .4s; /*追加*/ position: relative; cursor: pointer; }
.slick-dots li.slick-active, .slick-dots li:hover, .slick-dots li.hover { background: #bda366; }
@media (max-width: 767px) { .slick-dots li { width: 25px; height: 1px; margin: 0 3px; } }
.slick-dots li:before { content: ''; display: block; position: absolute; width: 100%; height: 20px; top: -10px; left: 0; }
.slick-dots button { display: none; }
.slider.dots_inner .slick-dots { position: absolute; bottom: 10px; left: 0; width: 100%; }

.slider { display: none; }

.slider.slick-initialized { display: block; }

.onsen { display: flex; /*width: 30%;*/ justify-content: center; margin-top: 30px; }

@media (max-width: 768px) { .onsen { display: block; width: 80%; margin: 0 auto; margin-top: 30px; } }
/*20251016*/
.nyuyokugi { text-align: center; margin-top: 10.5rem; padding: 0 30px; }

@media (max-width: 768px) { .nyuyokugi { margin-top: 5.25rem; } }
.nyuyokugi img { width: 100%; max-width: 800px; height: auto; display: block; margin: auto; }

@media (max-width: 767px) { .nyuyokugi img { margin-top: 5.25rem; /*max-width: 90%;*/ } }
.nyuyokugi p { font-size: 1.3rem; }

#main_visual { text-align: center; position: relative; padding-left: 4%; }

@media screen and (min-width: 768px) { #main_visual { padding-top: 60px; background-color: #000; padding-left: 0; } }
#main_visual::before { content: ""; position: absolute; display: block; z-index: 0; top: 0; left: -5%; width: 100%; height: 90%; background-color: #000; }

@media only screen and (max-width: 767px) { #header .con_logo .logo { padding: 0.4em 40vw 0.4em 4% !important; } }
/* ヘッダー統一
-------------------------------------- */
#fix_gnav { background-color: #000; }

#btn_pc_tab_menu { transition: opacity 0.1s ease-out, transform 0.1s ease-out; margin-left: auto; width: 240px; }
@media (max-width: 1439px) { #btn_pc_tab_menu { width: 190px; } }
@media (max-width: 1439px) { #btn_pc_tab_menu { width: 160px; } }

#btn_pc_tab_menu.is-fix { position: fixed; top: 0; left: 0; right: 0; opacity: 1; transform: translateY(0); }

/* fix_gnav用 */
#fix_gnav.is-fix { position: fixed; top: 0; width: 100%; opacity: 1; transform: translateY(0); transition: opacity 0.1s ease-out, transform 0.1s ease-out; }

#fix_gnav.is-hide { opacity: 0; transform: translateY(-100%); }

/*ヘッダー*/
#header .con_logo .logo .premier { display: block; opacity: 1; }
@media only screen and (max-width: 767px) { #header .con_logo .logo { padding: 0.4em 40vw 0.4em 4% !important; } }
#header .premier { opacity: 1; }

/*フッダー*/
.opacity { opacity: 1; }

html:not(.en):not(.ct):not(.cs):not(.ko) #sp_menu > nav > div { width: 33.333333%; height: 100%; }

html:not(.en):not(.ct):not(.cs):not(.ko) #sp_menu > nav > { overflow-x: hidden; }

.flow-title { /*font-size: 2rem;*/ font-weight: 700; color: #333333; text-align: center; margin-bottom: 60px; }

.flow-steps { position: relative; }

.flow-step { position: relative; display: flex; gap: 30px; margin-bottom: 40px; padding: 30px; border: 1px solid #000; }
.flow-step:last-child .step-arrow { display: none; }

.flow-step-pln { position: relative; display: block; margin-bottom: 40px; padding: 30px; border: 1px solid #000; }
@media (max-width: 768px) { .flow-step-pln { padding: 15px; } }
.flow-step-pln .flow-step-text { display: flex; gap: 30px; /*margin-bottom: 40px;*/ }
@media (max-width: 768px) { .flow-step-pln .flow-step-text { gap: 15px; } }
.flow-step-pln #line { margin-top: 40px; }

.step-number { flex-shrink: 0; display: flex; align-items: center; justify-content: center; color: #bda366; font-size: 1.6em; max-width: 125px; width: 100%; }
@media screen and (min-width: 769px) { .step-number { align-items: flex-start; } }

.step-content { flex: 1; padding-top: 5px; }

.step-title { font-size: 1.8rem; font-weight: 700; color: #333333; margin-bottom: 15px; line-height: 1.5; }

.step-text { font-size: 1.5rem; color: #666666; line-height: 1.7; margin: 0; }

.step-notes { margin-top: 15px; padding: 15px; background: #f9f9f9; border-radius: 4px; }

.note-item { /*font-size: 0.9rem;*/ color: #666666; line-height: 1.6; /*margin: 6px 0;*/ }
.note-item:last-child { margin-bottom: 0; }

.step-arrow { position: absolute; bottom: -28px; left: 50%; transform: translateX(-50%); width: 0; height: 0; border-left: 10px solid transparent; border-right: 10px solid transparent; border-top: 15px solid #000; }

@media (max-width: 768px) { .flow-title { /*font-size: 1.5rem;*/ margin-bottom: 40px; }
  .flow-step { flex-direction: column; gap: 20px; padding: 20px; margin-bottom: 35px; align-items: center; text-align: center; }
  .flow-step-text { flex-direction: column; gap: 15px; /*padding: 20px;*/ margin-bottom: 30px; align-items: center; text-align: center; font-size: 1.5rem; }
  .step-number { width: 50px; height: 50px; }
  .step-number .number { /*font-size: 1.3rem;*/ }
  .step-content { padding-top: 0; }
  .step-title { /*font-size: 1.1rem;*/ margin-bottom: 12px; }
  .step-text { /* font-size: 0.95rem;*/ text-align: left; }
  .step-notes { margin-top: 12px; padding: 12px; text-align: left; }
  .note-item { /*font-size: 0.85rem;*/ }
  .step-arrow { bottom: -18px; border-left: 8px solid transparent; border-right: 8px solid transparent; border-top: 12px solid #000; } }
.inview.fadeup { opacity: 0; transition-duration: 1s; transform: translateY(20px); }

.inview.fadeup.active { opacity: 1; transform: translateY(0px); }

#intoro p { line-height: 2.5; }

.page-menu p { line-height: 2.5; }

.gold-t { color: #bda366; font-size: 1.7rem; }

.btn p { line-height: 2.5; }

.gaibu { font-size: 12px; }
@media screen and (max-width: 1279px) { .gaibu { font-size: 10px; } }

/*# sourceMappingURL=index.css.map */
