﻿@charset "UTF-8";
/*! CSSファイルの直接の改変不可 SCSSファイルからCSSファイルを生成してください */
/* External font loading removed so the LP works without CDN access. */
abbr,address,article,aside,audio,b,blockquote,body,button,caption,cite,code,dd,del,dfn,dialog,div,dl,dt,em,fieldset,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,p,pre,q,samp,section,small,span,strong,sub,sup,table,tbody,td,tfoot,th,thead,time,tr,ul,var,video{
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent
}

article,aside,dialog,figure,footer,header,hgroup,main,nav,section{
    display:block
}
ol,ul{
    list-style:none
}
blockquote,q{
    quotes:none
}
blockquote:after,blockquote:before,q:after,q:before{
    content:"";
    content:none
}
:focus{
    outline:0
}
ins{
    text-decoration:none
}
del{
    text-decoration:line-through
}
table{
    border-collapse:collapse;
    border-spacing:0
}
:root{
    --ja-font:'Noto Sans JP',sans-serif;
    --en-font:'Geologica',sans-serif;
    --color--prim:#285AE1;
    --color--br:#D6EDF7;
    --color--gr:#DCF3D6;
    --color--yl:#FCF5D0;
    --color--rd:#E6002D;
    --color--dk-br:#08287F;
    --color--lt-br:#F0F3F8;
    --color--wh:#FFF;
    --border-color:var(--color--prim);
    --base-font-color:#000;
    --link-color:var(--color--prim);
    --link-hover-color:var(--link-color)
}
:root{
    --break-point:1024px
}
@media screen and (min-width:1024px){
    :root{
        --nav-width:140px;
        --header-height:0
    }
}
@media screen and (max-width:1023.98px){
    :root{
        --nav-width:70px;
        --header-height:var(--nav-width)
    }
}
@media screen and (min-width:1024px){
    :root{
        --base-font-size:1.6rem;
        --base-letter-spacing:0;
        --base-line-height:2.2
    }
}
@media screen and (max-width:1023.98px){
    :root{
        --base-font-size:1.5rem;
        --base-letter-spacing:0;
        --base-line-height:2
    }
}
:root{
    --vw:1vw;
    --scroll-padding-top:0
}
@media screen and (min-width:1024px){
    :root{
        --frame-width:6px;
        --window-padding:20px;
        --content-width:min(calc(var(--vw) * 78 - var(--window-padding) * 2 - var(--nav-width)),1000px);
        --content-width--l:min(calc(var(--vw) * 85 - var(--window-padding) * 2 - var(--nav-width)),1400px);
        --content-width--xl:min(calc(var(--vw) * 90 - var(--window-padding) * 2 - var(--nav-width)));
        --content-width--max:calc(var(--vw) * 100 - var(--window-padding) * 2 - var(--nav-width) / 2 - var(--window-padding));
        --content-padding:calc((var(--vw) * 100 - var(--content-width)) / 2 - var(--nav-width) / 2 - var(--window-padding));
        --content-padding--l:calc((var(--vw) * 100 - var(--content-width--l)) / 2 - var(--nav-width) / 2 - var(--window-padding));
        --content-padding--xl:calc((var(--vw) * 100 - var(--content-width--xl)) / 2 - var(--nav-width) / 2 - var(--window-padding));
        --content-padding--max:calc((var(--vw) * 100 - var(--content-width--max)) / 2 - var(--nav-width) / 2 - var(--window-padding));
        --neg-margin--l:calc((var(--content-width--l) - var(--content-width)) / -2);
        --neg-margin--xl:calc((var(--content-width--xl) - var(--content-width)) / -2);
        --neg-margin--max:calc((var(--content-padding)) * -1);
        --section-margin:150px;
        --child-section-margin:100px
    }
}
@media screen and (max-width:1200px) and (min-width:1024px){
    :root{
        --content-width:calc(var(--vw) * 84 - var(--window-padding) * 2 - var(--nav-width));
        --content-width--l:calc(var(--vw) * 90 - var(--window-padding) * 2 - var(--nav-width));
        --content-width--xl:calc(var(--vw) * 95 - var(--window-padding) * 2 - var(--nav-width))
    }
}
@media screen and (max-width:1023.98px){
    :root{
        --frame-width:5px;
        --window-padding:10px;
        --content-width:calc(var(--vw) * 86 - var(--window-padding) * 2);
        --content-width--l:calc(var(--vw) * 95 - var(--window-padding) * 2);
        --content-width--xl:calc(var(--vw) * 95 - var(--window-padding) * 2);
        --content-width--max:calc(var(--vw) * 100 - var(--window-padding) * 2);
        --content-padding:calc((var(--vw) * 100 - var(--content-width)) / 2 - var(--window-padding));
        --content-padding--l:calc((var(--vw) * 100 - var(--content-width--l)) / 2 - var(--window-padding));
        --content-padding--xl:calc((var(--vw) * 100 - var(--content-width--xl)) / 2 - var(--window-padding));
        --content-padding--max:calc((var(--vw) * 100 - var(--content-width--max)) / 2 - var(--window-padding));
        --neg-margin--l:calc((var(--content-width--l) - var(--content-width)) / -2);
        --neg-margin--xl:calc((var(--content-width--xl) - var(--content-width)) / -2);
        --neg-margin--max:calc((var(--content-padding)) * -1);
        --section-margin:80px;
        --child-section-margin:60px
    }
}
@media screen and (min-width:1024px){
    :root{
        --radius--xs:10px;
        --radius--s:20px;
        --radius--m:30px;
        --radius--l:40px;
        --radius--xl:calc(var(--radius--l) + var(--window-padding))
    }
}
@media screen and (max-width:1023.98px){
    :root{
        --radius--xs:10px;
        --radius--s:15px;
        --radius--m:20px;
        --radius--l:25px;
        --radius--xl:calc(var(--radius--l) + var(--window-padding))
    }
}
:lang(ja){
    font-family:var(--ja-font)
}
:lang(en){
    font-family:var(--en-font);
    font-style:normal;
    font-variation-settings:"slnt" 0,"CRSV" 1,"SHRP" 0
}
html{
    font-size:62.5%
}
body{
    font-size:var(--base-font-size);
    line-height:var(--base-line-height);
    font-weight:400;
    color:var(--base-font-color);
    letter-spacing:var(--base-letter-spacing);
    -webkit-font-feature-settings:"palt";
    font-feature-settings:"palt";
    -webkit-text-size-adjust:100%;
    -webkit-font-smoothing:subpixel-antialiased;
    -moz-osx-font-smoothing:unset
}
@media (-webkit-min-device-pixel-ratio:2),(min-resolution:2dppx),only screen and (-webkit-min-device-pixel-ratio:2){
    body{
        -webkit-font-smoothing:antialiased;
        -moz-osx-font-smoothing:grayscale
    }
}
html{
    height:100%;
    scroll-padding-top:calc(var(--scroll-padding-top) + var(--window-padding))
}
body{
    background:var(--color--lt-br);
    position:relative;
    -webkit-box-sizing:border-box;
    box-sizing:border-box
}
dl,ol,p,ul{
    margin-block:0 32px
}
h1,h2,h3,h4,h5,h6{
    line-height:1.5;
    margin-block:0 32px;
    font-size:3rem;
    font-weight:700
}
li{
    margin-inline:2.2em 0
}
ol:not([class]),ul:not([class]){
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    gap:8px 0
}
ol:not([class]) ol,ol:not([class]) ul,ul:not([class]) ol,ul:not([class]) ul{
    margin-block:8px
}
ul{
    list-style:disc
}
ul ul{
    list-style:circle
}
ul.no-style{
    list-style:none
}
ul.no-style>li{
    margin-inline:0
}
ol{
    list-style:decimal
}
ol:not([class]) ol{
    counter-reset:number-child-list;
    margin-block:0.5em
}
ol:not([class]) ol>li{
    counter-increment:number-child-list;
    list-style:none;
    margin-left:2.5em
}
ol:not([class]) ol>li:before{
    content:"(" counter(number-child-list) ")";
    width:2.5em;
    display:inline-block;
    margin-left:-2.5em
}
ol.parentheses{
    counter-reset:parentheses-list;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    gap:0.5em 0
}
ol.parentheses>li{
    counter-increment:parentheses-list;
    -webkit-margin-start:2.5em;
    margin-inline-start:2.5em;
    list-style:none
}
ol.parentheses>li:before{
    content:"(" counter(parentheses-list) ")";
    width:2.5em;
    display:inline-block;
    -webkit-margin-start:-2.5em;
    margin-inline-start:-2.5em
}
ol.parentheses ol{
    list-style:katakana;
    margin-block:0.5em
}
.hidden{
    display:none
}
table{
    border-collapse:collapse;
    line-height:1.5
}
table td,table th{
    padding:8px 16px;
    text-align:left;
    vertical-align:middle
}
table td dl,table td ol,table td p,table td ul,table th dl,table th ol,table th p,table th ul{
    margin-block:0 8px
}
table td :not(input):not(select):not(textarea):not(span):last-child,table th :not(input):not(select):not(textarea):not(span):last-child{
    -webkit-margin-after:0!important;
    margin-block-end:0!important
}
table th{
    font-weight:400
}
table tbody tr.combine>td{
    border-top:none;
    border-bottom-style:dashed
}
table tbody tr:last-child>td,table tbody tr:last-child>th{
    border-bottom:none
}
table tbody th[rowspan]~td{
    border-bottom-style:dashed
}
table thead th{
    width:auto;
    text-align:center;
    border-top:none
}
table tfoot td,table tfoot th{
    border-bottom:none
}
table caption{
    font-weight:bold;
    text-align:left
}
hr{
    display:none
}
img{
    max-width:100%;
    height:auto;
    -webkit-transition:0.2s ease;
    transition:0.2s ease;
    border:none;
    vertical-align:bottom;
    pointer-events:none
}
i{
    font-style:normal
}
em{
    font-style:normal;
    font-weight:700
}
strong{
    font-weight:700;
    color:var(--color--dk-br)
}
sup{
    vertical-align:top;
    line-height:1.8;
    font-size:max(40%,1.1rem)
}
sub{
    vertical-align:baseline;
    line-height:1.8;
    font-size:max(40%,1.1rem)
}
ins{
    color:#C00
}
a{
    -webkit-transition:0.2s ease;
    transition:0.2s ease;
    color:var(--link-color);
    text-decoration:none
}
@media (hover:hover){
    a:where(:-moz-any-link,:enabled,summary):hover{
        color:var(--link-hover-color)
    }
    a:where(:any-link,:enabled,summary):hover{
        color:var(--link-hover-color)
    }
}
a:hover span{
    cursor:pointer
}
.inactive a,a.inactive{
    cursor:default;
    pointer-events:none
}
a:not([class]){
    text-decoration:underline;
    color:var(--link-color);
    font-weight:500
}
@media (hover:hover){
    a:not([class]):where(:-moz-any-link,:enabled,summary):hover{
        color:var(--link-hover-color)
    }
    a:not([class]):where(:any-link,:enabled,summary):hover{
        color:var(--link-hover-color)
    }
}
a:not([class]){
}
@media screen and (min-width:1024px){
    a[href^="tel:"]{
        color:var(--base-font-color);
        text-decoration:none;
        pointer-events:none
    }
}
button,input,select,textarea{
    font-family:var(--ja-font);
    -webkit-appearance:none;
    -moz-appearance:none;
    appearance:none;
    border:none;
    margin:0;
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    border-radius:0;
    background:transparent;
    -webkit-transition:background-color 0.2s ease,color 0.2s ease;
    transition:background-color 0.2s ease,color 0.2s ease;
    font-size:var(--base-font-size);
    font-weight:500;
    line-height:1.8;
    overflow:visible
}
@media screen and (max-width:1023.98px){
    input,textarea{
        font-size:1.6rem
    }
}
button,input[type=submit],select{
    cursor:pointer
}
figcaption{
    text-align:left
}
.italic{
    font-style:italic
}
.note{
    font-size:1.4rem;
    line-height:1.8
}
.note--s{
    font-size:1.2rem
}
.flow-root{
    display:flow-root
}
.float-clear{
    clear:both
}
.align-right{
    text-align:right
}
.align-center{
    text-align:center
}
.flex-end{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack:end;
    -ms-flex-pack:end;
    justify-content:flex-end
}
.flex-center{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    justify-content:center
}
:focus-visible{
    outline:3px solid var(--color--dk-br);
    outline-offset:0
}
@media screen and (max-width:1023.98px){
    table td,table th{
        padding:8px 5px;
        width:auto
    }
    .note{
        font-size:1.1rem
    }
}
@media screen and (min-width:1024px){
    .mob-only{
        display:none
    }
}
@media screen and (max-width:1023.98px){
    .pc-only{
        display:none!important
    }
    .mob-only{
        display:block
    }
    br.mob-only{
        display:inline
    }
}
.wrapper{
    overflow:clip;
    padding:var(--window-padding)
}
@media screen and (min-width:1024px){
    :root{
        --page-header-max-height:900px
    }
}
@media screen and (max-width:1023.98px){
    :root{
        --page-header-max-height:600px
    }
}
.page-header{
    position:sticky;
    z-index:-1;
    inset:var(--window-padding) var(--window-padding) auto;
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    border-radius:var(--radius--l);
    overflow:hidden;
    height:min(100svh - var(--window-padding) * 2,var(--page-header-max-height));
    translate:0,0,0
}
.page-header .hero{
    position:absolute;
    inset:0;
    border:var(--frame-width) solid var(--color--prim);
    border-radius:var(--radius--l);
    overflow:hidden
}
.page-header .hero-image{
    -o-object-fit:cover;
    object-fit:cover;
    width:100%;
    height:100%
}
.page-header{
}
.page-header:not(:has(.hero)){
    background:var(--color--prim);
    height:auto;
    padding-block:calc(120px + var(--window-padding)) 0
}
@media screen and (max-width:1023.98px){
    .page-header:not(:has(.hero)){
        padding-block:calc(90px + var(--window-padding)) 0
    }
}
.page-category{
    -ms-grid-row:1;
    -ms-grid-column:1;
    -ms-grid-column-span:3;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    gap:0 0.2em;
    font-size:3rem;
    line-height:1;
    color:var(--color--wh);
    font-weight:500;
    margin-block:0 40px;
    background:var(--color--prim);
    width:-webkit-fit-content;
    width:-moz-fit-content;
    width:fit-content;
    padding:0.3em 0.7em 0.3em 0.3em;
    border-radius:50px;
    grid-area:category
}
.page-title-wrapper:has(.page-description)>.page-category{
    -ms-grid-row:1;
    -ms-grid-column:1;
    -ms-grid-column-span:3
}
.page-category:before{
    -webkit-box-flex:0;
    -ms-flex:0 0 auto;
    flex:0 0 auto;
    content:"";
    display:block;
    background:var(--color--wh);
    width:11px;
    height:11px;
    border-radius:50%;
    margin-inline:0.2em
}
@media screen and (max-width:1023.98px){
    .page-category{
        font-size:2rem;
        margin-block:0 24px
    }
    .page-category:before{
        width:8px;
        height:8px
    }
}
.page-title-wrapper{
    position:relative;
    z-index:2;
    height:100%;
    padding:calc(var(--window-padding) + var(--frame-width));
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    -webkit-box-pack:end;
    -ms-flex-pack:end;
    justify-content:flex-end;
    -webkit-margin-end:calc(var(--nav-width) - var(--window-padding));
    margin-inline-end:calc(var(--nav-width) - var(--window-padding))
}
.page-title-wrapper:has(.top-message-author){
    display:-ms-grid;
    display:grid;
    -ms-grid-columns:auto 30px 1fr;
    grid-template-columns:auto 1fr;
    -ms-grid-rows:auto 0 auto 0 auto;
    grid-template-rows:auto auto auto;
    grid-template-areas:"category category" "title-en title-en" "title-ja author";
    -ms-flex-line-pack:end;
    align-content:end;
    gap:0 30px
}
@media screen and (max-width:1023.98px){
    .page-title-wrapper:has(.top-message-author){
        grid-template-areas:"category" "title-en" "title-ja" "author";
        gap:0
    }
    .page-category{
        -ms-grid-row:1;
        -ms-grid-column:1;
        -ms-grid-column-span:1
    }
}
.page-title-wrapper:has(.page-description){
    display:-ms-grid;
    display:grid;
    -ms-grid-columns:auto 30px 1fr;
    grid-template-columns:auto 1fr;
    -ms-grid-rows:auto 0 auto 0 auto;
    grid-template-rows:auto auto auto;
    grid-template-areas:"category category" "title-en title-en" "title-ja description";
    -ms-flex-line-pack:end;
    align-content:end;
    gap:0 30px
}
@media screen and (max-width:1023.98px){
    .page-title-wrapper:has(.page-description){
        grid-template-areas:"category" "title-en" "title-ja" "description";
        gap:0
    }
    .page-title-wrapper:has(.page-description)>.page-category{
        -ms-grid-row:1;
        -ms-grid-column:1;
        -ms-grid-column-span:1
    }
}
.page-title-en{
    -ms-grid-row:3;
    -ms-grid-column:1;
    -ms-grid-column-span:3;
    font-size:min(10vw,15rem);
    line-height:0.95;
    color:var(--color--prim);
    margin-block:0 10px;
    grid-area:title-en
}
.page-title-wrapper:has(.page-description)>.page-title-en{
    -ms-grid-row:3;
    -ms-grid-column:1;
    -ms-grid-column-span:3
}
.page-title-ja{
    -ms-grid-row:5;
    -ms-grid-column:1;
    position:relative;
    z-index:2;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    -webkit-box-align:start;
    -ms-flex-align:start;
    align-items:flex-start;
    line-height:1.4;
    color:var(--color--prim);
    margin:0;
    grid-area:title-ja
}
.page-title-wrapper:has(.page-description)>.page-title-ja{
    -ms-grid-row:5;
    -ms-grid-column:1
}
.page-title-series,.page-title-sub{
    position:relative;
    font-weight:500;
    border-radius:var(--radius--s);
    padding:15px;
    font-size:3rem;
    overflow:hidden
}
.page-title-series:first-child,.page-title-sub:first-child{
    margin-bottom:-20px;
    border-bottom-left-radius:0
}
.page-title-series:last-child,.page-title-sub:last-child{
    border-top-left-radius:0
}
.page-title-series:before,.page-title-sub:before{
    content:"";
    position:absolute;
    z-index:-1;
    inset:0;
    background:var(--color--wh)
}
.page-title-main{
    position:relative;
    font-weight:500;
    font-size:6rem;
    border-radius:var(--radius--s);
    overflow:hidden;
    padding:15px
}
.page-title-main--small{
    font-size:min(3.5vw,5.5rem)
}
.page-title-main:first-child{
    margin-bottom:-20px;
    border-bottom-left-radius:0
}
.page-title-main:last-child{
    border-top-left-radius:0
}
.page-title-main:before{
    content:"";
    position:absolute;
    z-index:-1;
    inset:0;
    background:var(--color--wh)
}
.page-title-main:has(wbr){
    word-break:keep-all;
    overflow-wrap:anywhere
}
.page-title-main:first-child:last-child{
    border-radius:var(--radius--s);
    margin-block:0
}
.page-header:not(:has(.hero)) .page-title-en{
    color:var(--color--wh)
}
.page-description{
    -ms-grid-row:5;
    -ms-grid-column:3;
    grid-area:description;
    color:var(--color--wh);
    font-size:1.8rem;
    line-height:1.8;
    -ms-grid-row-align:center;
    align-self:center;
    margin:0
}
.career-support-item>.page-description{
    -ms-grid-row:3;
    -ms-grid-column:1;
    -ms-grid-column-span:3
}
@media screen and (max-width:1023.98px){
    .page-title-wrapper{
        -webkit-margin-end:0;
        margin-inline-end:0
    }
    .page-title-en{
        font-size:min(15vw,10rem)
    }
    .page-title-ja{
        font-size:2.4rem
    }
    .page-title-series,.page-title-sub{
        font-size:1.8rem;
        padding:10px
    }
    .page-title-main{
        font-size:min(7.8vw,3.2rem);
        padding:10px
    }
    .page-title-main--small{
        font-size:min(6.7vw,2.8rem)
    }
    .page-description{
        font-size:1.4rem;
        margin-block:10px 0
    }
}
.parent-page-title-en{
    font-size:9rem;
    line-height:0.95;
    color:var(--color--wh);
    margin-block:0 20px
}
.parent-page-title-ja{
    width:-webkit-fit-content;
    width:-moz-fit-content;
    width:fit-content;
    background:var(--color--prim);
    color:var(--color--wh);
    border-radius:var(--radius--s);
    overflow:hidden;
    padding:15px;
    font-weight:500;
    line-height:1.4;
    font-size:3rem;
    margin-block:0
}
.parent-page-title-series{
    font-size:2.4rem
}
@media screen and (max-width:1023.98px){
    .parent-page-title-en{
        font-size:5.5rem;
        margin-block:10px
    }
    .parent-page-title-ja{
        font-size:1.7rem;
        padding:10px
    }
    .parent-page-title-series{
        font-size:1.4rem
    }
}
.main-contents{
    position:relative;
    z-index:4;
    display:flow-root;
    margin-inline:auto;
    padding-block:var(--window-padding) 0;
    padding-inline:calc(var(--content-padding)) calc(var(--nav-width) + var(--content-padding));
    border-radius:var(--radius--xl);
    -webkit-transition:-webkit-box-shadow 0.4s ease;
    transition:-webkit-box-shadow 0.4s ease;
    transition:box-shadow 0.4s ease;
    transition:box-shadow 0.4s ease,-webkit-box-shadow 0.4s ease;
    min-height:100svh
}
.main-contents:before{
    content:"";
    position:absolute;
    z-index:-1;
    inset:0 calc(var(--window-padding) * -1);
    background:var(--color--lt-br);
    border-radius:var(--radius--xl);
    -webkit-transition:-webkit-box-shadow 0.4s ease;
    transition:-webkit-box-shadow 0.4s ease;
    transition:box-shadow 0.4s ease;
    transition:box-shadow 0.4s ease,-webkit-box-shadow 0.4s ease
}
.on-scroll .main-contents:before{
    -webkit-box-shadow:0 -25px 25px color-mix(in srgb,var(--color--dk-br) 5%,transparent);
    box-shadow:0 -25px 25px color-mix(in srgb,var(--color--dk-br) 5%,transparent)
}
@media screen and (max-width:1023.98px){
    .main-contents{
        -webkit-padding-end:var(--content-padding);
        padding-inline-end:var(--content-padding)
    }
}
.contents-nav{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    gap:0 40px;
    background:var(--color--br);
    border-radius:var(--radius--l);
    margin:0 var(--neg-margin--max) var(--section-margin);
    padding:40px
}
.contents-nav--sticky{
    position:sticky;
    top:0;
    z-index:3;
    -webkit-margin-after:0;
    margin-block-end:0;
    -webkit-transition:border-radius 0.4s ease,-webkit-margin-end 0.4s ease;
    transition:border-radius 0.4s ease,-webkit-margin-end 0.4s ease;
    transition:border-radius 0.4s ease,margin-inline-end 0.4s ease;
    transition:border-radius 0.4s ease,margin-inline-end 0.4s ease,-webkit-margin-end 0.4s ease
}
.contents-nav--sticky.sticky-active{
    border-top-left-radius:0;
    border-top-right-radius:0
}
.contents-nav-title{
    position:relative;
    -webkit-box-flex:0;
    -ms-flex:0 0 auto;
    flex:0 0 auto;
    font-size:3rem;
    color:var(--color--prim);
    font-weight:300;
    margin:0
}
.contents-nav-inner{
    -webkit-box-flex:2;
    -ms-flex:2 2 auto;
    flex:2 2 auto
}
.contents-nav-list{
    counter-reset:content-nav-counter;
    display:-ms-grid;
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
    gap:20px 30px;
    margin:0
}
.contents-nav-list--3col{
    -ms-grid-columns:(1fr)[3];
    grid-template-columns:repeat(3,1fr)
}
.contents-nav-item{
    counter-increment:content-nav-counter;
    list-style:none;
    margin:0
}
.contents-nav-link{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    gap:0 10px;
    line-height:1.6;
    font-weight:700
}
.contents-nav-count{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center
}
.contents-nav-count:before{
    content:counter(content-nav-counter,decimal-leading-zero);
    font-family:var(--en-font);
    font-size:1.6rem;
    font-weight:300
}
@media screen and (min-width:1024px){
    .contents-nav-title{
        cursor:default;
        pointer-events:none
    }
    .contents-nav-title .ellipsis-icon{
        display:none
    }
    .contents-nav-list:has(.contents-nav-item:nth-child(3):last-child){
        -ms-grid-columns:(1fr)[5];
        grid-template-columns:repeat(5,1fr)
    }
}
@media screen and (max-width:1200px) and (min-width:1024px){
    .contents-nav-list:has(.contents-nav-item:nth-child(3):last-child){
        -ms-grid-columns:(1fr)[3];
        grid-template-columns:repeat(3,1fr)
    }
}
@media screen and (max-width:1023.98px){
    .contents-nav{
        -webkit-box-orient:vertical;
        -webkit-box-direction:normal;
        -ms-flex-direction:column;
        flex-direction:column;
        -webkit-box-align:stretch;
        -ms-flex-align:stretch;
        align-items:stretch;
        padding:0
    }
    .contents-nav.sticky-active{
        -webkit-margin-end:calc(var(--neg-margin--max) + var(--nav-width) - var(--window-padding));
        margin-inline-end:calc(var(--neg-margin--max) + var(--nav-width) - var(--window-padding));
        border-end-start-radius:var(--radius--s);
        border-end-end-radius:var(--radius--s)
    }
    .contents-nav-title{
        z-index:2;
        display:-webkit-box;
        display:-ms-flexbox;
        display:flex;
        -webkit-box-align:center;
        -ms-flex-align:center;
        align-items:center;
        gap:0 10px;
        font-size:2.4rem;
        width:-webkit-fill-available;
        width:-moz-available;
        width:stretch;
        padding:0 20px;
        min-height:calc(var(--header-height));
        -webkit-box-sizing:border-box;
        box-sizing:border-box
    }
    .contents-nav-title .ellipsis-icon{
        position:relative;
        display:block;
        width:36px;
        height:36px;
        -webkit-margin-start:auto;
        margin-inline-start:auto;
        -webkit-transition:0.2s ease;
        transition:0.2s ease;
        border:1px solid color-mix(in srgb,var(--color--prim) 50%,transparent);
        border-radius:50%
    }
    .contents-nav-title .ellipsis-icon:before{
        content:"";
        position:absolute;
        inset:0;
        margin:auto;
        -webkit-mask:url(/saiyou/group/assets/images/icn_ellipsis.svg) center/contain no-repeat;
        mask:url(/saiyou/group/assets/images/icn_ellipsis.svg) center/contain no-repeat;
        width:18px;
        height:18px;
        background:var(--color--prim)
    }
    .contents-nav.is-opened .contents-nav-title .ellipsis-icon{
        border:1px solid transparent;
        background:var(--color--wh)
    }
    .contents-nav-inner{
        padding:20px;
        margin-block:-20px 0
    }
    .contents-nav--sticky .contents-nav-inner{
        visibility:hidden;
        position:absolute;
        display:-webkit-box;
        display:-ms-flexbox;
        display:flex;
        -webkit-box-orient:vertical;
        -webkit-box-direction:normal;
        -ms-flex-direction:column;
        flex-direction:column;
        inset:100% 0 auto 0;
        -webkit-transition:0.4s ease;
        transition:0.4s ease;
        pointer-events:none;
        border-radius:0 0 var(--radius--l) var(--radius--l);
        background-color:var(--color--br);
        clip-path:xywh(0 0 100% 0 round 0 0 var(--radius--l) var(--radius--l))
    }
    .contents-nav--sticky.is-opened .contents-nav-inner{
        visibility:visible;
        pointer-events:initial;
        clip-path:xywh(0 0 100% calc(100% + var(--header-height)) round 0 0 var(--radius--l) var(--radius--l))
    }
    .contents-nav-list{
        -ms-grid-columns:1fr;
        grid-template-columns:1fr;
        gap:10px 20px
    }
    .contents-nav-link{
        gap:0 10px
    }
    .contents-nav-count{
        -webkit-box-orient:horizontal;
        -webkit-box-direction:normal;
        -ms-flex-direction:row;
        flex-direction:row;
        gap:0 5px
    }
    .contents-nav-count:before{
        font-size:1.4rem
    }
}
.lead{
    font-size:1.8rem;
    font-weight:500;
    background:var(--color--br);
    border-radius:var(--radius--l);
    margin:0 var(--neg-margin--max);
    padding:40px
}
.lead>:last-child{
    -webkit-margin-after:0;
    margin-block-end:0
}
@media screen and (max-width:1023.98px){
    .lead{
        font-size:1.4rem;
        padding:20px
    }
}
.section{
    margin-block:0 var(--section-margin);
    counter-increment:section-counter;
    scroll-margin-top:calc(var(--header-height) + var(--window-padding))
}
.section:not(:first-child),.section[class=section]{
    -webkit-margin-before:var(--section-margin);
    margin-block-start:var(--section-margin)
}
.section>:last-child{
    -webkit-margin-after:0;
    margin-block-end:0
}
.section-wrapper{
    display:flow-root
}
.section-wrapper>:last-child{
    -webkit-margin-after:0;
    margin-block-end:0
}
.section-body>:last-child{
    -webkit-margin-after:0;
    margin-block-end:0
}
.section .child-section{
    margin-block:0 var(--child-section-margin)
}
.section .child-section:not(:first-child):not(.section .child-section--2col){
    -webkit-margin-before:var(--child-section-margin);
    margin-block-start:var(--child-section-margin)
}
.section .child-section:last-child,.section .child-section>:last-child{
    -webkit-margin-after:0;
    margin-block-end:0
}
.section .child-section--2col{
    -webkit-margin-after:0;
    margin-block-end:0
}
.section .child-section-wrapper--2col{
    display:-ms-grid;
    display:grid;
    -ms-grid-columns:1fr 32px 1fr;
    grid-template-columns:1fr 1fr;
    gap:var(--child-section-margin) 32px;
    margin-block:80px
}
@media screen and (max-width:1023.98px){
    .section .child-section-wrapper{
        -ms-grid-columns:1fr;
        grid-template-columns:1fr
    }
}
.section-heading{
    position:relative;
    color:var(--color--prim);
    font-size:4rem;
    font-weight:500;
    margin-block:0 90px;
    margin-inline:var(--neg-margin--l)
}
.section-heading:not(:first-child){
    -webkit-margin-before:90px;
    margin-block-start:90px
}
.section-heading:has(.section-count){
    -webkit-padding-start:80px;
    padding-inline-start:80px
}
.section-heading-en{
    font-size:14rem;
    line-height:0.95;
    font-weight:400;
    color:var(--color--wh);
    margin-block:0
}
.section-heading-ja{
    font-weight:500
}
@media screen and (max-width:1023.98px){
    .section-heading{
        font-size:2.4rem;
        margin-block:0 40px
    }
    .section-heading:not(:first-child){
        -webkit-margin-before:40px;
        margin-block-start:40px
    }
    .section-heading:has(.section-count){
        -webkit-padding-start:60px;
        padding-inline-start:60px
    }
    .section-heading-en{
        font-size:min(14vw,6rem)
    }
    .section-heading-ja{
        font-size:2.4rem
    }
}
.child-section-heading{
    font-size:2.4rem;
    font-weight:700;
    color:var(--color--dk-br);
    margin-block:0 40px
}
@media screen and (max-width:1023.98px){
    .child-section-heading{
        font-size:1.8rem;
        margin-block:0 30px
    }
}
.section-count{
    position:absolute;
    inset:0 auto auto 0;
    display:-ms-grid;
    display:grid;
    place-items:center;
    width:70px;
    height:1.5em
}
.section-count:before{
    position:relative;
    z-index:2;
    content:counter(section-counter,decimal-leading-zero);
    font-size:2rem;
    font-weight:300;
    text-align:center;
    line-height:1;
    font-family:var(--en-font)
}
.section-count:after{
    content:"";
    position:absolute;
    inset:0;
    width:70px;
    height:72px;
    margin:auto;
    background:var(--color--wh);
    -webkit-mask:url(/saiyou/group/assets/images/icn_star.svg) center/contain no-repeat;
    mask:url(/saiyou/group/assets/images/icn_star.svg) center/contain no-repeat;
    -webkit-animation:rotate 8s linear infinite;
    animation:rotate 8s linear infinite
}
@-webkit-keyframes rotate{
    to{
        -webkit-transform:rotate(360deg);
        transform:rotate(360deg)
    }
}
@keyframes rotate{
    to{
        -webkit-transform:rotate(360deg);
        transform:rotate(360deg)
    }
}
@media screen and (max-width:1023.98px){
    .section-count{
        width:50px;
        height:1.2em
    }
    .section-count:before{
        font-size:1.6rem
    }
    .section-count:after{
        width:50px;
        height:52px
    }
}
.diagram,.image{
    width:100%;
    height:auto;
    -webkit-box-sizing:border-box;
    box-sizing:border-box
}
.diagram-wrapper,.image-wrapper{
    text-align:center;
    margin-block:90px;
    border-radius:var(--radius--m);
    overflow:hidden
}
.child-section--2col .diagram-wrapper,.child-section--2col .image-wrapper{
    margin-block:24px
}
.bullet-heading+.diagram-wrapper,.bullet-heading+.image-wrapper,.diagram-wrapper:first-child,.image-wrapper:first-child{
    -webkit-margin-before:0;
    margin-block-start:0
}
.diagram-wrapper:last-child,.image-wrapper:last-child{
    -webkit-margin-after:0;
    margin-block-end:0
}
.image-caption{
    margin-block:16px 0;
    font-size:1.2rem;
    line-height:1.8;
    font-weight:400
}
@media screen and (max-width:1023.98px){
    .diagram-wrapper,.image-wrapper{
        margin-block:40px
    }
    .image-wrapper--bg{
        padding:20px
    }
}
.diagram{
    max-width:100%;
    width:auto
}
.diagram-wrapper{
    border:1px solid var(--color--prim);
    margin-inline:var(--neg-margin--max);
    padding:80px;
    border-radius:var(--radius--l)
}
.diagram-wrapper--s{
    padding:40px;
    background:var(--color--wh);
    margin-inline:0;
    border:none;
    border-radius:var(--radius--s);
    margin-block:60px
}
@media screen and (max-width:1023.98px){
    .diagram-wrapper{
        padding:20px
    }
    .diagram-wrapper--s{
        margin-block:40px
    }
}
.thumbnail{
    max-width:none;
    width:100%;
    height:auto;
    -webkit-transition:-webkit-transform 0.4s ease;
    transition:-webkit-transform 0.4s ease;
    transition:transform 0.4s ease;
    transition:transform 0.4s ease,-webkit-transform 0.4s ease
}
.thumbnail-wrapper{
    overflow:hidden
}
@media (hover:hover){
    a:where(:-moz-any-link,:enabled,summary):hover .thumbnail{
        transform:scale(1.05)
    }
    a:where(:any-link,:enabled,summary):hover .thumbnail{
        -webkit-transform:scale(1.05);
        transform:scale(1.05)
    }
}
.video-wrapper{
    position:relative;
    margin-block:90px;
    text-align:center
}
.video-wrapper iframe{
    position:relative!important;
    aspect-ratio:16/9;
    width:100%;
    height:auto;
    border-radius:var(--radius--m)
}
.video-wrapper--right{
    -ms-flex-item-align:start;
    align-self:flex-start
}
.video-wrapper--right iframe{
    aspect-ratio:960/1080
}
@media screen and (min-width:1024px){
    .video-wrapper--right{
        -webkit-margin-start:0;
        margin-inline-start:0;
        margin-block:0;
        overflow:clip
    }
    .video-wrapper--right iframe{
        margin:-1px;
        width:calc(100% + 2px)!important
    }
}
@media screen and (max-width:1023.98px){
    .video-wrapper{
        margin-block:40px
    }
    .video-wrapper--right{
        margin-inline:0
    }
}
.section-body:has(.video-wrapper--right){
    display:-ms-grid;
    display:grid;
    -ms-grid-columns:1fr 90px 1fr;
    grid-template-columns:1fr 1fr;
    gap:0 90px
}
.section-body:has(.video-wrapper--right) p:last-of-type{
    -webkit-margin-after:0;
    margin-block-end:0
}
@media screen and (max-width:1200px) and (min-width:1024px){
    .section-body:has(.video-wrapper--right){
        gap:0 50px
    }
}
@media screen and (max-width:1023.98px){
    .section-body:has(.video-wrapper--right){
        display:block
    }
}
.bullet-point{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:baseline;
    -ms-flex-align:baseline;
    align-items:baseline;
    margin-inline:2.2em 0
}
.bullet-point:before{
    content:"";
    display:list-item;
    list-style:disc
}
.bullet-point+.diagram-wrapper,.bullet-point+.image-wrapper{
    margin-block:40px
}
.page-header+.tab{
    position:relative;
    z-index:2;
    margin-block:calc(var(--section-margin) * -1) 0
}
.tab-list{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    background-color:var(--bg-color);
    border-radius:20px 20px 0 0;
    margin-block:100px
}
.tab-item{
    -webkit-box-flex:1;
    -ms-flex:1 1 0%;
    flex:1 1 0%;
    list-style:none;
    margin:0
}
.tab-item:first-child .tab-link:before{
    border-radius:0 20px 0 0
}
.tab-item:last-child .tab-link:before{
    border-radius:20px 0 0 0
}
.tab-link{
    position:relative;
    z-index:2;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    justify-content:center;
    min-height:180px;
    border-radius:20px 20px 0 0
}
.tab-link:before{
    content:"";
    position:absolute;
    inset:0;
    border-radius:20px 20px 0 0;
    z-index:-1;
    -webkit-transition:0.2s ease;
    transition:0.2s ease
}
.tab-link.is-current:before{
    inset:-20px 0 0;
    background-color:#FFF
}
.tab-label{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    text-align:center
}
.tab-label-en{
    font-size:3.6rem;
    line-height:1.1;
    font-weight:700;
    color:var(--base-font-color)
}
.tab-label-ja{
    font-size:2.4rem;
    line-height:1.5;
    font-weight:500;
    color:var(--color--main)
}
@media screen and (max-width:1023.98px){
    .tab-list{
        margin-block:50px
    }
    .tab-link{
        min-height:100px
    }
    .tab-label-en{
        font-size:2rem
    }
    .tab-label-ja{
        font-size:1.6rem
    }
}
.arrow-icon{
    position:relative;
    display:-webkit-inline-box;
    display:-ms-inline-flexbox;
    display:inline-flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    justify-content:center;
    vertical-align:middle;
    -webkit-box-flex:0;
    -ms-flex:0 0 auto;
    flex:0 0 auto;
    width:53px;
    height:38px;
    background-color:var(--color--prim);
    border-radius:50%;
    -webkit-transition:0.2s ease;
    transition:0.2s ease
}
.arrow-icon:before{
    content:"";
    position:absolute;
    inset:0;
    margin:auto;
    background-color:var(--color--wh);
    -webkit-mask-image:url(/saiyou/group/assets/images/icn_arrow.svg);
    mask-image:url(/saiyou/group/assets/images/icn_arrow.svg);
    -webkit-mask-size:contain;
    mask-size:contain;
    -webkit-mask-repeat:no-repeat;
    mask-repeat:no-repeat;
    -webkit-mask-position:50% 45%;
    mask-position:50% 45%;
    width:20px;
    height:16px
}
@media (hover:hover){
    :where(:-moz-any-link,:enabled,summary):hover .arrow-icon{
        animation:boing-scale 0.4s ease
    }
    :where(:any-link,:enabled,summary):hover .arrow-icon{
        -webkit-animation:boing-scale 0.4s ease;
        animation:boing-scale 0.4s ease
    }
}
@-webkit-keyframes boing-scale{
    0%{
        scale:1
    }
    30%{
        scale:1.1
    }
    to{
        scale:1
    }
}
@keyframes boing-scale{
    0%{
        scale:1
    }
    30%{
        scale:1.1
    }
    to{
        scale:1
    }
}
.arrow-s-icon{
    position:relative;
    -webkit-transition:0.2s ease;
    transition:0.2s ease
}
.arrow-s-icon:before{
    display:block;
    content:"";
    background-color:var(--color--prim);
    -webkit-mask-image:url(/saiyou/group/assets/images/icn_arrow_s.svg);
    mask-image:url(/saiyou/group/assets/images/icn_arrow_s.svg);
    -webkit-mask-size:contain;
    mask-size:contain;
    -webkit-mask-repeat:no-repeat;
    mask-repeat:no-repeat;
    -webkit-mask-position:50% 45%;
    mask-position:50% 45%;
    width:12px;
    height:12px
}
.anchor-link-icon{
    position:relative;
    width:38px;
    height:53px;
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    border-radius:50%;
    border:1px solid color-mix(in srgb,var(--color--prim) 50%,transparent)
}
.anchor-link-icon:before{
    content:"";
    position:absolute;
    inset:0;
    -webkit-mask:url(/saiyou/group/assets/images/icn_down-arrow.svg) center/16px auto no-repeat;
    mask:url(/saiyou/group/assets/images/icn_down-arrow.svg) center/16px auto no-repeat;
    background:var(--color--prim)
}
@media screen and (max-width:1023.98px){
    .anchor-link-icon{
        width:38px;
        height:auto;
        aspect-ratio:38/53
    }
}
@media (hover:hover){
    :where(:-moz-any-link,:enabled,summary):hover .anchor-link-icon{
        animation:boing-scale 0.4s ease
    }
    :where(:any-link,:enabled,summary):hover .anchor-link-icon{
        -webkit-animation:boing-scale 0.4s ease;
        animation:boing-scale 0.4s ease
    }
}
.plus-icon{
    display:block;
    position:relative;
    width:50px;
    height:36px;
    border-radius:50%;
    border:1px solid color-mix(in srgb,var(--color--wh) 50%,transparent);
    color:var(--color--wh)
}
.plus-icon:after,.plus-icon:before{
    content:"";
    position:absolute;
    inset:0;
    margin:auto;
    height:0;
    width:15px;
    border-top:2px solid
}
.plus-icon:after{
    rotate:90deg;
    -webkit-transition:0.2s ease;
    transition:0.2s ease
}
.plus-icon--br{
    border-color:color-mix(in srgb,var(--color--prim) 50%,transparent);
    color:var(--color--prim)
}
@media (hover:hover){
    :where(:-moz-any-link,:enabled,summary):hover .plus-icon{
        animation:boing-scale 0.4s ease
    }
    :where(:any-link,:enabled,summary):hover .plus-icon{
        -webkit-animation:boing-scale 0.4s ease;
        animation:boing-scale 0.4s ease
    }
}
@media (hover:hover){
    :where(:-moz-any-link,:enabled,summary):hover .entry-icon{
        animation:boing-scale 0.4s ease
    }
    :where(:any-link,:enabled,summary):hover .entry-icon{
        -webkit-animation:boing-scale 0.4s ease;
        animation:boing-scale 0.4s ease
    }
}
.modal-overlay{
    position:fixed;
    z-index:20;
    inset:0;
    background:color-mix(in srgb,var(--color--prim) 90%,transparent);
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    justify-content:center;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    overflow:hidden;
    padding:60px var(--window-padding)
}
.modal-container{
    position:relative;
    z-index:21;
    margin:auto;
    background-color:var(--color--wh);
    border-radius:var(--radius--xs);
    width:var(--content-width);
    max-height:calc(100dvh - 120px);
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    padding:var(--window-padding);
    overflow:auto
}
.modal-container::-webkit-scrollbar{
    width:10px;
    border-radius:0 var(--radius--xs) var(--radius--xs) 0;
    background:color-mix(in srgb,var(--color--prim) 15%,var(--color--wh))
}
.modal-container::-webkit-scrollbar-thumb{
    background:color-mix(in srgb,var(--color--prim) 40%,var(--color--wh));
    border-radius:10px
}
.modal-content{
    padding:40px;
    overflow-y:auto;
    -webkit-box-sizing:border-box;
    box-sizing:border-box
}
.modal-content>:last-child{
    -webkit-margin-after:0;
    margin-block-end:0
}
.modal .modal-close-button{
    position:absolute;
    inset:var(--window-padding) var(--window-padding) auto auto;
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    width:48px;
    height:38px;
    border-radius:var(--radius--s);
    -webkit-transition:position 0.4s 0.4s;
    transition:position 0.4s 0.4s
}
.modal .modal-close-button:after,.modal .modal-close-button:before{
    content:"";
    position:absolute;
    top:50%;
    left:50%;
    border-top:2px solid var(--color--wh);
    width:52px;
    -webkit-transform:translate(-50%,-50%) rotate(-30deg);
    transform:translate(-50%,-50%) rotate(-30deg);
    -webkit-transition:0.2s ease;
    transition:0.2s ease
}
.modal .modal-close-button:after{
    -webkit-transform:translate(-50%,-50%) rotate(30deg);
    transform:translate(-50%,-50%) rotate(30deg)
}
.modal.is-open .modal-close-button{
    -webkit-animation:close-button-show 0.4s 0.4s ease both;
    animation:close-button-show 0.4s 0.4s ease both
}
@-webkit-keyframes close-button-show{
    0%{
        scale:0;
        opacity:0
    }
    to{
        scale:1;
        opacity:1
    }
}
@keyframes close-button-show{
    0%{
        scale:0;
        opacity:0
    }
    to{
        scale:1;
        opacity:1
    }
}
@media screen and (max-width:1023.98px){
    .modal-overlay{
        -webkit-padding-after:var(--content-padding);
        padding-block-end:var(--content-padding)
    }
    .modal-container{
        width:var(--content-width--l);
        max-height:calc(100dvh - 60px - var(--content-padding))
    }
    .modal-content{
        padding:16px
    }
}
@-webkit-keyframes mmfadeIn{
    0%{
        opacity:0
    }
    to{
        opacity:1
    }
}
@keyframes mmfadeIn{
    0%{
        opacity:0
    }
    to{
        opacity:1
    }
}
@-webkit-keyframes mmfadeOut{
    0%{
        opacity:1
    }
    to{
        opacity:0
    }
}
@keyframes mmfadeOut{
    0%{
        opacity:1
    }
    to{
        opacity:0
    }
}
@-webkit-keyframes mmslideIn{
    0%{
        -webkit-transform:translateY(24px) scale(0.9);
        transform:translateY(24px) scale(0.9)
    }
    to{
        -webkit-transform:translateY(0) scale(1);
        transform:translateY(0) scale(1)
    }
}
@keyframes mmslideIn{
    0%{
        -webkit-transform:translateY(24px) scale(0.9);
        transform:translateY(24px) scale(0.9)
    }
    to{
        -webkit-transform:translateY(0) scale(1);
        transform:translateY(0) scale(1)
    }
}
@-webkit-keyframes mmslideOut{
    0%{
        -webkit-transform:translateY(0) scale(1);
        transform:translateY(0) scale(1)
    }
    to{
        -webkit-transform:translateY(24px) scale(0.9);
        transform:translateY(24px) scale(0.9)
    }
}
@keyframes mmslideOut{
    0%{
        -webkit-transform:translateY(0) scale(1);
        transform:translateY(0) scale(1)
    }
    to{
        -webkit-transform:translateY(24px) scale(0.9);
        transform:translateY(24px) scale(0.9)
    }
}
.micromodal-slide{
    display:none
}
.micromodal-slide.is-open{
    display:block
}
.micromodal-slide[aria-hidden=false] .modal-overlay{
    -webkit-animation:mmfadeIn 0.4s cubic-bezier(0,0,0.2,1);
    animation:mmfadeIn 0.4s cubic-bezier(0,0,0.2,1)
}
.micromodal-slide[aria-hidden=false] .modal-container{
    -webkit-animation:mmslideIn 0.4s cubic-bezier(0,0,0.2,1);
    animation:mmslideIn 0.4s cubic-bezier(0,0,0.2,1)
}
.micromodal-slide[aria-hidden=true] .modal-overlay{
    -webkit-animation:mmfadeOut 0.4s cubic-bezier(0,0,0.2,1);
    animation:mmfadeOut 0.4s cubic-bezier(0,0,0.2,1)
}
.micromodal-slide[aria-hidden=true] .modal-container{
    -webkit-animation:mmslideOut 0.4s cubic-bezier(0,0,0.2,1);
    animation:mmslideOut 0.4s cubic-bezier(0,0,0.2,1)
}
.micromodal-slide .modal__container,.micromodal-slide .modal__overlay{
    will-change:transform
}
.scroll-hint-icon{
    height:85px
}
.table-wrapper{
    margin-block:40px
}
@media screen and (max-width:1023.98px){
    .table-wrapper{
        width:var(--content-width)
    }
}
.bullet-heading+.table-wrapper{
    -webkit-margin-before:0;
    margin-block-start:0
}
.js-scrollable{
    overflow-y:hidden!important
}
.js-scrollable .chart,.js-scrollable table{
    max-width:none;
    width:100%
}
@media screen and (max-width:1023.98px){
    .js-scrollable .chart,.js-scrollable table{
        max-width:900px;
        width:200%
    }
}
@media screen and (max-width:1023.98px){
    .js-scrollable.is-scrollable{
        margin-inline:calc(var(--content-padding) * -1);
        padding-inline:var(--content-padding);
        width:calc(var(--vw) * 100);
        -webkit-box-sizing:border-box;
        box-sizing:border-box
    }
}
.nav-mode body{
    overflow:hidden!important
}
.header{
    display:contents
}
.mizuho-logo{
    position:sticky;
    inset:var(--window-padding) auto auto var(--window-padding);
    margin-block:0;
    z-index:3;
    height:0;
    -webkit-box-sizing:border-box;
    box-sizing:border-box
}
.mizuho-logo-link{
    position:absolute;
    inset:0;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    justify-content:center;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    width:140px;
    height:140px;
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    padding-block:5px 0;
    -webkit-transition:none;
    transition:none
}
.mizuho-logo-image{
    margin-inline:0 7px
}
.mizuho-logo-bg{
    position:absolute;
    z-index:-1;
    overflow:hidden;
    width:180px;
    height:180px;
    pointer-events:none
}
.mizuho-logo-bg-inner{
    position:absolute;
    inset:0 auto auto 0;
    background:url(/saiyou/group/assets/images/bg_logo.svg) no-repeat;
    background-size:contain;
    width:100%;
    height:100%;
    pointer-events:none
}
@media screen and (max-width:1023.98px){
    .mizuho-logo-image{
        -webkit-box-flex:0;
        -ms-flex:0 0 auto;
        flex:0 0 auto;
        width:75px
    }
    .mizuho-logo-link{
        width:90px;
        height:90px;
        padding-block:5px 0
    }
    .mizuho-logo-bg{
        width:120px;
        height:120px
    }
    .mizuho-logo-bg-inner{
        background-image:url(/saiyou/group/assets/images/bg_logo_mob.svg)
    }
}
@media screen and (min-width:1024px){
    :root{
        --nav-inner-width:600px
    }
}
@media screen and (max-width:1023.98px){
    :root{
        --nav-inner-width:calc(var(--vw) * 100 - var(--window-padding) - var(--nav-width))
    }
}
.nav{
    position:fixed;
    inset:0 0 0 auto;
    z-index:11;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    justify-content:center;
    gap:15px 0;
    -webkit-transition:0.4s ease;
    transition:0.4s ease;
    visibility:hidden
}
.nav-mode .nav{
    translate:calc(var(--nav-inner-width) * -1) 0
}
.nav-button{
    -webkit-box-flex:0;
    -ms-flex:0 0 auto;
    flex:0 0 auto;
    position:relative;
    z-index:2;
    display:block;
    cursor:pointer;
    width:var(--nav-width);
    height:var(--nav-width);
    -webkit-transition:0.2s ease;
    transition:0.2s ease;
    text-indent:100%;
    white-space:nowrap;
    overflow:hidden;
    margin:0 0 0 auto;
    border-radius:var(--radius--s) 0 0 var(--radius--s);
    background:var(--color--prim);
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    border:3px solid var(--color--lt-br);
    border-right:none;
    visibility:visible
}
.nav-button-inner{
    position:absolute;
    inset:0;
    display:block;
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    overflow:hidden;
    -webkit-transition:0.2s ease;
    transition:0.2s ease
}
.nav-button-inner:after,.nav-button-inner:before{
    content:"";
    position:absolute;
    inset:-7px 0 0;
    margin:auto;
    border-top:2px solid;
    height:0;
    color:var(--color--wh);
    width:28px;
    -webkit-transition:0.2s ease;
    transition:0.2s ease
}
.nav-button-inner:after{
    inset:7px 0 0
}
@media (hover:hover){
    :where(:-moz-any-link,:enabled,summary):hover .nav-button-inner{
        animation:boing-scale 0.4s ease
    }
    :where(:any-link,:enabled,summary):hover .nav-button-inner{
        -webkit-animation:boing-scale 0.4s ease;
        animation:boing-scale 0.4s ease
    }
}
.nav-mode .nav-button-inner:after,.nav-mode .nav-button-inner:before{
    rotate:45deg;
    inset:0
}
.nav-mode .nav-button-inner:after{
    rotate:-45deg
}
.nav{
    --nav-padding:40px
}
.nav-inner{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    gap:var(--nav-padding) 0;
    visibility:hidden;
    position:absolute;
    z-index:1;
    inset:0 0 0 100%;
    padding:0;
    width:calc(var(--nav-inner-width) - var(--nav-padding) * 2);
    height:calc(100dvh - var(--nav-padding) * 2);
    padding:var(--nav-padding);
    -webkit-transition:0.4s ease;
    transition:0.4s ease;
    overflow:auto;
    background:var(--color--prim);
    border-left:3px solid var(--color--lt-br);
    margin-left:-3px
}
.nav.is-opened .nav-inner{
    visibility:visible;
    pointer-events:initial
}
.nav-list{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    gap:var(--nav-padding) 0;
    margin:auto 0;
    -webkit-box-sizing:border-box;
    box-sizing:border-box
}
.nav-item{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    gap:20px 0;
    list-style:none;
    margin:0;
    color:var(--color--wh)
}
.nav-link{
    -ms-flex-item-align:start;
    align-self:flex-start;
    color:var(--color--wh)!important
}
@media (hover:hover){
    .nav-link:where(:-moz-any-link,:enabled,summary):hover .nav-label-ja{
        text-decoration:underline
    }
    .nav-link:where(:any-link,:enabled,summary):hover .nav-label-ja{
        text-decoration:underline
    }
}
.nav-label{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    gap:3px 0
}
.nav-label-en{
    font-size:3.6rem;
    line-height:1.2
}
.nav-label-ja{
    font-size:1.6rem;
    line-height:1.5;
    font-weight:700
}
.nav-category-label{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    gap:3px 0
}
.nav-category-label-en{
    font-size:3.6rem;
    line-height:1.2
}
.nav-category-label-ja{
    font-size:1.6rem;
    line-height:1.5;
    font-weight:700
}
.nav-child-list{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    gap:10px 0;
    margin:0
}
.nav-child-item{
    list-style:none;
    margin:0;
    line-height:1.8
}
.nav-child-link{
    display:-webkit-inline-box;
    display:-ms-inline-flexbox;
    display:inline-flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    gap:0 0.5em;
    color:var(--color--wh)!important
}
.nav-child-link[target=_blank]:after{
    display:inline-block;
    content:"";
    background-color:var(--color--wh);
    -webkit-mask-image:url(/saiyou/group/assets/images/icn_arrow_s.svg);
    mask-image:url(/saiyou/group/assets/images/icn_arrow_s.svg);
    -webkit-mask-size:contain;
    mask-size:contain;
    -webkit-mask-repeat:no-repeat;
    mask-repeat:no-repeat;
    -webkit-mask-position:50% 45%;
    mask-position:50% 45%;
    width:12px;
    height:12px;
    rotate:-45deg
}
@media (hover:hover){
    .nav-child-link:where(:-moz-any-link,:enabled,summary):hover{
        text-decoration:underline
    }
    .nav-child-link:where(:any-link,:enabled,summary):hover{
        text-decoration:underline
    }
}
.nav .social-media{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    gap:0 20px;
    width:auto;
    margin-block:auto 0
}
.nav .social-media-title{
    font-size:2.2rem;
    color:var(--color--wh);
    margin-block:0
}
.nav .social-media-list{
    gap:0;
    background:var(--color--wh);
    border-radius:50px;
    padding:5px 10px
}
.nav .social-media-link{
    display:-ms-grid;
    display:grid;
    place-items:center;
    width:50px;
    height:50px;
    border-radius:50%;
    background:var(--color--wh)
}
.nav .social-media-icon{
    width:30px;
    height:30px
}
@media screen and (max-width:1023.98px){
    .nav{
        -webkit-box-pack:start;
        -ms-flex-pack:start;
        justify-content:flex-start
    }
    .nav-button{
        -webkit-margin-end:-0.1px;
        margin-inline-end:-0.1px;
        border-top-left-radius:0;
        border-top:0
    }
    .nav{
        --nav-padding:30px
    }
    .nav-list{
        gap:var(--nav-padding) 0;
        -webkit-padding-end:calc(100px - var(--nav-padding));
        padding-inline-end:calc(100px - var(--nav-padding))
    }
    .nav-item{
        gap:15px 0
    }
    .nav-label{
        gap:3px 0
    }
    .nav-label-en{
        font-size:3rem
    }
    .nav-label-ja{
        font-size:1.4rem
    }
    .nav-category-label{
        gap:3px 0
    }
    .nav-category-label-en{
        font-size:3rem
    }
    .nav-category-label-ja{
        font-size:1.4rem
    }
    .nav-child-list{
        gap:5px 0
    }
    .nav-child-item{
        font-size:1.3rem;
        word-break:keep-all;
        overflow-wrap:anywhere
    }
    .nav-child-link{
        color:var(--color--wh)
    }
}
@media screen and (max-width:1023.98px) and (hover:hover){
    .nav-child-link:where(:-moz-any-link,:enabled,summary):hover{
        text-decoration:underline
    }
    .nav-child-link:where(:any-link,:enabled,summary):hover{
        text-decoration:underline
    }
}
@media screen and (max-width:1023.98px){
    .nav .social-media{
        -webkit-box-orient:vertical;
        -webkit-box-direction:normal;
        -ms-flex-direction:column;
        flex-direction:column;
        -webkit-box-align:start;
        -ms-flex-align:start;
        align-items:flex-start;
        gap:10px 0
    }
    .nav .social-media-list{
        padding:2px 5px
    }
    .nav .social-media-link{
        width:45px;
        height:45px
    }
    .nav .social-media-icon{
        width:28px;
        height:28px
    }
}
.recruit-site-buttons{
    position:relative;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    width:var(--nav-width);
    border:3px solid var(--color--prim);
    border-right:none;
    border-radius:var(--radius--s) 0 0 var(--radius--s);
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    background:var(--color--br);
    margin-block:0;
    overflow:clip;
    visibility:visible
}
.recruit-site-buttons-item{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    margin:0;
    font-size:1.3rem;
    font-weight:700;
    color:var(--color--prim);
    line-height:1.4;
    height:115px
}
.recruit-site-buttons-item:not(:first-child){
    border-top:2px solid transparent;
    -o-border-image:repeating-linear-gradient(to right,var(--color--prim) 0,var(--color--prim) 4px,transparent 4px,transparent 8px) 4;
    border-image:repeating-linear-gradient(to right,var(--color--prim) 0,var(--color--prim) 4px,transparent 4px,transparent 8px) 4
}
.recruit-site-buttons-item:first-child{
    background:var(--color--br)
}
.recruit-site-buttons-item:nth-child(2){
    background:var(--color--gr)
}
.recruit-site-buttons-item:nth-child(3){
    background:var(--color--yl)
}
.recruit-site-buttons-link{
    position:relative;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    justify-content:center;
    width:100%;
    height:100%;
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    padding:10px
}
.recruit-site-buttons-label{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    gap:2px 0
}
.recruit-site-buttons-go{
    display:-ms-grid;
    display:grid;
    place-items:center;
    width:53px;
    height:38px;
    background:var(--color--wh);
    border-radius:50%;
    font-size:2.2rem;
    font-weight:500
}
@media (hover:hover){
    :where(:-moz-any-link,:enabled,summary):hover .recruit-site-buttons-go{
        animation:boing-scale 0.4s ease
    }
    :where(:any-link,:enabled,summary):hover .recruit-site-buttons-go{
        -webkit-animation:boing-scale 0.4s ease;
        animation:boing-scale 0.4s ease
    }
}
.recruit-site-buttons .arrow-icon{
    position:absolute;
    inset:auto 10px auto auto;
    width:-webkit-fit-content;
    width:-moz-fit-content;
    width:fit-content;
    height:-webkit-fit-content;
    height:-moz-fit-content;
    height:fit-content;
    background:transparent;
    rotate:-45deg
}
.recruit-site-buttons .arrow-icon:before{
    position:relative;
    background:var(--color--prim)
}
.recruit-site-buttons .entry-button{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    height:var(--nav-width);
    margin:0
}
.recruit-site-buttons .entry-button-link{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    justify-content:center;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    gap:10px 0;
    height:100%;
    width:100%;
    background:var(--color--rd);
    color:var(--color--wh);
    font-size:1.8rem;
    font-weight:500;
    line-height:1.4;
    padding:10px;
    -webkit-box-sizing:border-box;
    box-sizing:border-box
}
.recruit-site-buttons .entry-button-link :lang(en){
    font-size:2.1rem;
    font-weight:400
}
.recruit-site-buttons .entry-button .entry-icon{
    position:relative;
    display:-ms-grid;
    display:grid;
    place-items:center;
    width:50px;
    height:60px;
    font-size:3.6rem;
    line-height:1
}
/*.recruit-site-buttons .entry-button .entry-icon:before{
    content:"";
    margin-block:0 auto;
    width:44px;
    height:53px;
    -webkit-mask:url(/saiyou/group/assets/images/icn_entry.svg) center/contain no-repeat;
    mask:url(/saiyou/group/assets/images/icn_entry.svg) center/contain no-repeat;
    background:var(--color--wh)
}*/
@media screen and (max-width:1023.98px){
    .recruit-site-buttons{
        position:absolute;
        z-index:2;
        inset:auto 0 0 calc(var(--nav-inner-width) - 100px + var(--nav-width));
        width:100px;
        border-color:var(--color--wh);
        border-right:none
    }
    .recruit-site-buttons-item{
        font-size:1.1rem;
        height:80px
    }
    .recruit-site-buttons-item:not(:first-child){
        border-top:2px solid transparent;
        -o-border-image:repeating-linear-gradient(to right,var(--color--prim) 0,var(--color--prim) 4px,transparent 4px,transparent 8px) 4;
        border-image:repeating-linear-gradient(to right,var(--color--prim) 0,var(--color--prim) 4px,transparent 4px,transparent 8px) 4
    }
    .recruit-site-buttons-link{
        padding:5px
    }
    .recruit-site-buttons-label{
        display:-webkit-box;
        display:-ms-flexbox;
        display:flex;
        -webkit-box-orient:vertical;
        -webkit-box-direction:normal;
        -ms-flex-direction:column;
        flex-direction:column;
        gap:2px 0
    }
    .recruit-site-buttons-go{
        width:34px;
        height:24px;
        font-size:1.4rem
    }
    .recruit-site-buttons .arrow-icon{
        display:none;
        inset:auto 5px 10px auto
    }
    .recruit-site-buttons .arrow-icon:before{
        position:relative
    }
    .recruit-site-buttons .entry-button{
        height:80px;
        margin:0
    }
    .recruit-site-buttons .entry-button-link{
        gap:5px 0;
        font-size:1.2rem;
        padding:5px
    }
    .recruit-site-buttons .entry-button-link :lang(en){
        font-size:1.4rem
    }
    .recruit-site-buttons .entry-button .entry-icon{
        width:40px;
        height:45px;
        font-size:2.8rem;
        line-height:1
    }
    .recruit-site-buttons .entry-button .entry-icon:before{
        width:28px;
        height:33px
    }
}
.footer{
    position:relative;
    z-index:5;
    background:var(--color--wh);
    margin:var(--window-padding) var(--nav-width) 0 0;
    border-radius:var(--radius--l)
}
.footer .topic-path{
    padding-inline:var(--content-padding--xl);
    border-bottom:1px solid var(--color--prim);
    padding-block:40px
}
.footer .topic-path-list{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    gap:0 20px;
    margin:0
}
.footer .topic-path-item{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    gap:0 20px;
    margin:0;
    color:var(--color--dk-br);
    font-size:1.5rem;
    white-space:nowrap
}
.footer .topic-path-item:not(:last-child):after{
    content:"";
    width:7px;
    height:7px;
    border-radius:50%;
    background:var(--color--prim)
}
.footer .topic-path-item:not(:has(.topic-path-link)){
    overflow:hidden;
    text-overflow:ellipsis;
    display:block
}
@media (hover:hover){
    .footer .topic-path-link:where(:-moz-any-link,:enabled,summary):hover{
        text-decoration:underline
    }
    .footer .topic-path-link:where(:any-link,:enabled,summary):hover{
        text-decoration:underline
    }
}
.footer .nav-list{
    display:-ms-grid;
    display:grid;
    -ms-grid-columns:1fr 30px 1fr 30px 1fr 30px 1fr;
    grid-template-columns:repeat(4,1fr);
    gap:0 30px;
    padding:60px var(--content-padding--xl)
}
.footer .nav-item{
    color:var(--color--prim)
}
.footer .nav-item:has(.nav-link[href="/saiyou/group/"]){
    display:none
}
.footer .nav-category-label-ja{
    font-size:1.3rem
}
.footer .nav-child-item{
    font-size:1.3rem
}
.footer .nav-child-link{
    display:-webkit-inline-box;
    display:-ms-inline-flexbox;
    display:inline-flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    gap:0 0.5em;
    color:var(--color--prim)!important
}
.footer .nav-child-link[target=_blank]:after{
    display:inline-block;
    content:"";
    background-color:var(--color--prim);
    -webkit-mask-image:url(/saiyou/group/assets/images/icn_arrow_s.svg);
    mask-image:url(/saiyou/group/assets/images/icn_arrow_s.svg);
    -webkit-mask-size:contain;
    mask-size:contain;
    -webkit-mask-repeat:no-repeat;
    mask-repeat:no-repeat;
    -webkit-mask-position:50% 45%;
    mask-position:50% 45%;
    width:12px;
    height:12px;
    rotate:-45deg
}
.footer-lower{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    -webkit-box-align:baseline;
    -ms-flex-align:baseline;
    align-items:baseline;
    -webkit-box-pack:justify;
    -ms-flex-pack:justify;
    justify-content:space-between;
    gap:20px 30px;
    padding-inline:var(--content-padding--xl);
    -webkit-padding-after:60px;
    padding-block-end:60px
}
.footer .mizuho-logo-type{
    width:100%;
    margin-block:0
}
.footer .mizuho-logo-type-image{
    margin-inline:-8px 0
}
.footer .utility-nav{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    gap:0 30px;
    margin:0
}
.footer .utility-nav-item{
    list-style:none;
    margin:0;
    font-size:1.2rem
}
.footer .utility-nav-link{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    gap:0 0.5em
}
.footer .utility-nav-link[target=_blank] .arrow-s-icon{
    rotate:-45deg
}
.footer .copyright{
    font-size:1.4rem;
    color:var(--color--prim);
    margin:0
}
@media screen and (max-width:1023.98px){
    .footer{
        -webkit-margin-end:0;
        margin-inline-end:0
    }
    .footer .topic-path{
        display:none;
        padding-block:20px;
        padding-inline:20px
    }
    .footer .topic-path-list{
        gap:0 10px
    }
    .footer .topic-path-item{
        gap:0 10px;
        font-size:1.1rem
    }
    .footer .topic-path-item:not(:first-child):before{
        width:5px;
        height:5px
    }
    .footer .nav-list{
        padding:30px 20px;
        -ms-grid-columns:1fr 20px 1fr;
        grid-template-columns:repeat(2,1fr);
        gap:20px 20px
    }
    .footer .nav-category-label-en{
        font-size:2.2rem
    }
    .footer .nav-category-label-ja{
        font-size:1.1rem
    }
    .footer .nav-child-item{
        font-size:1.1rem
    }
    .footer-lower{
        -webkit-box-orient:vertical;
        -webkit-box-direction:normal;
        -ms-flex-direction:column;
        flex-direction:column;
        padding:0 20px 20px;
        gap:20px 15px
    }
    .footer .mizuho-logo-type-image{
        width:280px;
        height:auto;
        margin-inline:-6px 0
    }
    .footer .social-media{
        margin-block:0 20px
    }
    .footer .social-media-title{
        font-size:1.4rem;
        margin-block:0 10px
    }
    .footer .social-media-list{
        gap:0 10px
    }
    .footer .utility-nav{
        -webkit-box-orient:vertical;
        -webkit-box-direction:normal;
        -ms-flex-direction:column;
        flex-direction:column;
        gap:5px 0
    }
    .footer .utility-nav-item{
        font-size:1rem
    }
    .footer .copyright{
        font-size:1.2rem
    }
}
.social-media{
    width:100%;
    margin-block:0 30px
}
.social-media-title{
    font-size:1.8rem;
    line-height:1.5;
    color:var(--color--prim);
    margin-block:0 15px
}
.social-media-list{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    gap:0 15px;
    margin:0
}
.social-media-item{
    list-style:none;
    margin:0
}
.social-media-icon{
    position:relative;
    display:block;
    width:30px;
    height:30px;
    overflow:hidden;
    text-indent:100%;
    white-space:nowrap
}
.social-media-icon:before{
    content:"";
    position:absolute;
    inset:0;
    background:center/contain no-repeat;
    width:100%;
    height:100%
}
.social-media-icon--fb:before{
    background-image:url(/saiyou/group/assets/images/icn_facebook.svg)
}
.social-media-icon--ig:before{
    background-image:url(/saiyou/group/assets/images/icn_instagram.webp)
}
@media screen and (max-width:1023.98px){
    .social-media{
        margin-block:0 20px
    }
    .social-media-title{
        font-size:1.4rem;
        margin-block:0 10px
    }
    .social-media-list{
        gap:0 10px
    }
}
@media screen and (min-width:1024px){
    body:has(.home-contents) .mizuho-logo-link{
        -webkit-transform:none!important;
        transform:none!important;
        opacity:1!important
    }
    body:has(.home-contents) .mizuho-logo-bg-inner{
        -webkit-transform:none!important;
        transform:none!important
    }
}
@media screen and (max-width:1023.98px){
    .beginning{
        -webkit-box-ordinal-group:0;
        -ms-flex-order:-1;
        order:-1;
        position:sticky;
        inset:var(--window-padding) 0 auto;
        display:-webkit-box;
        display:-ms-flexbox;
        display:flex;
        -webkit-box-orient:vertical;
        -webkit-box-direction:normal;
        -ms-flex-direction:column;
        flex-direction:column
    }
}
:root{
    --home-hero-height:max(50svh,350px);
    --home-contents-width:375px;
    --home-contents-margin:0 max(var(--vw) * 12,var(--nav-width) + 25px) 0 auto;
    --home-contents-padding:25px
}
.home-hero{
    position:fixed;
    inset:var(--window-padding);
    -webkit-box-sizing:border-box;
    box-sizing:border-box
}
.home-hero-slider{
    position:absolute;
    inset:0;
    border-radius:var(--radius--l);
    border:var(--frame-width) solid var(--color--prim);
    overflow:hidden
}
.home-hero-slider-item{
    mix-blend-mode:plus-lighter
}
.home-hero-image{
    width:100%;
    height:100%;
    -o-object-fit:cover;
    object-fit:cover
}
.home-hero-illust{
    position:absolute;
    inset:0;
    z-index:5
}
.home-hero-illust-01{
    inset:-100px -60px auto auto
}
.home-hero-illust-02{
    max-width:120%;
    inset:260px auto auto -230px
}
.home-hero-illust-03{
    inset:260px -120px auto auto
}
@media screen and (max-width:1023.98px){
    .home-hero{
        position:relative;
        inset:auto;
        margin:0;
        height:var(--home-hero-height)
    }
    .home-hero-image{
        -o-object-position:10% 50%;
        object-position:10% 50%;
        scale:1.2;
        -webkit-transform-origin:0 15%;
        transform-origin:0 15%
    }
    .home-hero-illust-01{
        max-width:55%;
        inset:10px -30px auto auto
    }
    .home-hero-illust-02{
        max-width:65%;
        inset:280px auto auto -20px
    }
    .home-hero-illust-03{
        max-width:65%;
        inset:auto -40px -50px auto
    }
}
.home-contents{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    width:var(--home-contents-width);
    margin:var(--home-contents-margin);
    padding-block:var(--home-contents-padding) 0
}
@media screen and (max-width:1023.98px){
    .home-contents{
        width:auto;
        margin:0;
        padding-block:0
    }
}
@media screen and (max-width:1023.98px){
    .home-main-contents{
        position:relative;
        z-index:4;
        background:var(--color--lt-br);
        border-radius:var(--radius--l);
        margin-inline:calc(var(--window-padding) * -1);
        padding-inline:var(--window-padding)
    }
}
.home-section{
    position:relative;
    z-index:4;
    background:var(--color--prim);
    border-radius:var(--radius--m);
    padding:25px
}
.home-section-heading{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    text-align:center;
    color:var(--color--prim);
    margin-block:60px
}
.home-section-heading-en{
    font-size:7rem;
    line-height:1;
    margin-block:0 5px
}
.home-section-heading-ja{
    font-size:2.2rem;
    margin:0
}
.home-section-count{
    position:relative;
    width:78px;
    height:78px;
    display:-ms-grid;
    display:grid;
    place-items:center;
    margin-block:0 -10px
}
.home-section-count:before{
    content:"";
    position:absolute;
    inset:0;
    margin:auto;
    -webkit-mask-image:url(/saiyou/group/assets/images/icn_outline-star.svg);
    mask-image:url(/saiyou/group/assets/images/icn_outline-star.svg);
    -webkit-mask-size:70px auto;
    mask-size:70px auto;
    -webkit-mask-repeat:no-repeat;
    mask-repeat:no-repeat;
    -webkit-mask-position:center;
    mask-position:center;
    background:var(--color--prim)
}
.home-section-count-title{
    position:absolute;
    z-index:2;
    inset:-5px 0;
    overflow:visible;
    rotate:40deg;
    width:100%
}
.home-section-count-title-circle{
    fill:none
}
.home-section-count-title-text{
    fill:var(--color--prim);
    font-size:1.6rem;
    font-weight:500;
    line-height:1
}
.home-section-count-number{
    font-size:3rem;
    line-height:1
}
.home-section-lead{
    font-size:1.5rem;
    font-weight:500;
    text-align:center;
    word-break:keep-all;
    overflow-wrap:anywhere;
    margin-block:0 60px
}
.home-introduction{
    background:var(--color--prim);
    color:var(--color--wh)
}
.home-introduction-heading{
    font-size:2.2rem;
    word-break:keep-all;
    overflow-wrap:anywhere;
    margin-block:60px
}
.home-introduction-content{
    font-weight:500;
    word-break:keep-all;
    overflow-wrap:anywhere
}
.home-synergy{
    background:var(--color--br)
}
.home-culture{
    background:var(--color--gr)
}
.home-recruit{
    background:var(--color--yl)
}
.home-contents-index{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    margin:0 -15px -15px
}
.home-contents-index-item{
    margin-inline:0;
    list-style:none
}
.home-contents-index-item:not(:first-child){
    position:relative;
    margin-top:-4px
}
.home-contents-index-item:not(:first-child):before{
    content:"";
    position:absolute;
    z-index:2;
    inset:0 var(--radius--s) auto var(--radius--s);
    border-top:4px solid transparent;
    -o-border-image:repeating-linear-gradient(to right,var(--color--prim) 0,var(--color--prim) 6px,var(--color--wh) 6px,var(--color--wh) 12px) 6;
    border-image:repeating-linear-gradient(to right,var(--color--prim) 0,var(--color--prim) 6px,var(--color--wh) 6px,var(--color--wh) 12px) 6
}
.home-contents-index-link{
    position:relative;
    display:block;
    border:4px solid var(--color--prim);
    border-radius:var(--radius--s);
    overflow:hidden
}
.home-contents-index-link .arrow-icon{
    position:absolute;
    inset:0 10px 0 auto;
    margin:auto 0
}
.home-contents-index-link[target=_blank] .arrow-icon:before{
    rotate:-45deg
}
.home-contents-index-link:not(:has(.thumbnail)){
    border-radius:0;
    background:var(--color--wh);
    font-size:1.8rem;
    font-weight:700;
    padding:20px 15px
}
.home-contents-index-item:not(:has(.thumbnail)):before{
    inset:0 4px auto 4px
}
.home-contents-index-item:not(:has(.thumbnail)):first-child .home-contents-index-link{
    border-radius:var(--radius--s) var(--radius--s) 0 0
}
.home-contents-index-item:not(:has(.thumbnail)):last-child .home-contents-index-link{
    border-radius:0 0 var(--radius--s) var(--radius--s)
}
.home-contents-index-title{
    position:absolute;
    z-index:2;
    inset:auto auto 0 0;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    -webkit-box-align:start;
    -ms-flex-align:start;
    align-items:flex-start;
    line-height:1.4
}
.home-contents-index-title-main{
    position:relative;
    font-weight:700;
    font-size:2.2rem;
    border-radius:var(--radius--xs);
    overflow:hidden;
    padding:10px
}
.home-contents-index-title-main:first-child{
    margin-bottom:-15px;
    border-bottom-left-radius:0
}
.home-contents-index-title-main:last-child{
    border-top-left-radius:0
}
.home-contents-index-title-main:before{
    content:"";
    position:absolute;
    z-index:-1;
    inset:0;
    background:var(--color--wh)
}
.home-contents-index-title-sub{
    position:relative;
    font-weight:500;
    border-radius:var(--radius--xs);
    padding:10px;
    overflow:hidden
}
.home-contents-index-title-sub:first-child{
    margin-bottom:-15px;
    border-bottom-left-radius:0
}
.home-contents-index-title-sub:last-child{
    border-top-left-radius:0
}
.home-contents-index-title-sub:before{
    content:"";
    position:absolute;
    z-index:-1;
    inset:0;
    background:var(--color--wh)
}
.home-recruit .recruit-site-buttons{
    width:-webkit-fill-available;
    width:-moz-available;
    width:stretch;
    border:4px solid var(--color--prim)!important;
    border-radius:var(--radius--s);
    margin:25px -15px -15px
}
.home-recruit .recruit-site-buttons-item{
    font-size:1.8rem;
    height:auto
}
.home-recruit .recruit-site-buttons-item:not(:first-child){
    border-top:4px solid transparent!important;
    -o-border-image:repeating-linear-gradient(to right,var(--color--prim) 0,var(--color--prim) 6px,transparent 6px,transparent 12px) 6!important;
    border-image:repeating-linear-gradient(to right,var(--color--prim) 0,var(--color--prim) 6px,transparent 6px,transparent 12px) 6!important
}
.home-recruit .recruit-site-buttons-link{
    position:relative;
    -webkit-box-orient:horizontal;
    -webkit-box-direction:normal;
    -ms-flex-direction:row;
    flex-direction:row;
    -webkit-box-pack:stretch;
    -ms-flex-pack:stretch;
    justify-content:stretch;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    gap:0 15px!important;
    padding:10px 15px!important;
    min-height:120px;
    word-break:keep-all;
    overflow-wrap:anywhere
}
.home-recruit .recruit-site-buttons .arrow-icon{
    position:relative;
    margin-inline:auto 0
}
.home-recruit .recruit-site-buttons .arrow-icon:before{
    position:relative;
    inset:0;
    margin:auto;
    background:var(--color--prim);
    aspect-ratio:20/16;
    width:24px;
    height:auto
}
.home-recruit .recruit-site-buttons .entry-button{
    height:auto
}
.home-recruit .recruit-site-buttons .entry-button-link{
    -webkit-box-orient:horizontal;
    -webkit-box-direction:normal;
    -ms-flex-direction:row;
    flex-direction:row;
    -webkit-box-pack:stretch;
    -ms-flex-pack:stretch;
    justify-content:stretch;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    gap:0 15px!important;
    font-size:2rem!important;
    padding:10px 15px!important;
    min-height:120px
}
.home-recruit .recruit-site-buttons .entry-button-link :lang(en){
    font-size:2.3rem!important
}
.home-recruit .recruit-site-buttons .entry-button .entry-icon{
    width:50px!important;
    height:60px!important;
    margin-inline:auto 0
}
.home-recruit .recruit-site-buttons .entry-button .entry-icon:before{
    width:43px!important;
    height:53px!important
}
@media screen and (max-width:1023.98px){
    .home-recruit .recruit-site-buttons{
        position:relative;
        inset:auto;
        width:auto
    }
    .home-recruit .recruit-site-buttons-item{
        font-size:1.8rem;
        height:auto
    }
    .home-recruit .recruit-site-buttons-label{
        display:-webkit-box;
        display:-ms-flexbox;
        display:flex;
        -webkit-box-orient:vertical;
        -webkit-box-direction:normal;
        -ms-flex-direction:column;
        flex-direction:column;
        gap:2px 0
    }
    .home-recruit .recruit-site-buttons-go{
        aspect-ratio:53/38;
        width:53px;
        height:auto;
        font-size:2.2rem
    }
    .home-recruit .recruit-site-buttons .arrow-icon{
        display:-webkit-inline-box;
        display:-ms-inline-flexbox;
        display:inline-flex;
        inset:auto
    }
    .home-recruit .recruit-site-buttons .entry-button{
        height:auto;
        margin:0
    }
}
.todays-message{
    position:fixed;
    z-index:4;
    inset:auto calc(max(var(--vw) * 12, var(--nav-width) + 25px) + var(--window-padding) + var(--home-contents-width) + 25px) calc(var(--window-padding) + 25px) calc(var(--window-padding) + 25px)
}
.todays-message-heading{
    font-size:2.2rem;
    font-weight:700;
    color:var(--color--prim);
    background:var(--color--wh);
    width:-webkit-fit-content;
    width:-moz-fit-content;
    width:fit-content;
    padding:15px 20px 0 85px;
    margin:0 0 -15px 50px;
    border-radius:0 var(--radius--s) 0 0
}
.todays-message-content{
    font-size:1.8rem;
    background:var(--color--wh);
    padding:25px 0 25px 85px;
    margin:0 0 0 50px;
    border-radius:0 var(--radius--s) var(--radius--s) 0
}
.todays-message-content-inner{
    overflow:hidden;
    margin-inline:-20px 0;
    padding-inline:20px 0
}
.todays-message-text{
    display:inline-block;
    margin:0;
    line-height:1.6;
    will-change:transform;
    white-space:nowrap
}
.todays-message-date{
    position:absolute;
    z-index:3;
    inset:0 auto 0 -10px;
    margin:auto 0;
    width:136px;
    height:136px;
    border-radius:50%;
    background:var(--color--prim);
    color:var(--color--wh);
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    justify-content:center;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    line-height:1
}
.todays-message-date-today{
    position:absolute;
    z-index:2;
    inset:5px;
    overflow:visible;
    rotate:20deg;
    width:calc(100% - 10px)
}
.todays-message-date-today-circle{
    fill:none
}
.todays-message-date-today-text{
    fill:#FFF;
    font-size:2.2rem;
    font-weight:700;
    line-height:1;
    letter-spacing:-0.1em
}
.todays-message-date-year{
    font-size:1.8rem;
    font-weight:700;
    margin-inline:0
}
.todays-message-date-year-text{
    font-size:1.2rem
}
.todays-message-date-month-day{
    position:relative;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    font-size:3.8rem;
    padding-block:0 5px;
    margin-block:10px 5px
}
.todays-message-date-month-day:after{
    content:"";
    position:absolute;
    inset:auto 0 0;
    border-top:1px solid var(--color--wh)
}
.todays-message-date-day-text,.todays-message-date-month-text{
    font-size:1.8rem;
    font-weight:700
}
.todays-message-date-week{
    font-size:1.4rem;
    font-weight:700;
    margin-block:0 10px
}
@media screen and (max-width:1023.98px){
    .todays-message{
        position:absolute;
        inset:auto calc(var(--window-padding) + 10px) calc(var(--window-padding) + 12px)
    }
    .todays-message-heading{
        font-size:1.5rem;
        padding:6px 10px 0 40px;
        margin:0 0 -5px 40px;
        border-radius:0 var(--radius--xs) 0 0
    }
    .todays-message-content{
        font-size:1.4rem;
        padding:6px 0 6px 40px;
        margin:0 0 0 40px;
        border-radius:0 var(--radius--xs) var(--radius--xs) 0
    }
    .todays-message-content-inner{
        margin-inline:-10px 0;
        padding-inline:10px 0
    }
    .todays-message-date{
        inset:0 auto 0 -5px;
        width:80px;
        height:80px;
        border-radius:50%;
        background:var(--color--prim);
        color:var(--color--wh);
        display:-webkit-box;
        display:-ms-flexbox;
        display:flex;
        -webkit-box-orient:vertical;
        -webkit-box-direction:normal;
        -ms-flex-direction:column;
        flex-direction:column;
        -webkit-box-pack:center;
        -ms-flex-pack:center;
        justify-content:center;
        -webkit-box-align:center;
        -ms-flex-align:center;
        align-items:center;
        line-height:1
    }
    .todays-message-date-today{
        inset:5px;
        rotate:20deg;
        width:calc(100% - 10px)
    }
    .todays-message-date-today-text{
        font-size:1.8rem;
        letter-spacing:-0.1em
    }
    .todays-message-date-year{
        font-size:1.1rem;
        margin-block:12px auto
    }
    .todays-message-date-year-text{
        font-size:0.9rem
    }
    .todays-message-date-month-day{
        font-size:2.2rem;
        padding-block:0 3px;
        margin-block:3px 5px
    }
    .todays-message-date-day-text,.todays-message-date-month-text{
        font-size:1rem
    }
    .todays-message-date-week{
        font-size:1rem
    }
}
.site-title{
    position:relative;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    background:var(--color--wh);
    border-radius:var(--radius--m);
    height:calc(100svh - var(--window-padding) * 4);
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    padding:0 25px 0
}
.site-title-inner{
    position:relative;
    padding-block:140px 240px
}
.site-title:before{
    content:"";
    position:absolute;
    z-index:1;
    inset:0;
    background:var(--color--wh);
    border-radius:var(--radius--m);
    background-image:url(/saiyou/group/images/img_blue-link.svg);
    background-repeat:no-repeat
}
@media screen and (max-width:1023.98px){
    .site-title{
        height:min(140vw,700px);
        margin-block:var(--window-padding) 0
    }
    .site-title-inner{
        position:static;
        padding-block:140px 0;
        margin-bottom:auto
    }
    .site-title:before{
        z-index:4;
        background-size:220px auto
    }
    .site-title:after{
        content:"";
        position:absolute;
        z-index:3;
        inset:calc(var(--window-padding) * -1) calc(var(--window-padding) * -1) calc(var(--radius--l) * -1);
        background:var(--color--lt-br);
        border-radius:var(--radius--l) var(--radius--l) 0 0;
        -webkit-transition:-webkit-box-shadow 0.4s ease;
        transition:-webkit-box-shadow 0.4s ease;
        transition:box-shadow 0.4s ease;
        transition:box-shadow 0.4s ease,-webkit-box-shadow 0.4s ease
    }
    .on-scroll .site-title:after{
        -webkit-box-shadow:0 -25px 25px color-mix(in srgb,var(--color--dk-br) 5%,transparent);
        box-shadow:0 -25px 25px color-mix(in srgb,var(--color--dk-br) 5%,transparent)
    }
}
.site-name{
    position:relative;
    z-index:6;
    font-size:4.2rem;
    font-weight:500;
    line-height:1.3;
    color:var(--color--prim);
    letter-spacing:0.01em;
    margin:0;
    word-break:keep-all;
    overflow-wrap:anywhere
}
.site-name .number{
    font-size:4.9rem;
    font-weight:300;
    line-height:1;
    vertical-align:bottom
}
@media screen and (max-width:1023.98px){
    .site-name{
        font-size:min(9vw,4.2rem)
    }
    .site-name .number{
        font-size:min(10.5vw,4.9rem)
    }
}
.site-name-loop-slider{
    position:fixed;
    z-index:2;
    inset:auto var(--window-padding) 95px var(--window-padding);
    font-size:18rem;
    line-height:1.2;
    overflow:hidden;
    color:var(--color--prim);
    white-space:nowrap;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex
}
.site-name-loop-slider .loop-text{
    position:relative;
    width:-webkit-fit-content;
    width:-moz-fit-content;
    width:fit-content;
    -webkit-animation:loop-slider 60s infinite linear 1s both;
    animation:loop-slider 60s infinite linear 1s both;
    will-change:translate;
    padding-right:0.5em
}
@media screen and (max-width:1023.98px){
    .site-name-loop-slider{
        position:absolute;
        z-index:2;
        inset:auto 0 70px;
        font-size:6rem
    }
    .site-name-loop-slider .loop-text{
        -webkit-animation:loop-slider 30s infinite linear 1s both;
        animation:loop-slider 30s infinite linear 1s both
    }
}
.slogan{
    position:relative;
    z-index:6;
    font-size:1.6rem;
    line-height:1.1;
    letter-spacing:0.2em;
    font-weight:700;
    color:var(--color--prim);
    margin-block:0 15px
}
.scroll-button{
    position:absolute;
    z-index:5;
    inset:auto 0 10px;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    justify-content:center
}
.scroll-button-link{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    justify-content:center;
    font-size:1.8rem;
    line-height:1.6;
    font-weight:500;
    background:var(--color--wh);
    width:80px;
    height:80px;
    border-radius:50%
}
.scroll-button-label{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center
}
.scroll-button-icon{
    display:block;
    position:relative;
    -webkit-mask-image:url(/saiyou/group/assets/images/icn_down-arrow.svg);
    mask-image:url(/saiyou/group/assets/images/icn_down-arrow.svg);
    -webkit-mask-repeat:no-repeat;
    mask-repeat:no-repeat;
    -webkit-mask-size:contain;
    mask-size:contain;
    -webkit-mask-position:center;
    mask-position:center;
    aspect-ratio:16/10;
    width:24px;
    background:var(--color--prim)
}
@media screen and (max-width:1023.98px){
    .scroll-button{
        display:none
    }
}
@-webkit-keyframes loop-slider{
    0%{
        translate:0
    }
    to{
        translate:-100%
    }
}
@keyframes loop-slider{
    0%{
        translate:0
    }
    to{
        translate:-100%
    }
}
.home-footer{
    position:relative;
    z-index:4;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    width:var(--home-contents-width);
    margin:var(--home-contents-margin);
    -webkit-margin-after:calc(var(--window-padding) * -1);
    margin-block-end:calc(var(--window-padding) * -1);
    padding:25px 25px 50px;
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    background:var(--color--wh);
    border-radius:var(--radius--m) var(--radius--m) 0 0
}
.home-footer .copyright{
    font-size:1.4rem;
    line-height:1;
    color:var(--color--prim);
    margin:0;
    text-align:right
}
@media screen and (max-width:1023.98px){
    .home-footer{
        position:relative;
        width:auto;
        margin-inline:0;
        padding:25px
    }
}
#bk{
    --company-color:var(--color--br)
}
#tb{
    --company-color:var(--color--br)
}
#sc{
    --company-color:var(--color--gr)
}
#rt{
    --company-color:var(--color--yl)
}
.about-contents{
    border:var(--frame-width) solid var(--color--prim);
    border-radius:var(--radius--l);
    overflow:hidden;
    height:calc(100svh - var(--window-padding) * 2 - var(--frame-width) * 2)
}
.about-contents-inner{
    position:relative;
    z-index:2;
    visibility:hidden
}
.about-contents-spacer{
    height:150svh
}
.about-page-header{
    position:relative;
    border-radius:0;
    background:transparent!important;
    height:calc(100svh - var(--window-padding) * 2)!important;
    visibility:visible
}
.about-page-header:before{
    display:none
}
.about-page-header .page-title-wrapper{
    padding:var(--window-padding) 0 calc(var(--window-padding) * 3 - var(--frame-width));
    -webkit-margin-end:calc(var(--nav-width) - var(--window-padding));
    margin-inline-end:calc(var(--nav-width) - var(--window-padding))
}
.about-page-header .page-title-en{
    color:var(--color--prim)!important;
    text-shadow:0 0 100px color-mix(in srgb,var(--color--wh) 100%,transparent),0 0 100px color-mix(in srgb,var(--color--wh) 70%,transparent)
}
@media screen and (max-width:1023.98px){
    .about-page-header .page-title-wrapper{
        padding:var(--window-padding) 0 calc(var(--window-padding) * 3);
        -webkit-margin-end:calc(var(--window-padding) * 2);
        margin-inline-end:calc(var(--window-padding) * 2)
    }
    .about-page-header .page-title-en{
        text-shadow:0 0 40px color-mix(in srgb,var(--color--wh) 100%,transparent),0 0 40px color-mix(in srgb,var(--color--wh) 70%,transparent)
    }
}
.about-description{
    font-size:1.8rem;
    font-weight:500
}
.about-description>:last-child{
    -webkit-margin-after:0;
    margin-block-end:0
}
.about-description-wrapper{
    position:relative;
    z-index:2;
    background:var(--color--br);
    border-radius:var(--radius--s);
    margin-block:var(--window-padding) 0;
    padding:20px;
    width:-webkit-fit-content;
    width:-moz-fit-content;
    width:fit-content
}
@media screen and (max-width:1023.98px){
    .about-description{
        font-size:1.4rem
    }
    .about-description-wrapper{
        padding:10px
    }
}
.about-main-contents{
    position:absolute;
    z-index:-1;
    inset:0;
    background:transparent;
    padding:0;
    overflow:hidden;
    border-radius:0
}
.about-main-contents:before{
    display:none;
    -webkit-box-shadow:none!important;
    box-shadow:none!important
}
@media screen and (max-width:1023.98px){
    .about-main-contents{
        padding:0
    }
}
.about-background{
    position:absolute;
    z-index:-1;
    inset:0;
    height:100%
}
.about-background-image{
    max-width:none;
    width:100%;
    height:100%;
    -o-object-fit:cover;
    object-fit:cover;
    -o-object-position:50% 50%;
    object-position:50% 50%;
    -webkit-transition:scale 0.4s;
    transition:scale 0.4s
}
.about-nav{
    position:absolute;
    inset:0 auto 0 0;
    width:-webkit-fill-available;
    width:-moz-available;
    width:stretch
}
.about-nav-list{
    margin:0
}
.about-nav-item{
    position:absolute;
    z-index:2;
    inset:50% auto auto 0;
    list-style:none;
    margin:0;
    translate:0 -50%;
    -webkit-transition:opacity 0.2s ease,visibility 0.2s ease;
    transition:opacity 0.2s ease,visibility 0.2s ease;
    will-change:transform
}
.about-nav-item:first-child{
    left:21%;
    margin-block:7% 0
}
.about-nav-item:nth-child(2){
    left:46%;
    margin-block:-11% 0
}
.about-nav-item:nth-child(3){
    left:66%;
    margin-block:10% 0
}
.about-nav-button{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column
}
.about-nav-button-label{
    display:block;
    background:var(--color--wh);
    font-size:2.4rem;
    line-height:1.2;
    font-weight:500;
    color:var(--color--prim);
    padding:17px 20px;
    border-radius:var(--radius--s);
    text-align:left
}
.about-nav-button-click{
    -ms-flex-item-align:start;
    align-self:flex-start;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    gap:0 10px;
    background:var(--color--prim);
    border-radius:var(--radius--s);
    padding:8px 20px;
    color:var(--color--wh);
    font-size:2.4rem;
    font-weight:500;
    line-height:1.2
}
.about-nav-button-click .plus-icon{
    background:var(--color--wh);
    color:var(--color--prim)
}
@media screen and (max-width:1023.98px){
    .about-nav-item:first-child{
        left:18%;
        margin-block:7% 0
    }
    .about-nav-item:nth-child(2){
        left:45%;
        margin-block:-10 0
    }
    .about-nav-item:nth-child(3){
        left:75%;
        margin-block:15% 0
    }
    .about-nav-button-label{
        font-size:1.8rem;
        padding:10px 15px
    }
    .about-nav-button-click{
        font-size:1.8rem;
        padding:7px 15px
    }
    .about-nav-button-click .plus-icon{
        aspect-ratio:50/36;
        width:40px;
        height:auto
    }
}
@media (max-aspect-ratio:2975/2122){
    .about-main-contents{
        inset:0
    }
    .about-nav{
        position:relative;
        inset:auto;
        height:calc(100svh - var(--window-padding) * 2 - var(--frame-width) * 2);
        width:-webkit-fit-content;
        width:-moz-fit-content;
        width:fit-content
    }
    .about-background{
        position:relative;
        inset:auto;
        width:-webkit-fit-content;
        width:-moz-fit-content;
        width:fit-content;
        height:100%
    }
    .about-background-image{
        max-width:none;
        width:auto;
        height:100%;
        -o-object-position:50% 50%;
        object-position:50% 50%
    }
}
.about-company{
    position:relative;
    margin-inline:auto var(--nav-width);
    width:500px;
    height:100%;
    padding:0;
    background:var(--company-color);
    border-radius:var(--radius--xs);
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    line-height:2;
    overflow:visible
}
#rt .about-company,#sc .about-company{
    margin-inline:var(--nav-width) auto
}
.about-company-container{
    position:relative;
    overflow:auto;
    height:100%;
    max-height:none;
    padding:20px 40px;
    -webkit-box-sizing:border-box;
    box-sizing:border-box
}
.about-company-container::-webkit-scrollbar{
    width:10px;
    border-radius:0 var(--radius--xs) var(--radius--xs) 0;
    background:color-mix(in srgb,var(--color--wh) 50%,transparent)
}
.about-company-container::-webkit-scrollbar-thumb{
    background:var(--color--prim);
    border-radius:10px
}
.about-company-modal .modal-overlay{
    inset:calc(var(--window-padding) + var(--frame-width));
    z-index:2;
    background:transparent;
    padding:calc(var(--window-padding)) 0;
    overflow:hidden
}
.about-company-modal .modal-close-button{
    position:absolute!important;
    inset:10px calc(100% + 10px) auto auto;
    background:var(--color--prim);
    width:53px;
    height:38px;
    border-radius:50%
}
.about-company-modal .modal-close-button:after,.about-company-modal .modal-close-button:before{
    width:24px
}
.about-company-header{
    border:3px solid var(--color--prim);
    border-radius:var(--radius--s);
    margin:0 -20px 40px;
    padding:30px 20px
}
.about-company-image-wrapper{
    display:none
}
.about-company-heading-en{
    font-size:5rem;
    font-weight:400;
    line-height:1.05;
    color:var(--color--prim);
    margin-block:0 8px
}
.about-company-heading-ja{
    font-size:3.6rem;
    font-weight:500;
    line-height:1.2;
    color:var(--color--prim);
    margin:0;
    word-break:keep-all;
    overflow-wrap:anywhere
}
.about-company-section{
    margin-block:70px
}
.about-company-section-heading{
    font-size:2.2rem;
    font-weight:700;
    color:var(--color--prim);
    margin-block:0 40px
}
.about-company-example{
    position:relative;
    background:var(--color--wh);
    padding:30px 20px;
    border-radius:var(--radius--s);
    color:var(--color--dk-br);
    margin-block:70px
}
.about-company-example>:last-child{
    margin-block:0
}
.about-company-example-text{
    position:absolute;
    inset:-40px auto auto 10px;
    display:-ms-grid;
    display:grid;
    place-items:center;
    width:96px;
    height:66px;
    font-size:1.6rem;
    line-height:1;
    font-weight:700;
    color:var(--color--wh);
    background:var(--color--prim);
    border-radius:50% 50% 0 50%;
    margin:0
}
.about-company-example-list{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    gap:10px 0
}
.about-company-example-item>:last-child{
    margin-block:0
}
.about-company-example-heading{
    font-size:1.6rem;
    font-weight:700;
    margin-block:0 5px
}
.about-company-strength{
    display:-ms-grid;
    display:grid;
    grid-template-areas:"hgroup image" "hgroup list";
    -ms-grid-rows:auto 0 1fr;
    grid-template-rows:auto 1fr;
    gap:0 20px;
    margin-block:60px;
    counter-increment:strength-counter
}
.about-company-strength-hgroup{
    -ms-grid-row:1;
    -ms-grid-row-span:3;
    -ms-grid-column:1;
    grid-area:hgroup;
    -webkit-box-flex:0;
    -ms-flex:0 0 auto;
    flex:0 0 auto;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    gap:10px;
    width:30px
}
.about-company-strength:nth-of-type(2n)>.about-company-strength-hgroup{
    -ms-grid-row:1;
    -ms-grid-row-span:2;
    -ms-grid-column:2
}
.about-company-strength-hgroup:after{
    -webkit-box-flex:2;
    -ms-flex:2 2 auto;
    flex:2 2 auto;
    content:"";
    display:block;
    width:0;
    min-height:20px;
    border-left:1px solid var(--color--prim)
}
.about-company-strength-count{
    position:relative;
    display:-ms-grid;
    display:grid;
    place-items:center;
    width:70px;
    height:72px;
    margin:-35px -30px 0 0
}
.about-company-strength-count:before{
    position:relative;
    z-index:2;
    content:counter(strength-counter,decimal-leading-zero);
    font-size:2rem;
    font-weight:400;
    text-align:center;
    line-height:1;
    color:var(--color--prim)
}
.about-company-strength-count:after{
    content:"";
    position:absolute;
    inset:0;
    width:70px;
    height:72px;
    margin:auto;
    background:var(--color--prim);
    -webkit-mask:url(/saiyou/group/assets/images/icn_outline-star.svg) center/contain no-repeat;
    mask:url(/saiyou/group/assets/images/icn_outline-star.svg) center/contain no-repeat;
    -webkit-animation:rotate 8s linear infinite;
    animation:rotate 8s linear infinite
}
.about-company-strength-heading{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    font-size:2rem;
    font-weight:500;
    letter-spacing:0.05em;
    color:var(--color--dk-br);
    -webkit-writing-mode:vertical-rl;
    -ms-writing-mode:tb-rl;
    writing-mode:vertical-rl;
    text-orientation:upright;
    margin:0
}
.about-company-strength-image-wrapper{
    -ms-grid-row:1;
    -ms-grid-column:3;
    grid-area:image;
    border-radius:var(--radius--s) 0 0 var(--radius--s);
    overflow:hidden;
    margin-inline:0 -40px;
    margin-block:0 30px
}
.about-company-strength:nth-of-type(2n)>.about-company-strength-image-wrapper{
    -ms-grid-row:1;
    -ms-grid-column:1
}
.now-photo-modal-header>.about-company-strength-image-wrapper{
    -ms-grid-row:1;
    -ms-grid-row-span:3;
    -ms-grid-column:1
}
.about-company-strength-list{
    -ms-grid-row:3;
    -ms-grid-column:3;
    grid-area:list;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    gap:10px 0;
    margin:0
}
.about-company-strength:nth-of-type(2n)>.about-company-strength-list{
    -ms-grid-row:2;
    -ms-grid-column:1
}
.about-company-strength:nth-of-type(2n){
    grid-template-areas:"image hgroup" "list hgroup"
}
.about-company-strength:nth-of-type(2n) .about-company-strength-image-wrapper{
    border-radius:0 var(--radius--s) var(--radius--s) 0;
    margin-inline:-40px 0
}
.about-company-strength:nth-of-type(2n) .about-company-strength-count{
    margin:-35px 0 0 -30px
}
@media screen and (max-width:1023.98px){
    .about-company{
        margin-inline:0!important;
        width:auto
    }
    .about-company-container{
        padding:10px 20px
    }
    .about-company-container::-webkit-scrollbar{
        width:8px
    }
    .about-company-modal .modal-overlay{
        inset:calc(var(--window-padding) + var(--frame-width)) calc(var(--window-padding) * 2 + var(--frame-width));
        z-index:2;
        background:transparent;
        padding:calc(var(--header-height)) 0 calc(var(--window-padding));
        overflow:hidden
    }
    .about-company-modal .modal-close-button{
        z-index:3;
        inset:auto auto calc(100% + 10px) 0
    }
    .about-company-header{
        margin:0 -10px 40px;
        padding:20px 10px;
        overflow:hidden
    }
    .about-company-image-wrapper{
        display:block;
        margin:-20px -10px 20px
    }
    .about-company-heading-en{
        font-size:3rem;
        margin-block:0 5px
    }
    .about-company-heading-ja{
        font-size:2.4rem
    }
    .about-company-section{
        margin-block:40px
    }
    .about-company-section-heading{
        font-size:1.8rem;
        margin-block:0 20px
    }
    .about-company-example{
        padding:15px 15px;
        margin-block:40px
    }
    .about-company-example>:last-child{
        margin-block:0
    }
    .about-company-example-text{
        inset:-30px auto auto 5px;
        width:80px;
        height:48px;
        font-size:1.4rem
    }
    .about-company-example-heading{
        font-size:1.4rem
    }
    .about-company-strength{
        gap:0 15px;
        margin-block:40px
    }
    .about-company-strength-hgroup{
        gap:10px;
        width:20px
    }
    .about-company-strength-count{
        width:60px;
        height:62px;
        margin:-25px -20px 0 0
    }
    .about-company-strength-count:before{
        font-size:2rem
    }
    .about-company-strength-count:after{
        width:60px;
        height:62px
    }
    .about-company-strength-heading{
        font-size:1.7rem
    }
    .about-company-strength-image-wrapper{
        margin-inline:0 -20px;
        margin-block:0 20px
    }
    .about-company-strength-list{
        -ms-grid-row:3;
        -ms-grid-column:3;
        grid-area:list;
        margin:0
    }
    .about-company-strength:nth-of-type(2n)>.about-company-strength-list{
        -ms-grid-row:2;
        -ms-grid-column:1
    }
    .about-company-strength:nth-of-type(2n) .about-company-strength-image-wrapper{
        margin-inline:-20px 0
    }
    .about-company-strength:nth-of-type(2n) .about-company-strength-count{
        margin:-25px 0 0 -20px
    }
}
.recruit-site-button{
    margin-block:20px
}
.recruit-site-button-link{
    position:relative;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    gap:0 10px;
    width:100%;
    min-height:100px;
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    padding:20px;
    font-size:1.8rem;
    font-weight:700;
    line-height:1.4;
    color:var(--color--prim);
    border:2px solid;
    border-radius:var(--radius--s);
    background:var(--color--wh)
}
.recruit-site-button-label{
    -webkit-box-flex:2;
    -ms-flex:2 2 auto;
    flex:2 2 auto;
    display:block;
    word-break:keep-all;
    overflow-wrap:anywhere
}
.recruit-site-button-go{
    display:-ms-inline-grid;
    display:inline-grid;
    place-items:center;
    width:49px;
    height:30px;
    background:var(--company-color);
    border-radius:50%;
    font-size:2.2rem;
    font-weight:500
}
.recruit-site-button .arrow-icon{
    -webkit-box-flex:0;
    -ms-flex:0 0 auto;
    flex:0 0 auto;
    width:-webkit-fit-content;
    width:-moz-fit-content;
    width:fit-content;
    height:-webkit-fit-content;
    height:-moz-fit-content;
    height:fit-content;
    background:transparent;
    rotate:-45deg
}
.recruit-site-button .arrow-icon:before{
    position:relative;
    background:var(--color--prim)
}
@media screen and (max-width:1023.98px){
    .recruit-site-button-link{
        font-size:1.6rem;
        padding:15px;
        min-height:80px
    }
    .recruit-site-button-label{
        font-size:1.6rem
    }
    .recruit-site-button-go{
        width:40px;
        height:24px;
        font-size:1.8rem
    }
}
.wrapper:has(.is-open) .about-nav-item{
    opacity:0
}
@media screen and (max-width:1023.98px){
    .wrapper:has(.is-open) .about-background-image{
        scale:1!important
    }
}
.wrapper:has(.is-open#bk[aria-hidden=true]) .about-background-image{
    -webkit-transform-origin:30% 65%;
    transform-origin:30% 65%
}
.wrapper:has(.is-open#bk[aria-hidden=false]) .about-background-image{
    -webkit-transform-origin:30% 65%;
    transform-origin:30% 65%;
    scale:1.5
}
.wrapper:has(.is-open#tb[aria-hidden=true]) .about-background-image{
    -webkit-transform-origin:95% 5%;
    transform-origin:95% 5%
}
.wrapper:has(.is-open#tb[aria-hidden=false]) .about-background-image{
    -webkit-transform-origin:95% 5%;
    transform-origin:95% 5%;
    scale:1.5
}
.wrapper:has(.is-open#sc[aria-hidden=true]) .about-background-image{
    -webkit-transform-origin:95% 70%;
    transform-origin:95% 70%
}
.wrapper:has(.is-open#sc[aria-hidden=false]) .about-background-image{
    -webkit-transform-origin:95% 70%;
    transform-origin:95% 70%;
    scale:1.5
}
.top-message-author{
    -ms-grid-row:5;
    -ms-grid-column:3;
    grid-area:author;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    gap:10px;
    color:var(--color--wh);
    text-shadow:0 0 20px color-mix(in srgb,var(--color--dk-br) 70%,transparent);
    -ms-grid-row-align:end;
    align-self:end;
    margin:0 0 15px auto
}
.top-message-author-title{
    font-size:1.4rem;
    font-weight:500;
    line-height:1.4;
    word-break:keep-all;
    overflow-wrap:anywhere
}
.top-message-author-name{
    font-size:2rem;
    font-weight:500;
    line-height:1.2
}
@media screen and (max-width:1023.98px){
    .top-message-author{
        -webkit-box-orient:horizontal;
        -webkit-box-direction:normal;
        -ms-flex-direction:row;
        flex-direction:row;
        -webkit-box-align:baseline;
        -ms-flex-align:baseline;
        align-items:baseline;
        gap:10px;
        margin:10px 0 5px
    }
    .top-message-author-title{
        font-size:1.2rem
    }
    .top-message-author-name{
        font-size:1.6rem
    }
}
.qa{
    margin-inline:var(--neg-margin--max);
    border:3px solid var(--color--prim);
    border-radius:var(--radius--l);
    background:var(--color--yl)
}
.qa-heading{
    font-size:4rem;
    color:var(--color--prim);
    font-weight:500;
    padding:20px 40px;
    margin:0;
    text-align:center;
    border-bottom:2px solid;
    -o-border-image:repeating-linear-gradient(to right,var(--color--prim) 0,var(--color--prim) 4px,transparent 4px,transparent 8px) 4;
    border-image:repeating-linear-gradient(to right,var(--color--prim) 0,var(--color--prim) 4px,transparent 4px,transparent 8px) 4
}
.qa-list{
    display:-ms-grid;
    display:grid;
    -ms-grid-columns:1fr 20px 1fr 20px 1fr;
    grid-template-columns:repeat(3,1fr);
    grid-auto-rows:1fr;
    grid-gap:20px;
    width:var(--content-width--l);
    margin:40px auto!important
}
.qa-item{
    position:relative;
    background:var(--color--prim);
    border-radius:var(--radius--s);
    margin:0;
    padding:30px 30px 70px;
    list-style:none;
    counter-increment:qa-counter
}
.qa-item .modal-button{
    position:absolute;
    inset:0
}
.qa-item .modal-button .plus-icon{
    inset:auto 30px 30px auto
}
.qa-question{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    gap:20px 0;
    color:var(--color--wh);
    margin:0;
    font-size:2rem;
    font-weight:500;
    line-height:1.6
}
.qa-count{
    font-size:3rem;
    line-height:1.5;
    color:var(--color--wh)
}
.qa-count:after{
    content:counter(qa-counter,decimal-leading-zero)
}
.qa-modal-header{
    border:3px solid var(--color--prim);
    border-radius:var(--radius--s);
    padding:40px
}
.qa-modal-question{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    color:var(--color--prim);
    margin:0;
    font-size:3.6rem;
    font-weight:500
}
.qa-modal-count{
    font-size:3rem;
    line-height:1.5;
    color:var(--color--dk-br)
}
@media screen and (max-width:1023.98px){
    .qa-heading{
        font-size:2.4rem;
        padding:20px 10px
    }
    .qa-list{
        -ms-grid-columns:1fr 10px 1fr;
        grid-template-columns:repeat(2,1fr);
        gap:10px;
        margin-block:20px!important
    }
    .qa-item{
        padding-inline:20px;
        -webkit-padding-before:20px;
        padding-block-start:20px
    }
    .qa-item .modal-button .plus-icon{
        inset:auto 20px 20px auto
    }
    .qa-count{
        font-size:2.4rem
    }
    .qa-question{
        font-size:1.6rem;
        gap:10px 0
    }
    .qa-modal-header{
        padding:20px
    }
    .qa-modal-question{
        font-size:2.4rem
    }
    .qa-modal-count{
        font-size:2.4rem
    }
}
.modal-button-label{
    position:absolute;
    display:block;
    text-indent:100%;
    overflow:hidden;
    white-space:nowrap
}
.modal-button .plus-icon{
    position:absolute
}
.answer-index{
    counter-reset:answer-index-counter;
    display:-ms-grid;
    display:grid;
    -ms-grid-columns:1fr var(--window-padding) 1fr;
    grid-template-columns:repeat(2,1fr);
    gap:var(--window-padding);
    margin-inline:var(--neg-margin--max)
}
.answer-index-item{
    counter-increment:answer-index-counter
}
.answer-index-link{
    position:relative;
    display:block;
    border-radius:var(--radius--l);
    overflow:hidden
}
.answer-index-text{
    position:absolute;
    inset:auto var(--window-padding) var(--window-padding);
    display:-ms-grid;
    display:grid;
    background:var(--color--wh);
    border-radius:var(--radius--s);
    padding:var(--window-padding);
    -ms-grid-rows:auto 0 auto 0 auto;
    grid-template-areas:"answer-index-title answer-index-title" "answer-index-company answer-index-arrow" "answer-index-tag answer-index-arrow";
    -ms-grid-columns:1fr 10px auto;
    grid-template-columns:1fr auto;
    gap:0 10px
}
.answer-index-count{
    position:absolute;
    inset:auto auto calc(100% - 10px) var(--window-padding);
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    text-align:center;
    color:var(--color--wh)
}
.answer-index-count:before{
    content:"THEME";
    font-size:1.6rem;
    line-height:1.4;
    font-weight:500
}
.answer-index-count:after{
    display:-ms-grid;
    display:grid;
    place-items:center;
    content:counter(answer-index-counter,decimal-leading-zero);
    -webkit-mask:url(/saiyou/group/assets/images/icn_theme.svg) center/contain no-repeat;
    mask:url(/saiyou/group/assets/images/icn_theme.svg) center/contain no-repeat;
    background:var(--color--rd);
    width:70px;
    height:50px;
    font-size:2.8rem;
    line-height:1;
    font-weight:300
}
.answer-index-title{
    -ms-grid-row:1;
    -ms-grid-column:1;
    -ms-grid-column-span:3;
    grid-area:answer-index-title;
    font-size:min(1.7vw,3rem);
    line-height:1.6;
    font-weight:500;
    margin:0 calc(var(--window-padding) * -1) var(--window-padding);
    padding:0 var(--window-padding) var(--window-padding);
    border-bottom:4px solid transparent;
    -o-border-image:repeating-linear-gradient(to right,var(--color--prim) 0,var(--color--prim) 6px,transparent 6px,transparent 12px) 6;
    border-image:repeating-linear-gradient(to right,var(--color--prim) 0,var(--color--prim) 6px,transparent 6px,transparent 12px) 6
}
.answer-index-company{
    -ms-grid-row:3;
    -ms-grid-column:1;
    grid-area:answer-index-company;
    font-size:1.6rem;
    line-height:1.6;
    font-weight:500;
    margin:0 0 5px
}
.answer-index .tag-list{
    -ms-grid-row:5;
    -ms-grid-column:1;
    grid-area:answer-index-tag;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    gap:0 15px;
    margin:0;
    font-size:1.4rem;
    line-height:1.6;
    color:var(--base-font-color)
}
.answer-index .tag-item{
    list-style:none;
    margin:0
}
.answer-index .arrow-icon{
    -ms-grid-row:3;
    -ms-grid-row-span:3;
    -ms-grid-column:3;
    grid-area:answer-index-arrow;
    margin-block:auto
}
@media screen and (max-width:1023.98px){
    .answer-index{
        grid-template-columns:repeat(auto-fit,minmax(350px,1fr))
    }
    .answer-index .thumbnail{
        -o-object-fit:cover;
        object-fit:cover;
        aspect-ratio:4/5
    }
    .answer-index-count:before{
        font-size:1.2rem
    }
    .answer-index-count:after{
        width:50px;
        height:36px;
        font-size:2.4rem
    }
    .answer-index-title{
        font-size:1.8rem
    }
    .answer-index-company{
        font-size:1.4rem
    }
    .answer-index .tag-list{
        font-size:1.2rem
    }
}
.answer-theme-count{
    position:relative;
    inset:auto auto 0.4em;
    display:-ms-inline-grid;
    display:inline-grid;
    place-items:center;
    -webkit-mask:url(/saiyou/group/assets/images/icn_theme.svg) center/contain no-repeat;
    mask:url(/saiyou/group/assets/images/icn_theme.svg) center/contain no-repeat;
    background:var(--color--rd);
    width:73px;
    height:60px;
    font-size:3.6rem;
    line-height:1;
    font-weight:300
}
@media screen and (max-width:1023.98px){
    .answer-theme-count{
        width:50px;
        height:40px;
        font-size:2.4rem
    }
}
.answer-introduction{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    gap:0 40px;
    background:var(--color--br);
    border-radius:var(--radius--l);
    margin:0 var(--neg-margin--max) var(--section-margin);
    padding:40px
}
.answer-introduction-heading{
    -webkit-box-flex:0;
    -ms-flex:0 0 auto;
    flex:0 0 auto;
    width:350px;
    color:var(--color--prim)
}
.answer-introduction-heading-en{
    font-size:5rem;
    font-weight:400;
    line-height:1;
    margin:0
}
.answer-introduction-heading-ja{
    font-size:2.4rem;
    margin:0
}
.answer-introduction-content{
    width:var(--content-width);
    margin-inline:auto
}
.answer-introduction-content>:last-child{
    -webkit-margin-after:0;
    margin-block-end:0
}
@media screen and (max-width:1023.98px){
    .answer-introduction{
        -webkit-box-orient:vertical;
        -webkit-box-direction:normal;
        -ms-flex-direction:column;
        flex-direction:column;
        gap:20px 0;
        padding:20px
    }
    .answer-introduction-heading{
        width:var(--content-width--l);
        margin-inline:auto
    }
    .answer-introduction-heading-en{
        font-size:3.6rem
    }
    .answer-introduction-heading-ja{
        font-size:1.8rem
    }
}
.learn-more-button{
    display:-ms-grid;
    display:grid;
    -ms-grid-rows:auto 5px auto;
    grid-template-areas:"learn-more-button-label-en learn-more-button-icon" "learn-more-button-label-ja learn-more-button-icon";
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    -ms-grid-columns:1fr 10px auto;
    grid-template-columns:1fr auto;
    gap:5px 10px;
    background:var(--color--br);
    border-radius:var(--radius--l);
    border:3px solid var(--color--prim);
    height:200px;
    padding:var(--window-padding) var(--window-padding) var(--window-padding) calc(var(--content-padding--xl) - 3px);
    -webkit-box-sizing:border-box;
    box-sizing:border-box
}
.learn-more-button-wrapper{
    display:-ms-grid;
    display:grid;
    gap:var(--window-padding) 0;
    margin-inline:var(--neg-margin--max)
}
.learn-more-button-label-en{
    -ms-grid-row:1;
    -ms-grid-column:1;
    grid-area:learn-more-button-label-en;
    font-size:5rem;
    font-weight:400;
    line-height:0.9;
    margin-block:auto 0
}
.learn-more-button-label-ja{
    -ms-grid-row:3;
    -ms-grid-column:1;
    grid-area:learn-more-button-label-ja;
    font-size:2.4rem;
    line-height:1.5;
    font-weight:500;
    margin-block:0 auto;
    word-break:keep-all;
    overflow-wrap:anywhere
}
.learn-more-button .arrow-icon{
    -ms-grid-row:1;
    -ms-grid-row-span:3;
    -ms-grid-column:3;
    grid-area:learn-more-button-icon;
    margin-block:auto;
    background:var(--color--wh);
    height:100%;
    width:160px;
    border-radius:var(--radius--s)
}
.learn-more-button .arrow-icon:before{
    background:var(--color--prim);
    rotate:-45deg;
    width:30px;
    height:23px
}
@media screen and (max-width:1023.98px){
    .learn-more-button{
        gap:2px 10px;
        height:100px;
        -webkit-padding-start:17px;
        padding-inline-start:17px
    }
    .learn-more-button-label-en{
        font-size:2.4rem
    }
    .learn-more-button-label-ja{
        font-size:1.5rem
    }
    .learn-more-button .arrow-icon{
        width:80px
    }
    .learn-more-button .arrow-icon:before{
        width:20px;
        height:16px
    }
}
.talk-session-contents{
    border:var(--frame-width) solid var(--color--prim);
    border-radius:var(--radius--l);
    overflow:hidden;
    height:calc(100svh - var(--window-padding) * 2 - var(--frame-width) * 2)
}
.talk-session-contents .main-contents{
    background:transparent;
    padding-inline:calc(var(--content-padding) + var(--window-padding)) calc(var(--nav-width) + var(--content-padding))
}
.talk-session-contents .main-contents:before{
    display:none;
    -webkit-box-shadow:none!important;
    box-shadow:none!important
}
@media screen and (max-width:1023.98px){
    .talk-session-contents .main-contents{
        -webkit-padding-end:calc(var(--content-padding) + var(--window-padding));
        padding-inline-end:calc(var(--content-padding) + var(--window-padding))
    }
}
.talk-session-page-header{
    position:relative;
    inset:0 0 auto;
    border-radius:0;
    background:transparent!important;
    height:calc(100svh - var(--window-padding) * 2)!important
}
.talk-session-page-header:before{
    display:none
}
.talk-session-page-header .page-title-wrapper{
    padding:var(--window-padding) var(--window-padding) calc(var(--window-padding) * 2 - var(--frame-width));
    -webkit-margin-end:calc(var(--nav-width) - var(--window-padding));
    margin-inline-end:calc(var(--nav-width) - var(--window-padding))
}
.talk-session-page-header .page-title-en{
    color:var(--color--prim)!important
}
@media screen and (max-width:1023.98px){
    .talk-session-page-header .page-title-wrapper{
        padding:var(--window-padding) var(--window-padding) calc(var(--window-padding) * 2);
        -webkit-margin-end:0;
        margin-inline-end:0
    }
}
.talk-session-background{
    position:absolute;
    inset:0;
    z-index:-1
}
.talk-session-background-item{
    position:absolute;
    inset:0
}
.talk-session-background-item--02,.talk-session-background-item--03,.talk-session-background-item--04,.talk-session-background-item--05,.talk-session-background-item--06,.talk-session-background-item--07{
    opacity:0;
    z-index:0
}
.talk-session-background-image{
    -o-object-fit:cover;
    object-fit:cover;
    width:100%;
    height:100%;
    -o-object-position:50% 40%;
    object-position:50% 40%
}
.talk-session-lead{
    font-size:1.8rem;
    font-weight:500
}
.talk-session-lead>:last-child{
    -webkit-margin-after:0;
    margin-block-end:0
}
.talk-session-lead-wrapper{
    background:var(--color--br);
    border-radius:var(--radius--l);
    margin:0 var(--neg-margin--xl) var(--section-margin);
    padding:40px
}
.talk-session-lead-wrapper .contents-nav{
    margin:40px -40px 0;
    padding:40px 40px 0;
    border-top:4px solid transparent;
    background:transparent;
    -o-border-image:repeating-linear-gradient(to right,var(--color--prim) 0,var(--color--prim) 6px,transparent 6px,transparent 12px) 6;
    border-image:repeating-linear-gradient(to right,var(--color--prim) 0,var(--color--prim) 6px,transparent 6px,transparent 12px) 6
}
@media screen and (max-width:1023.98px){
    .talk-session-lead{
        font-size:1.4rem
    }
    .talk-session-lead-wrapper{
        padding:20px
    }
    .talk-session-lead-wrapper .contents-nav{
        margin:20px -20px 0;
        padding:20px 20px 0
    }
}
.talk-session-contents-nav{
    position:relative;
    display:-ms-grid;
    display:grid;
    -ms-grid-columns:1fr auto;
    grid-template-columns:1fr auto;
    -ms-grid-rows:1fr auto;
    grid-template-rows:1fr auto;
    margin-inline:var(--neg-margin--xl)
}
.talk-session-contents-nav>:first-child{
    -ms-grid-row:1;
    -ms-grid-column:1
}
.talk-session-contents-nav>:nth-child(2){
    -ms-grid-row:1;
    -ms-grid-column:2
}
.talk-session-contents-nav>:nth-child(3){
    -ms-grid-row:2;
    -ms-grid-column:1
}
.talk-session-contents-nav>:nth-child(4){
    -ms-grid-row:2;
    -ms-grid-column:2
}
@media screen and (max-width:1023.98px){
    .talk-session-contents-nav{
        display:-webkit-box;
        display:-ms-flexbox;
        display:flex
    }
}
.talk-session-note{
    -ms-grid-column-span:2;
    grid-column:span 2/span 2;
    font-size:1.4rem;
    margin:30px -40px 0;
    padding:30px 40px 0;
    border-top:4px solid transparent;
    -o-border-image:repeating-linear-gradient(to right,var(--color--prim) 0,var(--color--prim) 6px,transparent 6px,transparent 12px) 6;
    border-image:repeating-linear-gradient(to right,var(--color--prim) 0,var(--color--prim) 6px,transparent 6px,transparent 12px) 6
}
.talk-session-note-description{
    margin-block:0
}
.talk-session-note-company-naming{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    gap:0 20px;
    margin:0
}
.talk-session-note-company-naming-item{
    list-style:none;
    margin:0
}
@media screen and (max-width:1023.98px){
    .talk-session-note{
        font-size:1.2rem;
        margin:0;
        padding:20px
    }
}
.member{
    position:relative;
    margin-block:0 50svh
}
.member-heading{
    font-size:8rem;
    font-weight:400;
    color:var(--color--wh);
    margin-inline:var(--neg-margin--xl)
}
.member-item{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    height:130svh
}
.member-text{
    margin-block:auto 50svh;
    width:100%
}
.member-text .name{
    background:var(--color--wh);
    border-radius:var(--radius--m) var(--radius--m) 0 0;
    padding:40px 40px 0;
    margin-block:0 -20px;
    color:var(--color--prim);
    width:-webkit-fit-content;
    width:-moz-fit-content;
    width:fit-content
}
.member-text .name-en{
    margin:0;
    font-size:4rem;
    line-height:1
}
.member-text .name-ja{
    font-size:2.4rem;
    line-height:1.6;
    font-weight:700;
    margin:0
}
.member-text .profile{
    background:var(--color--wh);
    border-radius:0 var(--radius--m) var(--radius--m) var(--radius--m);
    padding:40px
}
.member-text .affiliation{
    font-weight:500;
    margin-block:0 20px
}
.member-text .description{
    -webkit-margin-after:0;
    margin-block-end:0
}
.member-image{
    display:block;
    position:relative;
    -o-object-fit:cover;
    object-fit:cover;
    width:100%;
    height:100%;
    -o-object-position:50% 40%;
    object-position:50% 40%
}
.member-image-wrapper{
    position:fixed;
    z-index:2;
    inset:0
}
.member-background{
    position:absolute;
    inset:0;
    opacity:0;
    background:color-mix(in srgb,var(--color--prim) 80%,transparent)
}
@media screen and (max-width:1023.98px){
    .member-heading{
        font-size:4rem
    }
    .member-list{
        margin-inline:var(--neg-margin--l)
    }
    .member-text .name{
        padding:20px 20px 0;
        margin-block:0 -10px
    }
    .member-text .name-en{
        font-size:2.4rem
    }
    .member-text .name-ja{
        font-size:1.6rem
    }
    .member-text .profile{
        padding:20px;
        font-size:1.3rem
    }
    .member-text .affiliation{
        margin-block:0 10px
    }
}
.talk-section{
    display:flow-root;
    counter-increment:talk-section-counter;
    margin-block:0
}
.talk-section:last-child{
    -webkit-padding-after:100svh;
    padding-block-end:100svh
}
.talk-section-hgroup{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    -webkit-box-pack:end;
    -ms-flex-pack:end;
    justify-content:flex-end;
    height:100svh;
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    padding-block:0 calc(var(--window-padding) * 3 + var(--frame-width) + 50px);
    margin-inline:var(--neg-margin--xl);
    margin-block:0 var(--section-margin)
}
.talk-section-count{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    gap:0 10px;
    color:var(--color--prim);
    margin-block:0 10px
}
.talk-section-count:before{
    content:"Talk Session";
    font-size:8rem;
    font-weight:400;
    line-height:0.95
}
.talk-section-count-num{
    position:relative;
    display:-ms-grid;
    display:grid;
    place-items:center;
    width:70px;
    height:1.5em
}
.talk-section-count-num:before{
    position:relative;
    z-index:2;
    content:counter(talk-section-counter,decimal-leading-zero);
    font-size:3rem;
    font-weight:300;
    text-align:center;
    line-height:1;
    font-family:var(--en-font)
}
.talk-section-count-num:after{
    content:"";
    position:absolute;
    inset:0;
    width:70px;
    height:72px;
    margin:auto;
    background:var(--color--wh);
    -webkit-mask:url(/saiyou/group/assets/images/icn_star.svg) center/contain no-repeat;
    mask:url(/saiyou/group/assets/images/icn_star.svg) center/contain no-repeat;
    -webkit-animation:rotate 8s linear infinite;
    animation:rotate 8s linear infinite
}
.talk-section-heading{
    font-weight:500;
    font-size:4rem;
    border-radius:var(--radius--s);
    overflow:hidden;
    padding:15px;
    background:var(--color--prim);
    color:var(--color--wh);
    width:-webkit-fit-content;
    width:-moz-fit-content;
    width:fit-content;
    margin:0
}
.talk-body+.note{
    background:var(--color--lt-br);
    padding:20px;
    border-radius:var(--radius--s);
    width:40%
}
.talk-text{
    position:relative;
    background:var(--color--wh);
    padding:20px;
    border-radius:var(--radius--s);
    width:40%
}
.talk-text:nth-child(2n){
    margin-inline:auto 0
}
.talk-text .name{
    font-weight:700;
    color:var(--color--prim);
    display:inline-block;
    margin-inline:0 1em
}
.talk-text .name:before{
    content:"";
    position:absolute;
    inset:auto auto calc(100% - 10px) 5px;
    width:60px;
    height:60px;
    border:3px solid var(--color--prim);
    border-radius:50%;
    background:center/cover no-repeat
}
.talk-text .name:after{
    content:"";
    position:absolute;
    inset:auto auto 100% 85px;
    width:15px;
    height:15px;
    background:var(--color--wh);
    clip-path:polygon(0 0,0% 100%,100% 100%)
}
.talk-text .name--y:before{
    background-image:url(/saiyou/group/synergy/images/icn_talk-session_yoshikawa.webp)
}
.talk-text .name--k:before{
    background-image:url(/saiyou/group/synergy/images/icn_talk-session_kajitani.webp)
}
.talk-text .name--n:before{
    background-image:url(/saiyou/group/synergy/images/icn_talk-session_nomura.webp)
}
.talk-text .name--i:before{
    background-image:url(/saiyou/group/synergy/images/icn_talk-session_ichimura.webp)
}
.talk-text .note{
    display:inline-block
}
@media screen and (max-width:1023.98px){
    .talk-section-hgroup{
        height:100svh;
        padding-block:0 calc(var(--window-padding) * 4 + var(--frame-width));
        -webkit-margin-end:0;
        margin-inline-end:0
    }
    .talk-section-count:before{
        font-size:4rem
    }
    .talk-section-count-num{
        width:50px;
        height:1.2em
    }
    .talk-section-count-num:before{
        font-size:1.8rem
    }
    .talk-section-count-num:after{
        width:50px;
        height:52px
    }
    .talk-section-heading{
        font-size:2.2rem
    }
    .talk-body{
        margin-inline:var(--neg-margin--l) 0
    }
    .talk-body+.note{
        width:65%;
        padding:10px
    }
    .talk-text{
        width:65%;
        padding:10px;
        line-height:1.8;
        margin-block:0 55px
    }
    .talk-text .name:before{
        width:50px;
        height:50px
    }
    .talk-text .name:after{
        inset:auto auto 100% 70px;
        width:10px;
        height:10px
    }
}
.chapter-indicator{
    position:absolute;
    z-index:2;
    inset:0 calc(var(--nav-width) + var(--content-padding) - 6vw) 0 auto;
    margin:auto 0;
    height:-webkit-fit-content;
    height:-moz-fit-content;
    height:fit-content;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    visibility:hidden;
    opacity:0;
    -webkit-transition:0.4s ease;
    transition:0.4s ease
}
.chapter-indicator.is-visible{
    visibility:visible;
    opacity:1
}
.chapter-indicator-item{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    margin:0;
    counter-increment:chapter-counter
}
.chapter-indicator-item:not(:last-child):after{
    content:"";
    border-left:2px solid var(--color--wh);
    height:30px;
    width:0
}
.chapter-indicator-link{
    display:-ms-grid;
    display:grid;
    place-items:center;
    width:30px;
    height:30px;
    background:var(--color--wh);
    border-radius:50%
}
.chapter-indicator-item.is-current .chapter-indicator-link{
    background:var(--color--prim);
    color:var(--color--wh)
}
.chapter-indicator-count{
    display:-ms-grid;
    display:grid;
    place-items:center
}
.chapter-indicator-count:before{
    content:counter(chapter-counter,decimal-leading-zero);
    font-size:1.6rem;
    line-height:1
}
@media screen and (max-width:1023.98px){
    .chapter-indicator{
        inset:0 8px 0 auto
    }
    .chapter-indicator-item:not(:last-child):after{
        height:15px
    }
    .chapter-indicator-link{
        width:20px;
        height:20px
    }
    .chapter-indicator-count:before{
        font-size:1.2rem
    }
}
.career-quest{
    margin-inline:var(--neg-margin--max);
    padding-inline:var(--content-padding);
    padding-block:var(--section-margin);
    background:#E5EDFC url(/saiyou/group/synergy/images/bg_answer_career_01.webp) 50% 0/1260px auto repeat-x;
    border-radius:var(--radius--l)
}
.career-quest-heading{
    margin:0 var(--neg-margin--l) 100px
}
.career-quest-heading-en{
    font-family:"Jersey 20",serif;
    font-size:15rem;
    line-height:0.9;
    color:var(--color--wh);
    -webkit-text-stroke:3px var(--color--prim);
    text-stroke:3px var(--color--prim)
}
.career-quest-heading-ja{
    font-size:4rem;
    font-weight:500;
    color:var(--color--prim);
    margin-block:0;
    clip-path:inset(0 0 100% 0)
}
.career-quest-heading-ja-inner{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    gap:0 15px;
    background:var(--color--wh);
    padding:5px 10px;
    border:5px solid color-mix(in srgb,var(--color--prim) 40%,var(--color--wh));
    clip-path:polygon(0% 5px,5px 5px,5px 0%,calc(100% - 5px) 0%,calc(100% - 5px) 5px,100% 5px,100% calc(100% - 5px),calc(100% - 5px) calc(100% - 5px),calc(100% - 5px) 100%,5px 100%,5px calc(100% - 5px),0% calc(100% - 5px))
}
.career-quest-heading .pixel-arrow-icon{
    -webkit-box-flex:0;
    -ms-flex:0 0 auto;
    flex:0 0 auto;
    background:var(--color--prim);
    width:45px;
    height:25px;
    margin-inline:auto 15px;
    clip-path:polygon(0% 0%,100% 0%,100% 20%,88.8888888889% 20%,88.8888888889% 40%,77.7777777778% 40%,77.7777777778% 60%,66.6666666667% 60%,66.6666666667% 80%,55.5555555556% 80%,55.5555555556% 100%,44.4444444444% 100%,44.4444444444% 80%,33.3333333333% 80%,33.3333333333% 60%,22.2222222222% 60%,22.2222222222% 40%,11.1111111111% 40%,11.1111111111% 20%,0% 20%)
}
.career-quest-lead{
    font-size:1.8rem;
    font-weight:500;
    letter-spacing:0.1em;
    margin-inline:5%
}
@media screen and (max-width:1023.98px){
    .career-quest{
        background-size:min(90vw,1260px) auto
    }
    .career-quest-heading{
        -webkit-margin-after:40px;
        margin-block-end:40px
    }
    .career-quest-heading-en{
        font-size:min(17vw,15rem);
        line-height:0.7;
        -webkit-text-stroke:2px var(--color--prim);
        text-stroke:2px var(--color--prim);
        -webkit-margin-after:10px;
        margin-block-end:10px
    }
    .career-quest-heading-ja{
        font-size:2.4rem
    }
    .career-quest-heading-ja-inner{
        padding:5px 10px;
        border:3px solid color-mix(in srgb,var(--color--prim) 40%,var(--color--wh));
        clip-path:polygon(0% 3px,3px 3px,3px 0%,calc(100% - 3px) 0%,calc(100% - 3px) 3px,100% 3px,100% calc(100% - 3px),calc(100% - 3px) calc(100% - 3px),calc(100% - 3px) 100%,3px 100%,3px calc(100% - 3px),0% calc(100% - 3px))
    }
    .career-quest-heading .pixel-arrow-icon{
        width:27px;
        height:15px;
        margin-inline:auto 10px
    }
    .career-quest-lead{
        font-size:1.5rem
    }
}
.career-field{
    margin-block:60px 0
}
.career-field-link{
    position:relative;
    display:block;
    border:5px solid var(--color--prim);
    clip-path:polygon(0% 5px,5px 5px,5px 0%,calc(100% - 5px) 0%,calc(100% - 5px) 5px,100% 5px,100% calc(100% - 5px),calc(100% - 5px) calc(100% - 5px),calc(100% - 5px) 100%,5px 100%,5px calc(100% - 5px),0% calc(100% - 5px))
}
.career-field-link-text{
    position:absolute;
    inset:0 auto auto 0;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    gap:0 10px;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    background:var(--color--wh);
    font-size:2.4rem;
    line-height:1.5;
    font-weight:500;
    padding:20px;
    clip-path:polygon(0% 0%,calc(100% - 10px) 0%,calc(100% - 10px) 5px,calc(100% - 5px) 5px,calc(100% - 5px) 10px,100% 10px,100% calc(100% - 10px),calc(100% - 5px) calc(100% - 10px),calc(100% - 5px) calc(100% - 5px),calc(100% - 10px) calc(100% - 5px),calc(100% - 10px) 100%,10px 100%,10px calc(100% - 5px),5px calc(100% - 5px),5px calc(100% - 10px),0% calc(100% - 10px));
    word-break:keep-all;
    overflow-wrap:anywhere
}
.career-field-link-text .arrow-icon{
    background:var(--color--lt-br)
}
.career-field-link-text .arrow-icon:before{
    background:var(--color--prim);
    rotate:-45deg
}
@media screen and (max-width:1023.98px){
    .career-field{
        margin-block:40px
    }
    .career-field-link{
        border-width:3px;
        clip-path:polygon(0% 3px,3px 3px,3px 0%,calc(100% - 3px) 0%,calc(100% - 3px) 3px,100% 3px,100% calc(100% - 3px),calc(100% - 3px) calc(100% - 3px),calc(100% - 3px) 100%,3px 100%,3px calc(100% - 3px),0% calc(100% - 3px))
    }
    .career-field-link-text{
        font-size:1.6rem;
        padding:10px;
        margin-inline:0 30px;
        clip-path:polygon(0% 0%,calc(100% - 6px) 0%,calc(100% - 6px) 3px,calc(100% - 3px) 3px,calc(100% - 3px) 6px,100% 6px,100% calc(100% - 6px),calc(100% - 3px) calc(100% - 6px),calc(100% - 3px) calc(100% - 3px),calc(100% - 6px) calc(100% - 3px),calc(100% - 6px) 100%,6px 100%,6px calc(100% - 3px),3px calc(100% - 3px),5px calc(100% - 6px),0% calc(100% - 6px))
    }
}
.career-support-list{
    margin-inline:var(--neg-margin--l);
    display:-ms-grid;
    display:grid;
    -ms-grid-columns:1fr 20px 1fr;
    grid-template-columns:repeat(2,1fr);
    gap:20px
}
.career-support-item{
    display:-ms-grid;
    display:grid;
    grid-template-areas:"title icon" "description description";
    gap:20px;
    -ms-grid-columns:1fr 20px auto;
    grid-template-columns:1fr auto;
    -ms-grid-rows:auto 20px 1fr;
    grid-template-rows:auto 1fr;
    border:1px solid var(--color--prim);
    border-radius:var(--radius--s);
    padding:40px
}
.career-support-item .icon-wrapper{
    -ms-grid-row:1;
    -ms-grid-column:3;
    grid-area:icon
}
.career-support-title{
    -ms-grid-row:1;
    -ms-grid-column:1;
    grid-area:title;
    font-size:2.4rem;
    font-weight:500;
    color:var(--color--prim);
    margin-block:0;
    -ms-grid-row-align:center;
    align-self:center
}
.career-support-description{
    -ms-grid-row:5;
    -ms-grid-column:3;
    grid-area:description;
    margin-block:0
}
.career-support-item>.career-support-description{
    -ms-grid-row:3;
    -ms-grid-column:1;
    -ms-grid-column-span:3
}
@media screen and (max-width:1023.98px){
    .page-title-en{
        -ms-grid-row:3;
        -ms-grid-column:1;
        -ms-grid-column-span:1
    }
    .page-title-wrapper:has(.page-description)>.page-title-en{
        -ms-grid-row:3;
        -ms-grid-column:1;
        -ms-grid-column-span:1
    }
    .page-title-ja{
        -ms-grid-row:5;
        -ms-grid-column:1
    }
    .page-title-wrapper:has(.page-description)>.page-title-ja{
        -ms-grid-row:5;
        -ms-grid-column:1
    }
    .page-description{
        -ms-grid-row:7;
        -ms-grid-column:1
    }
    .top-message-author{
        -ms-grid-row:7;
        -ms-grid-column:1
    }
    .career-support-description{
        -ms-grid-row:7;
        -ms-grid-column:1
    }
}
@media screen and (max-width:1023.98px){
    .career-support-list{
        grid-template-columns:repeat(auto-fill,minmax(320px,1fr))
    }
    .career-support-item{
        padding:20px
    }
    .career-support-item .icon{
        width:80px;
        height:auto
    }
    .career-support-title{
        font-size:1.8rem
    }
}
.tag-button{
    display:-ms-grid;
    display:grid;
    place-items:center;
    border:1px solid color-mix(in srgb,var(--color--prim) 50%,transparent);
    border-radius:30px;
    padding-inline:20px;
    height:48px;
    font-size:1.8rem;
    line-height:1.4;
    font-weight:700;
    color:var(--color--prim)
}
.tag-button.is-active{
    background:var(--color--wh)!important
}
@media (hover:hover){
    .tag-button:where(:-moz-any-link,:enabled,summary):hover{
        background:color-mix(in srgb,var(--color--prim) 15%,transparent)
    }
    .tag-button:where(:any-link,:enabled,summary):hover{
        background:color-mix(in srgb,var(--color--prim) 15%,transparent)
    }
}
.tag-button-list{
    position:sticky;
    z-index:9;
    inset:0 0 auto;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    gap:10px;
    background:var(--color--br);
    border-radius:0 0 var(--radius--l) var(--radius--l);
    margin:-40px var(--neg-margin--max) 20px;
    padding:40px
}
@media screen and (max-width:1023.98px){
    .tag-button{
        font-size:1.3rem;
        height:28px;
        padding-inline:8px
    }
    .tag-button-list{
        gap:5px;
        margin-block:-20px 20px;
        padding:20px calc(var(--nav-width)) 20px 20px
    }
}
@media screen and (min-width:1024px){
    .now-photo-modal-button:first-child,.now-photo-modal-button:nth-child(10),.now-photo-modal-button:nth-child(4),.now-photo-modal-button:nth-child(7),.now-photo-modal-button:nth-child(9){
        margin:-1cqi;
        z-index:3
    }
    .now-photo-modal-button:nth-child(11),.now-photo-modal-button:nth-child(14),.now-photo-modal-button:nth-child(2),.now-photo-modal-button:nth-child(5),.now-photo-modal-button:nth-child(8){
        margin:0cqi;
        z-index:2
    }
    .now-photo-modal-button:nth-child(12),.now-photo-modal-button:nth-child(13),.now-photo-modal-button:nth-child(15),.now-photo-modal-button:nth-child(3),.now-photo-modal-button:nth-child(6){
        margin:1cqi
    }
}
@media screen and (max-width:1023.98px){
    .now-photo-modal-button:first-child,.now-photo-modal-button:nth-child(10),.now-photo-modal-button:nth-child(4),.now-photo-modal-button:nth-child(7),.now-photo-modal-button:nth-child(9){
        margin:-2cqi;
        z-index:3
    }
    .now-photo-modal-button:nth-child(11),.now-photo-modal-button:nth-child(14),.now-photo-modal-button:nth-child(2),.now-photo-modal-button:nth-child(5),.now-photo-modal-button:nth-child(8){
        margin:-1cqi;
        z-index:2
    }
    .now-photo-modal-button:nth-child(12),.now-photo-modal-button:nth-child(13),.now-photo-modal-button:nth-child(15),.now-photo-modal-button:nth-child(3),.now-photo-modal-button:nth-child(6){
        margin:0cqi
    }
}
.tag-note{
    position:relative;
    z-index:2;
    margin-inline:var(--neg-margin--xl)
}
.now-photo-list{
    position:relative;
    container-type:inline-size;
    display:-ms-grid;
    display:grid;
    -ms-grid-columns:1fr 2cqi 1fr 2cqi 1fr 2cqi 1fr;
    grid-template-columns:repeat(4,1fr);
    gap:2cqi;
    margin-inline:var(--neg-margin--l);
    margin-block:80px calc(80px - var(--section-margin))
}
.now-photo-list:before{
    content:"";
    position:absolute;
    z-index:-1;
    inset:20cqi 10cqi;
    background:#7eb2ff;
    border-radius:30cqi;
    -webkit-filter:blur(15cqi);
    filter:blur(15cqi);
    opacity:0.2
}
.now-photo-list:after{
    content:"";
    position:absolute;
    z-index:3;
    inset:-2cqi -6cqi;
    pointer-events:none;
    -webkit-transition:backdrop-filter 0.2s ease,background-color 0.2s ease;
    transition:backdrop-filter 0.2s ease,background-color 0.2s ease;
    will-change:backdrop-filter
}
.now-photo-list:has(.is-active):after{
    backdrop-filter:blur(0.5cqi);
    background-color:color-mix(in srgb,var(--color--lt-br) 80%,transparent)
}
.now-photo-modal-button{
    position:relative;
    border-radius:var(--radius--s);
    -webkit-transition:margin 0.2s ease;
    transition:margin 0.2s ease;
    will-change:filter
}
.now-photo-modal-button .plus-icon{
    z-index:2;
    inset:auto 20px 20px auto;
    background:var(--color--wh);
    color:var(--color--prim);
    width:32px;
    height:32px
}
.now-photo-modal-button:first-child{
    translate:2cqi 8cqi
}
.now-photo-modal-button:nth-child(2){
    translate:1cqi -1cqi
}
.now-photo-modal-button:nth-child(3){
    translate:-6cqi 4cqi
}
.now-photo-modal-button:nth-child(4){
    translate:-7cqi 3cqi
}
.now-photo-modal-button:nth-child(5){
    translate:-4cqi 3cqi
}
.now-photo-modal-button:nth-child(6){
    translate:-4cqi -2cqi
}
.now-photo-modal-button:nth-child(7){
    translate:-5cqi 2cqi
}
.now-photo-modal-button:nth-child(8){
    translate:4cqi -5cqi
}
.now-photo-modal-button:nth-child(9){
    translate:4cqi 0cqi
}
.now-photo-modal-button:nth-child(10){
    translate:6cqi -4cqi
}
.now-photo-modal-button:nth-child(11){
    translate:13cqi -15cqi
}
.now-photo-modal-button:nth-child(12){
    translate:4cqi -6cqi
}
.now-photo-modal-button:nth-child(13){
    translate:23cqi -10cqi
}
.now-photo-modal-button:nth-child(14){
    translate:27cqi -16cqi
}
.now-photo-modal-button:nth-child(15){
    translate:20cqi -12cqi
}
.now-photo-thumbnail{
    max-width:none;
    width:100%;
    height:auto;
    -webkit-transition:-webkit-transform 0.4s ease;
    transition:-webkit-transform 0.4s ease;
    transition:transform 0.4s ease;
    transition:transform 0.4s ease,-webkit-transform 0.4s ease
}
.now-photo-thumbnail-wrapper{
    display:block;
    overflow:hidden;
    border-radius:var(--radius--s);
    border:3px solid var(--color--prim)
}
@media (hover:hover){
    button:where(:-moz-any-link,:enabled,summary):hover .now-photo-thumbnail{
        transform:scale(1.05)
    }
    button:where(:any-link,:enabled,summary):hover .now-photo-thumbnail{
        -webkit-transform:scale(1.05);
        transform:scale(1.05)
    }
}
.now-photo-modal-button.is-active{
    margin:-1cqi;
    z-index:8
}
.now-photo-modal-button.is-active+.now-photo-modal-button.is-active{
    z-index:7
}
.now-photo-modal-button.is-active+.now-photo-modal-button.is-active+.now-photo-modal-button.is-active{
    z-index:6
}
.now-photo{
}
.now-photo-modal-button.is-inactive{
    pointer-events:none
}
@media screen and (max-width:1023.98px){
    .now-photo-list{
        -ms-grid-columns:(1fr)[3];
        grid-template-columns:repeat(3,1fr);
        margin-block:40px;
        margin-inline:var(--neg-margin)
    }
    .now-photo-list:before{
        inset:30cqi -5cqi;
        -webkit-filter:blur(15cqi);
        filter:blur(15cqi)
    }
    .now-photo-list:after{
        inset:-6cqi -10cqi
    }
    .now-photo-modal-button:first-child{
        translate:-2cqi 8cqi
    }
    .now-photo-modal-button:nth-child(2){
        translate:-5cqi -3cqi
    }
    .now-photo-modal-button:nth-child(3){
        translate:1cqi 1cqi
    }
    .now-photo-modal-button:nth-child(4){
        translate:8cqi 8cqi
    }
    .now-photo-modal-button:nth-child(5){
        translate:13cqi -5cqi
    }
    .now-photo-modal-button:nth-child(6){
        translate:4cqi 1cqi
    }
    .now-photo-modal-button:nth-child(7){
        translate:-6cqi 2cqi
    }
    .now-photo-modal-button:nth-child(8){
        translate:-3cqi 4cqi
    }
    .now-photo-modal-button:nth-child(9){
        translate:3cqi -2cqi
    }
    .now-photo-modal-button:nth-child(10){
        translate:8cqi 1cqi
    }
    .now-photo-modal-button:nth-child(11){
        translate:11cqi 9cqi
    }
    .now-photo-modal-button:nth-child(12){
        translate:9cqi -7cqi
    }
    .now-photo-modal-button:nth-child(13){
        translate:-9cqi -7cqi
    }
    .now-photo-modal-button:nth-child(14){
        translate:-8cqi 3cqi
    }
    .now-photo-modal-button:nth-child(15){
        translate:2cqi -7cqi
    }
    .now-photo-modal-button .plus-icon{
        inset:auto 8px 8px auto;
        aspect-ratio:50/36;
        width:20px;
        height:20px
    }
    .now-photo-modal-button .plus-icon:after,.now-photo-modal-button .plus-icon:before{
        width:10px
    }
}
.now-photo-modal-header{
    display:-ms-grid;
    display:grid;
    grid-template-areas:"image tag" "image heading";
    -ms-grid-columns:auto 40px 1fr;
    grid-template-columns:auto 1fr;
    -ms-grid-rows:1fr 0 auto;
    grid-template-rows:1fr auto;
    border:3px solid var(--color--prim);
    border-radius:var(--radius--s);
    padding:40px;
    overflow:hidden;
    gap:0 40px
}
.now-photo-modal-image{
    max-width:none;
    width:100%;
    height:100%;
    -o-object-fit:cover;
    object-fit:cover
}
.now-photo-modal-image-wrapper{
    -ms-grid-row:1;
    -ms-grid-column:3;
    grid-area:image;
    margin:-40px 0 -40px -40px;
    width:300px
}
.about-company-strength:nth-of-type(2n)>.now-photo-modal-image-wrapper{
    -ms-grid-row:1;
    -ms-grid-column:1
}
.now-photo-modal-header>.now-photo-modal-image-wrapper{
    -ms-grid-row:1;
    -ms-grid-row-span:3;
    -ms-grid-column:1
}
.now-photo-modal .tag-list{
    -ms-grid-row:1;
    -ms-grid-column:3;
    grid-area:tag;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    gap:10px;
    margin-block:auto 10px
}
.now-photo-modal .tag-item{
    display:-ms-grid;
    display:grid;
    place-items:center;
    list-style:none;
    border-radius:30px;
    padding-inline:20px;
    height:48px;
    font-size:2rem;
    font-weight:700;
    line-height:1.4;
    background:var(--color--prim);
    color:var(--color--wh);
    margin:0
}
.now-photo-modal-heading{
    -ms-grid-row:3;
    -ms-grid-column:3;
    grid-area:heading;
    color:var(--color--prim);
    margin:0;
    font-size:3.6rem;
    font-weight:500
}
@media screen and (max-width:1023.98px){
    .now-photo-modal-header{
        grid-template-areas:"image" "tag" "heading";
        -ms-grid-columns:1fr;
        grid-template-columns:1fr;
        -ms-grid-rows:auto;
        grid-template-rows:auto;
        padding:20px;
        gap:0
    }
    .now-photo-modal-image-wrapper{
        margin:-20px -20px 20px;
        width:-webkit-fill-available;
        width:-moz-available;
        width:stretch
    }
    .now-photo-modal .tag-list{
        gap:5px;
        margin-block:0 10px
    }
    .now-photo-modal .tag-item{
        font-size:1.6rem;
        height:40px;
        padding-inline:15px
    }
    .now-photo-modal-heading{
        font-size:2.4rem
    }
    .now-photo-modal-header>.about-company-strength-image-wrapper{
        -ms-grid-row:1;
        -ms-grid-row-span:1;
        -ms-grid-column:1
    }
    .now-photo-modal-header>.now-photo-modal-image-wrapper{
        -ms-grid-row:1;
        -ms-grid-row-span:1;
        -ms-grid-column:1
    }
    .now-photo-modal .tag-list{
        -ms-grid-row:3;
        -ms-grid-column:1
    }
    .now-photo-modal-heading{
        -ms-grid-row:5;
        -ms-grid-column:1
    }
}
:where(.main-contents){
    counter-reset:faq-counter
}
.faq-list{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    gap:20px;
    margin-block:var(--child-section-margin)
}
.faq-item{
    counter-increment:faq-counter;
    background:var(--color--wh);
    border-radius:var(--radius--s)
}
.faq-item .plus-icon{
    -webkit-box-flex:0;
    -ms-flex:0 0 auto;
    flex:0 0 auto
}
.faq-item.is-opened .plus-icon:after{
    scale:1 0
}
.faq-summary{
    padding:40px;
    cursor:pointer;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    gap:0 20px
}
.faq-summary:before{
    -webkit-box-flex:0;
    -ms-flex:0 0 auto;
    flex:0 0 auto;
    content:"Q" counter(faq-counter);
    font-size:2.4rem;
    line-height:1.6;
    color:var(--color--prim);
    font-family:var(--en-font);
    width:80px;
    text-align:center;
    -webkit-box-sizing:border-box;
    box-sizing:border-box
}
.faq-question{
    -webkit-box-flex:2;
    -ms-flex:2 2 auto;
    flex:2 2 auto;
    font-size:2rem;
    font-weight:500;
    line-height:1.6;
    color:var(--color--dk-br);
    margin:0;
    border-left:1px solid color-mix(in srgb,var(--color--prim) 50%,transparent);
    padding-left:30px
}
.faq-content{
    overflow:hidden
}
.faq-answer{
    padding:40px;
    border-top:2px solid transparent;
    -o-border-image:repeating-linear-gradient(to right,var(--color--prim) 0,var(--color--prim) 4px,transparent 4px,transparent 8px) 4;
    border-image:repeating-linear-gradient(to right,var(--color--prim) 0,var(--color--prim) 4px,transparent 4px,transparent 8px) 4
}
.faq-answer :last-child{
    margin-block:0
}
@media screen and (max-width:1023.98px){
    .faq-list{
        gap:10px
    }
    .faq-item .plus-icon{
        width:36px;
        height:26px
    }
    .faq-item .plus-icon:after,.faq-item .plus-icon:before{
        width:12px
    }
    .faq-summary{
        display:-ms-grid;
        display:grid;
        -ms-grid-columns:1fr 10px auto;
        grid-template-columns:1fr auto;
        -ms-grid-rows:auto 0 auto;
        grid-template-rows:auto auto;
        padding:20px;
        gap:0 10px
    }
    .faq-summary>:first-child{
        -ms-grid-row:1;
        -ms-grid-column:1
    }
    .faq-summary>:nth-child(2){
        -ms-grid-row:1;
        -ms-grid-column:3
    }
    .faq-summary>:nth-child(3){
        -ms-grid-row:3;
        -ms-grid-column:1
    }
    .faq-summary>:nth-child(4){
        -ms-grid-row:3;
        -ms-grid-column:3
    }
    .faq-summary:before{
        -ms-grid-column-span:2;
        grid-column:span 2;
        width:auto;
        font-size:2rem;
        text-align:left
    }
    .faq-question{
        font-size:1.6rem;
        padding-left:20px;
        border:none;
        padding:0
    }
    .faq-answer{
        padding:20px
    }
}
.event-reservation{
    display:-ms-grid;
    display:grid;
    -ms-grid-columns:auto 40px 1fr;
    grid-template-columns:auto 1fr;
    gap:40px;
    border:1px solid var(--border-color);
    border-radius:var(--radius--s);
    padding:40px;
    margin-block:var(--child-section-margin)
}
.event-reservation-heading{
    font-size:3rem;
    font-weight:500;
    color:var(--color--prim);
    margin:0
}
.event-reservation-step{
    display:-ms-grid;
    display:grid;
    gap:10px;
    margin:0
}
.event-reservation-step-item{
    display:-ms-grid;
    display:grid;
    -ms-grid-columns:auto 30px 1fr;
    grid-template-columns:auto 1fr;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    gap:30px;
    margin:0;
    list-style:none
}
.event-reservation-step-count{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    justify-content:center;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    gap:2px;
    width:50px;
    height:50px;
    border-radius:var(--radius--xs);
    background:var(--color--wh);
    color:var(--color--prim);
    line-height:1.2;
    font-size:1.2rem;
    text-align:center
}
.event-reservation-step-count-num{
    font-size:2.4rem;
    font-weight:300;
    line-height:0.9
}
.event-reservation-step-text{
    margin:0;
    line-height:1.8
}
.event-list{
    display:-ms-grid;
    display:grid;
    gap:50px
}
.event-item{
    display:-ms-grid;
    display:grid;
    gap:40px;
    background:var(--color--wh);
    border-radius:var(--radius--s);
    padding:40px
}
.event-header{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:baseline;
    -ms-flex-align:baseline;
    align-items:baseline;
    gap:30px;
    margin-inline:-40px;
    padding:0 40px 40px;
    border-bottom:2px solid transparent;
    -o-border-image:repeating-linear-gradient(to right,var(--color--prim) 0,var(--color--prim) 4px,transparent 4px,transparent 8px) 4;
    border-image:repeating-linear-gradient(to right,var(--color--prim) 0,var(--color--prim) 4px,transparent 4px,transparent 8px) 4
}
.event-category{
    -webkit-box-flex:0;
    -ms-flex:0 0 auto;
    flex:0 0 auto;
    color:var(--color--dk-br);
    padding:10px;
    border-radius:var(--radius--xs);
    border:1px solid var(--border-color);
    font-size:1.8rem;
    line-height:1.4;
    font-weight:700;
    width:200px;
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    text-align:center
}
.event-title{
    -webkit-box-flex:2;
    -ms-flex:2 2 auto;
    flex:2 2 auto;
    font-size:2.4rem;
    font-weight:500;
    color:var(--color--prim);
    margin:0
}
.event-title small{
    font-size:2rem
}
.event-summary{
    font-size:1.8rem;
    font-weight:500;
    margin:0
}
.event-detail{
    display:-ms-grid;
    display:grid;
    -ms-grid-columns:1fr 40px 1fr;
    grid-template-columns:1fr 1fr;
    gap:40px
}
.event-detail :last-child{
    -webkit-margin-after:0;
    margin-block-end:0
}
.event-image-wrapper{
    -webkit-box-ordinal-group:3;
    -ms-flex-order:2;
    order:2;
    border-radius:var(--radius--s);
    overflow:hidden;
    -ms-flex-item-align:start;
    align-self:flex-start
}
.event-schedule{
    display:-ms-grid;
    display:grid;
    -ms-grid-columns:1fr 40px 1fr;
    grid-template-columns:1fr 1fr;
    -ms-grid-rows:auto 20px auto;
    grid-template-rows:auto auto;
    grid-auto-flow:column;
    gap:20px 40px;
    margin:0;
    padding:30px 0 0;
    border-top:1px dotted var(--border-color)
}
.event-schedule>:first-child{
    -ms-grid-row:1;
    -ms-grid-column:1
}
.event-schedule>:nth-child(2){
    -ms-grid-row:3;
    -ms-grid-column:1
}
.event-schedule>:nth-child(3){
    -ms-grid-row:1;
    -ms-grid-column:3
}
.event-schedule>:nth-child(4){
    -ms-grid-row:3;
    -ms-grid-column:3
}
.event-schedule-label{
    font-weight:700;
    color:var(--color--dk-br);
    line-height:1.6
}
@media screen and (max-width:1023.98px){
    .event-reservation{
        -ms-grid-columns:1fr;
        grid-template-columns:1fr;
        gap:20px;
        padding:20px
    }
    .event-reservation-heading{
        font-size:2.2rem
    }
    .event-reservation-step{
        gap:5px
    }
    .event-reservation-step-item{
        gap:20px
    }
    .event-list{
        gap:30px
    }
    .event-item{
        padding:20px;
        gap:20px
    }
    .event-header{
        -webkit-box-orient:vertical;
        -webkit-box-direction:normal;
        -ms-flex-direction:column;
        flex-direction:column;
        -webkit-box-align:start;
        -ms-flex-align:start;
        align-items:flex-start;
        margin-inline:-20px;
        padding:0 20px 20px;
        gap:15px
    }
    .event-category{
        width:auto;
        font-size:1.4rem;
        padding:8px
    }
    .event-title{
        font-size:2rem
    }
    .event-title small{
        font-size:1.6rem
    }
    .event-summary{
        font-size:1.5rem
    }
    .event-detail{
        -ms-grid-columns:1fr;
        grid-template-columns:1fr;
        gap:20px
    }
    .event-image-wrapper{
        -webkit-box-ordinal-group:1;
        -ms-flex-order:0;
        order:0;
        width:100%
    }
    .event-schedule{
        -ms-grid-columns:1fr;
        grid-template-columns:1fr;
        -ms-grid-rows:auto;
        grid-template-rows:auto;
        grid-auto-flow:row;
        gap:10px 0;
        padding-top:20px
    }
    .event-schedule>:first-child{
        -ms-grid-row:1;
        -ms-grid-column:1
    }
    .event-schedule-label:not(:first-of-type){
        margin-top:10px
    }
}
.company-tag{
    -webkit-box-flex:0;
    -ms-flex:0 0 auto;
    flex:0 0 auto;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    gap:5px;
    margin:0
}
.company-tag-item{
    display:-ms-grid;
    display:grid;
    place-items:center;
    border-radius:var(--radius--xs);
    line-height:1.4;
    color:var(--color--prim);
    margin:0;
    list-style:none;
    width:40px;
    height:40px
}
.company-tag-item--bk{
    background:#CBE3FC
}
.company-tag-item--tb{
    background:var(--color--br)
}
.company-tag-item--sc{
    background:var(--color--gr)
}
.company-tag-item[aria-hidden=true]{
    background:var(--color--lt-br);
    color:color-mix(in srgb,var(--color--prim) 30%,transparent)
}
@media screen and (max-width:1023.98px){
    .company-tag-item{
        width:30px;
        height:30px;
        font-size:1.2rem
    }
}
.recruit-entrance-title{
    font-size:2.4rem;
    font-weight:500;
    text-align:center;
    color:var(--color--prim);
    margin:0 0 10px
}
.recruit-entrance-list{
    display:-ms-grid;
    display:grid;
    -ms-grid-columns:1fr var(--list-gap) 1fr var(--list-gap) 1fr;
    grid-template-columns:repeat(3,1fr);
    -ms-grid-rows:auto var(--list-gap) auto;
    grid-template-rows:auto auto;
    --list-gap:20px;
    gap:var(--list-gap);
    padding-top:60px;
    position:relative
}
.recruit-entrance-list>:first-child{
    -ms-grid-row:1;
    -ms-grid-column:1
}
.recruit-entrance-list>:nth-child(2){
    -ms-grid-row:1;
    -ms-grid-column:3
}
.recruit-entrance-list>:nth-child(3){
    -ms-grid-row:1;
    -ms-grid-column:5
}
.recruit-entrance-list>:nth-child(4){
    -ms-grid-row:3;
    -ms-grid-column:1
}
.recruit-entrance-list>:nth-child(5){
    -ms-grid-row:3;
    -ms-grid-column:3
}
.recruit-entrance-list>:nth-child(6){
    -ms-grid-row:3;
    -ms-grid-column:5
}
.recruit-entrance-list:after,.recruit-entrance-list:before{
    content:"";
    position:absolute;
    height:60px;
    background:var(--color--prim)
}
.recruit-entrance-list:before{
    inset:0 calc((100% - var(--list-gap) * 2) / 6) auto;
    clip-path:polygon(0% 100%,50% 0%,100% 100%,98.5% 100%,50% 2px,1.5% 100%);
    margin:0 auto
}
.recruit-entrance-list:after{
    content:"";
    position:absolute;
    inset:0 0 auto;
    width:2px;
    margin:0 auto
}
.recruit-entrance-item{
    position:relative;
    z-index:2;
    background:var(--color--wh);
    border-radius:var(--radius--s);
    text-align:center;
    display:-ms-grid;
    display:grid;
    -ms-grid-row-span:2;
    grid-row:span 2;
    -ms-grid-rows:subgrid;
    grid-template-rows:subgrid;
    gap:0
}
.recruit-entrance-description{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    justify-content:center;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    font-size:1.8rem;
    line-height:1.6;
    font-weight:500;
    color:var(--color--prim);
    word-break:keep-all;
    overflow-wrap:anywhere;
    padding:30px;
    margin:0;
    border-bottom:2px solid transparent;
    -o-border-image:repeating-linear-gradient(to right,var(--color--prim) 0,var(--color--prim) 4px,transparent 4px,transparent 8px) 4;
    border-image:repeating-linear-gradient(to right,var(--color--prim) 0,var(--color--prim) 4px,transparent 4px,transparent 8px) 4
}
.recruit-entrance-type{
    font-size:2rem;
    font-weight:700;
    color:var(--color--dk-br);
    padding:30px;
    margin:0
}
@media screen and (max-width:1023.98px){
    .recruit-entrance-title{
        font-size:2rem;
        margin-bottom:20px;
        word-break:keep-all;
        overflow-wrap:anywhere
    }
    .recruit-entrance-list{
        -ms-grid-columns:1fr;
        grid-template-columns:1fr;
        -ms-grid-rows:auto;
        grid-template-rows:auto;
        padding:0
    }
    .recruit-entrance-list>:first-child{
        -ms-grid-row:1;
        -ms-grid-column:1
    }
    .recruit-entrance-list:after,.recruit-entrance-list:before{
        display:none
    }
    .recruit-entrance-item{
        -ms-grid-rows:auto;
        grid-template-rows:auto;
        grid-row:auto
    }
    .recruit-entrance-description{
        font-size:1.6rem;
        padding:20px
    }
    .recruit-entrance-type{
        font-size:1.8rem;
        padding:20px
    }
}
.recruit-info-index{
    display:-ms-grid;
    display:grid;
    border:2px solid var(--color--prim);
    border-radius:var(--radius--l);
    margin-inline:var(--neg-margin--max);
    background:var(--color--wh)
}
.recruit-info-item{
    display:-ms-grid;
    display:grid;
    -ms-grid-columns:subgrid;
    grid-template-columns:subgrid;
    -ms-grid-column-span:3;
    grid-column:span 3;
    -webkit-box-align:baseline;
    -ms-flex-align:baseline;
    align-items:baseline;
    gap:40px;
    padding:40px
}
.recruit-info-item:not(:first-child){
    border-top:2px solid transparent;
    -o-border-image:repeating-linear-gradient(to right,var(--color--prim) 0,var(--color--prim) 4px,transparent 4px,transparent 8px) 4;
    border-image:repeating-linear-gradient(to right,var(--color--prim) 0,var(--color--prim) 4px,transparent 4px,transparent 8px) 4
}
.recruit-info-title{
    font-size:2.4rem;
    color:var(--color--prim);
    margin:0
}
.recruit-info-content{
    display:-ms-grid;
    display:grid;
    -ms-grid-columns:subgrid;
    grid-template-columns:subgrid;
    -ms-grid-column-span:2;
    grid-column:span 2;
    gap:30px;
    -webkit-box-align:baseline;
    -ms-flex-align:baseline;
    align-items:baseline
}
.recruit-info-description{
    font-size:1.8rem;
    line-height:1.8;
    color:var(--color--dk-br);
    margin:0
}
.recruit-info-link{
    display:-ms-grid;
    display:grid;
    -ms-grid-columns:1fr 10px auto;
    grid-template-columns:1fr auto;
    gap:10px;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    font-size:2rem;
    font-weight:500;
    text-align:center;
    padding:10px 10px 10px 20px;
    border-radius:var(--radius--s)
}
.recruit-info-link[class=recruit-info-link]{
    background:var(--color--prim);
    color:var(--color--wh)
}
.recruit-info-link--sub{
    background:var(--color--br)
}
.recruit-info-link .arrow-icon{
    background:var(--color--wh)
}
.recruit-info-link .arrow-icon:before{
    background:var(--color--prim)
}
@media screen and (max-width:1023.98px){
    .recruit-info-item{
        -ms-grid-columns:1fr;
        grid-template-columns:1fr;
        gap:20px;
        padding:20px
    }
    .recruit-info-content{
        -ms-grid-columns:1fr;
        grid-template-columns:1fr;
        gap:20px
    }
    .recruit-info-title{
        font-size:2rem
    }
    .recruit-info-description{
        font-size:1.6rem
    }
    .recruit-info-link{
        font-size:1.6rem
    }
}
.selection-flow{
    display:-ms-grid;
    display:grid;
    gap:10px
}
.selection-flow-section{
    display:-ms-grid;
    display:grid;
    padding:40px;
    border:1px solid var(--color--prim);
    border-radius:var(--radius--s)
}
.selection-flow-section :last-child{
    -webkit-margin-after:0;
    margin-block-end:0
}
.selection-flow-section--entry{
    text-align:center;
    border-color:var(--color--rd)
}
.selection-flow-section--entry .selection-flow-title{
    color:var(--color--rd);
    word-break:keep-all;
    overflow-wrap:anywhere
}
.selection-flow-section--complete,.selection-flow-section--interview{
    text-align:center;
    background:var(--color--br)
}
.selection-flow-section+.selection-flow-note{
    margin-block:10px 0
}
.selection-flow-heading{
    font-size:4rem;
    font-weight:500;
    color:var(--color--prim)
}
.selection-flow-description{
    color:var(--color--dk-br)
}
.selection-flow-step{
    display:-ms-grid;
    display:grid
}
.selection-flow-step-item{
    background:var(--color--wh);
    border-radius:var(--radius--s)
}
.selection-flow-step-title{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:baseline;
    -ms-flex-align:baseline;
    align-items:baseline;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    gap:0 0.2em;
    font-size:2.4rem;
    font-weight:500;
    line-height:1.4;
    margin:0;
    color:var(--color--prim)
}
.selection-flow-step-title .addition{
    display:inline-block;
    font-size:1.6rem
}
.selection-flow-step-title .selection-flow-note{
    color:var(--color--prim)
}
.selection-flow-step-title-wrapper{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    gap:20px;
    padding:20px 40px;
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    min-height:120px
}
.selection-flow-step-count{
    -webkit-box-flex:0;
    -ms-flex:0 0 auto;
    flex:0 0 auto;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    justify-content:center;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    gap:2px;
    width:50px;
    height:50px;
    border-radius:var(--radius--xs);
    color:var(--color--prim);
    border:1px solid var(--color--prim);
    line-height:1.2;
    font-size:1.2rem;
    text-align:center
}
.selection-flow-step-count-num{
    font-size:2.4rem;
    font-weight:300;
    line-height:0.9
}
.selection-flow-step-detail{
    display:-ms-grid;
    display:grid;
    padding:40px;
    border-top:2px solid transparent;
    -o-border-image:repeating-linear-gradient(to right,var(--color--prim) 0,var(--color--prim) 4px,transparent 4px,transparent 8px) 4;
    border-image:repeating-linear-gradient(to right,var(--color--prim) 0,var(--color--prim) 4px,transparent 4px,transparent 8px) 4;
    margin:0
}
.selection-flow-step-detail-group{
    display:-ms-grid;
    display:grid;
    -ms-grid-columns:subgrid;
    grid-template-columns:subgrid;
    -ms-grid-column-span:2;
    grid-column:span 2;
    gap:30px;
    padding:30px
}
.selection-flow-step-detail-group:not(:first-child){
    border-top:1px dotted var(--border-color)
}
.selection-flow-step-detail-type{
    font-size:1.8rem;
    font-weight:700;
    color:var(--color--dk-br)
}
.selection-flow-step-detail-type-description :last-child{
    -webkit-margin-after:0;
    margin-block-end:0
}
.selection-flow-step-item+.selection-flow-note{
    margin-block:10px
}
.selection-flow-note{
    font-size:1.6rem;
    line-height:1.6;
    color:var(--color--dk-br)
}
.selection-flow-title{
    font-size:2.4rem;
    line-height:1.6;
    font-weight:500;
    text-align:center;
    color:var(--color--prim)
}
.selection-flow-title .addition{
    font-size:1.6rem
}
@media screen and (max-width:1023.98px){
    .selection-flow{
        gap:5px
    }
    .selection-flow-heading{
        font-size:2.4rem
    }
    .selection-flow-section{
        padding:20px
    }
    .selection-flow-step-title{
        font-size:1.8rem
    }
    .selection-flow-step-title .addition{
        font-size:1.4rem
    }
    .selection-flow-step-title-wrapper{
        min-height:auto;
        padding:15px 15px;
        gap:10px
    }
    .selection-flow-step-count{
        gap:0;
        width:40px;
        height:40px;
        font-size:1rem
    }
    .selection-flow-step-count-num{
        font-size:2rem
    }
    .selection-flow-step-detail{
        padding:15px
    }
    .selection-flow-step-detail-group{
        display:-ms-grid;
        display:grid;
        -ms-grid-columns:1fr;
        grid-template-columns:1fr;
        padding:15px 0;
        gap:15px
    }
    .selection-flow-step-detail-type{
        font-size:1.6rem
    }
    .selection-flow-step-detail-type-description{
        font-size:1.3rem;
        line-height:1.8
    }
    .selection-flow-note{
        font-size:1.3rem
    }
    .selection-flow-title{
        font-size:1.8rem
    }
    .selection-flow-title .addition{
        font-size:1.4rem
    }
}
.step-arrow-icon{
    display:-ms-grid;
    display:grid;
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    justify-content:center;
    width:45px;
    height:45px;
    -webkit-mask:url("/saiyou/group/assets/images/icn_step-arrow.svg") no-repeat center/contain;
    mask:url("/saiyou/group/assets/images/icn_step-arrow.svg") no-repeat center/contain;
    background:var(--color--prim);
    margin:0 auto
}
.step-plus-icon{
    position:relative;
    display:block;
    width:45px;
    height:45px;
    background:var(--color--prim);
    clip-path:path("M20.5 0H24.5V20.5H45V24.5H24.5V45H20.5V24.5H0V20.5H20.5Z");
    margin:0 auto
}
.recruit-type{
    position:relative;
    display:-ms-grid;
    display:grid;
    gap:10px;
    -ms-grid-columns:1fr 10px 1fr 10px 1fr;
    grid-template-columns:repeat(3,1fr);
    margin-block:60px
}
.recruit-type-item{
    position:relative;
    z-index:2;
    background:var(--color--wh);
    border-radius:var(--radius--s);
    display:-ms-grid;
    display:grid;
    -ms-grid-row-span:2;
    grid-row:span 2;
    -ms-grid-rows:subgrid;
    grid-template-rows:subgrid;
    gap:0;
    border:2px solid var(--color--prim)
}
.recruit-type-link{
    display:block
}
.recruit-type-title{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    gap:0 10px;
    font-size:2.2rem;
    line-height:1.6;
    font-weight:500;
    color:var(--color--prim);
    word-break:keep-all;
    overflow-wrap:anywhere;
    padding:30px;
    margin:0;
    border-bottom:2px solid transparent;
    -o-border-image:repeating-linear-gradient(to right,var(--color--prim) 0,var(--color--prim) 4px,transparent 4px,transparent 8px) 4;
    border-image:repeating-linear-gradient(to right,var(--color--prim) 0,var(--color--prim) 4px,transparent 4px,transparent 8px) 4
}
.recruit-type-title .anchor-link-icon{
    -webkit-box-flex:0;
    -ms-flex:0 0 auto;
    flex:0 0 auto;
    margin-inline:auto 0
}
.recruit-type-description{
    color:var(--color--prim);
    line-height:2;
    padding:30px;
    margin:0
}
@media screen and (max-width:1023.98px){
    .recruit-type{
        -ms-grid-columns:1fr;
        grid-template-columns:1fr;
        margin-block:40px
    }
    .recruit-type-item{
        -ms-grid-rows:auto;
        grid-template-rows:auto;
        grid-row:auto
    }
    .recruit-type-title{
        font-size:1.8rem;
        padding:20px
    }
    .recruit-type-description{
        padding:20px
    }
}
.recruit-type-heading{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    gap:0 10px;
    font-size:3.2rem;
    font-weight:500;
    color:var(--color--wh);
    background:var(--color--prim);
    border-radius:var(--radius--s);
    padding:0.4em 0.6em;
    width:-webkit-fit-content;
    width:-moz-fit-content;
    width:fit-content
}
.recruit-type-heading:before{
    -webkit-box-flex:0;
    -ms-flex:0 0 auto;
    flex:0 0 auto;
    content:"";
    display:block;
    width:11px;
    height:11px;
    background:var(--color--wh);
    border-radius:10px
}
@media screen and (max-width:1023.98px){
    .recruit-type-heading{
        font-size:2.4rem
    }
    .recruit-type-heading:before{
        width:8px;
        height:8px
    }
}
.recruit-type-points{
    display:-ms-grid;
    display:grid;
    gap:20px;
    margin-block:60px
}
.recruit-type-points-item{
    display:-ms-grid;
    display:grid;
    gap:30px;
    border:1px solid var(--color--prim);
    border-radius:var(--radius--s);
    padding:40px
}
.recruit-type-points-item :last-child{
    -webkit-margin-after:0;
    margin-block-end:0
}
.recruit-type-points-title{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    gap:0 20px;
    font-size:2rem;
    font-weight:500;
    line-height:1.4;
    margin:0;
    color:var(--color--prim)
}
.recruit-type-points-title-wrapper{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    gap:20px;
    padding:20px 40px;
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    min-height:120px
}
.recruit-type-points-count{
    -webkit-box-flex:0;
    -ms-flex:0 0 auto;
    flex:0 0 auto;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    justify-content:center;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    gap:2px;
    width:50px;
    height:50px;
    border-radius:var(--radius--xs);
    color:var(--color--prim);
    background:var(--color--wh);
    line-height:1.2;
    font-size:1.2rem;
    text-align:center
}
.recruit-type-points-count-num{
    font-size:2.4rem;
    font-weight:300;
    line-height:0.9
}
@media screen and (max-width:1023.98px){
    .recruit-type-points{
        margin-block:40px
    }
    .recruit-type-points-item{
        padding:20px;
        gap:20px
    }
    .recruit-type-points-title{
        font-size:1.8rem
    }
    .recruit-type-points-count{
        width:45px;
        height:45px;
        font-size:1rem
    }
    .recruit-type-points-count-num{
        font-size:2rem
    }
}
.course-list{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    gap:55px;
    margin-block:60px
}
.course-item{
    position:relative;
    background:var(--color--wh);
    border-radius:var(--radius--s)
}
.course-item .plus-icon{
    -webkit-box-flex:0;
    -ms-flex:0 0 auto;
    flex:0 0 auto
}
.course-item.is-opened .plus-icon:after{
    scale:1 0
}
.course-toggle-button{
    position:absolute;
    inset:100% 0 auto;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    gap:10px;
    margin:0 auto;
    background:var(--color--wh);
    border-radius:0 0 var(--radius--s) var(--radius--s);
    width:-webkit-fit-content;
    width:-moz-fit-content;
    width:fit-content;
    padding:0 20px 16px;
    line-height:1.8;
    translate:0 calc(-50% + 8px)
}
.course-toggle-button:before{
    content:"基本情報";
    display:block;
    color:var(--color--prim);
    font-weight:500;
    width:6em;
    text-align:center
}
.is-opened .course-toggle-button:before{
    content:"閉じる"
}
.course-summary{
    padding:20px 40px;
    min-height:80px;
    cursor:pointer;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    gap:0 20px
}
.course-title{
    -webkit-box-flex:2;
    -ms-flex:2 2 auto;
    flex:2 2 auto;
    font-size:2.4rem;
    font-weight:500;
    line-height:1.6;
    color:var(--color--prim);
    margin:0
}
.course-title-acronym{
    -webkit-box-flex:0;
    -ms-flex:0 0 auto;
    flex:0 0 auto;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    justify-content:center;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    color:var(--color--prim);
    font-size:2.4rem;
    line-height:0.9;
    font-weight:400;
    width:80px;
    height:80px;
    border:1px solid color-mix(in srgb,var(--color--prim) 50%,transparent);
    border-radius:50%
}
.course-title-acronym span{
    font-size:1.4rem;
    line-height:1.4;
    font-weight:500
}
.course-content{
    overflow:hidden
}
.course-detail{
    padding:40px;
    border-top:2px solid transparent;
    -o-border-image:repeating-linear-gradient(to right,var(--color--prim) 0,var(--color--prim) 4px,transparent 4px,transparent 8px) 4;
    border-image:repeating-linear-gradient(to right,var(--color--prim) 0,var(--color--prim) 4px,transparent 4px,transparent 8px) 4
}
.course-detail p,.course-detail ul{
    -webkit-margin-after:20px;
    margin-block-end:20px
}
.course-detail :last-child{
    margin-block:0
}
.course-detail-heading{
    font-size:2rem;
    font-weight:700;
    line-height:1.6;
    color:var(--color--dk-br);
    margin-block:32px 20px
}
.course-detail-heading:first-child{
    -webkit-margin-before:0;
    margin-block-start:0
}
@media screen and (max-width:1023.98px){
    .course-list{
        gap:35px;
        margin-block:40px
    }
    .course-summary{
        display:-ms-grid;
        display:grid;
        -ms-grid-columns:auto 10px 1fr;
        grid-template-columns:auto 1fr;
        -webkit-box-pack:start;
        -ms-flex-pack:start;
        justify-content:flex-start;
        -webkit-box-align:center;
        -ms-flex-align:center;
        align-items:center;
        padding:20px;
        gap:10px;
        min-height:40px
    }
    .course-summary .company-tag{
        -ms-grid-column-span:2;
        grid-column:span 2
    }
    .course-title{
        font-size:2rem;
        line-height:1.4
    }
    .course-title-acronym{
        width:40px;
        height:40px;
        font-size:1.4rem;
        line-height:0.9
    }
    .course-title-acronym span{
        font-size:0.8rem
    }
    .course-toggle-button{
        gap:5px;
        border-radius:0 0 var(--radius--xs) var(--radius--xs);
        padding:0 10px 10px;
        font-size:1.2rem;
        translate:0 calc(-50% + 5px)
    }
    .course-toggle-button:before{
        width:5em
    }
    .course-toggle-button .plus-icon{
        width:36px;
        height:26px
    }
    .course-toggle-button .plus-icon:after,.course-toggle-button .plus-icon:before{
        width:12px
    }
    .course-detail{
        padding:20px
    }
    .course-detail-heading{
        font-size:1.6rem;
        margin-block:20px 10px
    }
}
.normal-table{
    border-top:1px solid var(--color--prim);
    border-bottom:1px solid var(--color--prim);
    margin-block:32px
}
.normal-table td,.normal-table th{
    padding:20px;
    vertical-align:top;
    line-height:2
}
.normal-table tr:not(:first-child) td,.normal-table tr:not(:first-child) th{
    border-top:1px dotted var(--color--prim)
}
.normal-table th{
    padding:20px;
    font-weight:700;
    width:30%;
    border-right:1px solid var(--color--prim)
}
@media screen and (max-width:1023.98px){
    .normal-table{
        margin-block:20px
    }
    .normal-table tr{
        display:-ms-grid;
        display:grid;
        -ms-grid-columns:1fr;
        grid-template-columns:1fr;
        gap:20px;
        padding:20px
    }
    .normal-table tr:not(:first-child){
        border-top:1px dotted var(--color--prim)
    }
    .normal-table td,.normal-table th{
        display:block;
        padding:0;
        line-height:1.8;
        border:none!important
    }
    .normal-table th{
        font-size:1.6rem;
        width:auto
    }
}
.course-work{
    display:-ms-grid;
    display:grid;
    margin:0;
    margin-block:40px;
    border-top:1px solid var(--color--prim);
    border-bottom:1px solid var(--color--prim)
}
.course-work-item{
    padding:30px
}
.course-work-item:not(:last-child){
    border-bottom:1px solid var(--color--prim)
}
.course-work-title{
    font-size:2rem;
    line-height:1.4;
    font-weight:500;
    margin-block:0 20px
}
.course-work-assignment{
    display:-ms-grid;
    display:grid;
    -ms-grid-columns:auto 1fr;
    grid-template-columns:auto 1fr;
    -webkit-box-align:baseline;
    -ms-flex-align:baseline;
    align-items:baseline;
    padding:30px 30px 0;
    margin-block:30px 0!important;
    margin-inline:-30px;
    border-top:1px dotted var(--color--prim)
}
.course-work-heading{
    -ms-grid-row-span:2;
    grid-row:span 2;
    font-size:1.6rem;
    color:var(--color--dk-br);
    font-weight:700;
    width:10em;
    margin:0
}
@media screen and (max-width:1023.98px){
    .course-work{
        margin-block:30px
    }
    .course-work-item{
        padding:20px 10px
    }
    .course-work-title{
        font-size:1.8rem
    }
    .course-work-assignment{
        -ms-grid-columns:1fr;
        grid-template-columns:1fr;
        padding:20px 10px 0;
        margin-block:20px 0!important;
        margin-inline:-10px
    }
    .course-work-heading{
        width:auto;
        font-size:1.4rem;
        margin-block:0 20px
    }
}
.course-filter{
    position:relative;
    z-index:2;
    display:-ms-grid;
    display:grid;
    gap:20px;
    border-radius:var(--radius--l);
    margin:calc(var(--section-margin) * -1 + 20px) var(--neg-margin--max) 20px;
    border:2px solid var(--color--prim);
    background:var(--color--wh);
    padding-block:40px
}
.course-filter-group{
    padding:0 40px
}
.course-filter-group:not(:first-child){
    border-top:2px solid transparent;
    padding-block:20px 0;
    -o-border-image:repeating-linear-gradient(to right,var(--color--prim) 0,var(--color--prim) 4px,transparent 4px,transparent 8px) 4;
    border-image:repeating-linear-gradient(to right,var(--color--prim) 0,var(--color--prim) 4px,transparent 4px,transparent 8px) 4
}
.course-filter-group-title{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:baseline;
    -ms-flex-align:baseline;
    align-items:baseline;
    gap:20px;
    font-size:2.4rem;
    color:var(--color--dk-br);
    margin-block:0 20px
}
.course-filter-group-count{
    font-size:3rem;
    font-weight:300;
    line-height:0.9;
    color:var(--color--prim)
}
.course-filter-list{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    gap:10px;
    margin:0
}
.course-filter-item{
    -webkit-box-flex:0;
    -ms-flex:0 0 auto;
    flex:0 0 auto;
    list-style:none;
    margin:0
}
.course-filter-button{
    display:inline-block;
    padding:10px 22px;
    border:1px solid color-mix(in srgb,var(--color--prim) 50%,transparent);
    border-radius:50px;
    background:var(--color--wh);
    color:var(--color--prim);
    line-height:1.5;
    font-weight:700;
    cursor:pointer;
    -webkit-transition:background-color 0.2s ease,color 0.2s ease;
    transition:background-color 0.2s ease,color 0.2s ease
}
.course-filter-button input[type=checkbox]{
    display:none
}
@media (hover:hover){
    .course-filter-button:hover{
        background:color-mix(in srgb,var(--color--prim) 10%,var(--color--wh))
    }
}
input[type=checkbox]:checked~.course-filter-button{
    background:var(--color--br)
}
.course-filter-button:has(input[type=checkbox]:checked){
    background:var(--color--br)
}
.course-filter-actions{
    position:absolute;
    inset:100% 0 auto;
    margin:0 auto;
    width:-webkit-fit-content;
    width:-moz-fit-content;
    width:fit-content;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    background:var(--color--wh);
    border:2px solid var(--color--prim);
    border-top:none;
    border-radius:0 0 var(--radius--s) var(--radius--s);
    overflow:clip;
    min-height:80px
}
.course-filter-clear-button{
    display:-webkit-inline-box;
    display:-ms-inline-flexbox;
    display:inline-flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    gap:8px;
    padding:12px 24px;
    background:var(--color--lt-br);
    border-radius:0;
    color:var(--color--prim);
    font-size:1.8rem;
    line-height:1.6;
    font-weight:700;
    cursor:pointer;
    -webkit-transition:background-color 0.2s ease;
    transition:background-color 0.2s ease
}
.course-filter-clear-button-label{
    -webkit-box-flex:2;
    -ms-flex:2 2 auto;
    flex:2 2 auto
}
.course-filter-clear-button{
}
.course-filter-submit-button{
    display:-webkit-inline-box;
    display:-ms-inline-flexbox;
    display:inline-flex;
    text-align:center;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    gap:8px;
    padding:12px 32px;
    background:var(--color--br);
    color:var(--color--prim);
    font-size:1.8rem;
    line-height:1.6;
    font-weight:700;
    width:330px;
    cursor:pointer;
    -webkit-transition:background-color 0.2s ease,color 0.2s ease;
    transition:background-color 0.2s ease,color 0.2s ease
}
.course-filter-submit-button-label{
    -webkit-box-flex:2;
    -ms-flex:2 2 auto;
    flex:2 2 auto
}
.course-filter-submit-button{
}
@media screen and (max-width:1023.98px){
    .course-filter{
        margin-block:calc(var(--section-margin) * -1 + 10px) 10px;
        padding-block:20px
    }
    .course-filter-group{
        padding:0 20px
    }
    .course-filter-group-title{
        font-size:1.8rem;
        gap:10px
    }
    .course-filter-group-title .note{
        font-size:1.2rem
    }
    .course-filter-group-count{
        font-size:2.4rem
    }
    .course-filter-list{
        gap:8px;
        margin-top:16px
    }
    .course-filter-item{
        max-width:100%
    }
    .course-filter-button{
        padding:6px 12px;
        font-size:1.4rem;
        border-radius:20px
    }
    .course-filter-actions{
        max-width:calc(100% - var(--radius--l) * 2);
        min-height:60px
    }
    .course-filter-clear-button,.course-filter-submit-button{
        font-size:1.4rem;
        line-height:1.4;
        padding:10px 10px
    }
    .course-filter-clear-button{
        word-break:keep-all;
        overflow-wrap:anywhere;
        width:180px
    }
    .course-filter-submit-button{
        width:80%
    }
}
.reset-icon,.search-icon{
    -webkit-box-flex:0;
    -ms-flex:0 0 auto;
    flex:0 0 auto;
    content:"";
    display:inline-block;
    width:24px;
    height:24px;
    background:var(--color--prim)
}
@media (hover:hover){
    :where(:-moz-any-link,:enabled,summary):hover .reset-icon,:where(:-moz-any-link,:enabled,summary):hover .search-icon{
        animation:boing-scale 0.4s ease
    }
    :where(:any-link,:enabled,summary):hover .reset-icon,:where(:any-link,:enabled,summary):hover .search-icon{
        -webkit-animation:boing-scale 0.4s ease;
        animation:boing-scale 0.4s ease
    }
}
.reset-icon{
    -webkit-mask:url(/saiyou/group/recruit/images/icn_reset.svg) no-repeat center/contain;
    mask:url(/saiyou/group/recruit/images/icn_reset.svg) no-repeat center/contain
}
.search-icon{
    -webkit-mask:url(/saiyou/group/recruit/images/icn_search.svg) no-repeat center/contain;
    mask:url(/saiyou/group/recruit/images/icn_search.svg) no-repeat center/contain
}
.course-recommend{
    border-radius:var(--radius--l);
    margin:0 var(--neg-margin--max);
    background:url(/saiyou/group/recruit/images/bg_course-navigator.svg) no-repeat center/cover;
    padding:100px var(--content-padding)
}
.course-recommend-lead{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    gap:30px;
    font-size:2.4rem;
    font-weight:700;
    line-height:1.8;
    text-align:center;
    color:var(--color--dk-br);
    width:-webkit-fit-content;
    width:-moz-fit-content;
    width:fit-content;
    margin-inline:auto
}
.course-recommend-lead:after,.course-recommend-lead:before{
    content:"";
    -webkit-box-flex:0;
    -ms-flex:0 0 auto;
    flex:0 0 auto;
    display:block;
    height:30px;
    border-left:2px solid var(--color--dk-br)
}
.course-recommend-lead:before{
    rotate:-45deg
}
.course-recommend-lead:after{
    rotate:45deg
}
.course-recommend-list{
    display:-ms-grid;
    display:grid;
    gap:20px
}
.course-recommend-link{
    position:relative;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    gap:30px;
    padding:20px 40px 20px 10px;
    min-height:80px;
    background:var(--color--wh);
    border-radius:var(--radius--s);
    -webkit-transition:none;
    transition:none
}
@-webkit-keyframes box-boing-scale{
    0%{
        scale:1
    }
    30%{
        scale:1.02
    }
    to{
        scale:1
    }
}
@keyframes box-boing-scale{
    0%{
        scale:1
    }
    30%{
        scale:1.02
    }
    to{
        scale:1
    }
}
@media (hover:hover){
    .course-recommend-link:hover{
        -webkit-animation:box-boing-scale 0.4s ease;
        animation:box-boing-scale 0.4s ease
    }
}
.course-recommend-type{
    -webkit-box-flex:0;
    -ms-flex:0 0 auto;
    flex:0 0 auto;
    color:var(--color--dk-br);
    padding:10px 0;
    border-right:1px solid var(--border-color);
    line-height:1.4;
    font-weight:700;
    width:12em;
    font-size:clamp(1.3rem,1.1vw,1.6rem);
    text-align:center
}
.course-recommend-title{
    -webkit-box-flex:2;
    -ms-flex:2 2 auto;
    flex:2 2 auto;
    font-size:2.4rem;
    font-weight:500;
    line-height:1.4;
    color:var(--color--prim);
    margin:0
}
.course-recommend-detail{
    -webkit-box-flex:0;
    -ms-flex:0 0 auto;
    flex:0 0 auto;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    gap:10px;
    font-size:1.5rem;
    font-weight:500;
    line-height:1.5;
    margin:0;
    margin-inline:auto 0
}
@media screen and (max-width:1023.98px){
    .course-recommend{
        padding:70px 20px 40px
    }
    .course-recommend-lead{
        gap:20px;
        font-size:1.8rem;
        margin-block:0 20px
    }
    .course-recommend-lead:after,.course-recommend-lead:before{
        height:20px;
        border-left:1px solid var(--color--dk-br)
    }
    .course-recommend-list{
        gap:10px
    }
    .course-recommend-link{
        display:-ms-grid;
        display:grid;
        -ms-grid-columns:1fr 20px auto;
        grid-template-columns:1fr auto;
        grid-auto-flow:column;
        gap:10px 20px;
        padding:15px;
        min-height:0
    }
    .course-recommend-type{
        width:auto;
        font-size:1.4rem;
        padding:0;
        text-align:left;
        border:none
    }
    .course-recommend-title{
        font-size:1.6rem
    }
    .course-recommend-detail{
        -ms-grid-row-span:2;
        grid-row:span 2;
        display:-ms-grid;
        display:grid;
        font-size:1rem;
        gap:5px;
        -webkit-box-pack:start;
        -ms-flex-pack:start;
        justify-content:start
    }
    .course-recommend-detail .arrow-icon{
        width:36px;
        height:26px;
        margin:0 auto
    }
    .course-recommend-detail .arrow-icon:after,.course-recommend-detail .arrow-icon:before{
        width:16px
    }
}

