/*! ---------------------------------
Theme Name: Main
Version: 4.1.0
Tested up to: 6.9.4
---------------------------------- */:root{--font-jp: sans-serif;--font-en: 'Barlow', sans-serif;--color-text: #1D1D1D;--color-bg: #f5f4f0;--color-base: #1F91D3;--color-base2: #E14728;--color-link: #1F91D3;--color-hover: #E14728;--color-visited: #551a8b;--color-error: #dd0000;--space-comp: 1em;--space-headline: 5rem;--space-xs: 0.5rem;--space-sm: 1rem;--space-md: 2rem;--space-lg: 4rem;--space-xl: 6rem;--transition: 0.3s;--transition-fast: 0.15s;--transition-slow: 0.6s;--color-facebook: #1877f2;--color-x: #000;--color-line: #00c300;--swiper-theme-color: var(--color-base)}/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{-webkit-box-sizing:content-box;box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:rgba(0,0,0,0)}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{-webkit-box-sizing:border-box;box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}*,*::before,*::after{-webkit-box-sizing:border-box;box-sizing:border-box;overflow-wrap:anywhere}:root{text-spacing-trim:trim-start;text-autospace:normal;overflow-wrap:anywhere}html{background:var(--color-bg);scroll-behavior:smooth}body{color:var(--color-text);line-height:1.8;font-size:1rem;font-family:var(--font-jp);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%;text-autospace:no-autospace}button,input,textarea,select{font:inherit;color:inherit}::-moz-selection{background-color:color-mix(in srgb, var(--color-base) 90%, black);color:var(--color-bg)}::selection{background-color:color-mix(in srgb, var(--color-base) 90%, black);color:var(--color-bg)}:where(button,a,input,textarea,select,[tabindex]){outline:none}:where(button,a,input,textarea,select,[tabindex]):focus{outline:none}:where(button,a,input,textarea,select,[tabindex]):focus-visible{outline:2px solid var(--color-base)}h1,h2,h3,h4,h5,h6{line-height:1.3}h2+h3,h3+h4,h4+h5,h5+h6{margin-top:var(--space-comp) !important}ol,ul,menu{list-style-type:"";margin:0;padding:0}li{position:relative;line-height:1.5}dl,dt,dd{margin:0;padding:0}p{margin-block:var(--space-comp)}strong{font-weight:bold}u{border-bottom:1px solid var(--color-text)}address{font-style:normal}pre{text-spacing-trim:space-all;text-autospace:no-autospace}time{text-autospace:no-autospace}a{-webkit-transition:var(--transition);transition:var(--transition);color:var(--color-link)}a:visited{color:var(--color-visited)}@media(any-hover: hover){a:hover,a:focus-visible{color:var(--color-hover)}}@media all and (min-width: 769px){a[href^="tel:"]{color:var(--color-text);pointer-events:none;text-decoration:none}}img,svg,video{border:0;vertical-align:middle}img{max-width:100%;height:auto}figure{margin:0}.caption,figcaption{display:block;margin-top:1rem;font-size:.88em}._nocss{margin:0;position:relative;background:rgba(0,0,0,0)}._nocss::before,._nocss::after{display:none}input[type=text],input[type=tel],input[type=url],input[type=email],input[type=number],input[type=search],input[type=password],input[type=datetime-local],input[type=date],input[type=time],input[type=datetime],input[type=month],input[type=week],textarea{background:none;border:none;border-radius:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:.2em .5em;border:1px solid #949494}input[type=number],input[type=date]{max-width:100%;min-width:0;-moz-appearance:auto;appearance:auto;-webkit-appearance:auto}@supports(-webkit-touch-callout: none){input[type=number],input[type=date]{width:-webkit-fill-available;max-width:-webkit-fill-available}}select{background:none;padding:.2em .5em;border-radius:0;border:1px solid #949494}fieldset{margin:0;padding:0;border:none}input[type=submit],input[type=button],button,label{background:none;border:none;border-radius:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}iframe{border:0}.container{padding-top:89px}.l-content__has-column{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}@media all and (max-width: 768px){.l-content__has-column{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}}.l-content__main{-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;min-width:0}.l-content__sidebar{-webkit-box-flex:0;-webkit-flex:0 0 300px;-ms-flex:0 0 300px;flex:0 0 300px}@media all and (max-width: 768px){.l-content__sidebar{-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1}}@media all and (min-width: 769px){.l-content__sidebar--sticky{position:-webkit-sticky;position:sticky;top:0;max-height:100vh;overflow-y:auto}}.l-content__sidebar--sticky::-webkit-scrollbar{width:8px;background-color:rgba(0,0,0,0)}.l-content__sidebar--sticky::-webkit-scrollbar-thumb{background:rgba(var(--color-text), 0.05);width:6px;border-radius:9999px}.inner{margin:0 auto;width:100%;max-width:1200px}@media all and (max-width: 768px){.inner{max-width:calc(100vw - 40px)}}.l-grid .row{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.col-1{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*1);-ms-flex:0 0 calc(100%/12*1);flex:0 0 calc(100%/12*1);max-width:calc(100%/12*1)}.col-2{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*2);-ms-flex:0 0 calc(100%/12*2);flex:0 0 calc(100%/12*2);max-width:calc(100%/12*2)}.col-3{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*3);-ms-flex:0 0 calc(100%/12*3);flex:0 0 calc(100%/12*3);max-width:calc(100%/12*3)}.col-4{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*4);-ms-flex:0 0 calc(100%/12*4);flex:0 0 calc(100%/12*4);max-width:calc(100%/12*4)}.col-5{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*5);-ms-flex:0 0 calc(100%/12*5);flex:0 0 calc(100%/12*5);max-width:calc(100%/12*5)}.col-6{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*6);-ms-flex:0 0 calc(100%/12*6);flex:0 0 calc(100%/12*6);max-width:calc(100%/12*6)}.col-7{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*7);-ms-flex:0 0 calc(100%/12*7);flex:0 0 calc(100%/12*7);max-width:calc(100%/12*7)}.col-8{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*8);-ms-flex:0 0 calc(100%/12*8);flex:0 0 calc(100%/12*8);max-width:calc(100%/12*8)}.col-9{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*9);-ms-flex:0 0 calc(100%/12*9);flex:0 0 calc(100%/12*9);max-width:calc(100%/12*9)}.col-10{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*10);-ms-flex:0 0 calc(100%/12*10);flex:0 0 calc(100%/12*10);max-width:calc(100%/12*10)}.col-11{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*11);-ms-flex:0 0 calc(100%/12*11);flex:0 0 calc(100%/12*11);max-width:calc(100%/12*11)}.col-12{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*12);-ms-flex:0 0 calc(100%/12*12);flex:0 0 calc(100%/12*12);max-width:calc(100%/12*12)}@media(min-width: 576px){.col-sm-1{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*1);-ms-flex:0 0 calc(100%/12*1);flex:0 0 calc(100%/12*1);max-width:calc(100%/12*1)}.col-sm-2{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*2);-ms-flex:0 0 calc(100%/12*2);flex:0 0 calc(100%/12*2);max-width:calc(100%/12*2)}.col-sm-3{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*3);-ms-flex:0 0 calc(100%/12*3);flex:0 0 calc(100%/12*3);max-width:calc(100%/12*3)}.col-sm-4{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*4);-ms-flex:0 0 calc(100%/12*4);flex:0 0 calc(100%/12*4);max-width:calc(100%/12*4)}.col-sm-5{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*5);-ms-flex:0 0 calc(100%/12*5);flex:0 0 calc(100%/12*5);max-width:calc(100%/12*5)}.col-sm-6{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*6);-ms-flex:0 0 calc(100%/12*6);flex:0 0 calc(100%/12*6);max-width:calc(100%/12*6)}.col-sm-7{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*7);-ms-flex:0 0 calc(100%/12*7);flex:0 0 calc(100%/12*7);max-width:calc(100%/12*7)}.col-sm-8{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*8);-ms-flex:0 0 calc(100%/12*8);flex:0 0 calc(100%/12*8);max-width:calc(100%/12*8)}.col-sm-9{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*9);-ms-flex:0 0 calc(100%/12*9);flex:0 0 calc(100%/12*9);max-width:calc(100%/12*9)}.col-sm-10{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*10);-ms-flex:0 0 calc(100%/12*10);flex:0 0 calc(100%/12*10);max-width:calc(100%/12*10)}.col-sm-11{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*11);-ms-flex:0 0 calc(100%/12*11);flex:0 0 calc(100%/12*11);max-width:calc(100%/12*11)}.col-sm-12{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*12);-ms-flex:0 0 calc(100%/12*12);flex:0 0 calc(100%/12*12);max-width:calc(100%/12*12)}}@media(min-width: 768px){.col-md-1{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*1);-ms-flex:0 0 calc(100%/12*1);flex:0 0 calc(100%/12*1);max-width:calc(100%/12*1)}.col-md-2{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*2);-ms-flex:0 0 calc(100%/12*2);flex:0 0 calc(100%/12*2);max-width:calc(100%/12*2)}.col-md-3{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*3);-ms-flex:0 0 calc(100%/12*3);flex:0 0 calc(100%/12*3);max-width:calc(100%/12*3)}.col-md-4{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*4);-ms-flex:0 0 calc(100%/12*4);flex:0 0 calc(100%/12*4);max-width:calc(100%/12*4)}.col-md-5{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*5);-ms-flex:0 0 calc(100%/12*5);flex:0 0 calc(100%/12*5);max-width:calc(100%/12*5)}.col-md-6{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*6);-ms-flex:0 0 calc(100%/12*6);flex:0 0 calc(100%/12*6);max-width:calc(100%/12*6)}.col-md-7{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*7);-ms-flex:0 0 calc(100%/12*7);flex:0 0 calc(100%/12*7);max-width:calc(100%/12*7)}.col-md-8{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*8);-ms-flex:0 0 calc(100%/12*8);flex:0 0 calc(100%/12*8);max-width:calc(100%/12*8)}.col-md-9{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*9);-ms-flex:0 0 calc(100%/12*9);flex:0 0 calc(100%/12*9);max-width:calc(100%/12*9)}.col-md-10{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*10);-ms-flex:0 0 calc(100%/12*10);flex:0 0 calc(100%/12*10);max-width:calc(100%/12*10)}.col-md-11{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*11);-ms-flex:0 0 calc(100%/12*11);flex:0 0 calc(100%/12*11);max-width:calc(100%/12*11)}.col-md-12{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*12);-ms-flex:0 0 calc(100%/12*12);flex:0 0 calc(100%/12*12);max-width:calc(100%/12*12)}}@media(min-width: 992px){.col-lg-1{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*1);-ms-flex:0 0 calc(100%/12*1);flex:0 0 calc(100%/12*1);max-width:calc(100%/12*1)}.col-lg-2{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*2);-ms-flex:0 0 calc(100%/12*2);flex:0 0 calc(100%/12*2);max-width:calc(100%/12*2)}.col-lg-3{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*3);-ms-flex:0 0 calc(100%/12*3);flex:0 0 calc(100%/12*3);max-width:calc(100%/12*3)}.col-lg-4{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*4);-ms-flex:0 0 calc(100%/12*4);flex:0 0 calc(100%/12*4);max-width:calc(100%/12*4)}.col-lg-5{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*5);-ms-flex:0 0 calc(100%/12*5);flex:0 0 calc(100%/12*5);max-width:calc(100%/12*5)}.col-lg-6{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*6);-ms-flex:0 0 calc(100%/12*6);flex:0 0 calc(100%/12*6);max-width:calc(100%/12*6)}.col-lg-7{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*7);-ms-flex:0 0 calc(100%/12*7);flex:0 0 calc(100%/12*7);max-width:calc(100%/12*7)}.col-lg-8{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*8);-ms-flex:0 0 calc(100%/12*8);flex:0 0 calc(100%/12*8);max-width:calc(100%/12*8)}.col-lg-9{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*9);-ms-flex:0 0 calc(100%/12*9);flex:0 0 calc(100%/12*9);max-width:calc(100%/12*9)}.col-lg-10{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*10);-ms-flex:0 0 calc(100%/12*10);flex:0 0 calc(100%/12*10);max-width:calc(100%/12*10)}.col-lg-11{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*11);-ms-flex:0 0 calc(100%/12*11);flex:0 0 calc(100%/12*11);max-width:calc(100%/12*11)}.col-lg-12{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*12);-ms-flex:0 0 calc(100%/12*12);flex:0 0 calc(100%/12*12);max-width:calc(100%/12*12)}}@media(min-width: 1200px){.col-xl-1{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*1);-ms-flex:0 0 calc(100%/12*1);flex:0 0 calc(100%/12*1);max-width:calc(100%/12*1)}.col-xl-2{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*2);-ms-flex:0 0 calc(100%/12*2);flex:0 0 calc(100%/12*2);max-width:calc(100%/12*2)}.col-xl-3{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*3);-ms-flex:0 0 calc(100%/12*3);flex:0 0 calc(100%/12*3);max-width:calc(100%/12*3)}.col-xl-4{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*4);-ms-flex:0 0 calc(100%/12*4);flex:0 0 calc(100%/12*4);max-width:calc(100%/12*4)}.col-xl-5{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*5);-ms-flex:0 0 calc(100%/12*5);flex:0 0 calc(100%/12*5);max-width:calc(100%/12*5)}.col-xl-6{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*6);-ms-flex:0 0 calc(100%/12*6);flex:0 0 calc(100%/12*6);max-width:calc(100%/12*6)}.col-xl-7{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*7);-ms-flex:0 0 calc(100%/12*7);flex:0 0 calc(100%/12*7);max-width:calc(100%/12*7)}.col-xl-8{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*8);-ms-flex:0 0 calc(100%/12*8);flex:0 0 calc(100%/12*8);max-width:calc(100%/12*8)}.col-xl-9{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*9);-ms-flex:0 0 calc(100%/12*9);flex:0 0 calc(100%/12*9);max-width:calc(100%/12*9)}.col-xl-10{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*10);-ms-flex:0 0 calc(100%/12*10);flex:0 0 calc(100%/12*10);max-width:calc(100%/12*10)}.col-xl-11{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*11);-ms-flex:0 0 calc(100%/12*11);flex:0 0 calc(100%/12*11);max-width:calc(100%/12*11)}.col-xl-12{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*12);-ms-flex:0 0 calc(100%/12*12);flex:0 0 calc(100%/12*12);max-width:calc(100%/12*12)}}.l-grid__gap .row{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:1rem}.g-col-1{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*1 - 1rem);-ms-flex:0 0 calc(100%/12*1 - 1rem);flex:0 0 calc(100%/12*1 - 1rem);max-width:calc(100%/12*1 - 1rem)}.g-col-2{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*2 - 1rem);-ms-flex:0 0 calc(100%/12*2 - 1rem);flex:0 0 calc(100%/12*2 - 1rem);max-width:calc(100%/12*2 - 1rem)}.g-col-3{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*3 - 1rem);-ms-flex:0 0 calc(100%/12*3 - 1rem);flex:0 0 calc(100%/12*3 - 1rem);max-width:calc(100%/12*3 - 1rem)}.g-col-4{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*4 - 1rem);-ms-flex:0 0 calc(100%/12*4 - 1rem);flex:0 0 calc(100%/12*4 - 1rem);max-width:calc(100%/12*4 - 1rem)}.g-col-5{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*5 - 1rem);-ms-flex:0 0 calc(100%/12*5 - 1rem);flex:0 0 calc(100%/12*5 - 1rem);max-width:calc(100%/12*5 - 1rem)}.g-col-6{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*6 - 1rem);-ms-flex:0 0 calc(100%/12*6 - 1rem);flex:0 0 calc(100%/12*6 - 1rem);max-width:calc(100%/12*6 - 1rem)}.g-col-7{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*7 - 1rem);-ms-flex:0 0 calc(100%/12*7 - 1rem);flex:0 0 calc(100%/12*7 - 1rem);max-width:calc(100%/12*7 - 1rem)}.g-col-8{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*8 - 1rem);-ms-flex:0 0 calc(100%/12*8 - 1rem);flex:0 0 calc(100%/12*8 - 1rem);max-width:calc(100%/12*8 - 1rem)}.g-col-9{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*9 - 1rem);-ms-flex:0 0 calc(100%/12*9 - 1rem);flex:0 0 calc(100%/12*9 - 1rem);max-width:calc(100%/12*9 - 1rem)}.g-col-10{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*10 - 1rem);-ms-flex:0 0 calc(100%/12*10 - 1rem);flex:0 0 calc(100%/12*10 - 1rem);max-width:calc(100%/12*10 - 1rem)}.g-col-11{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*11 - 1rem);-ms-flex:0 0 calc(100%/12*11 - 1rem);flex:0 0 calc(100%/12*11 - 1rem);max-width:calc(100%/12*11 - 1rem)}.g-col-12{-webkit-box-flex:0;-webkit-flex:0 0 calc(100%/12*12 - 1rem);-ms-flex:0 0 calc(100%/12*12 - 1rem);flex:0 0 calc(100%/12*12 - 1rem);max-width:calc(100%/12*12 - 1rem)}.l-layer{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:end;-webkit-align-items:flex-end;-ms-flex-align:end;align-items:flex-end;-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}@media all and (max-width: 768px){.l-layer{display:block}}.l-layer__text{width:100%;position:relative;margin-right:-5vw;background:var(--color-bg);padding:5rem 5rem 0}@media all and (max-width: 768px){.l-layer__text{margin-left:0;padding:0}}.l-layer__img{width:100%}.l-layer__img img{width:100%}.c-heading{margin-top:var(--space-headline);clear:both}.c-en{font-family:var(--font-en)}.c-attention{color:var(--color-error)}.c-lead{font-size:1.5em}.wp-block-button__link{padding:20px 60px;display:inline-block;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;min-width:340px;background:var(--color-base);color:#fff;font-size:18px;text-align:center;position:relative;z-index:1}.wp-block-button__link .icon{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;width:38px;height:38px;background-color:#fff;border-radius:100%;position:absolute;top:18px;right:20px;z-index:2;-webkit-transition:inherit;transition:inherit}.wp-block-button__link .icon::after{content:"";display:inline-block;background-image:url(./images/common/icon_btn_arrow.svg);background-repeat:no-repeat;background-size:contain;background-position:center;width:16px;height:8px;-webkit-transition:inherit;transition:inherit}@media(any-hover: hover){.wp-block-button__link:hover,.wp-block-button__link:focus-visible{background:var(--color-hover);color:#fff}.wp-block-button__link:hover .icon::after,.wp-block-button__link:focus-visible .icon::after{background-image:url(./images/common/icon_btn_arrow_hover.svg)}}.wp-block-button__link.wp-element-button{padding:3px 60px 3px 0;min-width:unset;background-color:unset;color:var(--color-text)}.wp-block-button__link.wp-element-button .icon{top:0;right:0}.wp-block-button__link.wp-element-button .icon::after{background-image:url(./images/common/icon_arrow.svg)}@media(any-hover: hover){.wp-block-button__link.wp-element-button:hover .icon,.wp-block-button__link.wp-element-button:focus-visible .icon{background:var(--color-hover)}.wp-block-button__link.wp-element-button:hover .icon::after,.wp-block-button__link.wp-element-button:focus-visible .icon::after{background-image:url(./images/common/icon_arrow_white.svg)}}.wp-block-button.is-style-outline .wp-block-button__link{border-color:var(--color-base);color:var(--color-base)}@media(any-hover: hover){.wp-block-button.is-style-outline .wp-block-button__link:hover,.wp-block-button.is-style-outline .wp-block-button__link:focus-visible{background:var(--color-base);color:var(--color-bg)}}.wp-block-button.is-style-outline .wp-block-button__link:focus{background:var(--color-base);color:var(--color-bg)}.m-btngroup{position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;gap:1rem;margin:6rem 0 0}@media all and (max-width: 768px){.m-btngroup{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}}.c-icon{width:1em;height:1em;margin-right:.3rem;margin-left:.3rem}.c-icon-blank{max-height:1em;max-width:1em;fill:currentColor}.c-icon-file{height:1em}a.c-img-zoom{cursor:-webkit-zoom-in;cursor:zoom-in;position:relative;display:inline-block}a.c-img-zoom::after{position:absolute;content:"";inset:0;background:center/50% 50% no-repeat rgba(0,0,0,.3) url("images/common/icon_zoom.svg");width:2.5rem;height:2.5rem}.lum-lightbox.lum-open{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10001}.lum-lightbox.lum-open:hover{cursor:-webkit-zoom-out;cursor:zoom-out}.lum-gallery-button::after{width:2rem;height:2rem;border-width:2px}.lum-close-button{opacity:.5}.c-list{margin-block:var(--space-comp)}.c-list--bullet li{padding-left:1.2rem}.c-list--bullet li::before{content:"";position:absolute;top:.6em;left:.5rem;width:6px;height:6px;background:var(--color-base);border-radius:100%}.c-list--bullet li:has(a)::before{border-style:solid;border-width:0 2px 2px 0;border-color:var(--color-base);content:"";display:inline-block;position:absolute;height:6px;width:6px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);border-radius:0;background:rgba(0,0,0,0)}.c-list--bullet ol,.c-list--bullet ul{margin-top:0;margin-bottom:0}.c-list--number{counter-reset:num}.c-list--number li{padding-left:1.2rem}.c-list--number li::before{position:absolute;counter-increment:num;content:counter(num) ".";display:inline-block;top:0;left:0}.c-list--number ol,.c-list--number ul{margin-top:0;margin-bottom:0}.c-list--rice li{margin:0 0 0 1em;text-indent:-1em}.c-list--rice li::before{display:none}table ul,table ol{margin:0}.wp-block-flexible-table-block-table{margin-block:var(--space-comp)}@media all and (max-width: 768px){.wp-block-flexible-table-block-table.is-scroll-on-mobile{cursor:-webkit-grab;cursor:grab}}@media all and (max-width: 768px){.wp-block-flexible-table-block-table.is-scroll-on-mobile:active{cursor:-webkit-grabbing;cursor:grabbing}}.wp-block-flexible-table-block-table.is-scroll-on-mobile::before{content:"※この表は横にスクロールできます";position:-webkit-sticky;position:sticky;top:0;left:0;font-size:90%}@media all and (min-width: 769px){.wp-block-flexible-table-block-table.is-scroll-on-mobile::before{content:none}}.wp-block-flexible-table-block-table.is-scroll-on-mobile table{min-width:800px}.c-box--fill{background:rgba(var(--color-base), 0.1);padding:2rem;margin-block:var(--space-comp)}.c-box--fill *:first-child{margin-top:0}.c-box--fill *:last-child{margin-bottom:0}.c-box--border{border:2px solid var(--color-base);padding:2rem;margin-block:var(--space-comp)}.c-box--border *:first-child{margin-top:0}.c-box--border *:last-child{margin-bottom:0}.m-header{padding-bottom:15px;width:100%;background-color:#fff;position:fixed;top:0;left:0;z-index:100}.m-header__inner{padding:0 25px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;width:100%;height:74px}.m-header__nav{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;gap:14px;height:100%}@media all and (max-width: 768px){.m-header__nav{display:none}}.m-header__nav-wrap{padding-right:40px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;gap:44px;height:100%}.m-header__nav-item{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;height:100%}.m-header__nav-link{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;height:100%;color:var(--color-text);font-size:18px;font-weight:bold;text-decoration:none}.m-header__nav-btn{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;width:180px;height:74px;border-radius:0 0 5px 5px;color:#fff;font-size:18px;font-weight:bold;line-height:1;text-decoration:none}.m-header__nav-btn.--01{background-color:#1f91d3}.m-header__nav-btn.--02{background-color:#e14728}.m-header__nav-btn:hover{color:#fff !important;background-color:var(--color-text)}.m-header__nav-btn:visited{color:#fff !important}.m-header__logo{line-height:1;margin-block:0;width:303px;height:30px}.m-header__logo a{width:100%;height:100%}.m-header__logo img{width:100%}@media all and (min-width: 769px){.m-hamburger__toggle{display:none !important}}.m-hamburger__toggle{position:fixed;top:0;right:0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;width:4rem;height:4rem;background:var(--color-base);cursor:pointer;z-index:1001}.m-hamburger__toggle-bars{display:inline-block;width:24px;height:2px;background:var(--color-bg);position:relative;-webkit-transition:all var(--transition) ease-in-out;transition:all var(--transition) ease-in-out}.m-hamburger__toggle-bars::before,.m-hamburger__toggle-bars::after{content:"";display:block;width:24px;height:2px;background:var(--color-bg);position:absolute;left:0;-webkit-transition:all var(--transition) ease-in-out;transition:all var(--transition) ease-in-out}.m-hamburger__toggle-bars::before{top:-8px}.m-hamburger__toggle-bars::after{top:8px}.is-drawer-open .m-hamburger__toggle-bars{background:rgba(0,0,0,0)}.is-drawer-open .m-hamburger__toggle-bars::before{translate:0 8px;rotate:45deg}.is-drawer-open .m-hamburger__toggle-bars::after{translate:0 -8px;rotate:-45deg}@media all and (min-width: 769px){.m-hamburger__drawer{display:none}}.m-hamburger__drawer[aria-hidden=true]{display:none}.m-hamburger__drawer{position:fixed;top:0;right:-100%;width:80%;height:100%;background-color:var(--color-bg);-webkit-transition:right var(--transition) ease-in-out;transition:right var(--transition) ease-in-out;z-index:1000;overflow-y:auto}.m-hamburger__drawer[aria-hidden=false]{right:0}body.is-drawer-open{overflow:hidden}.m-header__skip-link{display:block;margin-top:50px}.m-footer{overflow:hidden}.m-footer__img{width:100%;height:auto;aspect-ratio:1/.41}.m-footer__img img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center}.m-footer__cta{padding:60px 0;background-color:#fff}.m-footer__cta__inner{margin:0 auto;display:grid;grid-template-columns:455fr 495fr;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;width:100%;max-width:950px}.m-footer .cta-head{padding-bottom:30px}@media all and (max-width: 768px){.m-footer .cta-head .top-heading2{-webkit-box-ordinal-group:2;-webkit-order:1;-ms-flex-order:1;order:1}}.m-footer .cta-head .top-heading2__jp{margin-bottom:6px}.m-footer .cta-head .top-heading2__en{font-size:70px}.m-footer .cta-head__txt{margin:15px 0 0}.m-footer .cta-contents{padding:0 40px;background-color:var(--color-base2);border-radius:10px}.m-footer .cta-contents__box{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.m-footer .cta-contents__box.--01{padding:40px 0 35px}.m-footer .cta-contents__box.--01 .txt-01{margin:0;color:#fff;font-size:20px;font-weight:bold;text-align:center}.m-footer .cta-contents__box.--01 .txt-02{margin:16px 0 0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;color:#fff;font-family:var(--font-en);font-size:45px;font-weight:500;letter-spacing:1px;line-height:1;text-align:center;position:relative}.m-footer .cta-contents__box.--01 .txt-02::before{content:"";margin-right:12px;display:inline-block;background-image:url(./images/common/icon_tel.svg);background-repeat:no-repeat;background-size:contain;background-position:center;width:36px;height:36px}.m-footer .cta-contents__box.--01 .txt-03{margin:16px 0 0;color:#fff;font-size:15px;text-align:center}.m-footer .cta-contents__box.--02{padding:40px 0 45px;border-top:1px solid #fff}.m-footer .cta-contents__box.--02 .txt-01{margin:0;color:#fff;font-size:20px;font-weight:bold;text-align:center}.m-footer .cta-contents__box.--02 .txt-02{margin:18px 0 0;padding:23px 0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;width:100%;max-width:390px;background-color:#fff;border-radius:100px;color:var(--color-base2);font-size:20px;font-weight:bold;text-align:center;text-decoration:none;position:relative}.m-footer .cta-contents__box.--02 .txt-02::before{content:"";margin-right:12px;display:inline-block;background-image:url(./images/common/icon_mail.svg);background-repeat:no-repeat;background-size:contain;background-position:center;width:36px;height:36px}.m-footer .cta-contents__box.--02 .txt-02::after{content:"";display:inline-block;width:calc(100% - 8px);height:calc(100% - 8px);border:1px solid var(--color-base2);border-radius:100px;position:absolute;top:4px;left:4px;z-index:2;opacity:0;-webkit-transition:inherit;transition:inherit}@media(any-hover: hover){.m-footer .cta-contents__box.--02 .txt-02:hover::after,.m-footer .cta-contents__box.--02 .txt-02:focus-visible::after{opacity:1}}.m-footer__main{padding:80px}.m-footer__main__inner{margin:0 auto;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:50px 0;width:100%;max-width:1280px}.m-footer__main .main-contact__address__logo{margin:0;width:317px;height:31px}.m-footer__main .main-contact__address__logo img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;-o-object-position:center;object-position:center}.m-footer__main .main-contact__address__txt-01{margin:20px 0 0;font-size:16px;line-height:1}.m-footer__main .main-contact__address__txt-02{margin:10px 0 0;font-size:16px;line-height:1}.m-footer__main .main-contact__address__txt-02 span{margin-right:5px}.m-footer__main .main-contact__copyright{margin-top:70px;display:block;font-size:12px}.m-footer__main .main-nav{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:130px 75px}.m-footer__main .main-nav__box-01 .list-01{display:grid;grid-template-columns:1fr 1fr 1fr;grid-auto-flow:column;grid-template-rows:repeat(2, auto)}.m-footer__main .main-nav__box-01 .list-01 li{margin-bottom:1em}.m-footer__main .main-nav__box-01 .list-01 li.li-02,.m-footer__main .main-nav__box-01 .list-01 li.li-04{grid-row:2/5}.m-footer__main .main-nav__box-01 .list-01 li.li-05{grid-row:1/4}.m-footer__main .main-nav__box-01 .list-01 a{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;color:var(--color-text);font-size:16px;text-decoration:none;position:relative}.m-footer__main .main-nav__box-01 .list-01 a::before{content:"";margin-right:.5em;display:inline-block;width:8px;height:7px;background-color:var(--color-text);-webkit-clip-path:polygon(0 0, 100% 50%, 0 100%);clip-path:polygon(0 0, 100% 50%, 0 100%)}@media(any-hover: hover){.m-footer__main .main-nav__box-01 .list-01 a:hover,.m-footer__main .main-nav__box-01 .list-01 a:focus-visible{color:var(--color-base2)}}.m-footer__main .main-nav__box-01 .list-01 li>ul{margin-top:1em;margin-left:1.3em}.m-footer__main .main-nav__box-01 .list-01 li>ul li{margin-bottom:.6em}.m-footer__main .main-nav__box-01 .list-01 li>ul li a::before{width:5px;height:5px;background-color:#737e81;border-radius:100%;-webkit-clip-path:none;clip-path:none}.m-footer__main .main-nav__box-01 .list-02{margin-top:40px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.m-footer__main .main-nav__box-01 .list-02 li:first-child a{border-left:1px solid var(--color-text)}.m-footer__main .main-nav__box-01 .list-02 a{padding:0 40px;display:inline-block;border-right:1px solid var(--color-text);color:var(--color-text);font-size:16px;line-height:1;text-decoration:none}@media(any-hover: hover){.m-footer__main .main-nav__box-01 .list-02 a:hover,.m-footer__main .main-nav__box-01 .list-02 a:focus-visible{color:var(--color-base2)}}.m-footer__main .main-nav__box-02{padding-left:40px;background-color:var(--color-base);position:relative;z-index:1}.m-footer__main .main-nav__box-02::after{content:"";display:inline-block;width:100vw;height:100vh;background-color:var(--color-base);position:absolute;top:-80px;left:0;z-index:-1}.m-footer__main .main-nav__box-02 a{display:inline-block;color:#fff;font-size:16px;text-decoration:none;position:relative}.m-footer__main .main-nav__box-02 a::before{content:"";margin-right:.5em;display:inline-block;width:8px;height:7px;background-color:#fff;-webkit-clip-path:polygon(0 0, 100% 50%, 0 100%);clip-path:polygon(0 0, 100% 50%, 0 100%);position:relative;top:-4px}@media(any-hover: hover){.m-footer__main .main-nav__box-02 a:hover,.m-footer__main .main-nav__box-02 a:focus-visible{color:var(--color-base2)}}.m-footer__main .main-nav__box-02 li>ul{margin-top:1em;margin-left:1.3em}.m-footer__main .main-nav__box-02 li>ul li{margin-bottom:.6em}.m-footer__main .main-nav__box-02 li>ul li a::before{width:5px;height:5px;background-color:#fff;border-radius:100%;-webkit-clip-path:none;clip-path:none}.js-pageTop{position:fixed;right:clamp(20px,2.394px + 4.695vw,70px);bottom:clamp(20px,2.394px + 4.695vw,70px);display:none}.js-pageTop a{width:5rem;height:5rem;background:#000;display:block;color:#fff}.m-entry-list .m-article{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}.m-entry-list .m-article:first-child .m-article__link{border-top:1px solid #7a7a78}.m-entry-list .m-article__link{padding:26px 0;display:grid;grid-template-columns:100px 100px 1fr;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;gap:15px;border-bottom:1px solid #7a7a78;text-decoration:none;color:var(--color-text)}@media(any-hover: hover){.m-entry-list .m-article__link:hover,.m-entry-list .m-article__link:focus-visible{background-color:#eae8e0}}.m-entry-list .m-article__date{-webkit-box-ordinal-group:2;-webkit-order:1;-ms-flex-order:1;order:1;color:#818485;font-family:var(--font-en);font-size:16px;letter-spacing:1px;text-align:right}.m-entry-list .m-article__category{-webkit-box-ordinal-group:3;-webkit-order:2;-ms-flex-order:2;order:2;padding:10px 0;width:100%;height:-webkit-fit-content;height:-moz-fit-content;height:fit-content;background-color:#fff;border-radius:50px;font-size:14px;text-align:center;line-height:1}.m-entry-list .m-article__title{-webkit-box-ordinal-group:4;-webkit-order:3;-ms-flex-order:3;order:3;font-size:16px}.m-entry-card{display:grid;grid-template-columns:repeat(4, 1fr)}@media all and (max-width: 768px){.m-entry-card{grid-template-columns:repeat(2, 1fr)}}.m-entry-card .m-article__link{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;height:100%}.m-entry-card .m-article__content{-webkit-box-ordinal-group:3;-webkit-order:2;-ms-flex-order:2;order:2}.m-entry-card .m-article__thumb{-webkit-box-ordinal-group:2;-webkit-order:1;-ms-flex-order:1;order:1;overflow:hidden}.m-entry-card .m-article__thumb .wp-post-image{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.m-page-title{background:var(--color-base);color:var(--color-bg);padding:1em}.m-breadcrumb{white-space:nowrap;overflow-x:auto}.m-breadcrumb ol{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.m-breadcrumb::-webkit-scrollbar{height:8px}.m-breadcrumb::-webkit-scrollbar-track{background-color:rgba(0,0,0,0)}.m-breadcrumb::-webkit-scrollbar-thumb{background-color:rgba(var(--color-text), 0.05);border-radius:8px}.m-slider{--swiper-theme-color: var(--color-base);overflow:hidden;position:relative;margin-block:var(--space-comp)}.m-slider .swiper-slide img{width:100%}.m-slider .swiper-button-prev,.m-slider .swiper-button-next{color:var(--swiper-theme-color);top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.m-slider .swiper-pagination{position:static}.m-slider .swiper-pagination-bullet-active{background-color:var(--swiper-theme-color)}.m-faq__item{background:rgba(var(--color-base), 0.1);margin-bottom:1rem;overflow:hidden}.m-faq__item[open] .m-faq__question::before{rotate:90deg}.m-faq__question{position:relative;display:block;cursor:pointer;font-weight:bold}.m-faq__question::before,.m-faq__question::after{content:"";display:block;position:absolute;right:16px;top:50%;translate:0 -50%;width:14px;height:2px;background:var(--color-text);-webkit-transition:var(--transition);transition:var(--transition)}.m-faq__question::-webkit-details-marker{display:none}.m-faq__answer{overflow:hidden}.pagination__nav{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap}.pagination__nav .icon{width:1em;height:1em}.m-share{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;gap:1em 2em;margin-block:var(--space-headline);-webkit-padding-before:var(--space-headline);padding-block-start:var(--space-headline);-webkit-border-before:1px solid color-mix(in srgb, var(--color-text) 10%, transparent);border-block-start:1px solid color-mix(in srgb, var(--color-text) 10%, transparent)}@media all and (max-width: 768px){.m-share{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}}.m-share__title{margin-block:0;font-size:clamp(1rem,1.25vw,1.25rem);color:color-mix(in srgb, var(--color-text) 60%, transparent)}.m-share__list{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;gap:1em;padding:0;margin:0;list-style:none}.m-share__item{inline-size:40px;block-size:40px}.m-share__link{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;inline-size:100%;block-size:100%;overflow:hidden;border-radius:50%;color:var(--color-bg);-webkit-transition:-webkit-transform .2s ease;transition:-webkit-transform .2s ease;transition:transform .2s ease;transition:transform .2s ease, -webkit-transform .2s ease}@media(any-hover: hover){.m-share__link:hover,.m-share__link:focus-visible{color:var(--color-bg);-webkit-transform:scale(1.2);transform:scale(1.2)}}.m-share__link .c-icon{inline-size:1.5em;block-size:1.5em;fill:currentColor}.m-share__link--facebook{color:var(--color-facebook)}@media(any-hover: hover){.m-share__link--facebook:hover,.m-share__link--facebook:focus-visible{color:var(--color-facebook)}}.m-share__link--facebook .c-icon{inline-size:100%;block-size:auto;margin-inline:0}.m-share__link--x{background-color:var(--color-x)}.m-share__link--line{background-color:var(--color-line)}.l-content__side__archive{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start;-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.l-content__side__archive li{width:50%}.m-widget{margin-bottom:var(--space-headline)}.m-widget__title{margin-block:.67em}.m-widget__archive{display:grid;grid-template-columns:repeat(2, 1fr);gap:.5rem 2rem}.m-widget__archive li{-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1}.m-widget .c-list--bullet{margin-top:0}.m-toc-list a{display:block}.m-toc-list .is-current{font-weight:bold;background:rgba(var(--color-base), 0.2)}.m-entry-nav{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-block:var(--space-comp)}.m-entry-nav__item{-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;text-align:center}.m-entry-nav__item a{display:block}.m-search-form__field{outline-offset:0}.m-search-form__btn{background-color:var(--color-base);color:#fff}@media all and (max-width: 768px){.wp-block-image .alignleft,.wp-block-image .alignright{width:50%}}@media all and (max-width: 768px){.wp-block-media-text>.wp-block-media-text__content{padding:0}}@media(any-hover: hover){.wp-block-file__button:hover,.wp-block-file__button:focus-visible{color:#fff}}.wp-block-separator{border:none;block-size:1px;background-color:color-mix(in srgb, var(--color-text) 10%, transparent);margin-block:var(--space-xl)}.wp-block-embed iframe{width:100%;border:0}.page-styleguide .toc{height:calc(100vh - 32px);overflow-y:auto;top:32px}.page-styleguide .toc__inner{margin:0 2rem}.page-styleguide .toc__inner ol ol{padding-left:1rem}.page-styleguide .row>[class^=col],.page-styleguide .row>[class^=g-col]{background:#00afcc}.page-styleguide .row>[class^=col]:nth-child(even),.page-styleguide .row>[class^=g-col]:nth-child(even){background:#a688bd}.page-styleguide .docs{background-color:#272822;clear:both;margin:1rem 0 2rem;position:relative}.page-styleguide .docs .control{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;padding:.6rem;position:absolute;right:0}.page-styleguide .docs .control p{margin:0;padding:0;font-size:1.3rem;font-weight:bold;color:#212529}@media all and (max-width: 768px){.page-styleguide .docs .control div:last-child{text-align:right}}.page-styleguide .docs pre{margin:0}.page-styleguide .code-type{background:#888;color:#fff;display:inline-block;padding:8px 16px;margin-left:10px;margin-right:8px;font-size:.7rem}.page-styleguide .copy-button{color:#888;font-size:.6em;padding:.4rem .8rem;background-color:#333;font-weight:bold;border-radius:3px}@media(any-hover: hover){.page-styleguide .copy-button:hover,.page-styleguide .copy-button:focus-visible{color:#000;background-color:#fff}}.page-styleguide .copy-button.success{background-color:#c8e6c9;color:#007e33}.page-styleguide .copy-button.failed{background-color:#ffcdd2;color:#c00}.page-styleguide .hljs{line-height:1.3}.page-styleguide .hljs *{font-family:"SFMono-Regular",Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}.page-styleguide .hljs-ln-numbers{min-width:2rem}.top-visual{position:relative;overflow-x:hidden;width:100%;max-width:100vw;height:740px}.top-visual::after{content:"";display:inline-block;background-image:url(./images/top/img_mv_border.svg);background-repeat:no-repeat;background-size:cover;background-position:top;width:518px;height:100%;position:absolute;top:0;left:calc(50% - 85px);transform:translateX(-50%);-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);z-index:1}.top-visual-contents{width:100%;max-width:1340px;height:100%;position:absolute;left:50%;transform:translateX(-50%);-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);z-index:2}.top-visual-contents .contents__01{position:absolute;top:50%;transform:translateY(-50%);-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);z-index:3}.top-visual-contents .contents__01 .txt01{margin:0 0 30px;color:#fff;font-family:var(--font-en);font-size:20px;font-weight:400;letter-spacing:3px;text-transform:uppercase}.top-visual-contents .contents__02{position:absolute;left:500px;bottom:35px;z-index:3}.top-visual-contents .contents__02 .txt{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start;gap:6px}.top-visual-contents .contents__02 .txt span{padding:8px;display:block;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;background-color:#1d1d1d;color:#fff;line-height:1}.top-visual__wrap{width:100%;height:100%}.top-visual .swiper-slide img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.top-heading2{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}.top-heading2__jp{-webkit-box-ordinal-group:2;-webkit-order:1;-ms-flex-order:1;order:1;margin:0;font-size:22px;font-weight:bold;letter-spacing:3px}.top-heading2__en{-webkit-box-ordinal-group:3;-webkit-order:2;-ms-flex-order:2;order:2;margin:0;font-family:var(--font-en);font-size:100px;font-weight:500;letter-spacing:-2px;line-height:1;text-transform:uppercase}.top-strengths{padding-top:125px;padding-bottom:130px;position:relative;z-index:1}.top-strengths::after{content:"";display:inline-block;background-image:url(./images/top/img_border_02.svg);background-repeat:no-repeat;background-size:cover;background-position:top;width:730px;height:100%;position:absolute;top:0;left:calc(50% + 235px);transform:translateX(-50%);-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);z-index:-1}.top-strengths__inner{margin:0 auto;width:100%;max-width:1040px}.top-strengths__inner.--over{max-width:1080px}.top-strengths__intro{margin:20px 0 0}.top-strengths__marquee{margin-top:70px;overflow:hidden;width:100%}.top-strengths__marquee__track{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;width:-webkit-max-content;width:-moz-max-content;width:max-content;-webkit-animation:marquee-scroll 40s linear infinite;animation:marquee-scroll 40s linear infinite}.top-strengths__marquee__track img{height:270px;width:auto;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;display:block}.top-strengths__list{margin-top:60px;display:grid;grid-template-columns:1fr 1.2fr 1fr 1fr;gap:50px}.top-strengths__list li{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}.top-strengths__list .list-icon{-webkit-box-ordinal-group:2;-webkit-order:1;-ms-flex-order:1;order:1;height:115px}.top-strengths__list .list-icon img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.top-strengths__list .list-title-en{-webkit-box-ordinal-group:3;-webkit-order:2;-ms-flex-order:2;order:2;margin:20px 0 0;font-family:var(--font-en);font-size:16px;letter-spacing:3px;line-height:1;text-align:center;text-transform:uppercase}.top-strengths__list .list-title-jp{-webkit-box-ordinal-group:4;-webkit-order:3;-ms-flex-order:3;order:3;margin:18px 0 0;font-size:22px;font-weight:bold;text-align:center}.top-strengths__list .list-txt{-webkit-box-ordinal-group:5;-webkit-order:4;-ms-flex-order:4;order:4;margin:16px 0 0;font-size:16px}.top-strengths__btn{margin:50px auto 0;text-align:center}@-webkit-keyframes marquee-scroll{from{-webkit-transform:translateX(0);transform:translateX(0)}to{-webkit-transform:translateX(-50%);transform:translateX(-50%)}}@keyframes marquee-scroll{from{-webkit-transform:translateX(0);transform:translateX(0)}to{-webkit-transform:translateX(-50%);transform:translateX(-50%)}}.top-products{padding:125px 0 250px;background-color:#fff;position:relative;z-index:1}.top-products::before{content:"";margin-bottom:-100vh;display:inline-block;background-image:url(./images/top/img_border_03.svg);background-repeat:no-repeat;background-size:cover;background-position:top;width:1440px;height:100vh;position:-webkit-sticky;position:sticky;top:0;left:calc(50% + 235px);transform:translateX(-50%);-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);z-index:-1}.top-products__inner{margin:0 auto;width:100%;max-width:1090px}.top-products__contents{margin:50px auto 0;display:grid;grid-template-columns:460fr 490fr 40px;gap:50px;max-width:1100px}.top-products__contents__visual{height:calc(100vh - 89px);-webkit-align-self:start;-ms-flex-item-align:start;align-self:start;position:-webkit-sticky;position:sticky;top:89px}.top-products__contents__visual .visual-inner{width:calc(100% + (100vw - 1090px)/2);height:100%;position:absolute;top:0;right:0}@media screen and (max-width: 1090px){.top-products__contents__visual .visual-inner{width:100%}}.top-products__contents__visual .visual-img{position:absolute;inset:0;width:100%;height:100%;opacity:0;-webkit-transition:opacity .5s ease;transition:opacity .5s ease}.top-products__contents__visual .visual-img .txt{margin:0;color:#fff;font-family:var(--font-en);font-size:80px;line-height:1;-webkit-writing-mode:vertical-rl;-ms-writing-mode:tb-rl;writing-mode:vertical-rl;-webkit-transform:rotate(180deg);transform:rotate(180deg);position:absolute;right:-9px;bottom:30px;z-index:2}.top-products__contents__visual .visual-img img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.top-products__contents__visual .visual-img.is-active{opacity:1}.top-products__contents__main{padding:90px 0 0}.top-products__contents__main .main-sec{min-height:100vh;padding:40px 0}.top-products__contents__main .main-sec__heading{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}.top-products__contents__main .main-sec__heading .txt-en{margin-bottom:10px;padding:8px 15px;display:inline-block;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;background-color:var(--color-text);color:#fff;font-family:var(--font-en);font-size:14px;font-weight:400;letter-spacing:2px;text-transform:uppercase}.top-products__contents__main .main-sec__heading .txt-en .num{margin-right:5px}.top-products__contents__main .main-sec__heading .txt-jp{font-size:34px;font-weight:bold}.top-products__contents__main .main-sec__heading .txt-jp .min{font-size:18px;font-weight:normal}.top-products__contents__main .main-sec__txt{margin:20px 0;font-size:16px}.top-products__contents__main .main-sec__list li:first-child a{border-top:1px solid var(--color-text)}.top-products__contents__main .main-sec__list a{padding:20px 50px 20px 10px;display:block;color:var(--color-text);border-bottom:1px solid var(--color-text);text-decoration:none;position:relative}.top-products__contents__main .main-sec__list a::after{content:"";display:inline-block;background-image:url(./images/common/icon_arrow.svg);background-repeat:no-repeat;background-size:contain;background-position:top;width:16px;height:4px;position:absolute;top:50%;transform:translateY(-50%);-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);right:10px}.top-products__contents__main .main-sec__list a:hover{background-color:#f5f4f0}.top-products__contents__toc{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;height:calc(100vh - 89px);position:-webkit-sticky;position:sticky;top:89px;-webkit-align-self:start;-ms-flex-item-align:start;align-self:start}.top-products__contents__toc ul{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:20px;list-style:none}.top-products__contents__toc ul li a{display:block;padding:15px 10px 10px;background-color:#f5f4f0;border-radius:20px;color:var(--color-text);font-size:16px;text-decoration:none;line-height:1;-webkit-writing-mode:vertical-rl;-ms-writing-mode:tb-rl;writing-mode:vertical-rl;-webkit-transition:all .3s;transition:all .3s}.top-products__contents__toc ul li a.is-current{background-color:var(--color-base);color:#fff}.top-products__btn{margin-top:40px;margin-right:70px;text-align:right}.top-news{padding:110px 0}.top-news__inner{margin:0 auto;display:grid;grid-template-columns:220px 820px;width:100%;max-width:1070px}@media all and (max-width: 768px){.top-news__inner{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}}@media all and (max-width: 768px){.top-news__head{display:contents}}@media all and (max-width: 768px){.top-news .top-heading2{-webkit-box-ordinal-group:2;-webkit-order:1;-ms-flex-order:1;order:1}}.top-news .top-heading2__jp{margin-bottom:6px;font-size:18px}.top-news .top-heading2__en{font-size:50px}.top-news .wp-block-button{margin-top:85px}@media all and (max-width: 768px){.top-news .wp-block-button{-webkit-box-ordinal-group:4;-webkit-order:3;-ms-flex-order:3;order:3}}.top-news .m-entry-list{-webkit-box-ordinal-group:3;-webkit-order:2;-ms-flex-order:2;order:2}.l-form,.wpcf7{max-width:790px;margin-inline:auto}.l-form .title,.wpcf7 .title{text-align:center;font-size:clamp(1.25rem,1.6666666667vw,1.75rem)}.contact-telbox{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;gap:2em;margin:2em 0 6em}@media all and (max-width: 768px){.contact-telbox{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}}.contact-telbox__item{-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;text-align:center;border:1px solid color-mix(in srgb, var(--color-text) 10%, transparent);padding:2em}.contact-telbox__name{font-weight:bold}.contact-telbox__num{font-weight:bold;font-size:clamp(1.75rem,2.2222222222vw,2.25rem);font-family:var(--font-en)}.contact-telbox__note{font-size:.9em}.m-flow{position:relative;margin:2rem auto;padding:0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;max-width:32rem}.m-flow li{position:relative;list-style-type:none;text-align:center;text-transform:uppercase;width:33.3333333333%;color:color-mix(in srgb, var(--color-text) 40%, var(--color-bg));font-weight:bold;counter-increment:steps;font-size:clamp(0.9375rem,1.1111111111vw,1.125rem);padding-left:0}.m-flow li:before{position:static;display:block;width:26px;height:26px;margin:7px auto 10px auto;content:"";line-height:26px;font-size:12px;text-align:center;border-radius:50%;background-color:color-mix(in srgb, var(--color-text) 7%, var(--color-bg));content:counter(steps)}.m-flow li:after{position:absolute;z-index:-1;top:18px;left:-50%;width:100%;height:2px;content:"";background-color:color-mix(in srgb, var(--color-text) 7%, var(--color-bg))}.m-flow li:first-child:after{content:none}.m-flow li[aria-current=page],.m-flow li.complete{color:var(--color-base)}.m-flow li[aria-current=page]:before,.m-flow li.complete:before{background-color:var(--color-base);color:var(--color-bg)}.m-flow li[aria-current=page]:after,.m-flow li.complete:after{background-color:var(--color-base)}.contactform{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:2em}.contactform__row{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:.2em}.contactform__label{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;gap:.5em;font-weight:bold}.contactform__label span{background-color:color-mix(in srgb, var(--color-text) 10%, var(--color-bg));font-size:.6em;padding:.1em .5em;font-weight:normal}.contactform__label .required{background-color:var(--color-error);color:#fff}.contactform__field{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:.2em}.contactform__hint{font-size:.8em;line-height:1.5}.acceptance p{text-align:center}@media all and (max-width: 768px){.acceptance p{text-align:left}}.acceptance .text{border:1px solid color-mix(in srgb, var(--color-text) 10%, var(--color-bg));max-height:20rem;overflow-y:auto;padding:2em;margin-bottom:2rem}@media all and (max-width: 768px){.acceptance .text{padding:1em}}.acceptance .text p{text-align:left}.acceptance .text h2:first-of-type{margin-top:0}.acceptance [data-name=your-privacy]{display:block;text-align:center}.acceptance [data-name=your-privacy] .wpcf7-list-item{margin-inline:auto}.acceptance [data-name=your-privacy] label{padding:.5rem 1rem;background-color:color-mix(in srgb, var(--color-text) 6%, var(--color-bg))}.wpcf7-form input[type=text],.wpcf7-form input[type=tel],.wpcf7-form input[type=url],.wpcf7-form input[type=email],.wpcf7-form input[type=number],.wpcf7-form input[type=date],.wpcf7-form select,.wpcf7-form textarea{width:100%}.wpcf7-form .wpcf7-checkbox,.wpcf7-form .wpcf7-radio{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}.wpcf7-form .wpcf7-list-item{margin:0}.wpcf7-form .wpcf7-list-item label{display:block}.wpcf7-form .wpcf7-textarea{field-sizing:content;min-height:5lh}.wpcf7-form .wpcf7-range{width:100%}.wpcf7-form .wpcf7-not-valid-tip{font-weight:bold;position:relative;font-size:clamp(0.9375rem,1.1111111111vw,1.125rem);padding-left:1.2em}.wpcf7-form .wpcf7-not-valid-tip::before{position:absolute;content:"";display:inline-block;top:5px;left:0;width:1.1em;height:1.1em;background-image:url("images/common/icon_attention.svg");background-size:cover;background-repeat:no-repeat}.wpcf7-form .wpcf7-submit{background-color:var(--color-base);color:#fff}@media(any-hover: hover){.wpcf7-form .wpcf7-submit:hover,.wpcf7-form .wpcf7-submit:focus-visible{background-color:color-mix(in srgb, var(--color-base) 95%, black)}}.wpcf7-form .wpcf7-submit:focus{background-color:color-mix(in srgb, var(--color-base) 95%, black)}.wpcf7-form .wpcf7-submit:disabled{background-color:color-mix(in srgb, var(--color-text) 8%, var(--color-bg));color:color-mix(in srgb, var(--color-text) 50%, var(--color-bg))}.wpcf7-form .wpcf7-previous{background-color:color-mix(in srgb, var(--color-text) 8%, var(--color-bg))}@media(any-hover: hover){.wpcf7-form .wpcf7-previous:hover,.wpcf7-form .wpcf7-previous:focus-visible{background-color:color-mix(in srgb, var(--color-text) 12%, var(--color-bg))}}.wpcf7-form .wpcf7-previous:focus{background-color:color-mix(in srgb, var(--color-text) 12%, var(--color-bg))}.wpcf7-form .wpcf7-spinner{margin:0;position:absolute}#autozip{display:none !important}.grecaptcha-badge{visibility:hidden}body:has(.wpcf7) .grecaptcha-badge{visibility:visible}.u-clearfix{zoom:1}.u-clearfix:after{content:"";display:block;clear:both}@media all and (min-width: 769px){.u-float-left{float:left}.u-float-right{float:right}}.u-clear{clear:both}.u-hidden{display:none}.u-text-bold{font-weight:bold}.u-text-underline{text-decoration:underline}.u-text-sm{font-size:88%}.u-text-xs{font-size:75%}.u-text-lg{font-size:113%}.u-text-x-lg{font-size:140%}.u-valign-top{vertical-align:top}.u-valign-middle{vertical-align:middle}.u-valign-bottom{vertical-align:bottom}.u-text-center,.u-text-center th,.u-text-center td{text-align:center}.u-text-right,.u-text-right th,.u-text-right td{text-align:right}.u-text-left,.u-text-left th,.u-text-left td{text-align:left}.u-image-text{overflow:hidden}.u-text-top{vertical-align:top}.u-text-middle{vertical-align:middle}.u-text-bottom{vertical-align:bottom}.u-word-break{word-break:break-all}.u-nowrap{white-space:nowrap}.u-margin-first{margin-top:0}.u-margin-zero{margin-bottom:0}.u-margin-half{-webkit-margin-after:calc(var(--space-comp)/2);margin-block-end:calc(var(--space-comp)/2)}.u-margin-default{margin-bottom:var(--space-comp)}.u-margin-double{-webkit-margin-after:calc(var(--space-comp)*2);margin-block-end:calc(var(--space-comp)*2)}@media all and (min-width: 769px){.u-sp{display:none}}@media all and (max-width: 768px){.u-pc{display:none}}.u-mt0{margin-top:0px !important}.u-mb0{margin-bottom:0px !important}.u-pt0{padding-top:0px !important}.u-pb0{padding-bottom:0px !important}.u-mt10{margin-top:10px !important}.u-mb10{margin-bottom:10px !important}.u-pt10{padding-top:10px !important}.u-pb10{padding-bottom:10px !important}.u-mt20{margin-top:20px !important}.u-mb20{margin-bottom:20px !important}.u-pt20{padding-top:20px !important}.u-pb20{padding-bottom:20px !important}.u-mt30{margin-top:30px !important}.u-mb30{margin-bottom:30px !important}.u-pt30{padding-top:30px !important}.u-pb30{padding-bottom:30px !important}.u-mt40{margin-top:40px !important}.u-mb40{margin-bottom:40px !important}.u-pt40{padding-top:40px !important}.u-pb40{padding-bottom:40px !important}.u-mt50{margin-top:50px !important}.u-mb50{margin-bottom:50px !important}.u-pt50{padding-top:50px !important}.u-pb50{padding-bottom:50px !important}.u-mt60{margin-top:60px !important}.u-mb60{margin-bottom:60px !important}.u-pt60{padding-top:60px !important}.u-pb60{padding-bottom:60px !important}.u-mt70{margin-top:70px !important}.u-mb70{margin-bottom:70px !important}.u-pt70{padding-top:70px !important}.u-pb70{padding-bottom:70px !important}.u-mt80{margin-top:80px !important}.u-mb80{margin-bottom:80px !important}.u-pt80{padding-top:80px !important}.u-pb80{padding-bottom:80px !important}.u-mt90{margin-top:90px !important}.u-mb90{margin-bottom:90px !important}.u-pt90{padding-top:90px !important}.u-pb90{padding-bottom:90px !important}.u-mt100{margin-top:100px !important}.u-mb100{margin-bottom:100px !important}.u-pt100{padding-top:100px !important}.u-pb100{padding-bottom:100px !important}.screen-reader-text{position:absolute;top:-1000em;-webkit-transition:var(--transition);transition:var(--transition)}.screen-reader-text:focus{left:6px;top:6px;height:auto;width:auto;display:block;font-size:14px;font-weight:600;padding:15px 23px 14px;background:#f0f0f1;color:#2271b1;z-index:100000;line-height:normal;text-decoration:none;-webkit-box-shadow:0 0 2px 2px rgba(0,0,0,.6);box-shadow:0 0 2px 2px rgba(0,0,0,.6)}.is-current{pointer-events:none;text-decoration:none}html{margin-top:0 !important}#wpadminbar{-webkit-transition:var(--transition);transition:var(--transition);opacity:.2}@media(any-hover: hover){#wpadminbar:hover,#wpadminbar:focus-visible{opacity:1}}@media all and (max-width: 768px){#wpadminbar{display:none}}@media print{.header{position:static}}#wpadminbar .quicklinks #wp-admin-bar-gf-current-template .ab-item{height:auto;white-space:normal}#wpadminbar .quicklinks #wp-admin-bar-gf-current-template .ab-sub-wrapper{width:320px}#wpadminbar .quicklinks #wp-admin-bar-gf-current-template-default{max-height:90vh;overflow-x:hidden;overflow-y:auto}#wpadminbar .quicklinks .show-template-name,#wpadminbar .quicklinks #included-files-list{font-family:monospace;text-shadow:none}#wpadminbar .quicklinks .show-template-name{display:inline-block;line-height:1.5;margin-left:1em}#wpadminbar #wp-admin-bar-gf-current-template-includes .ab-item{padding-bottom:.5rem}#wpadminbar #wp-admin-bar-gf-current-template-includes .ab-item ul{margin:0 0 0 1.25rem;padding:0}#wpadminbar #wp-admin-bar-gf-current-template-includes #included-files-list li{list-style:disc;line-height:1.5}/*# sourceMappingURL=style.css.map */
/* Instagram link in the top visual */
.top-instagram {
  position: absolute;
  right: 36px;
  bottom: 90px;
  z-index: 4;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: 74px;
  height: 240px;
  border-radius: 999px;
  background-color: #E52B8E;
  color: #fff;
  text-decoration: none;
  transition: background-color var(--transition);
}
.top-instagram:visited {
  color: #fff;
}
.top-instagram:hover {
  background-color: #cf1477;
  color: #fff;
}
.top-instagram:focus-visible {
  outline: 3px solid #fff;
  outline-offset: -6px;
}
.top-instagram__icon {
  display: block;
  flex: 0 0 30px;
  width: 30px;
  height: 30px;
  background: url(./images/common/icon_instagram.svg) center/contain no-repeat;
}
.top-instagram__text {
  font-family: var(--font-en);
  font-size: 18px;
  line-height: 1;
  letter-spacing: 1px;
  writing-mode: vertical-rl;
  text-orientation: mixed;
}

@media (max-width: 768px) {
  .top-instagram {
    right: 16px;
    bottom: 24px;
    width: 54px;
    height: 180px;
    gap: 10px;
  }
  .top-instagram__text {
    font-size: 16px;
  }
}

/* Keep desktop navigation labels on one line. */
.m-header__inner {
  gap: 16px;
}

.m-header__logo {
  flex-shrink: 0;
}

.m-header__nav {
  flex-shrink: 0;
}

.m-header__nav-link,
.m-header__nav-btn {
  white-space: nowrap;
  flex-shrink: 0;
}

@media (min-width: 769px) and (max-width: 1439px) {
  .m-header__inner {
    padding-inline: clamp(12px, 1.6vw, 25px);
    gap: 8px;
  }

  .m-header__logo {
    width: clamp(140px, calc(24.33vw - 47.1px), 303px);
    height: auto;
  }

  .m-header__nav {
    gap: clamp(6px, 0.8vw, 12px);
  }

  .m-header__nav-wrap {
    gap: clamp(16px, calc(5vw - 22.45px), 50px);
    padding-right: clamp(12px, 1.4vw, 20px);
  }

  .m-header__nav-link,
  .m-header__nav-btn {
    font-size: 18px;
  }

  .m-header__nav-btn {
    width: clamp(88px, calc(14.15vw - 23.3px), 180px);
  }
}


/* Use the same readable size for navigation and action buttons. */
.m-header__nav-btn {
  min-width: calc(7em + 16px);
  padding-inline: 8px;
}
@media (min-width: 960px) and (max-width: 1199px) {
  .m-header__nav-link,
  .m-header__nav-btn { font-size: 16px; }
}
@media (min-width: 769px) and (max-width: 959px) {
  .m-header__nav-link,
  .m-header__nav-btn { font-size: 14px; }
}

/* Main visual: keep the copy inside the design's content margins. */
.top-visual-contents {
  width: calc(100% - 100px);
}

.top-visual-contents .contents__01 {
  left: 0;
  width: 35.52%;
  max-width: 476px;
}

.top-visual-contents .contents__01 .txt01 {
  font-size: 18px;
  letter-spacing: 2px;
  white-space: nowrap;
}

.top-visual-contents .contents__01 .txt02 {
  margin: 0;
}

.top-visual-contents .contents__01 .txt02 img {
  display: block;
  width: 100%;
  height: auto;
}

.top-visual-contents .contents__02 {
  left: 38.8%;
  bottom: 35px;
  max-width: calc(61.2% - 100px);
}

.top-visual-contents .contents__02 .txt {
  margin: 0;
  font-size: 18px;
  font-weight: bold;
}

.top-visual-contents .contents__02 .txt span {
  padding: 6px 8px;
  line-height: 1.4;
}

@media (min-width: 769px) and (max-width: 1199px) {
  .top-visual-contents {
    width: calc(100% - 64px);
  }

  .top-visual-contents .contents__01 .txt01 {
    font-size: 14px;
    letter-spacing: 1px;
  }

  .top-visual-contents .contents__02 .txt {
    font-size: 14px;
  }
}
@media (max-width: 768px) {
  .top-visual-contents {
    width: calc(100% - 40px);
  }

  .top-visual-contents .contents__01 {
    width: 80%;
    top: 32%;
  }

  .top-visual-contents .contents__01 .txt01 {
    font-size: 12px;
    letter-spacing: 1px;
    margin-bottom: 18px;
  }

  .top-visual-contents .contents__02 {
    left: 0;
    bottom: 40px;
    max-width: calc(100% - 64px);
  }

  .top-visual-contents .contents__02 .txt {
    font-size: 12px;
  }
}


/* Preserve the main visual gutter at every desktop width. */
@media (min-width: 769px) {
  .top-visual-contents {
    width: calc(100% - 100px);
    max-width: 1340px;
    left: max(50px, calc((100% - 1340px) / 2));
    transform: none;
    -webkit-transform: none;
    -ms-transform: none;
  }
}


/* Soft shadow on the main visual lettering. */
.top-visual-contents .contents__01 .txt01 {
  text-shadow: 0 3px 6px rgba(0, 0, 0, 0.35);
}
.top-visual-contents .contents__01 .txt02 img {
  filter: drop-shadow(0 4px 6px rgba(0, 0, 0, 0.4));
}


/* Strengths action label */
.top-strengths__btn .wp-block-button__link {
  font-weight: 700;
}


/* Keep the Strengths button label white after visiting the link. */
.top-strengths__btn .wp-block-button__link:visited,
.top-strengths__btn .wp-block-button__link:active {
  color: #fff;
}

/* Keep visited header links in the navigation's normal color. */
.m-header__nav-link:visited {
  color: var(--color-text);
}


/* Strengths photo strip: left gutter only, right edge stays full bleed. */
@media (min-width: 769px) {
  .top-strengths__marquee {
    margin-left: max(80px, calc((100% - 1280px) / 2));
    width: calc(100% - max(80px, calc((100% - 1280px) / 2)));
  }
}

/* Keep the decorative stripe inside Products without changing sticky scrolling. */
.top-products { overflow: clip; }

.top-products__contents__toc a {
  font-weight: 700;
}

@media (min-width: 769px) {
  .top-products__contents__main .main-sec__heading .txt-en { font-size: 16px; }
  .top-products__contents__main .main-sec__list a { font-size: 18px; }
}

@media (min-width: 769px) {
  .top-products__contents__main .main-sec__txt { font-size: 18px; }
}

@media (min-width: 769px) {
  .top-products::before {
    display: block;
    margin-top: -125px;
    margin-bottom: calc(-100vh + 125px);
    margin-left: calc(50% - 855px);
    left: auto;
    background-size: 1440px auto;
    transform: none;
    -webkit-transform: none;
    -ms-transform: none;
  }
}

@media (min-width: 769px) {
  .top-products::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: calc(50% - 480px);
    width: 66px;
    height: 250px;
    background: #E14728;
    transform: skewX(-25deg);
    transform-origin: bottom;
    z-index: -1;
    pointer-events: none;
  }
}

