@charset "UTF-8";
/* Scss Document */
/*----------------------------------------------------
	楽天パーツ
----------------------------------------------------*/
@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@400;500&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Josefin+Sans:wght@300;600&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif:wght@300;600&display=swap");
.rt-header { z-index: 0; }

#htlContents { position: relative; max-width: 2000px; margin-left: auto; margin-right: auto; }
#htlContents.single-column { width: 100% !important; }
#htlContents .hometown-tax__container { margin: 0px auto !important; min-width: 1190px !important; width: 1190px !important; float: none !important; display: block !important; }
#htlContents ._attention__outermost-wrapper_grgv0_1 { max-width: 1190px; min-width: 1190px; margin: 0px auto !important; }
#htlContents #htlBrdCrmbs { margin: 0 auto; max-width: 1190px; width: calc(100% - 30px); }
#htlContents #htlHeader { margin: 0 auto; max-width: 1190px; width: calc(100% - 30px); }

#htlMainContent { width: 100% !important; float: none; margin-left: auto; margin-right: auto; }
#htlMainContent > div:first-child { margin: 0 auto; max-width: 1190px; width: calc(100% - 30px); }

div#RthCustomizeW { clear: both; width: 100%; margin: 0 auto 10px auto; padding: 0; }

#widewrapper { width: 100%; }

/*左カラム*/
#htlSide-A { width: 100%; max-width: 1650px; min-width: 1190px; margin: 0 auto; float: none; display: block; position: relative; z-index: 5; }

#htlRmSrch { margin-top: 0px; position: absolute; left: 20px; z-index: 1000; top: 980px; }

#upfrntPlans { position: absolute; left: 20px; top: 1835px; }

#htlSide-A #latest_cstm_review { position: absolute; left: 20px; top: 1650px !important; }

#htlSide-A .module-history-domsearch { position: absolute; left: 20px; text-align: left; display: none; }

/*---- 公式設定より ここから ----*/
.comp_con_bw, .comp_bredlist, #footer .con_footer_rsrv .inner { width: 90%; margin: auto; }

.comp_con_bw, .comp_bredlist { max-width: 1000px; }

.comp_con_bw_m { width: 90%; max-width: 1200px; margin: auto; 　margin-top: 84px; }

.comp_con_bw { margin: 0 auto; margin-top: 84px; }