/* Himeiro recruit LP overrides */
body.himeiro-recruit-lp{
    --color--prim:#2456e8;
    --color--br:#d9f1ff;
    --color--gr:#e8f8dd;
    --color--yl:#fff4c8;
    --color--rd:#ff6f9f;
    --color--lt-br:#f5f7fb;
    background:var(--color--lt-br);
    color:#101936
}
.himeiro-recruit-lp *{
    -webkit-box-sizing:border-box;
    box-sizing:border-box
}
.himeiro-recruit-lp a{
    text-decoration:none
}
.himeiro-logo-link{
    background:#fff;
    border:var(--frame-width) solid var(--color--prim);
    border-radius:0 0 var(--radius--s) 0;
    padding:10px 14px
}
.himeiro-recruit-lp .mizuho-logo-image{
    /*width:118px;*/
    height:auto;
    object-fit:contain
}
.himeiro-recruit-lp .site-title{
    overflow:hidden;
    /*border:var(--frame-width) solid var(--color--prim);*/
    background:rgba(255,255,255,0.88)
}
.himeiro-recruit-lp .site-title:before{
    background:rgba(255,255,255,0.88)
}
.himeiro-recruit-lp .site-title:after{
    content:"";
    position:absolute;
    z-index:2;
    inset:auto -40px 30px auto;
    width:220px;
    aspect-ratio:1;
    background:url("./img/index/side_icon.png") center/contain no-repeat;
    opacity:.24;
    pointer-events:none
}
.himeiro-recruit-lp .site-title-inner{
    z-index:3
}
.himeiro-recruit-lp .slogan{
    color:var(--color--rd);
    font-weight:800;
    line-height:1.5;
    margin-block:0 18px
}
.himeiro-recruit-lp .site-name{
    color:var(--color--prim);
    font-size:clamp(3.6rem,5vw,7rem);
    line-height:1;
    letter-spacing:0;
    margin:0
}
.himeiro-recruit-lp .site-name-loop-slider{
    color:rgba(36,86,232,.18)
}
.himeiro-recruit-lp .home-hero-slider{
    background:#fff
}
.himeiro-recruit-lp .home-hero-slider-item{
    position:relative;
    mix-blend-mode:normal;
    background:#fff
}
.himeiro-recruit-lp .home-hero-slider-item:before{
    content:"";
    position:absolute;
    z-index:2;
    inset:0;
    background:linear-gradient(90deg,rgba(255,255,255,.72),rgba(255,255,255,.2) 42%,rgba(255,255,255,.08));
    pointer-events:none
}
.himeiro-recruit-lp .home-hero-image{
    object-fit:cover;
    object-position:center;
    padding:clamp(18px,4vw,54px);
    background:linear-gradient(135deg,#fff 0%,#eef7ff 50%,#ffe6ef 100%)
}
.home-hero-slide-caption{
    position:absolute;
    z-index:3;
    left:clamp(24px,5vw,70px);
    bottom:clamp(120px,18vh,190px);
    width:min(520px,58%);
    color:#101936
}
.home-hero-slide-kicker{
    display:inline-block;
    color:#fff;
    background:var(--color--prim);
    border-radius:999px;
    padding:6px 12px;
    font-size:1.2rem;
    font-weight:800;
    line-height:1;
    margin:0 0 12px
}
.home-hero-slide-title{
    color:var(--color--prim);
    font-size:clamp(2.6rem,4vw,5.8rem);
    line-height:1.08;
    font-weight:900;
    margin:0 0 14px
}
.home-hero-slide-lead{
    font-size:clamp(1.4rem,1.5vw,1.9rem);
    font-weight:700;
    line-height:1.7;
    margin:0
}
.home-hero-pagination{
    position:absolute;
    z-index:6;
    left:clamp(24px,5vw,70px)!important;
    right:auto!important;
    bottom:clamp(70px,10vh,110px)!important;
    width:auto!important;
    display:flex;
    gap:8px
}
.home-hero-pagination .swiper-pagination-bullet{
    width:34px;
    height:4px;
    border-radius:999px;
    background:var(--color--prim);
    opacity:.25
}
.home-hero-pagination .swiper-pagination-bullet-active{
    opacity:1;
    background:var(--color--rd)
}
.himeiro-recruit-lp .todays-message{
    filter:drop-shadow(0 10px 24px rgba(36,86,232,.18))
}
.himeiro-recruit-lp .todays-message-date{
    background:linear-gradient(135deg,var(--color--prim),#7b9dff)
}
.himeiro-recruit-lp .todays-message-heading{
    color:var(--color--prim)
}
.himeiro-recruit-lp .todays-message-content{
    color:#293552
}
.himeiro-recruit-lp .home-main-contents{
    display:flex;
    flex-direction:column;
    /*gap:34px*/
}
.himeiro-section{
    overflow:visible;
    /*border:var(--frame-width) solid transparent;*/
    -webkit-box-shadow:0 18px 36px rgba(36,86,232,.08);
    box-shadow:0 18px 36px rgba(36,86,232,.08)
}
.himeiro-section p:last-child{
    margin-bottom:0
}
.himeiro-section-label{
    color:#b8c8ff;
    font-size:1.3rem;
    font-weight:900;
    letter-spacing:0;
    margin:0 0 -38px;
    text-transform:uppercase
}
.himeiro-section--message{
    min-height:520px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    background:var(--color--prim);
    color:#fff
}
.himeiro-section--message .home-introduction-heading{
    font-size:2.3rem;
    line-height:1.45;
    margin-block:40px 28px
}
.himeiro-section--message .home-introduction-content{
    font-size:1.5rem;
    line-height:2
}
.himeiro-side-link{
    position:absolute;
    right:-12px;
    bottom:28px;
    display:inline-flex;
    align-items:center;
    gap:8px;
    min-height:42px;
    color:var(--color--prim);
    background:#fff;
    border:var(--frame-width) solid var(--color--prim);
    border-radius:999px;
    padding:6px 6px 6px 16px;
    font-size:1.4rem;
    font-weight:900;
    -webkit-box-shadow:0 8px 18px rgba(36,86,232,.16);
    box-shadow:0 8px 18px rgba(36,86,232,.16)
}
.himeiro-side-link .arrow-icon{
    width:34px;
    height:30px
}
.himeiro-section--about{
    background:linear-gradient(180deg,var(--color--br),#fff)
}
.himeiro-section--culture{
    background:linear-gradient(180deg,var(--color--gr),#fff)
}
.himeiro-section--recruit{
    background:linear-gradient(180deg,var(--color--yl),#fff)
}
.himeiro-section--contact{
    background:linear-gradient(180deg,#ffe6ef,#fff)
}
.himeiro-recruit-lp .home-section-heading{
    margin-block:8px 26px
}
.himeiro-recruit-lp .home-section-heading-en{
    font-size:clamp(5rem,6vw,7rem);
    color:#9aafff
}
.himeiro-recruit-lp .home-section-heading-ja{
    color:var(--color--prim);
    font-size:2rem
}
.himeiro-recruit-lp .home-section-lead{
    color:#273454;
    line-height:1.8;
    margin-block:0 24px
}
.himeiro-card-list{
    gap:12px
}
.himeiro-card-list,
.himeiro-card-list>li{
    list-style:none;
    margin-inline:0
}
.himeiro-recruit-lp .home-contents-index-link{
    border:2px solid rgba(36,86,232,.28);
    background:#fff;
    min-height:112px;
    width:100%;
    cursor:pointer;
    font:inherit;
    text-align:left
}
.himeiro-recruit-lp .home-contents-index-link .thumbnail-wrapper{
    background:#f5f7fb
}
.himeiro-recruit-lp .home-contents-index-title-main{
    color:var(--color--prim);
    font-weight:900
}
.himeiro-video-card{
    border-color:var(--color--rd)!important
}
.himeiro-map-panel{
    background:#fff;
    border:2px solid rgba(36,86,232,.2);
    border-radius:var(--radius--s);
    padding:10px;
    margin-block:0 18px
}
.himeiro-map-image{
    display:block;
    width:100%;
    height:auto;
    border-radius:calc(var(--radius--s) - 6px)
}
.himeiro-work-grid{
    display:grid;
    gap:14px
}
.himeiro-work-card{
    background:#fff;
    border:2px solid rgba(36,86,232,.12);
    border-radius:var(--radius--s);
    padding:14px
}
.himeiro-work-image{
    display:block;
    width:100%;
    aspect-ratio:4/3;
    object-fit:cover;
    border-radius:calc(var(--radius--s) - 6px);
    margin-bottom:12px
}
.himeiro-work-card h3{
    color:var(--color--rd);
    font-size:1.7rem;
    margin:0 0 8px
}
.himeiro-work-card p{
    color:#273454;
    font-size:1.4rem;
    line-height:1.75;
    margin:0
}
.himeiro-recruit-box{
    background:#fff;
    border:2px solid rgba(36,86,232,.2);
    border-radius:var(--radius--s);
    padding:18px
}
.himeiro-recruit-list{
    margin:0
}
.himeiro-recruit-list>div{
    display:grid;
    grid-template-columns:7em 1fr;
    gap:12px;
    padding:14px 0;
    border-bottom:1px solid rgba(36,86,232,.14)
}
.himeiro-recruit-list>div:first-child{
    padding-top:0
}
.himeiro-recruit-list dt{
    color:var(--color--prim);
    font-weight:900
}
.himeiro-recruit-list dd{
    color:#273454;
    line-height:1.7;
    margin:0
}
.himeiro-accordion{
    margin-top:18px
}
.himeiro-accordion .faq-summary{
    border-radius:var(--radius--xs);
    background:#eef4ff;
    width:100%;
    border:0
}
.himeiro-accordion .faq-summary:before{
    content:"Q"
}
.himeiro-accordion .faq-question{
    color:#101936
}
.himeiro-form-panel{
    background:#fff;
    border:2px solid rgba(255,111,159,.34);
    border-radius:var(--radius--s);
    padding:18px
}
.himeiro-entry-form{
    display:grid;
    gap:14px;
    margin:0
}
.himeiro-entry-form label{
    display:grid;
    gap:6px;
    color:#273454;
    font-size:1.4rem;
    font-weight:800
}
.himeiro-entry-form input,
.himeiro-entry-form select,
.himeiro-entry-form textarea{
    width:100%;
    min-height:44px;
    border:2px solid rgba(36,86,232,.2);
    border-radius:8px;
    background:#f8faff;
    color:#101936;
    font:inherit;
    padding:10px 12px
}
.himeiro-entry-form textarea{
    resize:vertical
}
.himeiro-submit-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:52px;
    border-radius:999px;
    background:var(--color--rd);
    color:#fff;
    font-size:1.7rem;
    font-weight:900;
    cursor:pointer
}
.himeiro-fixed-video{
    position:fixed;
    z-index:9;
    right:calc(var(--nav-width) + 22px);
    bottom:136px;
    display:grid;
    place-items:center;
    gap:4px;
    width:76px;
    height:76px;
    border-radius:50%;
    color:#fff;
    background:linear-gradient(135deg,var(--color--rd),#ff9abc);
    border:3px solid #fff;
    -webkit-box-shadow:0 14px 26px rgba(255,111,159,.28);
    box-shadow:0 14px 26px rgba(255,111,159,.28);
    cursor:pointer
}
.himeiro-fixed-video-icon{
    width:0;
    height:0;
    border-top:10px solid transparent;
    border-bottom:10px solid transparent;
    border-left:16px solid #fff;
    margin-left:4px
}
.himeiro-fixed-video-label{
    font-size:1rem;
    font-weight:900;
    line-height:1
}
.modal-mode{
    overflow:hidden
}
.himeiro-video-modal .modal-container{
    width:min(920px,calc(100vw - 40px))
}
.himeiro-video-title{
    color:var(--color--prim);
    font-size:2.6rem;
    margin:0 56px 18px 0
}
.himeiro-video-frame{
    position:relative;
    width:100%;
    aspect-ratio:16/9;
    overflow:hidden;
    border-radius:var(--radius--xs);
    background:#eef4ff
}
.himeiro-video-frame iframe,
.himeiro-video-placeholder,
.himeiro-video-placeholder-image{
    position:absolute;
    inset:0;
    width:100%;
    height:100%
}
.himeiro-video-frame iframe{
    border:0
}
.himeiro-video-placeholder{
    display:grid;
    place-items:center;
    background:linear-gradient(135deg,#eef4ff,#ffe6ef)
}
.himeiro-video-placeholder-image{
    object-fit:contain;
    padding:8%;
    opacity:.9
}
/*.himeiro-video-placeholder:after{
    content:"";
    position:absolute;
    width:74px;
    height:74px;
    border-radius:50%;
    background:rgba(255,111,159,.92);
    -webkit-box-shadow:0 12px 26px rgba(255,111,159,.28);
    box-shadow:0 12px 26px rgba(255,111,159,.28)
}
.himeiro-video-placeholder:before{
    content:"";
    position:absolute;
    z-index:2;
    width:0;
    height:0;
    border-top:14px solid transparent;
    border-bottom:14px solid transparent;
    border-left:22px solid #fff;
    margin-left:6px
}*/
.himeiro-recruit-lp .home-footer{
    width:var(--home-contents-width);
    margin:40px var(--home-contents-margin);
    padding-bottom:30px
}
@media screen and (max-width:1023.98px){
    .himeiro-logo-link{
        border-radius:0 0 var(--radius--xs) 0;
        padding:8px 10px
    }
    .himeiro-recruit-lp .mizuho-logo-image{
        width:96px
    }
    .himeiro-recruit-lp .site-title{
        display:none
    }
    .home-hero-slide-caption{
        left:24px;
        right:24px;
        bottom:128px;
        width:auto;
        max-width:285px;
        background:rgba(255,255,255,.74);
        border-radius:12px;
        padding:10px 12px
    }
    .home-hero-slide-title{
        font-size:2rem;
        line-height:1.22;
        max-width:11em;
        margin-bottom:0
    }
    .home-hero-slide-lead{
        display:none
    }
    .home-hero-slide-kicker{
        font-size:1rem;
        margin-bottom:8px
    }
    .home-hero-pagination{
        left:24px!important;
        bottom:66px!important
    }
    .himeiro-recruit-lp .todays-message-content{
        padding-right:10px
    }
    .himeiro-recruit-lp .todays-message-text{
        white-space:normal;
        line-height:1.35
    }
    .himeiro-recruit-lp .home-hero-image{
        padding:22px;
        scale:1;
        transform-origin:center
    }
    .himeiro-recruit-lp .home-main-contents{
        /*gap:24px;*/
        padding-block:24px
    }
    .himeiro-section{
        padding:22px;
        border-radius:var(--radius--s)
    }
    .himeiro-section--message{
        min-height:420px
    }
    .himeiro-side-link{
        right:12px;
        bottom:-18px
    }
    .himeiro-recruit-lp .home-section-heading-en{
        font-size:4.8rem
    }
    .himeiro-recruit-list>div{
        grid-template-columns:1fr;
        gap:4px
    }
    .himeiro-fixed-video{
        right:14px;
        bottom:92px;
        width:62px;
        height:62px
    }
    .himeiro-fixed-video-icon{
        border-top-width:8px;
        border-bottom-width:8px;
        border-left-width:13px
    }
    .himeiro-fixed-video-label{
        font-size:.9rem
    }
    .himeiro-recruit-lp .home-footer{
        width:auto;
        margin:0;
        padding:20px 16px 90px;
        text-align:center
    }
}
.himeiro-recruit-lp .is-fallback-slider .home-hero-slider-list{
    position:absolute;
    inset:0
}
.himeiro-recruit-lp .is-fallback-slider .home-hero-slider-item{
    position:absolute;
    inset:0;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none;
    -webkit-transition:none;
    transition:none
}
.himeiro-recruit-lp .is-fallback-slider .home-hero-slider-item.is-active{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto
}
.himeiro-recruit-lp .is-fallback-slider.is-ready .home-hero-slider-item{
    -webkit-transition:opacity .9s ease,visibility 0s linear .9s;
    transition:opacity .9s ease,visibility 0s linear .9s
}
.himeiro-recruit-lp .is-fallback-slider.is-ready .home-hero-slider-item.is-active{
    -webkit-transition:opacity .9s ease;
    transition:opacity .9s ease
}
.himeiro-recruit-lp .home-section-count:before{
    -webkit-mask:none!important;
    mask:none!important;
    background:transparent!important;
    border:2px dashed currentColor;
    border-radius:50%
}
.himeiro-recruit-lp .arrow-icon:before,
.himeiro-recruit-lp .entry-icon:before,
.himeiro-recruit-lp .scroll-button-icon:before{
    -webkit-mask:none!important;
    mask:none!important;
    background:transparent!important
}
.himeiro-recruit-lp .arrow-icon:before{
    width:11px!important;
    height:11px!important;
    border-top:2px solid #fff;
    border-right:2px solid #fff;
    transform:translate(-50%,-50%) rotate(45deg);
    top:50%!important;
    left:48%!important
}
.himeiro-recruit-lp .entry-icon:before{
    width:16px!important;
    height:16px!important;
    border:2px solid currentColor;
    border-radius:50%;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%)
}
.himeiro-recruit-lp .entry-icon:after{
    content:"";
    position:absolute;
    width:7px;
    height:7px;
    border-top:2px solid currentColor;
    border-right:2px solid currentColor;
    top:50%;
    left:48%;
    transform:translate(-50%,-50%) rotate(45deg)
}
.himeiro-recruit-lp .scroll-button-icon{
    position:relative
}
.himeiro-recruit-lp .scroll-button-icon:before{
    content:"";
    position:absolute;
    width:12px!important;
    height:12px!important;
    border-right:2px solid var(--color--prim);
    border-bottom:2px solid var(--color--prim);
    transform:rotate(45deg);
    inset:0;
    margin:auto
}
.himeiro-recruit-lp .mizuho-logo-bg-inner{
    background:linear-gradient(135deg,rgba(36,86,232,.16),rgba(255,111,159,.16))!important;
    border:var(--frame-width) solid rgba(36,86,232,.22);
    border-radius:0 0 var(--radius--l) 0
}
.himeiro-recruit-lp .scroll-button-icon{
    -webkit-mask:none!important;
    mask:none!important;
    background:transparent!important
}
.himeiro-recruit-lp .anchor-link-icon:before{
    -webkit-mask:none!important;
    mask:none!important;
    background:transparent!important;
    width:12px;
    height:12px;
    border-right:2px solid var(--color--prim);
    border-bottom:2px solid var(--color--prim);
    transform:rotate(45deg);
    inset:0;
    margin:auto
}
.himeiro-section-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    min-height:52px;
    margin-top:20px;
    padding:8px 8px 8px 22px;
    color:#fff;
    background:var(--color--prim);
    border-radius:999px;
    font-weight:900
}
.himeiro-section-button .arrow-icon{
    width:38px;
    height:34px
}
.himeiro-fixed-vision{
    position:fixed;
    z-index:9;
    right:calc(var(--nav-width) + 18px);
    bottom:220px;
    display:grid;
    place-items:center;
    width:92px;
    height:92px;
    border-radius:20px;
    /*background:#fff;
    color:var(--color--prim);
    border:3px solid var(--color--prim);
    box-shadow:0 14px 28px rgba(36,86,232,.22);*/
    text-align:center;
    font-size:1.2rem;
    font-weight:900;
    line-height:1.15
}
/*.himeiro-fixed-vision:after{
    content:"";
    position:absolute;
    right:-9px;
    top:50%;
    width:18px;
    height:18px;
    background:var(--color--rd);
    border-radius:50%;
    transform:translateY(-50%)
}*/
.himeiro-subpage{
    min-height:100dvh;
    background:#f5f7fb
}
.sub-wrapper{
    width:min(1120px,calc(100% - 40px));
    margin:0 auto;
    padding:20px 0 70px
}
.sub-header{
    position:sticky;
    z-index:10;
    top:14px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    min-height:74px;
    margin-bottom:26px;
    padding:10px 12px;
    background:rgba(255,255,255,.9);
    border:3px solid var(--color--prim);
    border-radius:22px;
    backdrop-filter:blur(12px);
    box-shadow:0 14px 30px rgba(36,86,232,.12)
}
.sub-logo{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:136px;
    min-height:52px;
    border-radius:14px;
    background:#fff
}
.sub-logo img{
    max-width:105px;
    height:auto
}
.sub-nav{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:flex-end;
    gap:8px
}
.sub-nav a{
    display:inline-flex;
    align-items:center;
    min-height:38px;
    padding:5px 13px;
    color:var(--color--prim);
    border:2px solid rgba(36,86,232,.16);
    border-radius:999px;
    background:#fff;
    font-size:1.2rem;
    font-weight:900
}
.sub-nav a:last-child{
    color:#fff;
    background:var(--color--rd);
    border-color:var(--color--rd)
}
.sub-hero{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(320px,48%);
    align-items:stretch;
    gap:18px;
    min-height:520px;
    margin-bottom:30px;
    padding:24px;
    color:#fff;
    background:linear-gradient(135deg,var(--color--prim),#6d8dff);
    border-radius:28px;
    border:4px solid var(--color--prim);
    overflow:hidden
}
.sub-hero-copy{
    display:flex;
    flex-direction:column;
    justify-content:center;
    min-height:100%;
    padding:36px
}
.sub-kicker{
    color:var(--color--rd);
    font-size:1.3rem;
    font-weight:900;
    line-height:1.2;
    text-transform:uppercase;
    margin:0 0 12px
}
.sub-hero .sub-kicker{
    color:#ffd5e2
}
.sub-hero h1,
.vision-hero h1{
    font-size:clamp(3.6rem,6vw,7.4rem);
    line-height:1.08;
    letter-spacing:0;
    margin:0 0 22px
}
.sub-hero-copy p:last-child{
    font-size:1.8rem;
    font-weight:800;
    line-height:1.7;
    margin:0
}
.sub-hero-image{
    min-height:360px;
    margin:0;
    border-radius:22px;
    overflow:hidden;
    background:#fff
}
.sub-hero-image img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover
}
.sub-hero--compliance{
    background:linear-gradient(135deg,#101936,#285ae1)
}
.sub-hero--compliance .sub-hero-image img{
    object-position:center
}
.sub-section{
    margin:0 0 30px;
    padding:34px;
    background:#fff;
    border:3px solid rgba(36,86,232,.18);
    border-radius:24px;
    box-shadow:0 16px 34px rgba(36,86,232,.08)
}
.sub-section--wide{
    padding:40px
}
.sub-lead-panel{
    margin-bottom:28px;
    padding:28px;
    color:#fff;
    background:var(--color--prim);
    border-radius:18px;
    font-size:2rem;
    font-weight:800;
    line-height:1.9
}
.sub-lead-panel p{
    margin:0 0 14px
}
.sub-lead-panel p:last-child{
    margin-bottom:0
}
.sub-text-columns{
    columns:2 340px;
    column-gap:38px;
    color:#263452;
    font-size:1.6rem;
    line-height:2
}
.sub-text-columns p{
    break-inside:avoid;
    margin:0 0 18px
}
.sub-next-nav{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px
}
.sub-next-nav a{
    display:flex;
    align-items:center;
    justify-content:space-between;
    min-height:86px;
    padding:20px 24px;
    color:var(--color--prim);
    background:#fff;
    border:3px solid var(--color--prim);
    border-radius:18px;
    font-size:1.8rem;
    font-weight:900
}
.sub-next-nav a:after{
    content:"";
    width:12px;
    height:12px;
    border-top:3px solid currentColor;
    border-right:3px solid currentColor;
    transform:rotate(45deg)
}
.himeiro-subpage--formal{
    background:#eef1f6
}
.sub-section--formal{
    background:#fdfdfd;
    border-color:#cbd3e5
}
.sub-formal-lead{
    max-width:760px;
    color:#101936;
    font-size:2.2rem;
    font-weight:900;
    line-height:1.7;
    margin:0 0 26px
}
.policy-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px
}
.policy-grid article{
    padding:24px;
    background:#fff;
    border:1px solid #d8deec;
    border-left:6px solid var(--color--prim);
    border-radius:12px
}
.policy-grid span{
    display:inline-flex;
    color:#fff;
    background:#101936;
    border-radius:999px;
    padding:4px 10px;
    font-weight:900;
    line-height:1
}
.policy-grid h2{
    color:#101936;
    font-size:2rem;
    margin:14px 0 12px
}
.policy-grid p,
.sub-statement p{
    color:#263452;
    line-height:1.9;
    margin:0
}
.sub-statement{
    display:grid;
    gap:12px;
    margin-top:18px;
    padding:24px;
    background:#eef4ff;
    border-radius:14px
}
.vision-hero{
    position:relative;
    overflow:hidden;
    margin-bottom:30px;
    padding:70px 52px;
    color:#fff;
    background:radial-gradient(circle at 80% 20%,rgba(255,111,159,.58),transparent 30%),linear-gradient(135deg,#2456e8,#101936);
    border-radius:30px;
    border:4px solid var(--color--prim)
}
.vision-catch{
    font-size:clamp(2.5rem,4vw,4.8rem);
    font-weight:900;
    line-height:1.25;
    margin:0 0 28px
}
.vision-points{
    display:grid;
    gap:10px;
    max-width:720px
}
.vision-points span,
.vision-values strong{
    display:block;
    padding:14px 18px;
    color:#101936;
    background:#fff;
    border-radius:12px;
    font-size:1.8rem;
    font-weight:900
}
.vision-statement h2{
    color:var(--color--prim);
    font-size:3.2rem;
    margin:0 0 22px
}
.vision-statement p{
    color:#263452;
    font-size:1.7rem;
    line-height:2;
    margin:0 0 16px
}
.vision-values{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
    margin:24px 0
}
.coming-soon-movie{
    display:grid;
    grid-template-columns:minmax(0,1fr) 260px;
    gap:22px;
    align-items:center;
    padding:28px;
    background:#fff0f6;
    border:3px dashed var(--color--rd);
    border-radius:24px
}
.coming-soon-movie h2{
    color:var(--color--rd);
    font-size:3.8rem;
    margin:0 0 10px
}
.coming-soon-movie p{
    color:#263452;
    line-height:1.8;
    margin:0
}
.coming-soon-movie img{
    display:block;
    width:100%;
    height:auto
}
.sub-section-heading{
    text-align:center;
    margin-bottom:24px
}
.sub-section-heading h2{
    color:var(--color--prim);
    font-size:3.2rem;
    margin:0
}
.job-map-layout{
    display:grid;
    grid-template-columns:minmax(0,1.5fr) minmax(260px,.7fr);
    gap:22px;
    align-items:center
}
.job-map-layout>img{
    display:block;
    width:100%;
    border-radius:18px;
    border:2px solid rgba(36,86,232,.18)
}
.area-card-list{
    display:grid;
    gap:10px
}
.area-card-list a{
    display:grid;
    gap:4px;
    padding:15px 16px;
    color:#fff;
    background:var(--color--prim);
    border-radius:14px;
    font-size:1.7rem;
    font-weight:900
}
.area-card-list span{
    color:#e9efff;
    font-size:1.3rem;
    font-weight:700
}
.job-area-panel{
    display:grid;
    gap:18px
}
.job-map-figure{
    margin:0;
    padding:12px;
    background:#eef2ff;
    border:3px solid rgba(19,75,236,.24);
    border-radius:18px;
    overflow:hidden
}
.job-map-image{
    display:block;
    width:100%;
    height:auto;
    border-radius:12px
}
.job-area-buttons{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px
}
.job-area-button{
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:48px;
    padding:8px 12px;
    color:var(--color--prim);
    background:#fff;
    border:3px solid var(--color--prim);
    border-radius:999px;
    font-size:1.7rem;
    font-weight:900;
    line-height:1.2;
    cursor:pointer;
    transition:background .18s ease,color .18s ease,transform .18s ease
}
.job-area-button.is-active{
    color:#fff;
    background:var(--color--prim);
    box-shadow:0 10px 20px rgba(19,75,236,.18)
}
@media (hover:hover){
    .job-area-button:hover{
        transform:translateY(-1px)
    }
}
.job-area-store-panels{
    position:relative;
    padding:18px;
    background:#fff;
    border:5px solid var(--color--prim);
    border-radius:18px;
    box-shadow:0 14px 26px rgba(19,75,236,.12);
    overflow:hidden
}
.job-area-panel:not(.has-active):not(.is-switching) .job-area-store-panels{
    display:none
}
.job-area-panel.is-switching .job-area-store-panels{
    display:block;
    min-height:180px
}
.job-area-store-panels:before{
    content:"NOW LOADING...";
    position:absolute;
    z-index:4;
    inset:28px auto auto 50%;
    display:flex;
    align-items:center;
    justify-content:center;
    min-width:160px;
    width:max-content;
    min-height:48px;
    padding:8px 18px;
    color:#fff;
    background:linear-gradient(135deg,var(--color--prim),var(--color--rd));
    border:3px solid #fff;
    border-radius:999px;
    font-size:1.2rem;
    font-weight:900;
    letter-spacing:.08em;
    line-height:1;
    box-shadow:0 14px 30px rgba(19,75,236,.22);
    pointer-events:none;
    opacity:0;
    transform:translate(-50%,0) scale(.9)
}
.job-area-store-panels:after{
    content:"";
    position:absolute;
    z-index:3;
    inset:0;
    width:auto;
    height:auto;
    color:transparent;
    background:rgba(255,255,255,.78);
    border-radius:13px;
    backdrop-filter:blur(2px);
    box-shadow:none;
    pointer-events:none;
    opacity:0;
    transform:none;
}
.job-area-panel.is-switching .job-area-store-panels:before{
    opacity:1;
    animation:jobAreaLoadingBadge .36s ease both
}
.job-area-panel.is-switching .job-area-store-panels:after{
    opacity:1;
    animation:none
}
.job-area-store-panel[hidden]{
    display:none!important
}
.job-area-store-panel h3{
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:38px;
    margin:0 0 14px;
    color:#fff;
    background:var(--color--prim);
    border-radius:10px;
    font-size:2rem;
    line-height:1.2
}
.job-area-logo-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(155px,1fr));
    gap:12px
}
.job-area-logo-link{
    display:grid;
    grid-template-rows:minmax(82px,1fr) auto;
    align-items:center;
    justify-content:center;
    gap:10px;
    min-height:142px;
    padding:12px 10px 10px;
    background:#fff;
    border:3px solid rgba(19,75,236,.24);
    border-radius:13px;
    transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease
}
.job-area-logo-link img{
    display:block;
    align-self:center;
    justify-self:center;
    width:auto;
    height:auto;
    max-width:min(130px,100%);
    max-height:82px;
    object-fit:contain
}
.job-area-store-name{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    min-height:28px;
    box-sizing:border-box;
    padding:4px 8px;
    color:var(--color--prim);
    background:#fff;
    border:2px solid var(--color--prim);
    border-radius:999px;
    font-size:1.25rem;
    font-weight:900;
    line-height:1.15;
    text-align: center;
}
.job-area-store-panel.is-revealed .job-area-logo-link{
    animation:jobAreaLogoPop .46s cubic-bezier(.18,.9,.24,1.2) both
}
.job-area-store-panel.is-revealed .job-area-logo-link:nth-child(2){
    animation-delay:.04s
}
.job-area-store-panel.is-revealed .job-area-logo-link:nth-child(3){
    animation-delay:.08s
}
.job-area-store-panel.is-revealed .job-area-logo-link:nth-child(4){
    animation-delay:.12s
}
.job-area-store-panel.is-revealed .job-area-logo-link:nth-child(5){
    animation-delay:.16s
}
.job-area-store-panel.is-revealed .job-area-logo-link:nth-child(6){
    animation-delay:.2s
}
.job-area-store-panel.is-revealed .job-area-logo-link:nth-child(7){
    animation-delay:.24s
}
.job-area-store-panel.is-revealed .job-area-logo-link:nth-child(8){
    animation-delay:.28s
}
.job-area-store-panel.is-revealed .job-area-logo-link:nth-child(9){
    animation-delay:.32s
}
@keyframes jobAreaLoadingBadge{
    0%{opacity:0;transform:translate(-50%,6px) scale(.9)}
    24%,78%{opacity:1;transform:translate(-50%,0) scale(1)}
    100%{opacity:0;transform:translate(-50%,-6px) scale(.96)}
}
@keyframes jobAreaLoadingDots{
    0%{box-shadow:16px 0 0 rgba(255,255,255,.35),32px 0 0 rgba(255,255,255,.35)}
    33%{box-shadow:16px 0 0 currentColor,32px 0 0 rgba(255,255,255,.35)}
    66%,100%{box-shadow:16px 0 0 currentColor,32px 0 0 currentColor}
}
@keyframes jobAreaLogoPop{
    0%{opacity:0;transform:translateY(12px) scale(.9)}
    70%{opacity:1;transform:translateY(-2px) scale(1.03)}
    100%{opacity:1;transform:translateY(0) scale(1)}
}
@media (hover:hover){
    .job-area-logo-link:hover{
        border-color:var(--color--rd);
        transform:translateY(-2px);
        box-shadow:0 12px 22px rgba(255,95,152,.16)
    }
}
.job-task-list{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px
}
.job-task-list article{
    position:relative;
    overflow:hidden;
    padding:18px;
    background:#f8faff;
    border:2px solid rgba(36,86,232,.14);
    border-radius:18px
}
.job-task-list img{
    display:block;
    width:100%;
    aspect-ratio:16/10;
    object-fit:cover;
    border-radius:12px;
    margin-bottom:14px
}
.job-task-list span{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:42px;
    min-height:32px;
    color:#fff;
    background:var(--color--rd);
    border-radius:999px;
    font-weight:900
}
.job-task-list h3{
    color:var(--color--prim);
    font-size:2rem;
    margin:10px 0 8px
}
.job-task-list p{
    color:#263452;
    line-height:1.8;
    margin:0
}
@media screen and (max-width:1023.98px){
    .himeiro-fixed-vision{
        right:14px;
        bottom:160px;
        width:72px;
        height:72px;
        border-radius:16px;
        font-size:1rem
    }
    .sub-wrapper{
        width:min(100% - 20px,720px);
        padding-top:10px
    }
    .sub-header{
        align-items:flex-start;
        flex-direction:column;
        border-radius:18px
    }
    .sub-nav{
        justify-content:flex-start
    }
    .sub-nav a{
        min-height:34px;
        font-size:1.1rem;
        padding:5px 10px
    }
    .sub-hero{
        grid-template-columns:1fr;
        min-height:0;
        padding:16px;
        border-radius:22px
    }
    .sub-hero-copy{
        padding:20px 8px
    }
    .sub-hero h1,
    .vision-hero h1{
        font-size:3.2rem
    }
    .sub-hero-image{
        min-height:260px
    }
    .sub-section,
    .sub-section--wide{
        padding:22px;
        border-radius:18px
    }
    .sub-lead-panel{
        padding:20px;
        font-size:1.6rem
    }
    .sub-text-columns{
        columns:auto;
        font-size:1.5rem
    }
    .sub-next-nav,
    .policy-grid,
    .vision-values,
    .job-task-list,
    .coming-soon-movie{
        grid-template-columns:1fr
    }
    .job-map-layout{
        grid-template-columns:1fr
    }
    .job-map-figure{
        padding:8px;
        border-width:2px;
        border-radius:14px
    }
    .job-area-buttons{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:8px
    }
    .job-area-button{
        min-height:44px;
        font-size:1.45rem
    }
    .job-area-store-panels{
        padding:12px;
        border-width:4px;
        border-radius:15px
    }
    .job-area-store-panel h3{
        min-height:34px;
        margin-bottom:10px;
        font-size:1.7rem
    }
    .job-area-logo-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:8px
    }
    .job-area-logo-link{
        grid-template-rows:minmax(62px,1fr) auto;
        min-height:118px;
        padding:6px;
        gap:6px;
        border-width:2px;
        border-radius:10px
    }
    .job-area-logo-link img{
        max-width:min(128px,100%);
        max-height:66px
    }
    .job-area-store-name{
        min-height:24px;
        padding:3px 5px;
        border-width:2px;
        font-size:1.05rem;
        text-align: center;
    }
    .vision-hero{
        padding:42px 24px
    }
    .vision-catch{
        font-size:2.7rem
    }
    .coming-soon-movie img{
        max-width:230px;
        margin:auto
    }
}

.himeiro-recruit-group{
    margin:0 0 24px
}
.himeiro-recruit-group:last-child{
    margin-bottom:0
}
.himeiro-recruit-group h3{
    display:inline-flex;
    align-items:center;
    min-height:42px;
    margin:0 0 12px;
    padding:6px 16px;
    color:#fff;
    background:var(--color--prim);
    border-radius:999px;
    font-size:1.9rem;
    font-weight:900
}
.himeiro-recruit-group+.himeiro-recruit-group{
    padding-top:22px;
    border-top:2px dashed rgba(36,86,232,.22)
}
.himeiro-recruit-list dd p{
    margin:0 0 10px
}
.himeiro-recruit-list dd p:last-child{
    margin-bottom:0
}
.himeiro-recruit-lines,
.himeiro-recruit-notes{
    display:grid;
    gap:8px;
    margin:0 0 14px;
    padding:0;
    list-style:none
}
.himeiro-recruit-lines li,
.himeiro-recruit-notes li{
    position:relative;
    margin:0;
    padding-left:1.2em;
    line-height:1.7
}
.himeiro-recruit-lines li:before,
.himeiro-recruit-notes li:before{
    content:"";
    position:absolute;
    left:0;
    top:.7em;
    width:.45em;
    height:.45em;
    border-radius:50%;
    background:var(--color--rd)
}
.himeiro-recruit-notes{
    padding:14px;
    background:#f8faff;
    border-radius:12px
}
.himeiro-recruit-notes li:before{
    background:var(--color--prim)
}
/* Recruit desktop stacked layout */
.himeiro-recruit-box .himeiro-recruit-list>div{
    grid-template-columns:1fr;
    gap:4px;
    padding:18px 0
}
.himeiro-recruit-box .himeiro-recruit-list dt{
    display:inline-flex;
    align-items:center;
    width:-webkit-fit-content;
    width:-moz-fit-content;
    width:fit-content;
    min-height:30px;
    margin-bottom:2px;
    padding:3px 10px;
    color:#fff;
    background:var(--color--prim);
    border-radius:999px;
    font-size:1.3rem;
    line-height:1.3
}
.himeiro-recruit-box .himeiro-recruit-list dd{
    width:100%;
    min-width:0
}

/* Annotated request adjustments */
body.himeiro-recruit-lp{
    --color--prim:#134bec;
    --color--br:#c9a6ff;
    --color--gr:#ffc0c6;
    --color--yl:#fff1bd;
    --color--rd:#ff5f98;
    --color--lt-br:#fff;
    background:#fff
}
.himeiro-recruit-lp .nav{
    justify-content:flex-start;
    padding-top:clamp(70px,8vh,104px)
}
.himeiro-recruit-lp .nav-button{
    box-shadow:0 10px 24px rgba(19,75,236,.18)
}
.himeiro-recruit-lp .recruit-site-buttons{
    box-shadow:0 14px 26px rgba(255,95,152,.18)
}
.himeiro-logo-link{
    width:210px;
    height:78px;
    justify-content:flex-start;
    border-width:4px;
    border-top:0;
    border-left:0;
    border-radius:0 0 28px 0;
    padding:10px 18px
}
.himeiro-recruit-lp .mizuho-logo-image{
    /*width:172px;*/
    max-width:100%;
    margin:0
}
.himeiro-recruit-lp .mizuho-logo-bg{
    display:none
}
.himeiro-recruit-lp .home-hero-slider{
    background:#fff;
    border-radius:28px;
    box-shadow:none
}
.himeiro-recruit-lp .home-hero-slider-item:before,
.home-hero-slide-caption{
    display:none
}
.himeiro-recruit-lp .home-hero-image{
    padding:0;
    background:#fff;
    object-position:center bottom
}
.himeiro-recruit-lp .site-name-loop-slider{
    color:rgba(19,75,236,.16)
}
.himeiro-recruit-lp .site-title{
    align-items:flex-start;
    padding:22px 18px;
    background:#fff;
    overflow:visible;
    box-shadow:0 16px 30px rgba(19,75,236,.08)
}
.himeiro-recruit-lp .site-title:before{
    background:#fff;
    background-image:none
}
.himeiro-recruit-lp .site-title:after{
    inset:230px -22px auto auto;
    width:86px;
    opacity:1;
    background:url("./img/index/top_massage01.png") center/contain no-repeat
}
.himeiro-recruit-lp .site-title-inner{
    display:flex;
    flex-direction:column;
    justify-content:flex-start;
    width:100%;
    min-height:100%;
    padding:0
}
.site-title-illust{
    position:relative;
    z-index:4;
    display:block;
    width:min(100%,310px);
    height:auto;
    margin:0 auto 20px
}
.himeiro-recruit-lp .slogan{
    position:relative;
    z-index:4;
    color:var(--color--prim);
    font-size:1.25rem;
    font-weight:900;
    margin:0 0 10px
}
.himeiro-recruit-lp .site-name{
    font-size:clamp(2.15rem,2.4vw,2.8rem);
    line-height:1.35;
    font-weight:900;
    color:var(--color--prim)
}
.himeiro-recruit-lp .site-title .scroll-button{
    display:none
}
.himeiro-recruit-lp .todays-message{
    filter:none
}
.himeiro-recruit-lp .todays-message-heading{
    color:var(--color--prim);
    font-size:1.8rem;
    font-weight:900
}
.himeiro-recruit-lp .todays-message-content{
    color:#101936
}
.himeiro-recruit-lp .todays-message-content-inner{
    overflow:hidden
}
.himeiro-recruit-lp .todays-message-text{
    display:block;
    width:max-content;
    min-width:100%;
    padding-left:0;
    animation:himeiro-message-marquee 22s linear infinite
}
.himeiro-recruit-lp .todays-message-date{
    background:var(--color--prim);
    z-index:6;
    box-shadow:0 10px 24px rgba(19,75,236,.22)
}
.himeiro-recruit-lp .todays-message-heading,
.himeiro-recruit-lp .todays-message-content{
    position:relative;
    z-index:2
}
.himeiro-recruit-lp .todays-message-date-month-day{
    gap:2px;
    font-size:3.4rem;
    margin-block:8px 4px
}
.himeiro-recruit-lp .todays-message-date-month-day:after{
    display:none
}
.todays-message-date-week-inline{
    align-self:flex-end;
    font-size:1.35rem;
    font-weight:800;
    margin:0 0 .45em 2px
}
.todays-message-date-week-en{
    font-size:1.05rem;
    font-weight:800
}
@keyframes himeiro-message-marquee{
    0%{
        transform:translateX(0)
    }
    15%{
        transform:translateX(0)
    }
    100%{
        transform:translateX(-100%)
    }
}
.himeiro-section{
    border-color:var(--color--prim);
    box-shadow:none
}
.himeiro-section--message{
    overflow:hidden;
    border-color:var(--color--prim);
    padding-bottom:20px
}
.himeiro-message-illust-wrap{
    margin-top:24px;
    padding:12px;
    background:#fff9c8;
    border:3px solid var(--color--prim);
    border-radius:16px
}
.himeiro-message-illust{
    display:block;
    width:min(100%,280px);
    height:auto;
    margin:auto
}
.himeiro-section--about{
    background:var(--color--br)
}
.himeiro-section--culture{
    background:var(--color--gr)
}
.himeiro-section--recruit{
    background:var(--color--yl)
}
.himeiro-section--contact{
    background:#ffe6f0
}
.himeiro-recruit-lp .home-section-heading-en{
    color:rgba(255,255,255,.38)
}
.himeiro-section--message .home-section-heading-ja,
.himeiro-recruit-lp .home-section-heading-ja{
    color:var(--color--prim)
}
.himeiro-section--message .home-introduction-heading{
    color:#fff
}
.himeiro-recruit-lp .home-section-lead{
    color:#101936;
    font-weight:800
}
.himeiro-card-list{
    gap:8px;
    margin:0
}
.himeiro-card-list .home-contents-index-item:not(:first-child){
    margin-top:0
}
.himeiro-card-list .home-contents-index-item:not(:first-child):before{
    display:none
}
.himeiro-recruit-lp .home-contents-index-link{
    display:block;
    min-height:126px;
    border:4px solid var(--color--prim)!important;
    border-radius:14px;
    background:#f6f8ff;
    overflow:hidden;
    box-shadow:none
}
.himeiro-recruit-lp .home-contents-index-link .thumbnail-wrapper{
    display:block;
    width:100%;
    height:112px;
    background:#eff4ff;
    overflow:hidden
}
.himeiro-recruit-lp .home-contents-index-link .thumbnail{
    width:100%;
    height:100%;
    object-fit:cover
}
.himeiro-recruit-lp .home-contents-index-title{
    inset:auto 48px 8px 8px;
    color:#fff;
    max-width:calc(100% - 64px)
}
.himeiro-recruit-lp .home-contents-index-title-sub,
.himeiro-recruit-lp .home-contents-index-title-main{
    display:inline-block;
    max-width:100%;
    color:#fff;
    background:var(--color--prim);
    border-radius:4px;
    padding:3px 8px;
    line-height:1.35;
    overflow-wrap:anywhere
}
.himeiro-recruit-lp .home-contents-index-title-sub{
    font-size:1.05rem;
    font-weight:800;
    margin-bottom:-2px
}
.himeiro-recruit-lp .home-contents-index-title-main{
    font-size:1.55rem;
    font-weight:900
}
.himeiro-recruit-lp .home-contents-index-title-sub:before,
.himeiro-recruit-lp .home-contents-index-title-main:before{
    display:none
}
.himeiro-recruit-lp .home-contents-index-link .arrow-icon{
    inset:auto 8px 8px auto;
    width:36px;
    height:36px;
    border-radius:50%;
    background:var(--color--prim)
}
.himeiro-culture-index .home-contents-index-link .thumbnail-wrapper{
    height:132px
}
.himeiro-recruit-group h3,
.himeiro-recruit-box .himeiro-recruit-list dt{
    background:var(--color--rd)
}
.himeiro-recruit-box{
    border-color:rgba(255,95,152,.42)
}
.himeiro-recruit-lines li:before{
    background:var(--color--rd)
}
.himeiro-recruit-notes{
    background:#fff4f8
}
.himeiro-entry-lead,
.himeiro-form-note,
.himeiro-field-note{
    color:#273454;
    line-height:1.8;
    margin:0
}
.himeiro-form-result{
    border-radius:14px;
    box-shadow:0 12px 28px rgba(36,86,232,.12);
    display:none;
    gap:6px;
    font-size:1.5rem;
    font-weight:800;
    line-height:1.8;
    margin:0;
    outline:none;
    padding:18px 20px;
    text-align:left
}
.himeiro-form-result.is-visible,
.himeiro-form-result:target{
    display:grid
}
.himeiro-form-result strong{
    display:block;
    font-size:2rem;
    line-height:1.35
}
.himeiro-form-result span{
    display:block;
    font-size:1.4rem;
    font-weight:700
}
.himeiro-form-result--success{
    background:#eef4ff;
    border:3px solid var(--color--prim);
    color:var(--color--prim)
}
.himeiro-form-result--error{
    background:#fff0f6;
    border:3px solid var(--color--rd);
    color:#d63072
}
.himeiro-honeypot,
.himeiro-hp-field{
    position:absolute!important;
    left:-10000px!important;
    top:auto!important;
    width:1px!important;
    height:1px!important;
    overflow:hidden!important;
    opacity:0!important;
    pointer-events:none!important
}
.himeiro-honeypot input,
.himeiro-hp-field{
    width:1px!important;
    min-height:1px!important;
    height:1px!important;
    border:0!important;
    padding:0!important
}
.himeiro-entry-lead{
    font-weight:800;
    text-align:center
}
.himeiro-field-heading{
    display:flex;
    align-items:center;
    gap:8px
}
.himeiro-required,
.himeiro-any{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:38px;
    min-height:22px;
    padding:2px 7px;
    color:#fff;
    border-radius:999px;
    font-size:1.1rem;
    line-height:1;
    font-weight:900
}
.himeiro-required{
    background:var(--color--rd)
}
.himeiro-any{
    background:var(--color--prim)
}
.himeiro-field-note{
    display:block;
    font-size:1.2rem;
    font-weight:500
}
.himeiro-age-field{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:8px
}
.himeiro-radio-group{
    display:flex;
    flex-wrap:wrap;
    gap:10px 16px;
    margin:0;
    padding:0;
    border:0;
    color:#273454
}
.himeiro-radio-group legend{
    display:flex;
    align-items:center;
    gap:8px;
    width:100%;
    margin-bottom:2px;
    font-size:1.4rem;
    font-weight:800
}
.himeiro-entry-form .himeiro-radio-group label{
    display:inline-flex;
    grid-template-columns:none;
    align-items:center;
    gap:7px;
    font-weight:700;
    cursor:pointer;
    position:relative;
    z-index:1
}
.himeiro-entry-form input[type=radio]{
    -webkit-appearance:radio;
    -moz-appearance:radio;
    appearance:auto;
    width:18px;
    min-width:18px;
    height:18px;
    min-height:18px;
    border:0;
    border-radius:50%;
    background:#fff;
    padding:0;
    accent-color:var(--color--prim);
    cursor:pointer;
    flex:0 0 auto;
    pointer-events:auto
}
.himeiro-entry-form .himeiro-radio-group label span{
    pointer-events:none
}
.himeiro-submit-button{
    border:0
}
.himeiro-entry-toast{
    position:fixed;
    z-index:90;
    top:calc(env(safe-area-inset-top, 0px) + 14px);
    left:50%;
    width:min(680px, calc(100vw - 28px));
    transform:translate(-50%, -140%);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:transform .28s ease, opacity .28s ease, visibility .28s ease
}
.himeiro-entry-toast.is-visible{
    transform:translate(-50%, 0);
    opacity:1;
    visibility:visible;
    pointer-events:auto
}
.himeiro-entry-toast-inner{
    position:relative;
    display:grid;
    gap:6px;
    padding:18px 54px 18px 20px;
    border:3px solid var(--color--prim);
    border-radius:16px;
    background:#fff;
    box-shadow:0 18px 40px rgba(19,75,236,.24);
    color:var(--color--prim);
    line-height:1.7
}
.himeiro-entry-toast--error .himeiro-entry-toast-inner{
    border-color:var(--color--rd);
    color:#d63072
}
.himeiro-entry-toast strong{
    font-size:2rem;
    line-height:1.35;
    font-weight:900
}
.himeiro-entry-toast span{
    font-size:1.4rem;
    font-weight:800
}
.himeiro-entry-toast-close{
    position:absolute;
    top:12px;
    right:12px;
    width:34px;
    height:34px;
    border-radius:50%;
    background:var(--color--prim);
    cursor:pointer
}
.himeiro-entry-toast--error .himeiro-entry-toast-close{
    background:var(--color--rd)
}
.himeiro-entry-toast-close:before,
.himeiro-entry-toast-close:after{
    content:"";
    position:absolute;
    top:50%;
    left:50%;
    width:16px;
    height:2px;
    border-radius:999px;
    background:#fff
}
.himeiro-entry-toast-close:before{
    transform:translate(-50%, -50%) rotate(45deg)
}
.himeiro-entry-toast-close:after{
    transform:translate(-50%, -50%) rotate(-45deg)
}
.himeiro-fixed-vision{
    top:calc(clamp(70px,8vh,104px) + var(--nav-width) + 14px);
    bottom:auto;
    right:calc(var(--nav-width) + 18px);
    width:92px;
    height:auto;
    border-radius:0
}
.himeiro-fixed-vision img{
    display:block;
    width:100%;
    height:auto
}
@media screen and (min-width:1024px){
    .himeiro-recruit-lp .home-hero{
        inset:var(--window-padding) calc(max(var(--vw) * 12,var(--nav-width) + 25px) + var(--home-contents-width) + 25px) auto var(--window-padding);
        height:clamp(360px,42vw,430px)
    }
    .himeiro-recruit-lp .home-hero-slider{
        inset:0
    }
    .himeiro-recruit-lp .home-hero-image{
        object-position:center center
    }
    .himeiro-recruit-lp .site-title{
        height:auto;
        min-height:360px;
        margin-bottom:18px
    }
    .himeiro-recruit-lp .site-title:after{
        inset:220px -22px auto auto
    }
    .himeiro-recruit-lp .todays-message{
        inset:calc(var(--window-padding) + clamp(360px,42vw,430px) - 116px) calc(max(var(--vw) * 12,var(--nav-width) + 25px) + var(--window-padding) + var(--home-contents-width) + 52px) auto calc(var(--window-padding) + 14px)
    }
    .himeiro-recruit-lp .home-main-contents{
        /*gap:18px*/
    }
}
@media screen and (max-width:1023.98px){
    .himeiro-recruit-lp .nav{
        padding-top:0
    }
    .himeiro-logo-link{
        width:168px;
        height:62px;
        border-width:3px;
        border-top:0;
        border-left:0;
        border-radius:0 0 20px 0;
        padding:8px 14px
    }
    .himeiro-recruit-lp .mizuho-logo-image{
        /*width:136px*/
    }
    .himeiro-recruit-lp .home-hero-image{
        padding:0;
        scale:1;
        object-position:center bottom
    }
    .himeiro-recruit-lp .todays-message-text{
        white-space:nowrap;
        line-height:1.45
    }
    .himeiro-recruit-lp .todays-message-date-month-day{
        font-size:2.2rem;
        margin-block:4px 2px
    }
    .todays-message-date-week-inline{
        font-size:1rem;
        margin-bottom:.35em
    }
    .todays-message-date-week-en{
        font-size:.85rem
    }
    .himeiro-message-illust{
        width:min(100%,230px)
    }
    .himeiro-recruit-lp .home-contents-index-link{
        min-height:112px
    }
    .himeiro-recruit-lp .home-contents-index-link .thumbnail-wrapper{
        height:96px
    }
    .himeiro-culture-index .home-contents-index-link .thumbnail-wrapper{
        height:112px
    }
    .himeiro-recruit-lp .home-contents-index-title-main{
        font-size:1.35rem
    }
    .himeiro-recruit-lp .home-contents-index-title-sub{
        font-size:.95rem
    }
    .himeiro-fixed-vision{
        top:auto;
        right:10px;
        bottom:24px;
        width:58px
    }
}

/* Reference site layout correction */
@media screen and (min-width:1024px){
    .himeiro-recruit-lp .home-hero{
        position:fixed;
        inset:var(--window-padding);
        height:auto
    }
    .himeiro-recruit-lp .home-hero-slider{
        position:absolute;
        inset:0;
        border-radius:var(--radius--l);
        border:var(--frame-width) solid var(--color--prim)
    }
    .himeiro-recruit-lp .home-hero-image{
        width:100%;
        height:100%;
        object-fit:cover;
        object-position:center bottom;
        padding:0;
        scale:1
    }
    .himeiro-recruit-lp .home-contents{
        position:relative;
        z-index:4;
        width:var(--home-contents-width);
        margin:var(--home-contents-margin);
        padding-block:var(--home-contents-padding) 0
    }
    .himeiro-recruit-lp .site-title{
        display:flex;
        align-items:flex-start;
        /*height:calc(100svh - var(--window-padding) * 4);*/
        min-height:500px;
        margin:0;
        padding:26px 24px 92px;
        /*border:var(--frame-width) solid var(--color--prim);*/
        border-radius:var(--radius--m);
        background:#fff;
        overflow:visible;
        box-shadow:0 18px 36px rgba(19,75,236,.12)
    }
    .himeiro-recruit-lp .site-title:before{
        background:#fff;
        background-image:none;
        border-radius:var(--radius--m)
    }
    .himeiro-recruit-lp .site-title:after{
        content:"";
        position:absolute;
        z-index:6;
        inset:clamp(210px,30vh,285px) -48px auto auto;
        width:104px;
        aspect-ratio:1;
        background:url("./img/index/side_icon.png") center/contain no-repeat;
        opacity:1;
        pointer-events:none
    }
    .himeiro-recruit-lp .site-title-inner{
        position:relative;
        z-index:5;
        display:flex;
        flex-direction:column;
        justify-content:flex-start;
        width:100%;
        min-height:100%;
        padding:0
    }
    .himeiro-recruit-lp .site-title-illust{
        width:min(100%,305px);
        margin:0 auto 28px
    }
    .himeiro-recruit-lp .slogan{
        color:var(--color--prim);
        font-size:1.25rem;
        line-height:1.5;
        font-weight:900;
        margin:0 0 10px
    }
    .himeiro-recruit-lp .site-name{
        color:var(--color--prim);
        font-size:clamp(2.25rem,2.2vw,3rem);
        line-height:1.42;
        font-weight:900;
        margin:0
    }
    .himeiro-recruit-lp .site-title .scroll-button{
        display:block;
        z-index:7;
        inset:auto 0 24px;
        margin:auto
    }
    .himeiro-recruit-lp .todays-message{
        position:fixed;
        z-index:8;
        inset:auto calc(max(var(--vw) * 12,var(--nav-width) + 25px) + var(--window-padding) + var(--home-contents-width) + 25px) calc(var(--window-padding) + 25px) calc(var(--window-padding) + 25px);
        filter:drop-shadow(0 10px 24px rgba(19,75,236,.16))
    }
    .himeiro-recruit-lp .home-main-contents{
        display:flex;
        flex-direction:column;
        /*gap:34px;*/
        /*padding-top:24px*/
    }
    .himeiro-recruit-lp #message{
        min-height:0;
        justify-content:flex-start;
        padding:70px 26px 24px;
        border:var(--frame-width) solid var(--color--prim);
        border-radius:var(--radius--s);
        background:var(--color--prim);
        color:#fff;
        overflow:visible
    }
    .himeiro-recruit-lp #message:before{
        content:"";
        position:absolute;
        z-index:3;
        top:-72px;
        right:18px;
        width:155px;
        aspect-ratio:1;
        background:url("./img/index/top_massage01.png") center/contain no-repeat;
        pointer-events:none
    }
    .himeiro-recruit-lp #message .himeiro-section-label{
        color:#b8c8ff;
        font-size:1.2rem;
        margin:0 0 12px
    }
    .himeiro-recruit-lp #message .home-introduction-heading{
        color:#fff;
        font-size:1.9rem;
        line-height:1.5;
        margin:0 0 20px
    }
    .himeiro-recruit-lp #message .home-introduction-content{
        color:#fff;
        font-size:1.24rem;
        line-height:1.85;
        font-weight:800
    }
    .himeiro-recruit-lp #message .home-introduction-content p{
        margin:0 0 14px
    }
    .himeiro-recruit-lp #message .himeiro-message-illust-wrap{
        margin-top:18px;
        padding:12px;
        background:#fff8bf;
        border:0;
        border-radius:12px
    }
    .himeiro-recruit-lp #message .himeiro-message-illust{
        /*width:min(100%,230px)*/
    }
    .himeiro-recruit-lp #message .himeiro-side-link{
        right:-8px;
        bottom:18px
    }
    .himeiro-recruit-lp .himeiro-fixed-vision{
        display:none
    }
}

