@charset "UTF-8";
/***** reset *****/
@font-face { font-family: 'YakuHanJP'; font-style: normal; font-weight: 100; src: url("../fonts/yakuhanjp/YakuHanJP-Thin.eot"); /* IE9 Compat Modes */ src: local("Noto Sans Japanese Light"), local("NotoSansJapanese-Light"), url("../fonts/yakuhanjp/YakuHanJP-Thin.eot?#iefix") format("embedded-opentype"), url("../fonts/yakuhanjp/YakuHanJP-Thin.woff2") format("woff2"), url("../fonts/yakuhanjp/YakuHanJP-Thin.woff") format("woff"); }

@font-face { font-family: 'YakuHanJP'; font-style: normal; font-weight: 300; src: url("../fonts/yakuhanjp/YakuHanJP-Light.eot"); /* IE9 Compat Modes */ src: local("Noto Sans Japanese Light"), local("NotoSansJapanese-Light"), url("../fonts/yakuhanjp/YakuHanJP-Light.eot?#iefix") format("embedded-opentype"), url("../fonts/yakuhanjp/YakuHanJP-Light.woff2") format("woff2"), url("../fonts/yakuhanjp/YakuHanJP-Light.woff") format("woff"); }

@font-face { font-family: 'YakuHanJP'; font-style: normal; font-weight: 350; src: url("../fonts/yakuhanjp/YakuHanJP-DemiLight.eot"); /* IE9 Compat Modes */ src: local("Noto Sans Japanese Light"), local("NotoSansJapanese-Light"), url("../fonts/yakuhanjp/YakuHanJP-DemiLight.eot?#iefix") format("embedded-opentype"), url("../fonts/yakuhanjp/YakuHanJP-DemiLight.woff2") format("woff2"), url("../fonts/yakuhanjp/YakuHanJP-DemiLight.woff") format("woff"); }

@font-face { font-family: 'YakuHanJP'; font-style: normal; font-weight: 400; src: url("../fonts/yakuhanjp/YakuHanJP-Regular.eot"); /* IE9 Compat Modes */ src: local("Noto Sans Japanese Light"), local("NotoSansJapanese-Light"), url("../fonts/yakuhanjp/YakuHanJP-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/yakuhanjp/YakuHanJP-Regular.woff2") format("woff2"), url("../fonts/yakuhanjp/YakuHanJP-Regular.woff") format("woff"); }

@font-face { font-family: 'YakuHanJP'; font-style: normal; font-weight: 500; src: url("../fonts/yakuhanjp/YakuHanJP-Medium.eot"); /* IE9 Compat Modes */ src: local("Noto Sans Japanese Light"), local("NotoSansJapanese-Light"), url("../fonts/yakuhanjp/YakuHanJP-Medium.eot?#iefix") format("embedded-opentype"), url("../fonts/yakuhanjp/YakuHanJP-Medium.woff2") format("woff2"), url("../fonts/yakuhanjp/YakuHanJP-Medium.woff") format("woff"); }

@font-face { font-family: 'YakuHanJP'; font-style: normal; font-weight: 700; src: url("../fonts/yakuhanjp/YakuHanJP-Bold.eot"); /* IE9 Compat Modes */ src: local("Noto Sans Japanese Light"), local("NotoSansJapanese-Light"), url("../fonts/yakuhanjp/YakuHanJP-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/yakuhanjp/YakuHanJP-Bold.woff2") format("woff2"), url("../fonts/yakuhanjp/YakuHanJP-Bold.woff") format("woff"); }

.com-upright { -webkit-text-orientation: upright; text-orientation: upright; }

.com-sideways { -webkit-text-orientation: sideways; text-orientation: sideways; }

.com-fix-copyright { height: 100%; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; margin-left: 5%; position: fixed; top: 0; }

