/*reset.css*/
body, html{ margin:0; padding:0; width:100%; height:100%; }
body, html, input, textarea, select, button, table{ 
	font-family: 'TNR', 'noto', sans-serif;
	-webkit-font-smoothing:antialiased
 }
form, fieldset, h1, h2, h3, h4, h5, h6, p{ margin:0; padding:0; }
form, fieldset, button{ border:none; }
ol, ul, li{ list-style:none; padding:0; margin:0; }
img{ max-width:100%; }
a{ color:inherit; }
a, a:hover{ text-decoration:none; }

.d-lg-none{ display:none; }
.d-lg-block{ display:block; }

/*header*/
header{ position:fixed; z-index:99999999; top:0; left:0; width:100%; transition:all .5s; border-bottom:1px solid rgba(255,255,255,.4); background-color: #fff;}
header, header *{ box-sizing:border-box; }
.hd_con{ width:100%; margin:0 auto; display:flex; justify-content:space-between; align-items:center; padding:0 2rem; position: relative;}

.hd_tp{ padding:7px 0; }
.hd_zm > a:not(:last-child){ margin-right:10px; }

.lg{ position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%);}
.lg > a{ display:block; font-size:20px; line-height:1em; white-space:nowrap;}
.lg > a > img{ display:block; width:50px; transition: .5s;}
.mn{ display:flex; align-items:center; }

.hd-wrap{ display:flex; align-items:center; }

/*gnb*/
.hd_bt{ position:relative; z-index:5; }
#gnb{ position:relative; z-index:5;}
#gnb:after{ content:''; position:absolute; z-index:-1; top:100%; left:-5000px; right:-5000px; height:0; background-color:#fff; transition:0.4s height; border-bottom:1px solid #e2e2e2;}
#gnb.on{ border-bottom:1px solid #ddd;}
#gnb.on:after{ height:324px; border-top:1px solid #ddd;}
#gnb > ul{ display:flex; flex-flow:row wrap; padding-left: 0; margin-bottom: 0;}
#gnb > ul > li{ position:relative; z-index:1; }
#gnb > ul > li > a{ display:block; padding:30px 25px; font-size:16px; font-weight:500; transition: all .5s; color: #1d1d1d;}
#gnb > ul > li:first-child > a{padding-left: 0;}
#gnb > ul > li > ul{ position:absolute; z-index:1; top:100%; left:50%; transform: translateX(-50%); display:none; width: 100%; box-sizing: border-box; background-color: #fff; padding:25px 5px 25px; text-align: center; border-radius: 16px; border: 1px solid #ddd;}
#gnb > ul > li > ul > li{ position:relative; z-index:1; text-align: center;}
#gnb > ul > li > ul > li > a{ display:block; padding:8px 0; font-size:16px; white-space:nowrap; position: relative;}
#gnb > ul > li > ul > li > a::before{content: ""; transition: .3s; width: 0; height: 1px; background-color: #fff; position: absolute; left: 0; bottom: 0;}
#gnb > ul > li > ul > li:hover > a::before{width: 100%;}
#gnb > ul > li > ul > li > ul{ position:absolute; z-index:1; top:0; left:100%; display:none; min-width:120px; box-shadow:2px 2px 4px 0 rgba(0,0,0,.3); }
#gnb > ul > li > ul > li > ul > li > a{ display:block; padding:7px 15px; font-size:15px; }