/* Message and fixed vision refinements */
@media screen and (min-width:1024px){
    .himeiro-recruit-lp .site-title:after{
        content:none;
        display:none
    }
    .himeiro-recruit-lp .himeiro-fixed-vision{
        position:fixed;
        z-index:10;
        top:auto;
        right:calc(var(--nav-width) + 18px);
        bottom:220px;
        display:block;
        width:96px;
        height:96px;
        border-radius:0;
        pointer-events:auto
    }
    .himeiro-recruit-lp .himeiro-fixed-vision img{
        display:block;
        width:100%;
        height:auto
    }
    .himeiro-recruit-lp #message{
        isolation:isolate
    }
    .himeiro-recruit-lp #message:before{
        z-index:5;
        top:-32px;
        right:-60px;
        width:278px
    }
    .himeiro-recruit-lp #message:after{
        content:"MESSAGE";
        position:absolute;
        z-index:1;
        top:42px;
        left:-8px;
        color:rgba(255,255,255,.13);
        font-size:7.2rem;
        line-height:.85;
        font-weight:900;
        letter-spacing:0;
        pointer-events:none
    }
    .himeiro-recruit-lp #message .himeiro-section-label,
    .himeiro-recruit-lp #message .home-introduction-heading,
    .himeiro-recruit-lp #message .home-introduction-content,
    .himeiro-recruit-lp #message .himeiro-message-illust-wrap,
    .himeiro-recruit-lp #message .himeiro-side-link{
        position:relative;
        z-index:3
    }
    .himeiro-recruit-lp #message .home-introduction-heading{
        padding-right:84px
    }
}
@media screen and (max-width:1023.98px){
    .himeiro-recruit-lp #message{
        isolation:isolate
    }
    .himeiro-recruit-lp #message:after{
        content:"MESSAGE";
        position:absolute;
        z-index:1;
        top:34px;
        left:-6px;
        color:rgba(255,255,255,.12);
        font-size:5rem;
        line-height:.85;
        font-weight:900;
        letter-spacing:0;
        pointer-events:none
    }
    .himeiro-recruit-lp #message:before{
        z-index:5;
        top:-26px;
        right:-18px;
        width:150px
    }
    .himeiro-recruit-lp #message .himeiro-section-label,
    .himeiro-recruit-lp #message .home-introduction-heading,
    .himeiro-recruit-lp #message .home-introduction-content,
    .himeiro-recruit-lp #message .himeiro-message-illust-wrap,
    .himeiro-recruit-lp #message .himeiro-side-link{
        position:relative;
        z-index:3
    }
}