.com-fix-copyright-copy { color: #CDBC96; -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; }

.com-fix-scroll { position: fixed; bottom: 80px; right: 5%; z-index: 300; }

.com-fix-scroll::after { display: block; content: ""; width: 1px; height: 80px; margin: 10px auto; background: #CDBC96; }

.com-fix-scroll-copy { color: #CDBC96; position: absolute; right: -10px; }

.com-fix-scroll-pagetop { top: -55px; }

.com-fix-scroll-pagetop:hover { cursor: pointer; }

.com-btn-wrap { max-width: 320px; }

.com-btn-01 { width: 100%; max-width: 100%; }

.com-btn-01 > a { display: block; padding: 20px; -webkit-box-shadow: 0 0 0 1px #CDBC96 inset; box-shadow: 0 0 0 1px #CDBC96 inset; border-radius: 50px; text-align: center; line-height: 1; font-size: 16px; letter-spacing: 0.08em; position: relative; text-decoration: none; overflow: hidden; color: #CDBC96; opacity: 1 !important; }

.com-btn-01 > a > span { position: relative; display: block; z-index: 2; color: #CDBC96; -webkit-transition: color 0.45s cubic-bezier(0.19, 1, 0.22, 1); transition: color 0.45s cubic-bezier(0.19, 1, 0.22, 1); }

.com-btn-01 > a::before, .com-btn-01 > a::after { content: ""; position: absolute; }

.com-btn-01 > a::before { content: ""; display: block; position: absolute; left: 0; top: 0; width: 100%; height: 100%; border-radius: 50px; background-color: #CDBC96; -webkit-transform: scaleY(0); transform: scaleY(0); -webkit-transform-origin: center top; transform-origin: center top; -webkit-transition: -webkit-transform 0.45s cubic-bezier(0.19, 1, 0.22, 1); transition: -webkit-transform 0.45s cubic-bezier(0.19, 1, 0.22, 1); transition: transform 0.45s cubic-bezier(0.19, 1, 0.22, 1); transition: transform 0.45s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 0.45s cubic-bezier(0.19, 1, 0.22, 1); }

.com-btn-01 > a::after { top: 50%; -webkit-transform: translateY(-50%) rotate(45deg); transform: translateY(-50%) rotate(45deg); right: 30px; border-right: 2px solid #CDBC96; border-top: 2px solid #CDBC96; width: 10px; height: 10px; }

.com-btn-01 > a:hover::before { left: 0; -webkit-transform: scaleY(1); transform: scaleY(1); -webkit-transform-origin: center bottom; transform-origin: center bottom; }

.com-btn-01 > a:hover::after { border-color: #fff; }

.com-btn-01 > a:hover > span { color: #fff; }

.com-btn-02 { width: 100%; max-width: 100%; margin: 0 auto; }

.com-btn-02 > a { display: block; padding: 20px; background-color: #CDBC96; border-radius: 50px; text-align: center; line-height: 1; font-size: 16px; letter-spacing: 0.08em; position: relative; text-decoration: none; overflow: hidden; color: #fff; }

.com-btn-02 > a > span { position: relative; display: block; z-index: 2; color: #fff; -webkit-transition: color 0.45s cubic-bezier(0.19, 1, 0.22, 1); transition: color 0.45s cubic-bezier(0.19, 1, 0.22, 1); }

.com-btn-02 > a::before, .com-btn-02 > a::after { content: ""; position: absolute; }

.com-btn-02 > a::before { content: ""; display: block; position: absolute; left: 0; top: 0; width: 100%; height: 100%; border-radius: 50px; background-color: #fff; -webkit-transform: scaleY(0); transform: scaleY(0); -webkit-transform-origin: center top; transform-origin: center top; -webkit-transition: -webkit-transform 0.45s cubic-bezier(0.19, 1, 0.22, 1); transition: -webkit-transform 0.45s cubic-bezier(0.19, 1, 0.22, 1); transition: transform 0.45s cubic-bezier(0.19, 1, 0.22, 1); transition: transform 0.45s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 0.45s cubic-bezier(0.19, 1, 0.22, 1); -webkit-box-shadow: 0 0 0 1px #CDBC96 inset; box-shadow: 0 0 0 1px #CDBC96 inset; }

.com-btn-02 > a::after { top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); right: 30px; background: url(../images/common/btn-02-icon.svg) no-repeat; width: 15px; height: 12px; }

.com-btn-02 > a:hover::before { left: 0; -webkit-transform: scaleY(1); transform: scaleY(1); -webkit-transform-origin: center bottom; transform-origin: center bottom; }

.com-btn-02 > a:hover::after { background-image: url(../images/common/btn-02-icon-on.svg); }

.com-btn-02 > a:hover span { color: #CDBC96; }

.com-btn-03 { width: 100%; max-width: 100%; margin: 0 auto; }

.com-btn-03 > a { display: block; padding: 20px 50px 20px 20px; background-color: #CDBC96; border-radius: 50px; text-align: center; line-height: 1; font-size: 16px; letter-spacing: 0.08em; position: relative; text-decoration: none; overflow: hidden; color: #fff; }

.com-btn-03 > a > span { position: relative; display: block; z-index: 2; color: #fff; -webkit-transition: color 0.45s cubic-bezier(0.19, 1, 0.22, 1); transition: color 0.45s cubic-bezier(0.19, 1, 0.22, 1); }

.com-btn-03 > a::before, .com-btn-03 > a::after { content: ""; position: absolute; }

.com-btn-03 > a::before { content: ""; display: block; position: absolute; left: 0; top: 0; width: 100%; height: 100%; border-radius: 50px; background-color: #fff; -webkit-transform: scaleY(0); transform: scaleY(0); -webkit-transform-origin: center top; transform-origin: center top; -webkit-transition: -webkit-transform 0.45s cubic-bezier(0.19, 1, 0.22, 1); transition: -webkit-transform 0.45s cubic-bezier(0.19, 1, 0.22, 1); transition: transform 0.45s cubic-bezier(0.19, 1, 0.22, 1); transition: transform 0.45s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 0.45s cubic-bezier(0.19, 1, 0.22, 1); -webkit-box-shadow: 0 0 0 1px #CDBC96 inset; box-shadow: 0 0 0 1px #CDBC96 inset; }

.com-btn-03 > a::after { top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); right: 30px; background: url(../images/common/btn-03-icon.svg) no-repeat; width: 15px; height: 12px; }

.com-btn-03 > a:hover::before { left: 0; -webkit-transform: scaleY(1); transform: scaleY(1); -webkit-transform-origin: center bottom; transform-origin: center bottom; }

.com-btn-03 > a:hover::after { background-image: url(../images/common/btn-03-icon-on.svg); }

.com-btn-03 > a:hover span { color: #CDBC96; }

.ft-s20 { font-size: calc(16px + 4px); line-height: 2; letter-spacing: 0.08em; }

.ft-s16 { font-size: calc(12px + 4px); line-height: 2; letter-spacing: 0.08em; }

.ft-s14 { font-size: calc(10px + 4px); line-height: 2; letter-spacing: 0.08em; }

.ft-s10 { font-size: calc(9px + 1px); line-height: 2; letter-spacing: 0.08em; }

.ft-s60-en { font-size: calc(50px + 10px); line-height: 1.3; letter-spacing: 0.08em; }

.ft-s48-en { font-size: calc(38px + 10px); line-height: 1.2; letter-spacing: 0.08em; }

.ft-s32-en { font-size: calc(22px + 10px); line-height: 1.5; letter-spacing: 0.08em; }

.ft-s28-en { font-size: calc(18px + 10px); line-height: 1.5; letter-spacing: 0.08em; }

.ft-s24-en { font-size: calc(23px + 1px); line-height: 2; letter-spacing: 0.08em; }

.ft-s14-en { font-size: calc(10px + 4px); line-height: 2; letter-spacing: 0.08em; }

.mg-t60 { margin-top: 60px; }

.mg-t50 { margin-top: 50px; }

.mg-l60 { margin-left: 60px; }

.mg-l50 { margin-left: 50px; }

.mg-b150 { margin-bottom: 150px; }

.mg-b100 { margin-bottom: 100px; }

.mg-b60 { margin-bottom: 60px; }

.mg-b50 { margin-bottom: 50px; }

.mg-b40 { margin-bottom: 40px; }

.mg-b30 { margin-bottom: 30px; }

.mg-b20 { margin-bottom: 20px; }

.mg-b15 { margin-bottom: 15px; }

.mg-b10 { margin-bottom: 10px; }

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { margin: 0; padding: 0; outline: 0; border: 0; vertical-align: baseline; word-break: break-word; }

dt { font-weight: inherit; }

html { font-size: 62.5%; }

body { max-width: 1680px; min-width: 320px; font-family: YuMincho,'Yu Mincho',serif; font-weight: 700; letter-spacing: .04em; color: #222222; margin: 0 auto; line-height: 1.75; list-style-type: none; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; -webkit-text-size-adjust: 100%; -webkit-box-sizing: border-box; box-sizing: border-box; }

main { overflow: hidden; position: relative; }

figure, p { margin: 0; padding: 0; border: 0; outline: 0; }

a { color: #000; }

a:hover { color: #000; text-decoration: none; opacity: .6; -webkit-transition: all 0.2s; transition: all 0.2s; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, img { display: block; }

ol, ul { list-style: none; }

/*画像を縦に並べた時に余白が出ないように*/
img { max-width: 100%; vertical-align: top; font-size: 0; line-height: 0; }

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 { line-height: 1.75; font-weight: 400; }

#pageLoading { position: relative; width: 100px; height: 100px; }

#pageLoading-wrap { width: 100%; height: 100%; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; position: fixed; top: 0; left: 0; z-index: 10000; background-color: white; }

.pageLoading-content { display: inline-block; position: relative; width: 100%; height: 100%; }

.pageLoading-item { position: absolute; border: 2px solid #000000; opacity: 1; border-radius: 50%; -webkit-animation: lds-ripple 1s cubic-bezier(0, 0.2, 0.8, 1) infinite; animation: lds-ripple 1s cubic-bezier(0, 0.2, 0.8, 1) infinite; }

.pageLoading-item:nth-child(2) { -webkit-animation-delay: -0.5s; animation-delay: -0.5s; }

@-webkit-keyframes lds-ripple { 0% { top: 50px;
    left: 50px;
    width: 0;
    height: 0;
    opacity: 1; }
  100% { top: 0px;
    left: 0px;
    width: 100px;
    height: 100px;
    opacity: 0; } }

@keyframes lds-ripple { 0% { top: 50px;
    left: 50px;
    width: 0;
    height: 0;
    opacity: 1; }
  100% { top: 0px;
    left: 0px;
    width: 100px;
    height: 100px;
    opacity: 0; } }

.hbg { -webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out; }

.hbg-line { width: 32px; height: 1px; background-color: #ffffff; display: block; margin: 10px auto; -webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out; }

.hbg:hover { cursor: pointer; }

.gn-hd-active .hbg { -webkit-animation: smallbig 0.6s forwards; animation: smallbig 0.6s forwards; }

.gn-hd-active .hbg .hbg-line:nth-child(1), .gn-hd-active .hbg .hbg-line:nth-child(2), .gn-hd-active .hbg .hbg-line:nth-child(3) { -webkit-transition-delay: 0.2s; transition-delay: 0.2s; }

.gn-hd-active .hbg .hbg-line:nth-child(2) { opacity: 0; }

.gn-hd-active .hbg .hbg-line:nth-child(1) { -webkit-transform: translateY(11px) rotate(45deg); transform: translateY(11px) rotate(45deg); }

.gn-hd-active .hbg .hbg-line:nth-child(3) { -webkit-transform: translateY(-11px) rotate(-45deg); transform: translateY(-11px) rotate(-45deg); }

@-webkit-keyframes smallbig { 0%, 100% { -webkit-transform: scale(1);
    transform: scale(1); }
  50% { -webkit-transform: scale(0);
    transform: scale(0); } }

@keyframes smallbig { 0%, 100% { -webkit-transform: scale(1);
    transform: scale(1); }
  50% { -webkit-transform: scale(0);
    transform: scale(0); } }

.gn-change .hbg-line { background-color: #CDBC96; }

.gn-change .gn-instagram-path { fill: #CDBC96; }

.gn-change .gn-logo-path path { fill: #CDBC96; }

.gn-change.gn-hd-active .hbg-line { background-color: #ffffff; }

.gn-change.gn-hd-active .gn-instagram-path { fill: #ffffff; }

.gn-change.gn-hd-active .gn-logo-path path { fill: #ffffff; }

.gn-hd-items { width: 100%; max-width: 1680px; display: -webkit-box; display: -ms-flexbox; display: flex; position: fixed; top: 60px; z-index: 490; margin: 0; }

.gn-hd-item:nth-of-type(1) { margin-left: 5%; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }

.gn-hd-item:nth-of-type(2) { position: absolute; left: 48%; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }

.gn-hd-icon { margin-right: 25px; }

.gn-menu-items { width: 100%; max-width: 1680px; display: none; margin: 0; background: #2F4253; position: fixed; top: 0; z-index: 480; -webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out; }

.gn-menu-items-hd-active .gn-menu-items-hd-items { width: calc(100% - 15px); }

.gn-hd-active .gn-menu-items { height: 100vh; display: -webkit-box; display: -ms-flexbox; display: flex; opacity: 0.9; -webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out; -webkit-animation: fadein .3s; animation: fadein .3s; }

.gn-menu-item { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; position: absolute; left: 48%; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); }

.gn-item-link { color: #ffffff; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out; }

.gn-item-link:hover { color: #CDBC96; opacity: 1; -webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out; }

.gn-item-link:hover .gn-item-link-shopping .icon-shopping-cart { fill: #CDBC96; -webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out; }

.gn-item-link:hover .gn-item-link-mail .icon-mail-path { fill: #CDBC96; -webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out; }

.gn-item-link-shopping { width: 20px; display: inline-block; margin-left: 5px; }

.gn-item-link-shopping > svg { width: 100%; }

.gn-item-link-shopping .icon-shopping-cart { -webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out; }

.gn-item-link-mail { width: 16px; display: inline-block; margin-left: 5px; }

.gn-item-link-mail > svg { width: 100%; display: block; }

.gn-item-link-mail .icon-mail-path { -webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out; }

@-webkit-keyframes fadein { 0% { opacity: 0; }
  100% { opacity: 0.9; } }

@keyframes fadein { 0% { opacity: 0; }
  100% { opacity: 0.9; } }

.header { width: 100%; position: fixed; top: 0; z-index: 500; }

.header.gn-hd-active { height: 100%; overflow-y: scroll; }

.footer { overflow: hidden; padding-top: 120px; padding-bottom: 120px; }

.footer-items { -webkit-box-pack: end; -ms-flex-pack: end; justify-content: flex-end; }

.footer-item { padding-left: 30px; }

.footer-copy { margin-bottom: 20px; }

.footer-copyright { display: none; }

html.is-fixed { height: 100%; padding-right: 15px; overflow: hidden; }

.ofi-cover img { -o-object-fit: cover; object-fit: cover; -o-object-position: center; object-position: center; font-family: 'object-fit: cover; object-position: center;'; }

.din-bold { font-family: din-2014, sans-serif; font-weight: 700; font-style: normal; }

.writing-mode { -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; }

@media only screen and (min-width: 1680px) { :root { --bs-conSize: 1340px; } }

@media only screen and (min-width: 1200px) and (max-width: 1680px) { :root { --bs-conSize: 1140px; } }

@media only screen and (min-width: 992px) and (max-width: 1199.98px) { :root { --bs-conSize: 960px; } }

@media only screen and (min-width: 768px) and (max-width: 991.98px) { :root { --bs-conSize: 720px; } }

@media only screen and (min-width: 576px) and (max-width: 767.98px) { :root { --bs-conSize: 540px; } }

@media only screen and (max-width: 575.99px) { :root { --bs-conSize: 100%; } }

@media screen and (max-width: 767.98px) { .com-col-container { padding-left: calc(15px + 24px); padding-right: calc(15px + 24px); } .com-container { padding-left: 24px; padding-right: 24px; } .com-fix-copyright { display: none; } .com-fix-scroll { right: 15px; } .com-btn-02 { max-width: 320px; } .com-btn-03 { max-width: 320px; } .mg-t60 { margin-top: 40px; }
  .mg-t50 { margin-top: 30px; } .mg-l60 { margin-left: 40px; }
  .mg-l50 { margin-left: 30px; } .mg-b150 { margin-bottom: 75px; }
  .mg-b100 { margin-bottom: 50px; }
  .mg-b60 { margin-bottom: 40px; }
  .mg-b50 { margin-bottom: 30px; }
  .mg-b40 { margin-bottom: 20px; }
  .mg-b30 { margin-bottom: 15px; }
  .mg-b20 { margin-bottom: 10px; }
  .mg-b15 { margin-bottom: 10px; }
  .mg-b10 { margin-bottom: 5px; } .hbg-line { width: 24px; margin: 7px auto; } .gn-hd-active .hbg .hbg-line:nth-child(1) { -webkit-transform: translateY(8px) rotate(45deg); transform: translateY(8px) rotate(45deg); } .gn-hd-active .hbg .hbg-line:nth-child(3) { -webkit-transform: translateY(-8px) rotate(-45deg); transform: translateY(-8px) rotate(-45deg); } .gn-hd-items { margin: 0; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; top: 30px; } .gn-hd-item:nth-of-type(1) { max-width: 100px; padding-left: 24px; padding-right: 0; margin-left: 0; } .gn-hd-item:nth-of-type(2) { max-width: 210px; padding-left: 0; padding-right: 24px; position: relative; left: 0; }
  .gn-hd-item:nth-of-type(2) svg { width: 100%; } .gn-menu-item { left: 0; padding-left: 24px; padding-right: 24px; } .footer { padding-top: 50px; padding-bottom: 50px; } .footer-item { padding-left: calc(15px + 24px); } .footer-copyright { display: block; } }

@media screen and (min-width: 768px) { .com-btn-01 { max-width: 320px; } }

@media only screen and (min-width: 768px) and (max-width: 1199.98px) { .ft-s20 { font-size: calc(4 * ((100vw - 768px) / 431) + 16px); }
  .ft-s16 { font-size: calc(4 * ((100vw - 768px) / 431) + 12px); }
  .ft-s14 { font-size: calc(4 * ((100vw - 768px) / 431) + 10px); }
  .ft-s10 { font-size: calc(1 * ((100vw - 768px) / 431) + 9px); }
  .ft-s60-en { font-size: calc(10 * ((100vw - 768px) / 431) + 50px); }
  .ft-s48-en { font-size: calc(10 * ((100vw - 768px) / 431) + 38px); }
  .ft-s32-en { font-size: calc(10 * ((100vw - 768px) / 431) + 22px); }
  .ft-s28-en { font-size: calc(10 * ((100vw - 768px) / 431) + 18px); }
  .ft-s24-en { font-size: calc(1 * ((100vw - 768px) / 431) + 23px); }
  .ft-s14-en { font-size: calc(4 * ((100vw - 768px) / 431) + 10px); } }

@media only screen and (min-width: 375px) and (max-width: 767.98px) { .ft-s20 { font-size: calc(4 * ((100vw - 375px) / 392) + 16px); line-height: 2; }
  .ft-s16 { font-size: calc(4 * ((100vw - 375px) / 392) + 14px); line-height: 2; }
  .ft-s14 { font-size: calc(4 * ((100vw - 375px) / 392) + 12px); line-height: 2; }
  .ft-s10 { font-size: calc(4 * ((100vw - 375px) / 392) + 10px); line-height: 2; }
  .ft-s60-en { font-size: calc(6 * ((100vw - 375px) / 392) + 40px); line-height: 1.3; }
  .ft-s48-en { font-size: calc(6 * ((100vw - 375px) / 392) + 32px); line-height: 1.2; }
  .ft-s32-en { font-size: calc(6 * ((100vw - 375px) / 392) + 24px); line-height: 1.5; }
  .ft-s28-en { font-size: calc(6 * ((100vw - 375px) / 392) + 18px); line-height: 1.5; }
  .ft-s24-en { font-size: calc(1 * ((100vw - 375px) / 392) + 24px); line-height: 2; }
  .ft-s14-en { font-size: calc(4 * ((100vw - 375px) / 392) + 12px); line-height: 2; } }

@media only screen and (min-width: 320px) and (max-width: 374.98px) { .ft-s20 { font-size: calc(4 * ((100vw - 320px) / 54) + 15px); line-height: 2; }
  .ft-s16 { font-size: calc(4 * ((100vw - 320px) / 54) + 13px); line-height: 2; }
  .ft-s14 { font-size: calc(4 * ((100vw - 320px) / 54) + 11px); line-height: 2; }
  .ft-s10 { font-size: calc(4 * ((100vw - 320px) / 54) + 9px); line-height: 2; }
  .ft-s60-en { font-size: calc(6 * ((100vw - 320px) / 54) + 39px); line-height: 1.3; }
  .ft-s48-en { font-size: calc(6 * ((100vw - 320px) / 54) + 31px); line-height: 1.2; }
  .ft-s32-en { font-size: calc(6 * ((100vw - 320px) / 54) + 23px); line-height: 1.5; }
  .ft-s28-en { font-size: calc(6 * ((100vw - 320px) / 54) + 17px); line-height: 1.5; }
  .ft-s24-en { font-size: calc(1 * ((100vw - 320px) / 54) + 23px); line-height: 2; }
  .ft-s14-en { font-size: calc(4 * ((100vw - 320px) / 54) + 11px); line-height: 2; } .gn-hd-icon { margin-right: 15px; } }

@media screen and (max-width: 320px) { .ft-s20 { font-size: calc(4 * 0px + 15px); line-height: 2; }
  .ft-s16 { font-size: calc(4 * 0px + 13px); line-height: 2; }
  .ft-s14 { font-size: calc(4 * 0px + 11px); line-height: 2; }
  .ft-s10 { font-size: calc(4 * 0px + 9px); line-height: 2; }
  .ft-s60-en { font-size: calc(6 * 0px + 39px); line-height: 1.3; }
  .ft-s48-en { font-size: calc(6 * 0px + 31px); line-height: 1.2; }
  .ft-s32-en { font-size: calc(6 * 0px + 23px); line-height: 1.5; }
  .ft-s28-en { font-size: calc(6 * 0px + 17px); line-height: 1.5; }
  .ft-s24-en { font-size: calc(1 * 0px + 23px); line-height: 2; }
  .ft-s14-en { font-size: calc(4 * 0px + 11px); line-height: 2; } }

@media screen and (-ms-high-contrast: none) and (max-width: 767px) { *::-ms-backdrop, .gn-hd-item:nth-of-type(2) svg { max-width: 200px; } }

@media all and (-ms-high-contrast: none) { *::-ms-backdrop, body { font-family: YuMincho,'Yu Mincho',serif; font-weight: 700; } *::-ms-backdrop, .home-slide .com-fix-scroll { height: 92px; }
  *::-ms-backdrop, .home-slide .com-fix-scroll-copy { right: -8px !important; } }