/*mem*/
.mem_btn > li{ position:relative; z-index:1; }
.mem_btn > li > a{ display:block; padding:30px 0; font-size:28px; font-weight:400; color:#fff; transition:all .5s; }
.mem_btn > li > ul{ position:absolute; z-index:1; padding:5px 0; top:100%; right:0; display:none; min-width:140px; background-color:#fff; }
.mem_btn > li > ul > li{ text-align:right; }
.mem_btn > li > ul > li > a{ display:block; padding:5px 15px; font-size:14px; white-space:nowrap; }

/*mo_btn*/
.mo_btn{ position:relative; z-index:10; padding:30px 12px; display:none; cursor:pointer; }

.mo_btn.mo_mem > .mo_ic{ position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); font-size:30px; }
.mo_btn.mo_mem > .mo_ic > i{ display:block; line-height:1em; }

.mo_btn.mo_mn > .mo_ic{ position:absolute; z-index:1; top:50%; left:50%; width:24px; height:2px; margin:-1px 0 0 -12px; border-radius:0; transition:0.3s height 0s,0.3s margin 0s,0s border-radius 0.3s,0s border 0.3s; }
.mo_btn.mo_mn > .mo_ic:before{ content:''; position:absolute; z-index:1; top:0; left:0; width:24px; height:2px; margin:-8px 0 0 -1px; opacity:1; transition:0.3s margin 0.3s,0s opacity 0.3s; }
.mo_btn.mo_mn > .mo_ic:after{ content:''; position:absolute; z-index:1; top:0; left:0; width:24px; height:2px; margin:6px 0 0 -1px; opacity:1; transition:0.3s margin 0.3s,0s opacity 0.3s; text-align:center; }
.mo_btn.mo_mn > .mo_ic > span{ font-size:14px; opacity:0; }
.mo_btn.mo_mn.act > .mo_ic{ height:24px; margin:-12px 0 0 -12px; background-color:transparent; transition:0.3s height 0.3s,0.3s margin 0.3s,0s border 0.3s,0s border-radius 0.3s; text-align:center; line-height:27px; }
.mo_btn.mo_mn.act > .mo_ic:before{ opacity:0; margin:1px 0 0 -1px; transition:0.3s margin,0s opacity 0.3s; }
.mo_btn.mo_mn.act > .mo_ic:after{ opacity:0; margin:-1px 0 0 -1px; transition:0.3s margin,0s opacity 0.3s; }
.mo_btn.mo_mn.act > .mo_ic > span{ opacity:1; }

.mo_mem_mn{ position:absolute; z-index:1; top:100%; left:0; width:100%; display:none; box-shadow:inset 0px 12px 10px -10px rgba(0,0,0,.35), 0 5px 5px 0 rgba(0,0,0,.1); }
/*.mo_mem_mn > li{ border-top:1px solid rgba(200,200,200,.65); border-bottom:1px solid rgba(100,100,100,.85); }*/
.mo_mem_mn > li > a{ display:block; padding:7px 15px; font-size:15px; font-weight:300; }

.mo_mn_mn{ position:fixed; z-index:9; top:0; left:0; width:100%; display:none; box-shadow:0 5px 5px 0 rgba(0,0,0,.1); padding:60px 0; background-color:#fff; }
/*.mo_mn_mn > li{ border-top:1px solid rgba(200,200,200,.65); border-bottom:1px solid rgba(100,100,100,.85); }*/
.mo_mn_mn > li > a{ display:block; padding:15px 0; font-size:18px; font-weight:500; text-align:center; }
.mo_mn_mn > li > ul{ display:none; background-color:rgba(150,150,150,.2); padding: 1rem 0;}
.mo_mn_mn > li > ul > li > a{ display:block; padding:10px 25px; font-size:15px; font-weight:400; text-align:center; }

/* allmenu */
.allmenu-wrap{ display:flex; align-items:center; position:relative; }
.allmenu{ width:25px; height:25px; margin-left:1rem; position:relative; cursor:pointer; }
.allmenu > .bar{ display:block; width:60%; height:1px; background-color:#fff; position:absolute; top:50%; right:0; transform:translateY(-50%); z-index:2; border-radius:20px; transition:all .3s; }
.allmenu::before{ content:""; width:100%; height:2px; background-color:#fff; position:absolute; top:0; right:0; border-radius:20px; }
.allmenu::after{ content:""; width:100%; height:2px; background-color:#fff; position:absolute; bottom:0; right:0; border-radius:20px; }
.allmenu:hover > .bar{ width:100%; }

.fr-link{ margin-left:1.5rem; }
.fr-link > a{ display:block; color:#1d1d1d; border:1.5px solid #1d1d1d; padding:8px 15px; font-size:15px; transition:.5s; }
.fr-link > a:hover{ background-color:#fff; color:#171c61; }

.sns.language{ display:flex; align-items:center; position:relative; font-size: 16px; color: #1d1d1d; text-transform: uppercase; transition: .5s;}
.g-icon{margin-right: 5px; display: inline-block;}
.lang-wrap{position: relative;}
.lang-ul{ position:absolute; z-index:50; top:150%; left:0; padding:1rem; width: 100%; background-color:#fff; display:none; border: 1px solid #ddd; border-radius: 16px;}
.lang-ul > li{ margin-bottom:8px; text-align: center;}
.lang-ul > li:last-child{ margin-bottom:0; }
.lang-ul > li > a{ font-size: 15px; }
.lang-ul > li > a:hover{ color:#F7B52C; }
.lang-ul > li > a > img{ max-width:30px; }
.l-arr{ margin-left:10px; color:#1d1d1d; transition:all .5s; }

.special-menu{font-size: 16px; font-weight: 500; margin-right: 1.5rem; color: #1d1d1d; transition: .5s;}
.special-menu:hover{color: #171c61;}

/* .scr */
header.scr{ background-color:#fff; border-bottom:none; }
/* header.scr .hd_bt{ box-shadow:0 0 10px 0 rgba(0, 0, 0, 0.25); } */
header.scr #gnb > ul > li > a{ color:#1d1d1d; padding:30px 25px; }
header.scr #gnb > ul > li:first-child > a{padding-left: 0;}
header.scr .l-arr{ color:#1d1d1d; }
header.scr .mem_btn > li > a{ color:#1d1d1d; padding:20px 0; }
header.scr .allmenu > .bar, header.scr .allmenu::before, header.scr .allmenu::after{ background-color:#000; }
header.scr .sns.language{color: #1d1d1d;}
/* header.scr .lg > a > img{transform: scale(.9);} */
header.scr .special-menu{color: #1d1d1d;}
header.scr .special-menu:hover{color: #171c61;}
header.scr .fr-link > a{ border:1.5px solid #1d1d1d; color:#1d1d1d; }
header.scr .fr-link > a:hover{ border:1.5px solid #F7B52C; color:#fff; background-color:#F7B52C; }

/* on  */
header.on{ background-color:#fff; border-bottom: 1px solid #ddd;}
header.on #gnb > ul > li > a{ color:#1d1d1d; }
header.on #gnb > ul > li::after{ background-color:#1d1d1d; }
header.on .l-arr{ color:#1d1d1d; }
header.on .mem_btn > li > a{ color:#1d1d1d; }
header.on .allmenu > .bar, header.on .allmenu::before, header.on .allmenu::after{ background-color:#000; }
header.on .fr-link > a{ border:1.5px solid #1d1d1d; color:#1d1d1d; }
header.on .fr-link > a:hover{ border:1.5px solid #F7B52C; color:#fff; background-color:#F7B52C; }

/* fixed */
.fixed-wrap{ z-index:999; background-color:#1d1d1d; border-radius:10px; position:fixed; right:1.5rem; top:50%; transform:translateY(-50%); padding:10px .5rem; }
.fixed-wrap > a{ display:block; padding:20px 10px; text-align:center; color:#fff; position:relative; transition:all .3s; }
.fixed-wrap > a::after{ content:""; width:80%; height:1px; background-color:#f5f5f5; bottom:0; left:50%; transform:translateX(-50%); position:absolute; }
.fixed-wrap > a:last-child:after{ display:none; }
.fixed-wrap > a > h2{ font-size:30px; margin-bottom:.5rem; }
.fixed-wrap > a > h5{ font-size:14px; font-weight:400; }

@media(max-width:991px){ 
  .hd_con{ padding:0 15px; }
  .hd_tp{ display:none; }
  .lg > a{ padding:10px 0; }
  .lg > a > img{ max-width:200px; max-height:50px; }
  .mn{ display:none; }
  .mem_btn > li > a{ padding:10px 0; }

  .mo_btn{ display:block; }

  .d-none{ display:none; }
  .d-block{ display:block; }
  .mo_btn{ display:block; }
}


/*wrapper*/
.article_mover{ position:absolute; z-index:-1; bottom:100%; }


/*footer*/
footer{ padding:60px 0; background-color: #222;}
.ft_con{ width:100%; max-width: 1460px; margin:0 auto; padding:0 2rem; }
.ft_pw{ margin:0 -15px; display: flex; flex-direction: column;}
.ft_pt{color: #fff;}
.ft_pt:nth-child(1){ width:20%; }
.ft_pt:nth-child(2){ width:50%; }
.ft_pt:nth-child(3){ width:30%; }

.ft_lg{ display:inline-block; }
.ft_lg{ font-size:20px; font-weight:700; margin-bottom: 1.5rem;}
.ft_lg > img{ display:block; width:200px; }
.ft_txt{ font-size:14px; color: #666; font-weight:400; word-break:keep-all; margin-bottom:1rem; line-height: 1.5;}
.ft_cp{ font-size:13px; color: #666; font-weight:400; }

#fnb > ul{ overflow:hidden; text-align:left; margin-bottom:2rem; }
#fnb > ul > li{ display:inline-block; margin-left:20px; padding:2px; }
#fnb > ul > li:first-child{ margin-left:0; }
#fnb > ul > li > a{ display:block; font-size:16px; font-weight:400; color: #999; transition: .2s;}
#fnb > ul > li > a:hover{color: #fff;}

.ft_sns{ overflow:hidden; text-align:left; }
.ft_sns > li{ display:inline-block; margin-right:10px; color: rgba(255,255,255,.4);}
.ft_sns > li:hover{color: rgba(255,255,255,1);}
.ft_sns > li > a{ font-size:30px; transition:.2s; }
.ft_sns_tit{ font-size:16px; color:#fff; margin-bottom:1rem; }


/* mediaquery */

@media(min-width:992px){ 
  .d-lg-none{ display:none; }
  .d-lg-block{ display:block; }

  .mo-fixed{ display:none; }

  .mo-lang{ display:none; }
  .ft_txt{ display:block; }
  .ft_txt_m{ display:none; }

  .booking{ display:flex; justify-content:center; font-size:14px; opacity:0; transition:.8s; flex-direction:column; align-items:center; width:100px; height:100px; border-radius:50%; box-shadow:4px 4px 18px rgba(0, 0, 0, 0.17); position:fixed; bottom:0; right:2rem; background-color:#f7b52c; color:#fff; text-align:center; z-index:99999; }
  .booking > span{ font-size:28px; margin-bottom:3px; }
  .booking.visible{ opacity:1; bottom:2rem; }
  .booking:hover{ color:#1d1d1d; }
}
@media(max-width:1680px){ 
  .ft_pt:nth-child(2){ width:60%; }
  .ft_pt:nth-child(3){ width:20%; }
  #gnb > ul > li > a{padding: 50px 10px;}
  header.scr #gnb > ul > li > a{ padding:30px 10px; }
}
@media(max-width:991px){ 
  .ft_txt{ display:none; }
  .ft_txt_m{ display:block; }
  .fixed-wrap{ display:none; }
  .allmenu-wrap{ display:none; }
  .d-none{ display:none; }
  .d-block{ display:block; }

  .mo-fixed{background-color:#f7b52c;  width:100%; position:fixed; bottom:0; left:0; z-index:999; display:flex; justify-content:space-between; transition:.5s; }
  .mo-fixed > a{ padding:1.2rem 0; text-align:center; color:#1d1d1d; font-size:16px; font-weight:500; display:block; flex:1 1 auto; }
  .mo-fixed > a > span{ margin-right:5px; }

  .mo-lang{ display:block; position:absolute; top:50%; left: 15px; transform:translateY(-50%); }
  .mo-lang .g-icon{margin-right: 0;}
  .mo-lang .lang-ul{min-width: 100px; top: 100%;}
  .mo-lang .sns.language{line-height: 1;}

  .booking{ display:none; }

  .ft_lg{margin-bottom: 0;}

  .special-menu{color: #000; margin-right: 0;}
}
@media(max-width:850px){ 
  footer{ padding:40px 15px 80px; }
  .ft_tp{ margin-bottom:20px; }
  .ft_pt{ width:100%; text-align:center; margin-bottom:1rem; }
  .ft_pt:last-child{ margin-bottom:0; }
  .ft_pt.lf{ margin-bottom:20px; }
  
  #fnb > ul{ text-align:center; margin-bottom:1.5rem; }
  #fnb > ul > li{ padding:10px; margin-left:0; }
  #fnb > ul > li > a{ font-size:14px; }

  .ft_txt_m{ font-size:12px; margin-bottom:1rem; color:#a6a6a6; }
  .ft_cp{ font-size:12px; }
  
  .ft_sns{ text-align:center; }
  .ft_sns > li{ padding:0 3px; margin-right:0; }
  .ft_sns > li > a{ width:30px; padding:6px; }

  .ft_con{ padding:0; }

  .main-footer{ padding:0 15px; bottom:5rem; }

  .ft_pw{ flex-direction:column; }
  .ft_pt:nth-child(1){ width:100%; }
  .ft_pt:nth-child(2){ width:100%; }
  .ft_pt:nth-child(3){ width:100%; }
  .ft_sns_tit{ margin-bottom:.5rem; }
}