/* Logo, message ticker, and scrolling frame corrections */
.himeiro-recruit-lp .himeiro-logo{
    position:fixed;
    z-index:30;
    inset:var(--window-padding) auto auto var(--window-padding);
    height:0;
    pointer-events:none
}
.himeiro-recruit-lp .himeiro-logo-link{
    display:flex;
    opacity:1;
    visibility:visible;
    background:#fff;
    pointer-events:auto
}
.himeiro-recruit-lp .mizuho-logo-image{
    display:block;
    opacity:1;
    visibility:visible
}
.himeiro-recruit-lp .todays-message-heading{
    display:none
}
.himeiro-recruit-lp .todays-message-content{
    margin-top:0;
    padding-top:22px;
    padding-bottom:22px;
    border-radius:0 var(--radius--s) var(--radius--s) 0
}
@media screen and (min-width:1024px){
    .himeiro-recruit-lp .site-title{
        border-color:var(--color--prim)
    }
    .on-scroll .himeiro-recruit-lp .site-title{
        border-color:transparent;
        box-shadow:none
    }
    .himeiro-recruit-lp #message{
        border:0;
        box-shadow:none
    }
}
@media screen and (max-width:1023.98px){
    .himeiro-recruit-lp .todays-message-content{
        padding-top:8px;
        padding-bottom:8px;
        border-radius:0 var(--radius--xs) var(--radius--xs) 0
    }
}

