@charset "UTF-8";
/* default sp
----------------------------------------------- */
* { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }
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, 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, section, summary, time, mark, audio, video { padding: 0; margin: 0; font: inherit; word-wrap: break-word; border: 0; vertical-align: baseline; outline: none; }
body { padding: 0; margin: 0; color: var(--main); font-size: 3.6vw; font-weight: 400; font-family: var(--gothic); -webkit-text-size-adjust: 100%; font-style: normal; line-height: 1; background: #000; }
article, aside, canvas, details, figcaption, figure, header, footer, hgroup, main, menu, nav, section, summary { display: block; }
blockquote, q { quotes: none; }
strong, b { font-weight: bold; }
ul, ol, li { list-style: none; }
table { border-spacing: 0; border-collapse: collapse; }
img, video, object { height: auto; border: none; display: block; }
ins { background: none; color: #000; text-decoration: none; }
mark { background-color: #ff9; color: #000; font-style: italic; font-weight: bold; }
del { text-decoration: line-through; }
abbr[title], dfn[title] { border-bottom: 1px dotted; cursor: help; }
hr { height: 1px; padding: 0; margin: 1em 0; border: 0; border-top: 1px solid #ccc; display: block; }
*::before, *::after { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }
a { color: var(--main); text-decoration: none; display: block; -moz-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); -o-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); -webkit-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); }
a:hover { opacity: 0.6; }
.clearfix::after { content: ''; display: block; clear: both; }
.pc { display: none; }
.sp { display: block; }

.wrapper { width: 100%; background: url(../images/wrapper-bg.jpg) no-repeat top center; background-size: 100%; overflow: hidden; z-index: 1; position: relative; }
.wrapper::after {content: '';width: 1px;height: 100vh;background: #222;z-index: 0;position: fixed;top: 0;left: 50%;}
.wrapper::before { content: ''; width: 100vw; height: 100vh; background: url(../images/pattern01.png) repeat top center; background-size: 4px; opacity: 0.6; position: fixed; top: 0; left: 0; }
.container { z-index: 1; position: relative; }
.fade { opacity: 0; -moz-transition: 1.5s; -o-transition: 1.5s; -webkit-transition: 1.5s; transition: 1.5s; }
.fade-left { -moz-transform: translateX(6px); -ms-transform: translateX(6px); -webkit-transform: translateX(6px); transform: translateX(6px); }
.fade-right { -moz-transform: translateX(-6px); -ms-transform: translateX(-6px); -webkit-transform: translateX(-6px); transform: translateX(-6px); }
.fade-bottom { -moz-transform: translateY(6px); -ms-transform: translateY(6px); -webkit-transform: translateY(6px); transform: translateY(6px); }
.fade-active { opacity: 1; -moz-transform: translate(0); -ms-transform: translate(0); -webkit-transform: translate(0); transform: translate(0); }
.accordion { -moz-transition: all 0.4s cubic-bezier(0.76, 0, 0.24, 1); -o-transition: all 0.4s cubic-bezier(0.76, 0, 0.24, 1); -webkit-transition: all 0.4s cubic-bezier(0.76, 0, 0.24, 1); transition: all 0.4s cubic-bezier(0.76, 0, 0.24, 1); }

/* font
----------------------------------------------- */
:root {
--gothic: "Noto Sans JP", 游ゴシック体, YuGothic, 'Yu Gothic', "游ゴシック Medium", "Yu Gothic Medium", 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
--mincho: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "MS P明朝", serif;
--main: #fff;
--green01: #c3f02c;
--green02: #a4f50c;
--black: #04152f;
}

/* common sp
----------------------------------------------- */
.cta-items { width: 90vw; margin: 0 auto; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: space-between; justify-content: space-between; }
.cta-items li { width: 48%; font-size: 3.95vw; font-weight: 500; text-align: center; position: relative; }
.cta-items li:nth-child(1) a { background: #000; border: 1px solid #fff; }
.cta-items li:nth-child(2) a { color: var(--black); background: var(--green02); border: 1px solid var(--green02); }
.cta-items a { padding: 4vw 0; -moz-border-radius: 15vw; -webkit-border-radius: 15vw; border-radius: 15vw; }
.cta-items a::after { content: '\f105'; font-size: 90%; font-family: 'icon'; pointer-events: none; position: absolute; top: 50%; right: 5vw; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }

.midashi01 {margin-bottom: 6vw;text-align: center;line-height: 1;}
.midashi01 .en {margin-bottom: 2.5vw;color: #000;font-size: 5.2vw;font-family: "Orbitron";font-weight: 500;font-optical-sizing: auto;letter-spacing: 0.02em;-webkit-text-stroke: 0.5px var(--green01);text-stroke: 0.5px var(--green01);display: block;}
.midashi01 .jp {color: var(--green01);font-size: 7.3vw;display: block;}

.midashi02{padding: 2%;background: var(--green02);color: var(--black);text-align: center;font-weight: bold;font-size: 4vw;margin-bottom: 4vw;line-height: 1.4;}
.midashi02.black{background: #000; color: #fff; border: 1px solid #fff;}

.midashi03{line-height: 1.4;color: var(--green01); font-weight: bold;font-size: 4vw;padding-left: 3vw;border-left: 4px solid var(--green01);margin-bottom: 3vw;}

.more01 {width: auto;padding-right: 14vw;margin: 0 auto;font-size: 4vw;position: relative;display: table;}
.more01::after { content: '\f105'; width: 10vw; height: 10vw; color: #fff; font-size: 4.6vw; font-family: 'icon'; border: 1px solid #fff; pointer-events: none; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; position: absolute; top: 50%; right: 0; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }

.more02, .more03 {width: 70vw; font-size: 4vw;font-weight: 500;text-align: center;position: relative; padding: 4vw 0; -moz-border-radius: 15vw; -webkit-border-radius: 15vw; border-radius: 15vw; }
.more02 { background: #000; border: 1px solid #fff; }
.more03 { color: var(--black); background: var(--green02); border: 1px solid var(--green02);}
.more02::after, .more03::after { content: '\f105'; font-size: 90%; font-family: 'icon'; pointer-events: none; position: absolute; top: 50%; right: 5vw; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }

.tbl {width: 100%;}
.tbl th,.tbl td {vertical-align:middle;line-height: 1.6;letter-spacing: .04em;}
.tbl th {text-align:center;width: 30%;font-weight: 600;padding: 4% 3% 4% 0;color: var(--green01);}
.tbl tr:first-child {border-top: 1px solid #444;}
.tbl td {width: 70%;padding: 4% 0;}
.tbl tr{border-bottom: 1px solid #444;}
.tbl tr:last-child { border-bottom: none;}

.mini{font-size: 80%;}
.indent{text-indent: -1em; padding-left: 1em;}

/* header sp
----------------------------------------------- */
.header { width: 100%; z-index: 10; position: absolute; }
.header-logo, .header-navi-logo { width: 30vw; z-index: 1; position: absolute; top: 5vw; left: 5vw; }
.header-logo img, .header-navi-logo img { width: 100%; }
.header-navi-button { width: 16vw; height: 8vw; cursor: pointer; z-index: 11; position: fixed; top: 4vw; right: 5vw; -moz-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); -o-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); -webkit-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); }
.header-navi-button .line { width: 100%; height: 1px; background: var(--main); position: absolute; left: 0; -moz-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); -o-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); -webkit-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); }
.header-navi-button .line-top { top: 2.6vw; }
.header-navi-button .line-bottom { top: 5.4vw; }
.header-navi { width: 100%; height: 100%; background: #000; opacity: 0; visibility: hidden; z-index: 10; position: fixed; top: 0; left: 0; -moz-transition: all 0.5s cubic-bezier(0.76, 0, 0.24, 1); -o-transition: all 0.5s cubic-bezier(0.76, 0, 0.24, 1); -webkit-transition: all 0.5s cubic-bezier(0.76, 0, 0.24, 1); transition: all 0.5s cubic-bezier(0.76, 0, 0.24, 1); }
.header-navi-flex { width: 100%; height: 100%; overflow-y: auto; -ms-overflow-style: none; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.header-navi-flex::-webkit-scrollbar { display: none; }
.header-navi-scroll { width: 100%; height: 100%; overflow-y: auto; position: relative; -ms-overflow-style: none; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.header-navi-scroll::-webkit-scrollbar { display: none; }
.header-navi-content { padding: 54vw 0 100px; background: url(../images/header-navi-image.jpg) no-repeat top center; background-size: 100%; }
.header-navi-cta { margin-bottom: 4vw; }
.header-navi-cta-title {margin-bottom: 5vw;color: var(--green01);font-size: 6.3vw;text-align: center;}
.header-navi-items { width: 90vw; margin: 0 auto 8vw; }
.header-navi-items li { width: 100%; border-bottom: 1px solid #666; position: relative; }
.header-navi-items a { padding: 4.5vw 2.5vw; color: #fff; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-align-items: center; align-items: center; }
.header-navi-items a::after { content: '\f105'; font-family: 'icon'; pointer-events: none; position: absolute; top: 50%; right: 2.5vw; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.header-navi-items .en {margin-right: 2.5vw;font-size: 6vw;font-family: "Roboto";font-weight: 500;font-optical-sizing: auto;font-variation-settings: "wdth" 100;letter-spacing: 0.04em;}
.header-navi-items .jp { font-size: 3.4vw; opacity: 0.6; }

.header-navi-contact-items { width: 90vw; margin: 0 auto 8vw; }
.header-navi-contact-items li {width: 100%;height: 20vw;margin-bottom: 4vw;text-align: center;}
.header-navi-contact-items li.support .title {font-size: 4.5vw;}
.header-navi-contact-items li.support .title::before { content: '\e910'; margin-right: 2vw; font-family: 'icon'; display: inline-block; }
.header-navi-contact-items li.line .title { font-size: 4.7vw; font-family: "Roboto"; font-weight: 500; font-optical-sizing: auto; font-variation-settings: "wdth" 100; }
.header-navi-contact-items li.line .title::before { content: '\e906'; margin-right: 2vw; font-family: 'icon'; display: inline-block; }
.header-navi-contact-items a {height: 100%;border: 1px solid #fff;display: -webkit-box;display: -webkit-flex;display: flex;-webkit-justify-content: center;justify-content: center;-webkit-align-items: center;align-items: center;padding: 0 20px;}
.header-navi-contact-items .title { letter-spacing: 0.02em; display: block; }
.header-navi-contact-items .sub { margin-top: 1.5vw; font-size: 3.2vw; font-weight: 300; display: block; }

.header-navi-sub-items { display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: center; justify-content: center; }
.header-navi-sub-items li { font-size: 3.2vw; }
.header-navi-sub-items li:first-child::before { display: none; }
.header-navi-sub-items li::before { content: '|'; margin: 0 2vw 0 3.5vw; opacity: 0.6; display: inline-block; }
.header-navi-sub-items a { display: inline-block; }

.animation { opacity: 0; visibility: hidden; -moz-transform: translateY(5px); -ms-transform: translateY(5px); -webkit-transform: translateY(5px); transform: translateY(5px); -moz-transition: all 0.65s cubic-bezier(0.76, 0, 0.24, 1); -o-transition: all 0.65s cubic-bezier(0.76, 0, 0.24, 1); -webkit-transition: all 0.65s cubic-bezier(0.76, 0, 0.24, 1); transition: all 0.65s cubic-bezier(0.76, 0, 0.24, 1); }

.header-navi-open { width: 100%; height: 100%; position: fixed; }
.header-navi-open .header-navi-button .line-top { top: 4vw; -moz-transform: rotate(20deg); -ms-transform: rotate(20deg); -webkit-transform: rotate(20deg); transform: rotate(20deg); }
.header-navi-open .header-navi-button .line-bottom { top: 4vw; -moz-transform: rotate(-20deg); -ms-transform: rotate(-20deg); -webkit-transform: rotate(-20deg); transform: rotate(-20deg); }
.header-navi-open .header-navi { opacity: 1; visibility: visible; left: 0; }
.header-navi-open .animation { opacity: 1; visibility: visible; -moz-transform: translateY(0); -ms-transform: translateY(0); -webkit-transform: translateY(0); transform: translateY(0); }
.header-navi-open .animation01 { -moz-transition-delay: 0.4s; -o-transition-delay: 0.4s; -webkit-transition-delay: 0.4s; transition-delay: 0.4s; }


/* hero sp
----------------------------------------------- */
.hero { width: 100%; z-index: 1; position: relative; }
.top-hero { padding: 18vw 0 14vw; }
.top-hero-logo { width: 90vw; margin: 0 auto 8vw; }
.top-hero-logo img { width: 100%; }

.main-movie {position: relative;width: 100%;height: 0;padding-bottom: 56.25%;overflow: hidden;margin: 0 0 7vw;}
.main-movie-test {position: relative;width: 100%;height: 0;padding-bottom: 56.25%;overflow: hidden;margin: 0 0 5vw;width:100%;height:auto;transform:scale(3)}
.main-movie iframe {  position: absolute;  top: 0;  left: 0;  width: 100%;  height: 100%;  border: one; pointer-events: none;}

.top-hero-product-movie { width: 100%; margin-bottom: 6vw; }
.top-hero-product-movie img { width: 100%; }
.top-hero-product-title { margin-bottom: 6vw; text-align: center; }
.top-hero-product-title .sub { margin-bottom: 2.5vw; font-size: 4.2vw; font-weight: 300; display: block; }
.top-hero-product-title .title {margin-bottom: 2.5vw;font-size: 7.8vw;font-family: "Roboto";font-weight: 500;font-optical-sizing: auto;font-variation-settings: "wdth" 100;display: block;}
.top-hero-product-title .price {font-size: 4.7vw;display: block;}

.second-hero { height: 54vw; }
.second-hero-title { width: 100%; text-align: center; z-index: 1; position: absolute; top: 20vw; left: 0; }
.second-hero-title .en { margin-bottom: 1.5vw; font-size: 14.4vw; font-family: "Roboto"; font-weight: 500; font-optical-sizing: auto; font-variation-settings: "wdth" 100; letter-spacing: 0.04em; display: block; }
.second-hero-title .jp { font-size: 4.2vw; display: block; }

/* bread sp
----------------------------------------------- */
.breadcrumb { padding: 4vw 0; z-index: 1; position: relative; }
.breadcrumb-items { width: 90vw; margin: 0 auto; font-size: 0; }
.breadcrumb-items li { font-size: 3.4vw; position: relative; display: inline-block; }
.breadcrumb-items li::after { content: ''; width: 3.5vw; height: 1px; margin: 0 2.5vw 0 1.5vw; font-family: 'icon'; vertical-align: middle; background: var(--main); opacity: 0.5; display: inline-block; }
.breadcrumb-items li:last-child::after { display: none; }
.breadcrumb-items li:last-child a { color: var(--green01); }
.breadcrumb-items li .icon-home { color: var(--green01); }
.breadcrumb-items a { display: inline-block; }

/* footer sp
----------------------------------------------- */
.footer { width: 100%; background: #1c1c1c; z-index: 1; position: relative; }
.pagetop { width: 100%; padding: 5vw 0 4vw; font-size: 4.2vw; font-family: "Orbitron"; font-weight: 400; font-optical-sizing: auto; text-align: center; letter-spacing: 0.02em; background: #333; }
.pagetop::before { content: '\f106'; margin-right: 2.5vw; font-family: 'icon'; line-height: 0; }
.footer-content { padding-bottom: 12vw; position: relative; }
.footer-text { width: 90vw; padding: 10vw 0 5vw; margin: 0 auto; }
.footer-logo { width: 44vw; margin-bottom: 5vw; }
.footer-logo img { width: 100%; }
.footer-company, .footer-address { font-size: 3.6vw; line-height: 1.6; letter-spacing: 0.02em; }
.footer-tel { margin-bottom: 6vw; font-size: 3.6vw; line-height: 1.6; letter-spacing: 0.02em; }
.footer-tel a { display: inline-block; }
.footer-cta-items { margin-bottom: 6vw; }

.footer-contact-items { width: 100%; margin: 0 auto 8vw; }
.footer-contact-items li { width: 100%; height: 16vw; margin-bottom: 4vw; text-align: center; }
.footer-contact-items li.support .title {font-size: 4.4vw;}
.footer-contact-items li.support .title::before { content: '\e910'; margin-right: 2vw; font-family: 'icon'; display: inline-block; }
.footer-contact-items a {height: 100%;border: 1px solid #fff;display: -webkit-box;display: -webkit-flex;display: flex;-webkit-justify-content: center;justify-content: center;-webkit-align-items: center;align-items: center;padding: 20px;}
.footer-contact-items .title { letter-spacing: 0.02em; display: block; }
.footer-contact-items .sub {margin-top: 1.5vw;font-size: 3.2vw;font-weight: 300;display: block;line-height: 1.4;}

.footer-navi { width: 80vw; margin: 0 auto 4vw; }
.footer-navi-items { width: 100%; display: grid; grid-auto-flow: column; grid-template-rows: repeat(4, auto); -webkit-justify-content: space-between; justify-content: space-between; }
.footer-navi-items li { width: 38vw; margin-bottom: 5vw; font-size: 3.6vw; position: relative; }
.footer-navi-items a::before { content: '\f105'; margin-right: 1.5vw; font-size: 3.2vw; font-family: 'icon'; display: inline-block; }

.footer-sub-items { width: 80vw; margin: 0 auto 5vw; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
.footer-sub-items li { font-size: 3.2vw; }
.footer-sub-items li:first-child::before { display: none; }
.footer-sub-items li::before { content: '|'; margin: 0 2vw 0 3.5vw; opacity: 0.6; display: inline-block; }
.footer-sub-items a { color: #fff; display: inline-block; }

.copyright { width: 100%; padding: 4.5vw 0; font-size: 3.2vw; font-family: "Roboto"; font-weight: 300; font-optical-sizing: auto; font-variation-settings: "wdth" 100; text-align: center; letter-spacing: 0.02em; background: #000; display: block; position: absolute; bottom: 0; left: 0; }
.footer-image { width: 100%; height: 46vw; background: url(../images/footer-image.jpg) no-repeat center; background-size: cover; }
.footer-fixed { width: 100%; z-index: 8; opacity: 0; visibility: hidden; position: fixed; bottom: 4vw; left: 0; -moz-transition: all 0.5s cubic-bezier(0.76, 0, 0.24, 1); -o-transition: all 0.5s cubic-bezier(0.76, 0, 0.24, 1); -webkit-transition: all 0.5s cubic-bezier(0.76, 0, 0.24, 1); transition: all 0.5s cubic-bezier(0.76, 0, 0.24, 1); }
.footer-fixed.active { opacity: 1; visibility: visible; }
.footer-fixed.nonactive { opacity: 0; visibility: hidden; }

.footer-fixed-items { width: 90vw; margin: 0 auto; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: space-between; justify-content: space-between; }
.footer-fixed-items li { width: 48%; height: 12vw; font-size: 4vw; text-align: center; }
.footer-fixed-items a { height: 100%; -moz-border-radius: 20vw; -webkit-border-radius: 20vw; border-radius: 20vw; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }

/* second sp
----------------------------------------------- */
.second { z-index: 1; position: relative; min-height: 100vw; margin: auto; font-size: 3.6vw; text-align: justify; text-justify: inter-ideograph; font-feature-settings: "palt"; line-height: 1.8; letter-spacing: 0.04em;}
.second-text { width: 90vw; padding-bottom: 12vw; margin: auto; }
.second p { margin-bottom: 4vw;}


/* =============================================
pc-size
================================================*/
@media screen and (min-width: 769px) {
body { font-size: 16px; }
.sp { display: none; }
.pc { display: block; }

/* common pc
----------------------------------------------- */
.wrapper { background: url(../images/wrapper-bg-pc.jpg) no-repeat top left; background-size: 1216px; }
.wrapper::before { content: ''; width: 100vw; height: 100vh; background: url(../images/pattern01.png) repeat top center; background-size: 4px; opacity: 0.6; position: fixed; top: 0; left: 0; }
.top-wrapper { background: url(../images/wrapper-bg-pc.jpg) no-repeat top left, url(../images/wrapper-bg-pc02.jpg) no-repeat top 750px right; background-size: 1216px; }
.cta-items { width: 100%; }
.cta-items li { font-size: 22px; }
.cta-items a { padding: 25px 0; }
.cta-items a::after { right: 30px; }

.midashi01 { margin-bottom: 60px; }
.midashi01 .en { margin-bottom: 10px; font-size: 25px;}
.midashi01 .jp { font-size: 50px; }
	
.midashi02{padding: 14px;font-size: 20px;margin-bottom: 30px;}
	
.midashi03{font-size: 24px;padding-left: 20px;border-left: 5px solid var(--green01);margin-bottom: 20px;}

.more01 { padding-right: 60px; font-size: 15px; }
.more01::after { width: 40px; height: 40px; font-size: 15px; }

.more02, .more03 {width: 340px; padding: 25px 0; font-size: 22px;}
.more02::after, .more03::after { right: 30px; }
	
.tbl td {width: 77%;padding: 18px 0;}
.tbl th {text-align:center;width: 20%;padding: 18px 10px;position: relative;}

/* header pc
----------------------------------------------- */
.header-content { width: clamp(760px, 90%, 1200px); margin: 0 auto; position: relative; }
.header-logo { width: 170px; top: 25px; left: 0; }

.header-navi-button { width: 85px; height: 40px; top: 25px; right:2vw; }
.header-navi-button .line-top { top: 14px; }
.header-navi-button .line-bottom { top: 26px; }
.header-navi-inner {background: url(../images/header-navi-bg.jpg) no-repeat center left;background-size: cover;}

.header-navi-flex{display: -webkit-flex;display: flex;-webkit-justify-content: space-between;justify-content: space-between;height: 100vh;}
.header-navi-inner{ width: 75%;order: 2; padding: 175px 4vw 4vw 0;/* height: 100vh; */-webkit-transition: all 0.3s cubic-bezier(0.05, 0.05, 0.31, 0.97);transition: all 0.3s cubic-bezier(0.05, 0.05, 0.31, 0.97);}
.header-navi-bg{background: url(../images/header-navi-image-pc.jpg) no-repeat center;width: 25%;background-size: cover;-webkit-transition: all 0.3s cubic-bezier(0.05, 0.05, 0.31, 0.97);transition: all 0.3s cubic-bezier(0.05, 0.05, 0.31, 0.97);}

.header-navi-content {padding: 0;background: none;width: 100%;max-width: 820px;margin: 0;padding-left: 3vw;}
.header-navi-logo {width: 175px;position: fixed;top: 25px;/* left: calc(50% - 165px); *//* -webkit-transform: translateX(-80%); *//* transform: translateX(-80%); */left: 29%;}
.header-navi-cta { margin-bottom: 60px; }
.header-navi-cta-title {margin-bottom: 40px;font-size: 40px;font-size: clamp(30px, 12.727px + 2.273vw, 40px);}
.header-navi-items { width: 100%; margin-bottom: 60px; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: space-between; justify-content: space-between; }
.header-navi-items li { width: 48%; }
.header-navi-items a { padding: 25px 10px 22px; }
.header-navi-items a::after { right: 15px; }
.header-navi-items .en {margin-right: 8px;font-size: clamp(22px, 11.636px + 1.364vw, 28px);}
.header-navi-items .jp { font-size: 15px; }
.header-navi-contact-items {width: 100%;margin-bottom: 40px;display: -webkit-box;display: -webkit-flex;display: flex;-webkit-justify-content: space-between;justify-content: space-between;}
.header-navi-contact-items li {width: 48%;height: 95px;margin: 0;}
.header-navi-contact-items li.support .title { font-size: 20px; }
.header-navi-contact-items li.support .title::before { margin-right: 10px; }
.header-navi-contact-items li.line .title { font-size: 22px; }
.header-navi-contact-items li.line .title::before { margin-right: 10px; }
.header-navi-contact-items .sub { margin-top: 5px; font-size: 14px; }
.header-navi-sub-items { -webkit-justify-content: flex-start; justify-content: flex-start; }
.header-navi-sub-items li { font-size: 12px; }
.header-navi-sub-items li::before { margin: 0 14px 0 20px; }
.header-navi-open .header-navi-button .line-top, .header-navi-open .header-navi-button .line-bottom { top: 20px; }


/* hero pc
----------------------------------------------- */
.top-hero { padding: 80px 0 40px; }
.top-hero-logo {max-width: 945px;margin-bottom: 40px;width: 90%;}
.top-hero-product-movie { margin-bottom: 40px; }
.top-hero-product-title { margin-bottom: 50px; }
.top-hero-product-title .sub { margin-bottom: 15px; font-size: 22px; }
.top-hero-product-title .title {margin-bottom: 20px;font-size: clamp(60px, 25.455px + 4.545vw, 80px);}
.top-hero-product-title .price { font-size: 30px; }
.top-hero-product-items { width: 720px; }
.top-hero-product-items li { font-size: 20px; }
.top-hero-product-items a { padding: 20px 0; }

.second-hero { height: 340px; }
.second-hero-title { width: clamp(760px, 90%, 1200px); text-align: left; top: 150px; left: 50%; -moz-transform: translateX(-50%); -ms-transform: translateX(-50%); -webkit-transform: translateX(-50%); transform: translateX(-50%); }
.second-hero-title .en { margin-bottom: 5px; font-size: 70px;}
.second-hero-title .jp { font-size: 18px; }

/* bread pc
----------------------------------------------- */
.breadcrumb { padding: 20px 0; }
.breadcrumb-items { width: clamp(760px, 90%, 1200px); }
.breadcrumb-items li { font-size: 12px; }
.breadcrumb-items li::after { width: 15px; margin: 0 12px 0 10px; opacity: 0.5; }

/* footer pc
----------------------------------------------- */
.pagetop { padding: 16px 0 15px; font-size: 18px;}
.pagetop::before { margin-right: 10px; }
.footer-content {padding: 0;display: -webkit-box;display: -webkit-flex;display: flex;}
.footer-text {width: 100%;padding: 60px 80px 40px 5vw;margin: 0 0 0 auto;max-width: 700px;}
.footer-text-head { position: relative; }
.footer-logo { width: 225px; margin: 0 0 30px; }
.footer-company, .footer-address { font-size: 15px;}
.footer-tel { margin-bottom: 40px; font-size: 15px;}
.footer-cta-items { width: 240px; margin: 0; display: block; position: absolute; right: 0; bottom: 0; }
.footer-cta-items li { width: 100%; margin-top: 15px; font-size: 18px; }
.footer-cta-items a { padding: 18px 0; }

.footer-contact-items {margin-bottom: 40px;display: -webkit-box;display: -webkit-flex;display: flex;-webkit-justify-content: space-between;justify-content: space-between;}
.footer-contact-items li {width: 49%;margin: 0;height: auto;}
.footer-contact-items li.support .title { font-size: 18px; }
.footer-contact-items li.support .title::before { margin-right: 10px; }
.footer-contact-items li.line .title { font-size: 18px; }
.footer-contact-items li.line .title::before { margin-right: 10px; }
.footer-contact-items li.line .sub { margin-top: 6px; font-size: 12px; }

.footer-navi { width: 100%; margin-bottom: 20px; }
.footer-navi-items { grid-template-rows: repeat(2, auto); }
.footer-navi-items li { width: auto; margin-bottom: 20px; font-size: 14px; }
.footer-navi-items a::before { margin-right: 10px; font-size: 14px; }

.footer-sub-items { margin: 0 0 40px; }
.footer-sub-items li { font-size: 12px; }
.footer-sub-items li::before { margin: 0 15px 0 20px; }

.copyright { width: 100%; padding: 0; font-size: 12px; text-align: left; background: none; position: relative; bottom: auto; left: auto; }
.footer-image { width: calc(50% - 100px); height: auto; background: url(../images/footer-image-pc.jpg) no-repeat center; background-size: cover; }
.footer-fixed { width: auto; top: 50%; right: 20px; bottom: auto; left: auto; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.footer-fixed-cta-items { width: 45px; }
.footer-fixed-cta-items li { width: 100%; height: 160px; margin: 8px 0; font-size: 15px; -ms-writing-mode: tb-rl; writing-mode: tb-rl; }
.footer-fixed-cta-items a { width: 100%; height: 100%; padding: 0 14px 0 0; }
.footer-fixed-cta-items a::after { display: none; }

/* second pc
----------------------------------------------- */

.second{min-height: 600px;font-size: 16px;}
.second p { margin-bottom: 30px; }
.second-text { width: clamp(760px, 90%, 1200px);  padding-bottom: 120px;}
.footer-text {width: 100%;margin: 0;padding: 6vw 6vw 4vw;max-width: 100%;}
}


@media screen and (min-width: 769px)and (max-width: 999px) {
.footer-text {padding: 6vw 5vw 4vw;margin: 0;width: 100%;max-width: 100%;}
.footer-image{display: none;}
}

@media screen and (min-width: 1000px) {
.header-navi-logo {left: 44%;}
.header-navi-inner{width: 60%;}
.header-navi-bg{width: 40%;}
.footer-text {padding: 60px 80px 40px 2vw;margin: 0 0 0 auto;width: 100%;max-width: 700px;}
}

@media screen and (min-width: 1200px) {
.header-navi-button { right: calc(50% - 600px); }
.footer-text {padding: 60px 80px 40px 2vw;margin: 0 0 0 auto;width: 100%;max-width: 700px;}

}


/* =============================================
retina用
================================================*/
@media screen and (min-width: 769px) and (-webkit-min-device-pixel-ratio: 2), screen and (min-width: 769px) and (min-resolution: 2dppx) {
.wrapper { background-image: url(../images/wrapper-bg-pc@2x.jpg); }
.top-wrapper { background-image: url(../images/wrapper-bg-pc@2x.jpg), url(../images/wrapper-bg-pc02@2x.jpg);}
.header-navi-inner { background-image: url(../images/header-navi-bg@2x.jpg); }
.header-navi::before {background-image: url(../images/header-navi-image-pc@2x.jpg); }
.footer-image { background-image: url(../images/footer-image-pc@2x.jpg);}
}