@media (min-width: 769px) {
  .top-products::before {
    position: absolute;
    top: 0;
    left: calc(50% - 895px);
    margin: 0;
    height: 760px;
  }
  .top-products::after { height: 363px; }
}

@media (min-width: 769px) {
  .top-products { padding-bottom: 138px; }
  .top-products::after { height: 250px; }
}

.top-products__btn .wp-block-button__link {
  font-weight: 700;
  color: #fff;
}
.top-products__btn .wp-block-button__link:visited,
.top-products__btn .wp-block-button__link:active {
  color: #fff;
}

@media (min-width: 769px) {
  .top-news .m-entry-list .m-article__link {
    min-height: 92px;
    box-sizing: border-box;
    padding: 27px 0;
    border-bottom-color: #1D1D1D;
  }
  .top-news .m-entry-list .m-article:first-child .m-article__link {
    border-top-color: #1D1D1D;
  }
  .top-news .m-entry-list .m-article__category {
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    height: 36px;
    padding: 0;
    font-size: 14px;
    line-height: 1;
    white-space: nowrap;
  }
}

.top-news .m-entry-list .m-article__title { font-weight: 400; }

@media (min-width: 769px) {
  .top-news {
    position: relative;
    isolation: isolate;
    overflow: clip;
  }
  .top-news::before {
    content: "";
    position: absolute;
    top: -100px;
    bottom: -100px;
    left: calc(50% + 315px);
    width: 60px;
    background: linear-gradient(to bottom, #E14728 0%, #E14728 48%, #1F91D3 48%, #1F91D3 100%);
    transform: rotate(-25deg);
    z-index: -1;
    pointer-events: none;
  }
}

@media (min-width: 769px) {
  .top-news .m-entry-list .m-article__link {
    grid-template-columns: 100px 134px minmax(0, 1fr);
  }
  .top-news .m-entry-list .m-article__category {
    width: max-content;
    min-width: 100px;
    padding-inline: 18px;
  }
}

.top-news .wp-block-button__link.wp-element-button .icon::after {
  width: 16px;
  height: 8px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 8'%3E%3Cpath d='M0 3.5h8v1H0zM8 0l8 4-8 4z' fill='%231D1D1D'/%3E%3C/svg%3E");
}
@media (any-hover: hover) {
  .top-news .wp-block-button__link.wp-element-button:hover .icon::after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 8'%3E%3Cpath d='M0 3.5h8v1H0zM8 0l8 4-8 4z' fill='%23fff'/%3E%3C/svg%3E");
  }
}