/* Mobile logo and date ticker corrections */
@media screen and (max-width:1023.98px){
    .himeiro-recruit-lp .himeiro-logo{
        position:absolute;
        inset:var(--window-padding) auto auto var(--window-padding);
        z-index:12
    }
    .himeiro-recruit-lp .todays-message{
        min-height:56px;
        overflow:visible
    }
    .himeiro-recruit-lp .todays-message-date{
        top:50%;
        right:auto;
        bottom:auto;
        left:-2px;
        width:70px;
        height:70px;
        margin:0;
        transform:translateY(-50%);
        overflow:hidden
    }
    .himeiro-recruit-lp .todays-message-date-year{
        font-size:.95rem;
        margin:0 0 2px
    }
    .himeiro-recruit-lp .todays-message-date-year-text{
        font-size:.7rem
    }
    .himeiro-recruit-lp .todays-message-date-month-day{
        gap:1px;
        font-size:1.85rem;
        line-height:1;
        padding:0;
        margin:1px 0 2px
    }
    .himeiro-recruit-lp .todays-message-date-week-inline{
        font-size:.78rem;
        margin:0 0 .18em 1px
    }
    .himeiro-recruit-lp .todays-message-date-week-en{
        font-size:.7rem;
        line-height:1
    }
    .himeiro-recruit-lp .todays-message-content{
        display:flex;
        align-items:center;
        min-height:54px;
        margin-left:34px;
        padding:10px 12px 10px 44px;
        font-size:1.3rem;
        overflow:hidden
    }
    .himeiro-recruit-lp .todays-message-content-inner{
        width:100%;
        margin-inline:0;
        padding-inline:0;
        overflow:hidden
    }
    .himeiro-recruit-lp .todays-message-text{
        line-height:1.35
    }
}