.comp_arrow { position: relative; padding-right: 20px; }
.comp_arrow:before { content: ""; display: block; position: absolute; z-index: 0; width: 10px; height: 1px; right: 0; top: 50%; background-color: #000; transform: translate(0, -50%); }
.comp_arrow:after { content: ""; position: absolute; display: block; z-index: 0; right: 0; top: 50%; width: 4px; height: 4px; border-top: solid 1px #000; border-right: solid 1px #000; transform: translate(0, -50%) rotate(45deg); }
.comp_arrow.white:before { background-color: #fff; }
.comp_arrow.white:after { border-top: solid 1px #fff; border-right: solid 1px #fff; }
.comp_arrow:hover:before, .comp_arrow:hover:after { animation-fill-mode: forwards; animation: arrow 0.2s ease-out; }

.comp_btn_ghost { border: 1px solid #292929; color: #292929; background-color: #fff; box-shadow: 0 0 #292929; transition: box-shadow 0.2s ease-out; }
.comp_btn_ghost:hover { box-shadow: 4px 4px #292929; }
.comp_btn_ghost.white { border: 1px solid #fff; color: #fff; background-color: #292929; box-shadow: 0 0 #fff; }
.comp_btn_ghost.white:hover { box-shadow: 4px 4px #fff; }

.comp_btn_member { border: 1px solid #292929; background-color: #292929; box-shadow: 0 0 #bda366; transition: box-shadow 0.2s ease-out; color: #fff !important; cursor: pointer; }

.comp_btn_member:hover { box-shadow: 4px 4px #bda366; }

.comp_btn_member.gold { border: 1px solid #bda366; }

.comp_btn_member .comp_arrow:before { background-color: #fff; }

.comp_btn_member .comp_arrow:after { border-top: 1px solid #fff; border-right: 1px solid #fff; }

.comp_btn_member[target="_blank"] > span { position: relative; }
.comp_btn_member[target="_blank"] > span:before { content: ''; display: inline-block; vertical-align: middle; width: 16px; height: 16px; background: url("../images/blank_w.svg") no-repeat center center/contain; margin-right: .5em; }

.comp_btn_primary, .comp_btn_member, .comp_btn_ghost, .comp_btn_black { display: inline-block; padding: 20px 8px; text-align: center; }

.comp_btn_primary span, .comp_btn_member span, .comp_btn_ghost span, .comp_btn_black span { pointer-events: none; display: inline-block; vertical-align: middle; }

.comp_btn_primary em, .comp_btn_member em, .comp_btn_ghost em, .comp_btn_black em { display: inline-block; padding: 0 8px; }

.comp_btn_primary:hover .comp_arrow:before, .comp_btn_member:hover .comp_arrow:before, .comp_btn_ghost:hover .comp_arrow:before, .comp_btn_black:hover .comp_arrow:before, .comp_btn_primary:hover .comp_arrow:after, .comp_btn_member:hover .comp_arrow:after, .comp_btn_ghost:hover .comp_arrow:after, .comp_btn_black:hover .comp_arrow:after { animation-fill-mode: forwards; animation: arrow 0.2s ease-out; }

.comp_btn_primary, .comp_btn_member, .comp_btn_ghost, .comp_btn_black { min-width: 320px; }

.comp_st { font-weight: normal; }
.comp_st span { display: block; padding-left: 0.4em; }
.comp_st span.l { position: relative; line-height: 1.4; font-size: 25px; }
.comp_st span.l.line:before { content: ""; position: absolute; top: -10px; left: 0; width: 18px; height: 2px; background-color: #bda366; transform: rotate(-45deg); }
.comp_st span.l.line_black:before { content: ""; position: absolute; top: -10px; left: 0; width: 18px; height: 2px; background-color: #000; transform: rotate(-45deg); }
.comp_st span.l.line_white:before { content: ""; position: absolute; top: -10px; left: 0; width: 18px; height: 2px; background-color: #fff; transform: rotate(-45deg); }
.comp_st span.l.white { color: #fff; }
.comp_st span.l.gold { color: #bda366; }
.comp_st span.m { font-size: 21px; line-height: 1.4; }
.comp_st span.m.gold { color: #bda366; }
.comp_st span.ss.gold { color: #bda366; }
.comp_st span.s { position: relative; color: #bda366; font-size: 18px; margin-top: 2px; }
.comp_st span.s.line_black:before { content: ""; position: absolute; top: -10px; left: 0; width: 20px; height: 2px; background-color: #000; transform: rotate(-45deg); }
.comp_st span.s.black { color: #000; }
.comp_st span.s.white { color: #fff; }

#footer .con_footer_rsrv { background-color: #292929; color: #fff; padding: 6.5rem 0; }
#footer .con_footer_rsrv .inner .box_btn_plan { width: 730px; margin-top: 3.2rem; margin-left: auto; margin-right: auto; }
#footer .con_footer_rsrv a { color: #fff; display: block; cursor: pointer; }
#footer .con_footer_rsrv svg { fill: #fff; }
#footer .con_footer_rsrv .inner { text-align: center; }
#footer .con_footer_rsrv .inner .tit { font-weight: normal; text-align: center; }
#footer .con_footer_rsrv .inner .tit span { display: block; }
#footer .con_footer_rsrv .inner .tit svg { width: 42px; height: 30px; }
#footer .con_footer_rsrv .inner .box_btn { margin-top: 3.2rem; display: flex; justify-content: center; }
#footer .con_footer_rsrv .inner .box_btn li { text-align: center; width: 100%; max-width: 720px; }
#footer .con_footer_rsrv .inner .box_btn li p:nth-of-type(2) { margin-top: 1.2rem; }
#footer .con_footer_rsrv .inner .box_btn li p a span { pointer-events: none; }
#footer .con_footer_rsrv .inner .box_btn li p a:hover .comp_arrow:before, #footer .con_footer_rsrv .inner .box_btn li p a:hover .comp_arrow:after { animation-fill-mode: forwards; animation: arrow 0.2s ease-out; }
#footer .con_dacorp_footer { padding: 1.5rem 0; font-family: "MS Ｐゴシック", "MS PGothic", sans-serif; text-align: right; width: 1190px; margin: auto; }

@keyframes fade { 0% { opacity: 0; }
  100% { opacity: 1; } }
@keyframes arrow { 0% { right: 0; }
  20% { right: -8px; }
  100% { right: 0; } }
/*---- 公式設定より ここまで ----*/
/*colors*/
html { width: 100% !important; min-height: 100% !important; margin: 0px; padding: 0px; }

body { width: 100% !important; min-height: 100% !important; margin: 0px 0px 0px 0px; padding: 0px 0px 0px 0px; min-width: 1220px !important; overflow-x: clip; }

.all { font-family: "Noto Sans JP", "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "游ゴシック体", "Yu Gothic", YuGothic, "MS Ｐゴシック", "MS PGothic", "Lucida Sans Unicode", "Lucida Grande", Verdana, Arial, sans-serif; color: #000; font-size: 16px; line-height: 1.6; text-size-adjust: 100%; -webkit-text-size-adjust: 100%; overflow-x: hidden; }
.all a, .all a:link, .all a:hover, .all a:visited, .all a:active { color: #000; text-decoration: none; }
.all img { max-width: 100%; }

.column { width: 1190px !important; margin-left: auto; margin-right: auto; padding-left: 255px !important; padding-right: 10px !important; }

.wrp { width: 1190px; margin-left: auto; margin-right: auto; }

#original-contents { padding-bottom: 8.4rem; }

/*テキスト*/
p + p { margin-top: 1em; }

/*余白*/
.com-mt-01 { margin-top: 10.5rem; }
@media (min-width: 768px) and (max-width: 1279px) { .com-mt-01 { margin-top: 8.4rem; } }
@media (max-width: 767px) { .com-mt-01 { margin-top: 5.25rem; } }

.com-mt-02 { margin-top: 5.25rem; }
@media (min-width: 768px) and (max-width: 1279px) { .com-mt-02 { margin-top: 4.2rem; } }
@media (max-width: 767px) { .com-mt-02 { margin-top: 2.625rem; } }

.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; }

/*ヘッダー*/
#header { width: 1190px; margin: auto; padding: 30px 20px; background-color: #FFF; }

/*タイトル*/
#tit { padding-top: 30px; padding-bottom: 50px; text-align: center; line-height: 1; }
#tit h2 { font-size: 60px; }
#tit h3 { margin-top: 30px; font-size: 26px; }

/*メインビジュアル*/
#mv { width: 1190px; margin-left: auto; margin-right: auto; }
#mv #mv_bg { width: 2000px; margin-left: -405px; }
#mv iframe { width: 2000px; height: 840px; }
#mv img { width: 2000px; height: 800px; }

/*リード*/
#lead { margin-top: 80px; padding-left: 20px; padding-right: 20px; }

.icon_text { margin-top: 145px; }
.icon_text .icon_img { text-align: center; margin-bottom: 35px; }
.icon_text h2 span { display: block; text-align: center; }
.icon_text h2 span.jp { font-size: 32px; font-weight: bold; line-height: 1.4; margin-bottom: 5px; }
.icon_text h2 span.en { color: #bda366; }

/*content_movie*/
.content_movie { margin-top: 60px; }
.content_movie .movie_right { position: relative; }
.content_movie .movie_right:after { content: ""; display: block; width: 100%; height: 300px; background-color: #bda366; position: absolute; bottom: -60px; left: 50%; transform: translateX(-50%); -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); z-index: -1; }
.content_movie .movie_right .comp_con_bw_m { display: flex; padding-left: 20px; padding-right: 20px; }
.content_movie .movie_right .comp_con_bw_m .text { margin-top: 75px; flex: 1; }
.content_movie .movie_right .comp_con_bw_m .movie { margin-left: 60px; }
.content_movie .movie_left .comp_con_bw_m { display: flex; align-items: flex-start; margin-top: -70px; padding-left: 20px; padding-right: 20px; }
.content_movie .movie_left .comp_con_bw_m .movie { margin-right: 60px; }
.content_movie .movie_left .comp_con_bw_m .text { margin-top: 220px; flex: 1; }
.content_movie .movie_left + .movie_right { margin-top: 50px; }

.content_large_img { margin-top: 105px; }
.content_large_img .text { padding-left: 20px; padding-right: 20px; }
.content_large_img iframe { margin-top: 40px; width: 1190px; height: 500px; }
.content_large_img img { margin-top: 40px; }

/*content_img*/
.content_img { margin-top: 70px; padding-left: 20px; padding-right: 20px; }
.content_img .img_left { display: flex; align-items: center; }
.content_img .img_left .img { margin-right: 60px; }
.content_img .img_left .text { flex: 1; }
.content_img .img_right { display: flex; align-items: center; }
.content_img .img_right .text { flex: 1; }
.content_img .img_right .img { margin-left: 60px; }
.content_img .img_left + .img_right, .content_img .img_right + .img_left { margin-top: 60px; }

.menu-section { position: relative; }
.menu-section::before { content: ""; display: block; width: 100%; height: 300px; background-color: #9bae20; position: absolute; bottom: -60px; left: 50%; top: 25%; transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); z-index: -1; }
.menu-section::after { content: ""; display: block; width: 100%; height: 300px; background-color: #9bae20; position: absolute; bottom: -60px; left: 50%; top: 75%; transform: translateX(-50%); -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); z-index: -1; }

/*gallery*/
#gallery { margin-top: 60px; }
#gallery .flex { display: flex; flex-wrap: wrap; }
#gallery .flex .box { width: calc(25% - 25px); position: relative; text-align: center; margin-right: 20px; margin-bottom: 20px; }
#gallery .flex .box:first-child, #gallery .flex .box:nth-child(5n) { margin-left: 20px; }
#gallery .flex .box:nth-child(4n+1):nth-last-child(-n+4), #gallery .flex .box:nth-child(4n+1):nth-last-child(-n+4) ~ div { margin-bottom: 0; }
#gallery .flex .box.center { display: flex; justify-content: flex-start; align-items: center; text-align: left; }
#gallery .flex .box.center h3, #gallery .flex .box.center p { width: 90%; margin: 0 auto; }
#gallery .flex .box.center h3 { font-size: 28px; font-weight: bold; }

.information { margin-top: 180px; padding-left: 20px; padding-right: 20px; }
.information dl { border-top: 3px solid #bda366; max-width: 1200px; display: flex; flex-wrap: wrap; }
.information dl dt { padding: 2.5rem 0; flex-basis: 160px; max-width: 160px; border-bottom: 1px solid #cbcbcb; }
.information dl dd { padding: 2.5rem 3% 2.5rem 0; flex-basis: calc(100% - 160px); max-width: calc(100% - 160px); border-bottom: 1px solid #cbcbcb; }
.information .chu { margin-top: 30px; }

/*インスタ*/
#inst { padding-top: 100px; }
#inst iframe { width: 2000px; height: 370px; margin-left: -405px; }

#instafeed .slick-slide { height: 370px; }
#instafeed .insta-item { width: 370px; margin-left: 50px; position: relative; overflow: hidden; /*&:after{
	@include content;
	width: 38px;
	height: 38px;
	background: url("../images/index/insta_feed_icon.png") no-repeat;
	position: absolute;
	bottom: 20px;
	right: 20px;
	//opacity: 0;
	transition: .5s;
	}*/ /*&:hover{
	&:after{	
		opacity: 1;
	}		
}*/ }
#instafeed .insta-item img { position: absolute; top: 0; bottom: 0; left: 0; right: 0; width: 100%; height: 100%; object-fit: cover; }
#instafeed .insta-item p { position: absolute; top: 0; bottom: 0; left: 0; right: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.5); color: #FFF; opacity: 0; transition: .5s; padding: 30px; display: flex; flex-direction: column; justify-content: center; }
#instafeed .insta-item p span { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 8; overflow: hidden; }
#instafeed .insta-item:hover p { opacity: 1; }

/*パンくずリスト*/
#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; }

/*ランダムイメージ*/
#rdm_image { display: flex; }
#rdm_image .col-01 { width: 41.6666666667%; }
#rdm_image .col-02 { width: 23.9166666667%; margin-left: 0.8333333333%; }
#rdm_image .col-03 { width: 32.75%; margin-left: 0.8333333333%; }
#rdm_image .rdm { position: relative; }
#rdm_image .rdm:before { content: ''; display: block; }
#rdm_image .rdm.rdm1:before { padding-top: 100%; }
#rdm_image .rdm.rdm2:before { padding-top: 100%; }
#rdm_image .rdm.rdm3 { margin-top: 3.4843205575%; }
#rdm_image .rdm.rdm3:before { padding-top: 71.0801393728%; }
#rdm_image .rdm.rdm4:before { padding-top: 47.8371501272%; }
#rdm_image .rdm.rdm5 { margin-top: 2.5445292621%; }
#rdm_image .rdm.rdm5:before { padding-top: 77.6081424936%; }
#rdm_image .rdm img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; font-family: "object-fit: cover;"; }

/*インスタ（グループ全体）*/
#instagram { margin-top: 2em; }
#instagram iframe { width: 1190px; height: 499px; }

.insta-preload { display: none; }

#random_insta { width: 1190px; display: flex; }
#random_insta .col-01 { width: 41.6666666667%; }
#random_insta .col-02 { width: 23.9166666667%; margin-left: 0.8333333333%; }
#random_insta .col-03 { width: 32.75%; margin-left: 0.8333333333%; }
#random_insta .rdm { position: relative; }
#random_insta .rdm:before { content: ''; display: block; }
#random_insta .rdm.rdm1:before { padding-top: 100%; }
#random_insta .rdm.rdm2:before { padding-top: 100%; }
#random_insta .rdm.rdm3 { margin-top: 3.4843205575%; }
#random_insta .rdm.rdm3:before { padding-top: 71.0801393728%; }
#random_insta .rdm.rdm4:before { padding-top: 47.8371501272%; }
#random_insta .rdm.rdm5 { margin-top: 2.5445292621%; }
#random_insta .rdm.rdm5:before { padding-top: 77.6081424936%; }
#random_insta .rdm .insta { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
#random_insta .rdm .insta .inner { display: flex; position: relative; width: 100%; height: 100%; }
#random_insta .rdm .insta .inner img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; font-family: "object-fit: cover;"; }
#random_insta .rdm .insta .inner p { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.3); padding: 10px; display: flex; align-items: center; justify-content: center; color: #FFF; opacity: 0; transition: .5s; }
#random_insta .rdm .insta .inner p span { display: block; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden; }
#random_insta .rdm .insta .inner:hover p { opacity: 1; }

.insta_link span { display: inline-block; vertical-align: middle; }
.insta_link .icon { margin-right: 1em; }

/*インスタ（キャンペーン）*/
#instagram-campaign-wrp { margin-top: 2em; }
#instagram-campaign-wrp iframe { width: 1190px; height: 810px; }

#instagram-campaign { width: 1190px; }
#instagram-campaign .insta + .insta { margin-top: 2em; }
#instagram-campaign .insta .inner { display: flex; align-items: center; }
#instagram-campaign .insta figure { align-self: flex-start; flex-shrink: 0; flex-grow: 0; width: 15%; position: relative; }
#instagram-campaign .insta figure:before { content: ''; display: block; padding-top: 100%; }
#instagram-campaign .insta figure img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; object-position: center center; }
#instagram-campaign .insta p { width: 100%; margin-left: 50px; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 6; overflow: hidden; }
@media screen and (max-width: 767px) { #instagram-campaign .insta p { margin-left: 20px; -webkit-line-clamp: 3; } }

/*見出し*/
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*/
.cont_lr { display: flex; align-items: center; margin-top: 50px; }
.cont_lr:first-of-type { margin-top: 0; }
.cont_lr > .img { flex-shrink: 0; flex-grow: 0; }
.cont_lr > .img { width: 480px; }
.cont_lr > .text { width: 100%; }
.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 p + p { margin-top: 1em; }
.cont_lr .text .btn { margin-top: 20px; }
.cont_lr .text .detail { margin-top: 30px; }
.cont_lr .text .detail:first-child { margin-top: 0; }
.cont_lr .img img { width: 100%; display: block; }
.cont_lr .img iframe { width: 100%; height: 397px; }
.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; } }

.cont_lr_slider { width: 480px; }
.cont_lr_slider img { width: 100%; }

.hotel_links li { position: relative; padding-left: 1em; }
.hotel_links li:before { content: ''; display: block; width: 5px; height: 5px; background-color: #000; border-radius: 50%; position: absolute; top: .7em; left: 0; }
.hotel_links li a:hover { text-decoration: underline; }

.map-wrapper { position: relative; height: 450px; margin-top: 2em; }
.map-wrapper iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

.map_hotel-list-container { overflow: hidden; margin: 0 .5em; }

.map_hotel-list { display: flex; flex-wrap: wrap; overflow: hidden; margin: -15px -15px; }
.map_hotel-list > li { width: 25%; padding: 15px 15px; }
.map_hotel-list > li .text { margin-top: 1em; }
.map_hotel-list > li .text p { font-size: 13px; }
.map_hotel-list > li .text .tit { font-weight: bold; }
.map_hotel-list > li .text .tit + p { margin-top: .6em; }

.campaign-wrapper { width: 100%; height: 550px; position: relative; }
.campaign-wrapper iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

#campaign-inner { background-color: #f5f5f5; padding: 20px 30px; height: 550px; }
#campaign-inner .btn { text-align: center; padding: 32px 0 65px; }
#campaign-inner section { border-top: 1px solid #bda366; padding: 65px 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; }

/*line*/
#line { border: 1px solid #bda366; padding: 40px; }
#line .flex { margin-top: 1rem; display: flex; align-items: center; justify-content: space-between; }
#line .flex figure { width: 35%; }
#line .flex .text { padding: 0 30px; }
#line .flex .qr { text-align: center; font-size: 90%; flex-shrink: 0; }
#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; }

/* ライブキッチン
-------------------------------------- */
#live-kit iframe { width: 2000px; height: 295px; margin-left: -405px; }

/* ライブキッチン動画
-------------------------------------- */
.v_wrap iframe { width: 1150px; height: 647px; display: block; margin: 0 auto; }

/* 共通
-------------------------------------- */
.panel .text { margin-top: 40px; padding-left: 20px; padding-right: 20px; }

/* 無限ループセクション
-------------------------------------- */
/* スライドの動き等速 */
.swiper { width: 100%; overflow: hidden; }

.swiper-wrapper { display: flex; /* スライドを横並びにする */ transition-timing-function: linear; /* なめらかに動かす */ align-items: center; }

.swiper-slide { display: flex; justify-content: center; /* 画像を中央揃え */ align-items: center; width: auto; }

/* 画像のサイズ調整 */
.swiper-slide img { max-width: 100%; /* 画像が親要素からはみ出さない */ height: auto; object-fit: contain; /* 縦横比を維持して中央に収める */ }

.loop-content { max-width: 2000px; margin-right: auto; margin-left: auto; }
.loop-content section + section { margin-top: 20px; }

.loop-text { padding-left: 20px; padding-right: 20px; margin-right: auto; margin-left: auto; margin-bottom: 50px; margin-top: 30px; }
@media screen and (max-width: 768px) { .loop-text { margin-bottom: 6.5104166667vw; } }

.menu-section { position: relative; }
@media screen and (min-width: 769px) { .menu-section::before { content: ""; display: block; width: 100%; height: 300px; background-color: #9bae20; position: absolute; bottom: -60px; left: 50%; top: 25%; transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); z-index: -1; }
  .menu-section::after { content: ""; display: block; width: 100%; height: 300px; background-color: #9bae20; position: absolute; bottom: -60px; left: 50%; top: 75%; transform: translateX(-50%); -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); z-index: -1; } }

.slide-img { position: relative; }
.slide-img p { position: absolute; padding: 10px; top: 10px; right: 0; background-color: #9bae20; color: #fff; }

@media screen and (min-width: 769px) { .center-items { align-items: center; }
  .center-items.img_left .text { margin-top: 0; } }

.mt60 { margin-top: 60px; }

.mt40 { margin-top: 60px; }

#gnav ul { display: flex; }
#gnav ul li a img { transition: .5s; }
#gnav ul li a:hover img { opacity: 0.6 !important; }

/*# sourceMappingURL=index.css.map */