@media (min-width: 769px) {
  .top-news .m-entry-list .m-article__category { width: 134px; }
}

@media (min-width: 769px) {
  .top-news .m-entry-list .m-article__link {
    grid-template-columns: 100px 100px minmax(0, 1fr);
    height: auto;
    padding: 27px 0;
  }
  .top-news .m-entry-list .m-article__category {
    width: 100px;
    min-width: 100px;
    padding-inline: 0;
    font-size: 14px;
  }
  .top-news .m-entry-list .m-article__title {
    min-width: 0;
    overflow: visible;
    text-overflow: clip;
    white-space: normal;
  }
  .top-news::before { left: calc(50% + 410px); }
}

@media (min-width: 769px) {
  .top-news .m-entry-list .m-article__link {
    grid-template-columns: 100px 134px minmax(0, 1fr);
  }
  .top-news .m-entry-list .m-article__category {
    width: 134px;
    min-width: 134px;
    padding-inline: 18px;
    font-size: 14px;
  }
}

@media (min-width: 769px) {
  .m-footer__img {
    position: relative;
    overflow: clip;
  }
  .m-footer__img::after {
    content: "";
    position: absolute;
    top: -100px;
    bottom: -100px;
    left: calc(18.84% + 6px);
    width: 60px;
    background: linear-gradient(to bottom, #1F91D3 0%, #1F91D3 48%, #E14728 48%, #E14728 100%);
    transform: rotate(25deg);
    pointer-events: none;
  }
}

@media (min-width: 769px) {
  .m-footer__cta {
    position: relative;
    isolation: isolate;
    overflow: clip;
  }
  .m-footer__cta::before {
    content: "";
    position: absolute;
    top: -100px;
    bottom: -100px;
    left: calc(50% - 80px);
    width: 60px;
    background: linear-gradient(to bottom, #E14728 0%, #E14728 50%, #1F91D3 50%, #1F91D3 100%);
    transform: rotate(-25deg);
    z-index: -1;
    pointer-events: none;
  }
  .m-footer__cta .cta-contents__box.--01 .txt-02,
  .m-footer__cta .cta-contents__box.--01 .txt-03 { margin-top: 8px; }
  .m-footer__cta .cta-contents__box.--02 { padding: 32px 0 36px; }
  .m-footer__cta .cta-contents__box.--02 .txt-02 { padding-block: 16px; }
}

@media (min-width: 769px) {
  .m-footer__main {
    position: relative;
    isolation: isolate;
    overflow: clip;
  }
  .m-footer__main::before {
    content: "";
    position: absolute;
    top: -100px;
    bottom: -100px;
    left: calc(50% - 270px);
    width: 60px;
    background: linear-gradient(to bottom, #1F91D3 0%, #1F91D3 50%, #E14728 50%, #E14728 100%);
    transform: rotate(25deg);
    z-index: -1;
    pointer-events: none;
  }
  .m-footer__main .main-nav__box-01 .list-01 a,
  .m-footer__main .main-nav__box-01 .list-02 a,
  .m-footer__main .main-nav__box-02 a,
  .m-footer__main .main-contact__address__txt-01,
  .m-footer__main .main-contact__address__txt-02 { font-size: 14px; }
  .m-footer__main .main-nav__box-01 .list-02 a { padding-inline: 30px; }
  .m-footer__main .main-contact__address a:visited { color: var(--color-text); }
}

@media (max-width: 768px) {
  .m-header { padding-bottom: 0; }
  .m-header__inner { height: 75px; padding: 0 20px; }
  .m-header__logo { width: calc(100vw - 125px); max-width: 303px; height: auto; }
  .m-hamburger__toggle { width: 75px; height: 75px; background: #1D1D1D; }
  .m-hamburger__toggle-bars,
  .m-hamburger__toggle-bars::before,
  .m-hamburger__toggle-bars::after { width: 27px; }
  .container { padding-top: 75px; }
  .top-visual { height: calc(100vw * 1.807); }
  .top-visual-contents { width: calc(100% - 50px); }
  .top-visual-contents .contents__01 {
    top: 32.2%; width: 100%; max-width: none;
    transform: none; -webkit-transform: none; -ms-transform: none;
  }
  .top-visual-contents .contents__01 .txt01 {
    font-size: clamp(14px, 4.18vw, 18px);
    font-weight: 700; letter-spacing: 3px; margin-bottom: 24px;
  }
  .top-visual-contents .contents__02 {
    left: 0; bottom: 21.86vw; max-width: none; width: 100%;
  }
  .top-visual-contents .contents__02 .txt { font-size: clamp(13px, 4.18vw, 18px); gap: 6px; }
  .top-visual-contents .contents__02 .txt span { padding: 3px 8px; line-height: 1.4; }
  .top-instagram { display: none; }
  .top-visual::after { left: 62%; width: 518px; background-size: auto 100%; }
}

@media (max-width: 768px) {
  .top-visual-contents .contents__01 { top: 31%; }
  .top-visual::after { left: 80%; }
  .top-heading2__jp { font-size: 16px; letter-spacing: 1px; }
  .top-heading2__en { font-size: 50px; line-height: 1.1; }
  .top-strengths { padding: 45px 0 50px; }
  .top-strengths__inner, .top-strengths__inner.--over { width: calc(100% - 40px); }
  .top-strengths__intro { font-size: 14px; margin-top: 16px; }
  .top-strengths__marquee { margin-top: 30px; margin-left: 20px; width: calc(100% - 20px); }
  .top-strengths__marquee__track img { height: 230px; }
  .top-strengths__list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 40px 22px; margin-top: 40px; }
  .top-strengths__list .list-icon { height: 100px; }
  .top-strengths__list .list-title-en { font-size: 12px; letter-spacing: 1px; margin-top: 16px; }
  .top-strengths__list .list-title-jp { font-size: 18px; margin-top: 12px; }
  .top-strengths__list .list-txt { font-size: 14px; margin-top: 12px; }
  .top-strengths::after {
    top: -55px;
    left: -180px;
    width: 730px;
    height: 1249px;
    background-size: 730px 1249px;
    transform: none;
    -webkit-transform: none;
    -ms-transform: none;
  }
  .wp-block-button__link { min-width: 0; width: 340px; max-width: 100%; }
  .top-strengths { overflow: clip; }
}

@media (max-width: 768px) {
  .top-products { padding: 45px 0 60px; }
  .top-products__inner { width: calc(100% - 40px); }
  .top-products__contents { display: block; margin-top: 25px; }
  .top-products__contents__visual, .top-products__contents__toc { display: none; }
  .top-products__contents__main { padding: 0; }
  .top-products__contents__main .main-sec { min-height: 0; padding: 0; margin-bottom: 46px; }
  .top-products__contents__main .main-sec:last-child { margin-bottom: 0; }
  .top-products__contents__main .visual-img { position: relative; opacity: 1; width: 100%; height: auto; }
  .top-products__contents__main .visual-img img { display: block; width: 100%; aspect-ratio: 390 / 230; object-fit: cover; }
  .top-products__contents__main .visual-img .txt { display: none; }
  .top-products__contents__main .main-sec__heading { align-items: center; text-align: center; margin-top: -30px; position: relative; }
  .top-products__contents__main .main-sec__heading .txt-en { font-size: 14px; padding: 5px 15px; margin-bottom: 16px; line-height: 20px; }
  .top-products__contents__main .main-sec__heading .txt-jp { font-size: 30px; line-height: 1.4; }
  .top-products__contents__main .main-sec__heading .txt-jp .min { font-size: 16px; }
  .top-products__contents__main .main-sec__txt { font-size: 16px; line-height: 1.5; text-align: center; max-width: 360px; margin: 10px auto 24px; }
  .top-products__contents__main .main-sec__list a { font-size: 18px; font-weight: 700; padding: 24px 40px 24px 10px; line-height: 1.5; }
  .top-products__btn { margin: 50px 0 0; text-align: center; }
  .top-products__btn .wp-block-button__link { font-size: 16px; }
  .top-products::before { position: absolute; margin: 0; top: 0; left: calc(50% - 415px); width: 1152px; height: 1267px; background-size: 1152px 1267px; transform: none; -webkit-transform: none; -ms-transform: none; }
  .top-products::after { display: none; }
}

.products-sp-break { display: none; }
@media (max-width: 768px) {
  .products-sp-break { display: initial; }
  .top-products__contents__main .visual-img { margin: 0; }
  .top-products__contents__main .main-sec__txt { font-weight: 700; max-width: none; }
  .top-products::before {
    background-image: none;
    top: 220px;
    left: calc(50% + 175px);
    width: 60px;
    height: 1300px;
    background: linear-gradient(to bottom, #1F91D3 0 430px, #E14728 430px 100%);
    transform: rotate(25deg);
    transform-origin: top center;
    -webkit-transform: rotate(25deg);
    -ms-transform: rotate(25deg);
  }
}

@media (max-width: 768px) {
  .top-products__inner { width: calc(100% - 36px); }
  .top-products::before {
    top: -400px;
    left: calc(50% + 509px);
    height: 2200px;
    background: linear-gradient(to bottom, #1F91D3 0 1114px, #E14728 1114px 100%);
  }
}

@media (max-width: 768px) {
  .top-products__contents__main .main-sec__heading .txt-jp .min { font-weight: 700; }
}

@media (max-width: 768px) {
  .top-news { padding: 45px 0 60px; position: relative; isolation: isolate; overflow: clip; }
  .top-news__inner { width: calc(100% - 40px); display: block; }
  .top-news__head { display: flex; align-items: flex-end; justify-content: space-between; gap: 15px; margin-bottom: 30px; }
  .top-news .top-heading2__jp { font-size: 16px; }
  .top-news .top-heading2__en { font-size: 50px; }
  .top-news .wp-block-button { margin: 0 0 8px; }
  .top-news .wp-block-button__link.wp-element-button { width: auto; min-width: 0; padding: 0; font-size: 14px; white-space: nowrap; gap: 10px; }
  .top-news .wp-block-button__link.wp-element-button .icon { width: 32px; height: 32px; }
  .top-news .m-entry-list .m-article__link { grid-template-columns: 110px 134px minmax(0, 1fr); gap: 12px 15px; padding: 25px 0; border-bottom: 1px solid #1D1D1D; }
  .top-news .m-entry-list .m-article:first-child .m-article__link { border-top: 1px solid #1D1D1D; }
  .top-news .m-entry-list .m-article__date { text-align: left; font-size: 14px; }
  .top-news .m-entry-list .m-article__category { width: 134px; padding: 8px 12px; box-sizing: border-box; font-size: 14px; }
  .top-news .m-entry-list .m-article__title { grid-column: 1 / -1; font-size: 16px; line-height: 1.6; font-weight: 400; white-space: normal; overflow: visible; text-overflow: clip; }
  .top-news::before { content: ''; position: absolute; top: -100px; bottom: -100px; left: calc(50% + 50px); width: 60px; background: linear-gradient(to bottom, #E14728 0 48%, #1F91D3 48% 100%); transform: rotate(-25deg); z-index: -1; pointer-events: none; }
}

@media (max-width: 768px) {
  .top-news .m-entry-list .m-article__title { margin: 0; }
  .top-news .wp-block-button__link.wp-element-button { font-weight: 700; }
}

@media (max-width: 768px) {
  .m-footer__img { aspect-ratio: 430 / 350; }
  .m-footer__img::after { content: none; }
  .m-footer__cta { padding: 45px 0 50px; position: relative; isolation: isolate; overflow: clip; }
  .m-footer__cta__inner { width: calc(100% - 40px); display: block; }
  .m-footer .cta-head { padding-bottom: 25px; }
  .m-footer .cta-head .top-heading2__en { font-size: 50px; }
  .m-footer .cta-head__txt { font-size: 14px; line-height: 1.7; margin-top: 12px; }
  .m-footer .cta-contents { padding: 0 25px; border-radius: 6px; }
  .m-footer .cta-contents__box.--01 { padding: 25px 0; }
  .m-footer .cta-contents__box.--01 .txt-01,
  .m-footer .cta-contents__box.--02 .txt-01 { font-size: 16px; }
  .m-footer .cta-contents__box.--01 .txt-02 { font-size: clamp(30px, 9.3vw, 40px); letter-spacing: 0; margin-top: 8px; white-space: nowrap; }
  .m-footer .cta-contents__box.--01 .txt-02::before { width: 30px; height: 30px; margin-right: 8px; flex-shrink: 0; }
  .m-footer .cta-contents__box.--01 .txt-03 { font-size: 15px; margin-top: 12px; }
  .m-footer .cta-contents__box.--02 { padding: 25px 0; }
  .m-footer .cta-contents__box.--02 .txt-02 { font-size: 16px; padding: 15px 0; margin-top: 16px; }
  .m-footer .cta-contents__box.--02 .txt-02::before { width: 30px; height: 30px; margin-right: 8px; flex-shrink: 0; }
  .m-footer__cta::before { content: ''; position: absolute; top: -100px; bottom: -100px; left: calc(50% + 15px); width: 60px; background: linear-gradient(to bottom, #E14728 0 50%, #1F91D3 50% 100%); transform: rotate(-25deg); z-index: -1; pointer-events: none; }
  .m-footer__main { padding: 60px 20px 40px; position: relative; isolation: isolate; overflow: clip; }
  .m-footer__main__inner { display: block; }
  .m-footer__main .main-nav { display: none; }
  .m-footer__main .main-contact__address__logo { width: 100%; max-width: 317px; height: auto; }
  .m-footer__main .main-contact__address__logo img { display: block; width: 100%; height: auto; }
  .m-footer__main .main-contact__address__txt-01,
  .m-footer__main .main-contact__address__txt-02 { font-size: 14px; line-height: 1.6; }
  .m-footer__main .main-contact__address__txt-01 { margin-top: 18px; }
  .m-footer__main .main-contact__address__txt-02 { margin-top: 5px; }
  .m-footer__main .main-contact__copyright { font-size: 10px; margin-top: 55px; }
  .m-footer__main::before { content: ''; position: absolute; top: -100px; bottom: -100px; left: 95px; width: 60px; background: linear-gradient(to bottom, #1F91D3 0 50%, #E14728 50% 100%); transform: rotate(25deg); z-index: -1; pointer-events: none; }
}

@media (max-width: 768px) {
  .m-footer .cta-contents__box.--01 .txt-02 { text-decoration: none; }
  .m-footer__main .main-contact__address__txt-02 a { color: var(--color-text); text-decoration: underline; text-underline-offset: 3px; }
}

@media (max-width: 768px) {
  .m-footer__cta::before {
    top: -100px;
    bottom: auto;
    left: calc(50% - 35px);
    height: 900px;
    background: linear-gradient(to bottom, #E14728 0 300px, #1F91D3 300px 100%);
    transform: rotate(-25deg);
    transform-origin: top left;
  }
}

@media (max-width: 768px) {
  .m-footer .cta-contents__box.--02 .txt-01 { font-size: 20px; }
}

@media (max-width: 768px) {
  .m-footer .cta-contents__box.--02 .txt-02 { font-size: 20px; padding: 22px 0; }
  .m-footer .cta-contents__box.--02 .txt-02::before { width: 36px; height: 36px; margin-right: 12px; }
}

@media (max-width: 768px) {
  .m-footer .cta-contents__box.--01 .txt-02 {
    text-decoration: underline;
    text-decoration-thickness: 2px;
    text-underline-offset: 5px;
    text-decoration-skip-ink: none;
  }
}

@media (max-width: 768px) {
  .m-hamburger__drawer { top: 75px; width: 100%; height: calc(100dvh - 75px); background: #F5F4F0; }
  .m-hamburger__nav { padding: 18px 0 0; }
  .m-hamburger__nav a { color: #1D1D1D; text-decoration: none; }
  .mobile-menu-main { margin: 0 20px; padding: 0; list-style: none; }
  .mobile-menu-main a { display: flex; align-items: center; justify-content: space-between; padding: 20px; font-size: 20px; font-weight: 700; border-bottom: 1px solid #1D1D1D; }
  .mobile-menu-main a::after { content: ''; width: 10px; height: 10px; background: currentColor; clip-path: polygon(0 0,100% 50%,0 100%); }
  .mobile-menu-group { padding: 0 40px; }
  .mobile-menu-group summary { display: flex; align-items: center; justify-content: space-between; padding: 20px 0; font-size: 20px; font-weight: 700; cursor: pointer; list-style: none; }
  .mobile-menu-group summary::-webkit-details-marker { display: none; }
  .mobile-menu-group summary::after { content: ''; width: 10px; height: 10px; background: currentColor; clip-path: polygon(0 0,100% 50%,0 100%); }
  .mobile-menu-group[open] summary::after { clip-path: polygon(50% 0,100% 100%,0 100%); }
  .mobile-menu-group ul, .mobile-menu-extra { margin: 0; padding: 0; list-style: none; }
  .mobile-menu-group li a, .mobile-menu-extra li a { display: block; padding: 10px 0; font-size: 16px; line-height: 1.3; }
  .mobile-menu-group li a::before, .mobile-menu-extra li a::before { content: '・'; color: #737E81; }
  .mobile-menu-products { padding-bottom: 24px; }
  .mobile-menu-recruit { padding-top: 18px; padding-bottom: 38px; background: #1F91D3; color: #fff; }
  .mobile-menu-recruit a, .mobile-menu-recruit li a::before { color: #fff; }
  .mobile-menu-extra { padding: 22px 40px 30px; background: #fff; }
}

.mobile-fixed-menu { display: none; }
@media (max-width: 768px) {
  body { padding-bottom: calc(60px + env(safe-area-inset-bottom)); }
  .mobile-fixed-menu { display: grid; grid-template-columns: 166fr 166fr 90fr; gap: 4px; position: fixed; inset: auto 0 0; z-index: 1002; background: #fff; padding-bottom: env(safe-area-inset-bottom); }
  .mobile-fixed-menu a { display: flex; align-items: center; justify-content: center; height: 60px; font-size: 18px; color: #fff; text-decoration: none; white-space: nowrap; }
  .mobile-fixed-menu__recruit { background: #1F91D3; }
  .mobile-fixed-menu__contact { background: #E14728; }
  .mobile-fixed-menu__instagram { background: #E52B8E; }
  .mobile-fixed-menu__instagram span { width: 30px; height: 30px; background: url(./images/common/icon_instagram.svg) center / contain no-repeat; }
  .m-hamburger__drawer { height: calc(100dvh - 135px - env(safe-area-inset-bottom)); }
}

.m-footer__main .main-nav__box-01 a { font-weight: 400; }
.m-footer__main .main-nav__box-02 a { font-weight: 500; }
@media (max-width: 768px) {
  .top-news .wp-block-button__link.wp-element-button { display: inline-flex; align-items: center; gap: 20px; width: auto; padding: 0; }
  .top-news .wp-block-button__link.wp-element-button .icon { position: relative; inset: auto; transform: none; margin: 0; flex: 0 0 38px; width: 38px; height: 38px; }
}

.m-footer__main .main-contact__address__txt-01,
.m-footer__main .main-contact__address__txt-02,
.m-footer__main .main-contact__address__txt-02 a { font-weight: 400; }

/* Fluid typography between the mobile and full desktop layouts. */
@media (min-width: 769px) and (max-width: 1439px) {
  .top-strengths .top-heading2__en,
  .top-products .top-heading2__en { font-size: clamp(50px, calc(7.45vw - 7.25px), 100px); }
  .top-strengths .top-heading2__jp,
  .top-products .top-heading2__jp { font-size: clamp(18px, 1.53vw, 22px); letter-spacing: 2px; }
  .m-footer .cta-head .top-heading2__en { font-size: clamp(44px, 4.86vw, 70px); }
}
@media (min-width: 769px) and (max-width: 1090px) {
  .top-strengths__inner, .top-strengths__inner.--over,
  .top-products__inner, .top-news__inner,
  .m-footer__cta__inner { width: calc(100% - 64px); }
  .top-products__contents { gap: 24px; grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr) 40px; }
  .top-strengths__intro { line-height: 1.8; }
}
@media (min-width: 769px) and (max-width: 1030px) {
  .top-strengths__list .list-title-jp { font-size: 18px; line-height: 1.5; }
  .top-strengths__list .list-title-en { font-size: 12px; letter-spacing: 1px; }
  .top-strengths__list .list-txt { font-size: 14px; }
  .top-products__contents__main .main-sec__heading .txt-jp { font-size: 28px; }
  .top-products__contents__main .main-sec__txt,
  .top-products__contents__main .main-sec__list a { font-size: 16px; }
}
@media (max-width: 768px) {
  .top-strengths .top-heading2__en,
  .top-products .top-heading2__en { font-size: clamp(38px, 11.63vw, 58px); }
}

@media (min-width: 769px) and (max-width: 1090px) {
  .top-news__inner { grid-template-columns: 190px minmax(0, 1fr); gap: 24px; }
  .top-news .m-entry-list { min-width: 0; }
  .top-news .m-article__link { min-width: 0; }
}

/* Share heading rows so descriptions align even when a heading wraps. */
@media (min-width: 769px) {
  .top-strengths__list { row-gap: 0; }
  .top-strengths__list > li {
    display: grid;
    grid-row: span 4;
    grid-template-rows: subgrid;
    row-gap: 0;
  }
}

/* Keep the decorative stripe within its section at every viewport width. */
.top-strengths { overflow: clip; }

/* Desktop Instagram link follows the viewport until CONTACT. */
@media (min-width: 769px) {
  .top-instagram {
    position: fixed;
    right: 36px;
    top: 50%;
    bottom: auto;
    transform: translateY(-50%);
    z-index: 900;
    opacity: 1;
    visibility: visible;
    transition: background-color var(--transition), opacity .25s ease, visibility .25s;
  }
  .top-instagram.is-contact-visible {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
  }
}
@media (prefers-reduced-motion: reduce) {
  .top-instagram { transition: none; }
}


/* One-time stripe reveal, hidden before the first script frame. */
.stripe-motion-enabled .top-visual::after,
.stripe-motion-enabled .top-strengths::after,
.stripe-motion-enabled .top-products::before,
.stripe-motion-enabled .top-products::after,
.stripe-motion-enabled .top-news::before,
.stripe-motion-enabled .m-footer__img::after,
.stripe-motion-enabled .m-footer__cta::before,
.stripe-motion-enabled .m-footer__main::before {
  clip-path: inset(0 0 100% 0);
  opacity: 0;
  pointer-events: none;
}
.top-visual.has-stripe-motion::after,
.top-strengths.has-stripe-motion::after,
.top-products.has-stripe-motion::before,
.top-products.has-stripe-motion::after,
.top-news.has-stripe-motion::before,
.m-footer__img.has-stripe-motion::after,
.m-footer__cta.has-stripe-motion::before,
.m-footer__main.has-stripe-motion::before {
  clip-path: inset(0 0 var(--stripe-cut, 100%) 0);
  opacity: var(--stripe-opacity, 0);
  z-index: var(--stripe-layer, -1);
  translate: none;
  transition: clip-path .18s ease-out, opacity .25s ease-out;
}
@media (prefers-reduced-motion: reduce) {
.stripe-motion-enabled .top-visual::after,
.stripe-motion-enabled .top-strengths::after,
.stripe-motion-enabled .top-products::before,
.stripe-motion-enabled .top-products::after,
.stripe-motion-enabled .top-news::before,
.stripe-motion-enabled .m-footer__img::after,
.stripe-motion-enabled .m-footer__cta::before,
.stripe-motion-enabled .m-footer__main::before {
    clip-path: none !important;
    opacity: 1 !important;
    transition: none !important;
  }
}

/* PRODUCTS must finish drawing before its decoration moves behind content. */
.top-products.has-stripe-motion::before,
.top-products.has-stripe-motion::after {
  transition: opacity .25s ease-out;
}

/* One continuous PRODUCTS stripe, passing behind the product photograph. */
@media (min-width: 769px) {
  .top-products::before {
    position: absolute;
    top: 0;
    bottom: auto;
    left: 0;
    margin: 0;
    width: 100%;
    height: 100%;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 1000' preserveAspectRatio='none'%3E%3Cpath fill='none' stroke='%231F91D3' stroke-width='60' vector-effect='non-scaling-stroke' d='M598 -20L390 500'/%3E%3Cpath fill='none' stroke='%23E14728' stroke-width='60' vector-effect='non-scaling-stroke' d='M390 500L182 1020'/%3E%3C/svg%3E") no-repeat 0 0 / 100% 100%;
    transform: none;
    -webkit-transform: none;
    -ms-transform: none;
  }
  .top-products::after { content: none; display: none; }
}

/* Lock the completed PRODUCTS stripe behind the photographs. */
.top-products.is-stripe-finished::before {
  clip-path: none;
  opacity: 1;
  z-index: -1;
  transition: none;
}

/* Keep the rear stripe covered while product photographs crossfade. */
@media (min-width: 769px) {
  .top-products__contents__visual .visual-inner { background-color: #fff; }
}

/* Contact: current company content in the site's form design. */
.contact-intro { margin-bottom: 40px; }
.contact-intro > p { text-align: center; }
.contact-intro__note { font-size: 14px; }
.contactform__row { padding-bottom: 26px; border-bottom: 1px solid #ddd; }
.contactform__label { margin-bottom: 8px; font-weight: 500; }
.contactform__label .required { background: #E14728; }
.wpcf7 .acceptance { margin-top: 48px; }
.wpcf7 .acceptance .text { background: #fff; border: 1px solid #ddd; border-radius: 8px; font-size: 14px; line-height: 1.9; }
.wpcf7 .acceptance .text h3 { font-size: 20px; margin-top: 0; }
.wpcf7 .acceptance .text dt { margin-top: 20px; font-weight: 700; }
.wpcf7 .m-btngroup { margin-top: 40px; }
.wpcf7 input[type=submit] { border-radius: 999px; background-color: #1F91D3; color: #fff; padding: 18px 40px; border: none; font-weight: 700; }
@media (max-width: 768px) {
  .contact-intro > p { text-align: left; }
  .contactform__row { padding-bottom: 20px; }
  .wpcf7 .acceptance .text { padding: 20px; }
}

.wpcf7 .contactform input, .wpcf7 .contactform textarea {
  background: #fff; border: 1px solid #ccc; border-radius: 6px; padding: 13px 16px;
}
.wpcf7 .contactform textarea { min-height: 180px; }
.wpcf7 .contactform input:focus-visible, .wpcf7 .contactform textarea:focus-visible { outline: 2px solid #1F91D3; outline-offset: 2px; }

.contact-intro, .wpcf7 { width: calc(100% - 40px); }

/* Contact page: white background, spaced breadcrumb and red capsule action. */
body.maruzen-contact { background: #fff; }
.maruzen-contact .m-breadcrumb {
  padding: 22px max(20px, calc((100% - 1100px) / 2));
  margin-bottom: 32px;
}
.maruzen-contact .m-breadcrumb ol { align-items: center; gap: 12px; }
.maruzen-contact .m-breadcrumb li + li::before { content: '›'; margin-right: 12px; color: #777; }
.maruzen-contact .m-breadcrumb a,
.maruzen-contact .m-breadcrumb a:visited { color: #1F91D3; text-decoration: none; }
.maruzen-contact .m-breadcrumb a:hover { text-decoration: underline; }
.maruzen-contact .contact-submit { display: inline-block; position: relative; width: 340px; max-width: 100%; }
.maruzen-contact .contact-submit input[type=submit] {
  width: 100%; min-height: 74px; padding: 18px 65px 18px 30px;
  background: #E74727; color: #fff; font-size: 18px; border-radius: 999px;
}
.maruzen-contact .contact-submit::after {
  content: ''; position: absolute; right: 20px; top: 50%; transform: translateY(-50%);
  width: 40px; height: 40px; border-radius: 50%; pointer-events: none;
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath fill='%23E74727' d='M4 11h10V7l7 5-7 5v-4H4z'/%3E%3C/svg%3E") center / 22px no-repeat;
}
@media (max-width: 768px) {
  .maruzen-contact .m-breadcrumb { padding: 18px 20px; margin-bottom: 24px; font-size: 13px; }
  .maruzen-contact .contact-submit { width: 100%; }
  .maruzen-contact .contact-submit input[type=submit] { min-height: 68px; font-size: 16px; }
}

.maruzen-contact .l-content { padding-bottom: clamp(64px, 7vw, 100px); }

/* Shared footer surface and consistent confirmation actions. */
.m-footer__cta { background-color: #fff; }
.m-footer__main { background-color: #f5f4f0; }
.contactform__row { border-bottom: none; }
.maruzen-contact .contact-submit .wpcf7-previous {
  width: 100%; min-height: 74px; padding: 18px 65px 18px 30px;
  background: #E74727; color: #fff; font-size: 18px; font-weight: 700;
  border: none; border-radius: 999px; cursor: pointer;
}
.maruzen-contact .contact-submit--previous::after { transform: translateY(-50%) rotate(180deg); }
@media (max-width: 768px) {
  .maruzen-contact .contact-submit .wpcf7-previous { min-height: 68px; font-size: 16px; }
}

/* NEWS archive shares the homepage's date / category / title rows. */
.news-archive__body { min-width: 0; }
.news-archive .pagination { margin-top: 48px; }
.news-archive .pagination__nav { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 10px; }
.news-archive .pagination__nav a,
.news-archive .pagination__nav .current {
  display: inline-flex; align-items: center; justify-content: center;
  width: 36px; height: 36px; padding: 0; border: none; font-size: 14px;
  border-radius: 50%; background: #fff; color: #1F91D3;
  font-weight: 700; text-decoration: none; box-sizing: border-box;
  transition: background-color .2s, color .2s, border-color .2s;
}
.news-archive .pagination__nav .current { background: #1F91D3; color: #fff; }
.news-archive .pagination__nav a:hover { background: #E74727; border-color: #E74727; color: #fff; }
.news-archive .pagination__nav a:focus-visible { outline: 2px solid #E74727; outline-offset: 3px; }
.news-archive .pagination__nav .c-icon { width: 14px; height: 14px; fill: currentColor; }
@media (max-width: 768px) {
  .news-archive .top-news__head { margin-bottom: 30px; }
  .news-archive .pagination { margin-top: 32px; }
  .news-archive .pagination__nav { gap: 8px; }
  .news-archive .pagination__nav a, .news-archive .pagination__nav .current { width: 34px; height: 34px; }
}

/* NEWS breadcrumb follows the contact page. */
.post-type-archive-news .m-breadcrumb,
.tax-news_category .m-breadcrumb {
  padding: 22px max(20px, calc((100% - 1100px) / 2)); margin-bottom: 32px;
}
.post-type-archive-news .m-breadcrumb ol,
.tax-news_category .m-breadcrumb ol { align-items: center; gap: 12px; }
.post-type-archive-news .m-breadcrumb li + li::before,
.tax-news_category .m-breadcrumb li + li::before { content: '›'; margin-right: 12px; color: #777; }
.post-type-archive-news .m-breadcrumb a,
.post-type-archive-news .m-breadcrumb a:visited,
.tax-news_category .m-breadcrumb a,
.tax-news_category .m-breadcrumb a:visited { color: #1F91D3; text-decoration: none; }
.post-type-archive-news .m-breadcrumb a:hover,
.tax-news_category .m-breadcrumb a:hover { text-decoration: underline; }
.news-archive::before { content: none; display: none; }
@media (max-width: 768px) {
  .post-type-archive-news .m-breadcrumb,
  .tax-news_category .m-breadcrumb { padding: 18px 20px; margin-bottom: 24px; font-size: 13px; }
}

/* NEWS detail: readable single column and the site's accent colors. */
.news-archive .pagination__nav a, .news-archive .pagination__nav .current { width: 38px; height: 38px; }
.news-single { width: calc(100% - 40px); max-width: 960px; margin: 64px auto 100px; }
.news-single__article { background: #fff; border-radius: 12px; padding: clamp(24px, 5vw, 64px); }
.news-single__header { border-bottom: 1px solid #ddd; padding-bottom: 32px; margin-bottom: 40px; }
.news-single__meta { display: flex; align-items: center; flex-wrap: wrap; gap: 16px; font-size: 14px; }
.news-single__meta time { color: #777; }
.news-single__category { display: inline-block; padding: 7px 20px; border-radius: 999px; background: #f5f4f0; color: #1D1D1D; text-decoration: none; }
.news-single__category:hover { color: #1F91D3; }
.news-single__title { margin: 24px 0 0; font-size: clamp(24px, 2.5vw, 34px); line-height: 1.65; font-weight: 700; overflow-wrap: anywhere; }
.news-single__content { font-size: 16px; line-height: 1.95; overflow-wrap: anywhere; }
.news-single__content img { max-width: 100%; height: auto; }
.news-single__nav { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 24px; margin-top: 48px; }
.news-single__nav > div:last-child { text-align: right; }
.news-single__nav a { text-decoration: none; }
.news-single__nav > div a { color: #1F91D3; font-size: 14px; }
.news-single__back { display: inline-flex; align-items: center; justify-content: center; gap: 28px; padding: 18px 24px; background: #1F91D3; color: #fff; border-radius: 999px; font-weight: 700; }
.news-single__back span { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; background: #fff; color: #1F91D3; }
.news-single__back:hover { background: #E74727; color: #fff; }
.single-news .m-breadcrumb { padding: 22px max(20px, calc((100% - 1100px) / 2)); }
.single-news .m-breadcrumb ol { display: flex; flex-wrap: wrap; gap: 12px; }
.single-news .m-breadcrumb a, .single-news .m-breadcrumb a:visited { color: #1F91D3; text-decoration: none; }
.single-news .m-breadcrumb li + li::before { content: '›'; color: #777; margin-right: 12px; }
@media (max-width: 768px) {
  .news-single { margin-top: 32px; margin-bottom: 64px; }
  .news-single__header { padding-bottom: 24px; margin-bottom: 28px; }
  .news-single__nav { grid-template-columns: 1fr 1fr; gap: 24px 16px; }
  .news-single__back { grid-column: 1 / -1; grid-row: 1; justify-self: center; }
  .single-news .m-breadcrumb { padding: 18px 20px; font-size: 13px; }
}

.single-news .m-breadcrumb li { min-width: 0; white-space: normal; overflow-wrap: anywhere; }
.single-news .m-breadcrumb li:last-child { flex: 1 1 260px; }

.news-single__heading { margin-bottom: 40px; }
.news-single__heading .top-heading2__jp { margin: 0 0 6px; font-size: 18px; }
.news-single__heading .top-heading2__en { margin: 0; font-size: 50px; line-height: 1.2; }
@media (max-width: 768px) {
  .news-single__heading { margin-bottom: 30px; }
  .news-single__heading .top-heading2__jp { font-size: 16px; }
}

/* Match the homepage NEWS index link, including visited state. */
.news-single .news-single__back,
.news-single .news-single__back:visited {
  padding: 0; gap: 20px; background: transparent; border-radius: 0;
  color: #1D1D1D; font-weight: 700;
}
.news-single .news-single__back span {
  width: 38px; height: 38px; background: #fff; position: relative;
}
.news-single .news-single__back span::after {
  content: ''; width: 16px; height: 8px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 12'%3E%3Cpath fill='%231D1D1D' d='M0 5h13V0l11 6-11 6V7H0z'/%3E%3C/svg%3E") center / contain no-repeat;
}
.news-single .news-single__back:hover { background: transparent; color: #1F91D3; }
.news-single .news-single__back:hover span::after { opacity: .65; }
.news-single__nav > div a:visited { color: #1F91D3; }