/* Message body readability correction */
@media screen and (min-width:1024px){
    .himeiro-recruit-lp #message .home-introduction-content{
        font-size:1.6rem;
        line-height:2.2;
        letter-spacing:0;
        font-weight:500
    }
    .himeiro-recruit-lp #message .home-introduction-content p{
        margin:0 0 32px
    }
}

/* Message image link and card arrow refinements */
.himeiro-recruit-lp #message .himeiro-message-work-link{
    position:relative;
    z-index:3;
    display:block;
    margin-top:22px;
    color:var(--color--prim);
    border-radius:12px;
    overflow:hidden;
    background:#fff8bf
}
.himeiro-recruit-lp #message .himeiro-message-work-link .himeiro-message-illust{
    display:block;
    width:100%!important;
    max-width:none;
    height:auto;
    margin:0
}
.himeiro-message-work-title{
    position:absolute;
    z-index:2;
    left:12px;
    bottom:10px;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    line-height:1.28
}
.himeiro-message-work-sub,
.himeiro-message-work-main{
    display:inline-block;
    color:var(--color--prim);
    background:#fff;
    border-radius:4px;
    padding:3px 8px;
    font-weight:900;
    box-shadow:0 2px 0 rgba(19,75,236,.14)
}
.himeiro-message-work-sub{
    font-size:1rem;
    margin-bottom:-1px
}
.himeiro-message-work-main{
    font-size:1.5rem
}
.himeiro-recruit-lp #message .himeiro-message-work-link .arrow-icon{
    position:absolute;
    z-index:3;
    top:50%;
    right:10px;
    width:42px;
    height:42px;
    transform:translateY(-50%);
    background:var(--color--prim);
    border:3px solid #fff
}
.himeiro-recruit-lp .himeiro-card-list .home-contents-index-link{
    border-width:3px!important
}
.himeiro-recruit-lp .home-contents-index-link .arrow-icon,
.himeiro-recruit-lp #message .himeiro-message-work-link .arrow-icon{
    display:flex;
    align-items:center;
    justify-content:center
}
.himeiro-recruit-lp .arrow-icon:before{
    top:50%!important;
    right:auto!important;
    bottom:auto!important;
    left:50%!important;
    margin:0!important;
    transform:translate(-58%,-50%) rotate(45deg)
}
@media screen and (max-width:1023.98px){
    .himeiro-recruit-lp #message .himeiro-message-work-link{
        margin-top:18px;
        border-radius:10px
    }
    .himeiro-message-work-title{
        left:10px;
        bottom:9px
    }
    .himeiro-message-work-sub{
        font-size:.95rem
    }
    .himeiro-message-work-main{
        font-size:1.3rem
    }
    .himeiro-recruit-lp #message .himeiro-message-work-link .arrow-icon{
        right:8px;
        width:38px;
        height:38px
    }
}

/* Recruit, entry, ticker and index-card refinements */
.himeiro-recruit-lp .site-name-loop-slider{
    color:rgba(19,75,236,.28)
}
.himeiro-recruit-lp .himeiro-section--recruit .home-section-heading-en,
.himeiro-recruit-lp .himeiro-section--contact .home-section-heading-en{
    color:#9aafff
}
.himeiro-recruit-lp .himeiro-recruit-group h3{
    background:var(--color--rd);
    color:#fff
}
.himeiro-recruit-lp .himeiro-recruit-box .himeiro-recruit-list dt{
    background:var(--color--prim);
    color:#fff
}
.himeiro-recruit-lp .himeiro-card-list .home-contents-index-link{
    min-height:108px
}
.himeiro-recruit-lp .himeiro-card-list .home-contents-index-link .thumbnail-wrapper{
    height:100px
}
.himeiro-recruit-lp .himeiro-culture-index .home-contents-index-link .thumbnail-wrapper{
    height:112px
}
.himeiro-recruit-lp .home-contents-index-title{
    display:inline-flex;
    flex-direction:column;
    gap:1px;
    padding:4px 8px 5px;
    background:var(--color--prim);
    inset:auto 48px 0 0;
    border-radius:0 7px 0 0;
    overflow:hidden
}
.himeiro-recruit-lp .home-contents-index-title-sub,
.himeiro-recruit-lp .home-contents-index-title-main{
    background:transparent;
    border-radius:0;
    padding:0;
    margin:0;
    box-shadow:none
}
@media screen and (max-width:1023.98px){
    .himeiro-recruit-lp .himeiro-card-list .home-contents-index-link{
        min-height:104px
    }
    .himeiro-recruit-lp .himeiro-card-list .home-contents-index-link .thumbnail-wrapper{
        height:96px
    }
    .himeiro-recruit-lp .himeiro-culture-index .home-contents-index-link .thumbnail-wrapper{
        height:106px
    }
    .himeiro-recruit-lp .home-contents-index-title{
        inset:auto 46px 0 0;
        border-radius:0 6px 0 0;
        padding:4px 7px
    }
}

/* Flush link labels to the image's lower-left edge */
.himeiro-recruit-lp .home-contents-index-title{
    inset:auto 48px -2px -2px;
    padding:4px 10px 7px;
    border-radius:0 8px 0 0
}
.himeiro-recruit-lp #message .himeiro-message-work-title{
    left:-1px;
    bottom:-1px;
    gap:1px;
    padding:4px 10px 7px;
    background:var(--color--prim);
    border-radius:0 8px 0 0;
    overflow:hidden
}
.himeiro-recruit-lp #message .himeiro-message-work-sub,
.himeiro-recruit-lp #message .himeiro-message-work-main{
    color:#fff;
    background:transparent;
    border-radius:0;
    padding:0;
    margin:0;
    box-shadow:none
}
@media screen and (max-width:1023.98px){
    .himeiro-recruit-lp .home-contents-index-title{
        inset:auto 46px -2px -2px;
        padding:4px 8px 6px;
        border-radius:0 7px 0 0
    }
    .himeiro-recruit-lp #message .himeiro-message-work-title{
        left:-1px;
        bottom:-1px;
        padding:4px 8px 6px;
        border-radius:0 7px 0 0
    }
}

/* Hamburger menu and mobile hero/message refinements */
.himeiro-recruit-lp .nav{
    width:var(--nav-width);
    padding-top:0;
    translate:none!important;
    visibility:visible;
    pointer-events:none
}
.himeiro-recruit-lp .nav-button{
    position:fixed;
    z-index:43;
    top:clamp(70px,8vh,104px);
    right:0;
    pointer-events:auto
}
.himeiro-recruit-lp .nav-overlay{
    position:fixed;
    z-index:40;
    inset:0;
    display:block;
    width:100vw;
    height:100dvh;
    background:transparent;
    opacity:0;
    visibility:hidden;
    pointer-events:none
}
.nav-mode .himeiro-recruit-lp .nav-overlay{
    opacity:1;
    visibility:visible;
    pointer-events:auto
}
.himeiro-recruit-lp .nav-inner{
    position:fixed;
    z-index:41;
    inset:0 0 0 auto;
    width:min(600px,calc(100vw - 96px));
    height:100dvh;
    box-sizing:border-box;
    margin:0;
    padding:clamp(76px,10vh,112px) 42px 42px;
    border-left:0;
    background:var(--color--prim);
    transform:translateX(100%);
    transition:transform .36s ease, visibility .36s ease;
    visibility:hidden;
    pointer-events:none
}
.himeiro-recruit-lp .nav.is-opened .nav-inner{
    transform:translateX(0);
    visibility:visible;
    pointer-events:auto
}
.himeiro-recruit-lp .nav-list{
    gap:18px 0;
    margin:0;
    padding:0
}
.himeiro-recruit-lp .nav-label-en{
    font-size:clamp(2.4rem,2.8vw,3.4rem);
    line-height:1.05
}
.himeiro-recruit-lp .nav-label-ja{
    font-size:1.35rem;
    line-height:1.35
}
@media screen and (max-width:1023.98px){
    .himeiro-recruit-lp .nav{
        z-index:42
    }
    .himeiro-recruit-lp .nav-button{
        top:0;
        right:0;
        z-index:44;
        border-radius:0 0 0 var(--radius--s)
    }
    .himeiro-recruit-lp .nav-inner{
        width:calc(100vw - 62px);
        max-width:430px;
        padding:92px 28px 34px;
        overflow:auto
    }
    .himeiro-recruit-lp .nav-list{
        gap:20px 0;
        padding-inline-end:34px
    }
    .himeiro-recruit-lp .nav-label-en{
        font-size:2.45rem
    }
    .himeiro-recruit-lp .nav-label-ja{
        font-size:1.2rem
    }
    .himeiro-recruit-lp .home-contents{
        position:relative
    }
    .himeiro-recruit-lp .site-title{
        position:absolute;
        z-index:9;
        top:74px;
        right:calc(var(--nav-width) + 8px);
        display:block;
        width:min(43vw,180px);
        height:auto;
        min-height:0;
        margin:0;
        padding:10px 10px 14px;
        border:3px solid var(--color--prim);
        border-radius:14px;
        background:#fff;
        box-shadow:0 12px 24px rgba(19,75,236,.16);
        overflow:hidden
    }
    .himeiro-recruit-lp .site-title:before,
    .himeiro-recruit-lp .site-title:after{
        content:none;
        display:none
    }
    .himeiro-recruit-lp .site-title-inner{
        position:relative;
        display:block;
        padding:0;
        margin:0
    }
    .himeiro-recruit-lp .site-title-illust{
        width:100%;
        margin:0 auto 6px
    }
    .himeiro-recruit-lp .slogan{
        font-size:.72rem;
        line-height:1.35;
        margin:0 0 4px
    }
    .himeiro-recruit-lp .site-name{
        font-size:1.22rem;
        line-height:1.35;
        margin:0
    }
    .himeiro-recruit-lp .home-hero-pagination{
        display:none!important
    }
    .himeiro-recruit-lp #message{
        overflow:hidden;
        padding-top:76px
    }
    .himeiro-recruit-lp #message:before{
        content:"";
        position:absolute;
        z-index:2;
        top:54px;
        right:-50px;
        width:230px;
        aspect-ratio:1;
        background:url("./img/index/top_massage01.png") center/contain no-repeat;
        opacity:1
    }
    .himeiro-recruit-lp #message .home-introduction-heading{
        /*padding-right:110px*/
    }
    .himeiro-recruit-lp .himeiro-fixed-vision{
        position:fixed;
        z-index:12;
        top:auto;
        right:16px;
        bottom:22px;
        display:block!important;
        width:120px;
        height:120px;
        border-radius:0;
        pointer-events:auto
    }
    .nav-mode .himeiro-recruit-lp .himeiro-fixed-vision{
        display:none!important
    }
}

/* Mobile site-title flow, back-to-top, and footer alignment */
.himeiro-recruit-lp .home-footer,
.himeiro-recruit-lp .home-footer .copyright{
    justify-content:center;
    text-align:center
}
.himeiro-back-top{
    position:fixed;
    z-index:13;
    right:calc(var(--nav-width) + 22px);
    bottom:28px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:58px;
    height:58px;
    border:3px solid #fff;
    border-radius:50%;
    background:var(--color--prim);
    color:#fff;
    font-size:1.25rem;
    font-weight:900;
    line-height:1;
    box-shadow:0 12px 24px rgba(19,75,236,.22);
    cursor:pointer;
    opacity:0;
    visibility:hidden;
    transform:translateY(10px);
    transition:opacity .2s ease,transform .2s ease,visibility .2s ease
}
.himeiro-back-top:before{
    content:"";
    position:absolute;
    top:11px;
    width:10px;
    height:10px;
    border-top:3px solid currentColor;
    border-left:3px solid currentColor;
    transform:rotate(45deg)
}
.himeiro-back-top.is-visible{
    opacity:1;
    visibility:visible;
    transform:translateY(0)
}
@media screen and (max-width:1023.98px){
    .himeiro-recruit-lp .home-contents{
        display:flex;
        flex-direction:column
    }
    .himeiro-recruit-lp .beginning{
        order:1
    }
    .himeiro-recruit-lp .site-title{
        order:2;
        position:relative;
        z-index:4;
        top:auto;
        right:auto;
        display:block;
        width:100%;
        min-height:0;
        height:auto;
        margin:18px 0 0;
        padding:18px 20px 22px;
        border:var(--frame-width) solid var(--color--prim);
        border-radius:var(--radius--s);
        background:#fff;
        box-shadow:none;
        overflow:hidden
    }
    .himeiro-recruit-lp .site-title:before,
    .himeiro-recruit-lp .site-title:after{
        content:none;
        display:none
    }
    .himeiro-recruit-lp .site-title-inner{
        position:relative;
        display:flex;
        flex-direction:column;
        align-items:flex-start;
        padding:0;
        margin:0
    }
    .himeiro-recruit-lp .site-title-illust{
        width:min(100%,320px);
        margin:0 auto 16px
    }
    .himeiro-recruit-lp .slogan{
        color:var(--color--prim);
        font-size:1.12rem;
        line-height:1.45;
        font-weight:900;
        margin:0 0 8px
    }
    .himeiro-recruit-lp .site-name{
        color:var(--color--prim);
        font-size:clamp(2.2rem,6vw,2.8rem);
        line-height:1.38;
        font-weight:900;
        margin:0
    }
    .himeiro-recruit-lp .home-main-contents{
        order:3
    }
    .himeiro-back-top{
        right:18px;
        bottom:154px;
        width:54px;
        height:54px;
        font-size:1.15rem
    }
    .nav-mode .himeiro-back-top{
        display:none
    }
}

/* Back-to-top placement correction and desktop entry nav item */
.himeiro-recruit-lp .nav-item--entry{
    display:flex
}
.himeiro-back-top{
    flex-direction:column;
    justify-content:flex-end;
    box-sizing:border-box;
    padding:23px 0 8px
}
.himeiro-back-top:before{
    top:10px
}
@media screen and (max-width:1023.98px){
    .himeiro-recruit-lp .nav-item--entry{
        display:none
    }
    .himeiro-recruit-lp .himeiro-fixed-vision{
        bottom:92px
    }
    .himeiro-back-top{
        right:18px;
        bottom:22px;
        width:56px;
        height:56px;
        padding:24px 0 8px;
        font-size:1.08rem
    }
    .himeiro-back-top:before{
        top:10px
    }
}

/* Fixed telephone button beside the hamburger menu */
.himeiro-recruit-lp .himeiro-tel-button{
    position:fixed;
    z-index:43;
    top:calc(clamp(70px,8vh,104px) + (var(--nav-width) - 58px) / 2);
    right:calc(var(--nav-width) + 12px);
    display:block;
    width:58px;
    height:58px;
    border-radius:50%;
    line-height:0;
    box-shadow:0 12px 24px rgba(19,75,236,.22);
    pointer-events:auto;
    transition:opacity .2s ease,visibility .2s ease,transform .2s ease
}
.himeiro-recruit-lp .himeiro-tel-button img{
    display:block;
    width:100%;
    height:100%;
    object-fit:contain
}
.nav-mode .himeiro-recruit-lp .himeiro-tel-button{
    opacity:0;
    visibility:hidden;
    transform:translateY(-8px);
    pointer-events:none
}
@media screen and (max-width:1023.98px){
    .himeiro-recruit-lp .himeiro-tel-button{
        top:7px;
        right:calc(var(--nav-width) + 8px);
        width:56px;
        height:56px
    }
}

/* Logo frame background */
.himeiro-recruit-lp .himeiro-logo{
    inset:var(--window-padding) auto auto var(--window-padding);
    /*width:397px;
    height:166px;*/
    margin:0;
    isolation:isolate
}
.himeiro-recruit-lp .himeiro-logo-link{
    position:absolute;
    z-index:2;
    inset:0 auto auto 0;
    display:flex;
    justify-content:flex-start;
    align-items:flex-start;
    width:245px;
    height:92px;
    padding:22px 0 0 32px;
    background:transparent;
    border:0;
    border-radius:0;
    box-shadow:none
}
.himeiro-recruit-lp .mizuho-logo-image{
    /*width:178px;*/
    max-width:100%;
    height:auto;
    margin:0
}
.himeiro-recruit-lp .mizuho-logo-bg{
    position:absolute;
    z-index:1;
    inset:0 auto auto 0;
    display:block;
    width:300px;
    height:130px;
    overflow:visible;
    pointer-events:none
}
.himeiro-recruit-lp .mizuho-logo-bg-inner{
    display:block;
    width:100%;
    height:100%;
    background:url("./img/index/bg_logo.png") left top/100% 100% no-repeat!important;
    border:0;
    border-radius:0;
    transform:none!important
}
@media screen and (max-width:1023.98px){
    .himeiro-recruit-lp .himeiro-logo{
        position:absolute;
        inset:var(--window-padding) auto auto var(--window-padding);
        width:210px;
        height:88px
    }
    .himeiro-recruit-lp .himeiro-logo-link{
        /*width:145px;
        height:56px;*/
        padding:12px 0 0 16px
    }
    .himeiro-recruit-lp .mizuho-logo-image{
        width:150px
    }
    .himeiro-recruit-lp .mizuho-logo-bg{
        width:210px;
        height:88px
    }
}

/* Restore index-card image height */
.himeiro-recruit-lp .himeiro-card-list .home-contents-index-link{
    min-height:126px
}
.himeiro-recruit-lp .himeiro-card-list .home-contents-index-link .thumbnail-wrapper{
    aspect-ratio:710/400;
    height:auto
}
.himeiro-recruit-lp .himeiro-culture-index .home-contents-index-link .thumbnail-wrapper{
    aspect-ratio:710/400;
    height:auto
}
@media screen and (max-width:1023.98px){
    .himeiro-recruit-lp .himeiro-card-list .home-contents-index-link{
        min-height:126px
    }
    .himeiro-recruit-lp .himeiro-card-list .home-contents-index-link .thumbnail-wrapper{
        aspect-ratio:710/400;
        height:auto
    }
    .himeiro-recruit-lp .himeiro-culture-index .home-contents-index-link .thumbnail-wrapper{
        aspect-ratio:710/400;
        height:auto
    }
}

/* Hamburger menu requested colors */
.himeiro-recruit-lp .nav-list .nav-link[href="#top"]{
    color:var(--color--rd)!important
}
.himeiro-recruit-lp .nav-list .nav-link[href="#contact"]{
    /*color:var(--color--br)!important*/
    color:var(--color--rd)!important
}
@media (hover:hover){
    .himeiro-recruit-lp .nav-link:where(:-moz-any-link,:enabled,summary):hover .nav-label-ja,
    .himeiro-recruit-lp .nav-link:where(:any-link,:enabled,summary):hover .nav-label-ja,
    .himeiro-recruit-lp .nav-link:where(:-moz-any-link,:enabled,summary):hover .nav-label-en,
    .himeiro-recruit-lp .nav-link:where(:any-link,:enabled,summary):hover .nav-label-en{
        text-decoration:none!important
    }
}
