@charset "UTF-8";
*,::after,::before {
    box-sizing:border-box
}
dd,dl,dt,figure,h1,h2,h3,h4,h5,h6,li,ol,p,td,th,ul {
    margin:0;
    padding:0
}
dt,h1,h2,h3,h4,h5,h6,th {
    font-weight:inherit
}
article,aside,figcaption,figure,footer,header,main,nav,section {
    display:block
}
ol[role=list],ul[role=list] {
    list-style:none
}
body {
    margin:0;
    box-sizing:border-box;
    text-rendering:optimizeSpeed
}
picture {
    max-width:100%
}
img {
    max-width:100%;
    height:auto;
    border-style:none;
    vertical-align:bottom
}
button,input,select,textarea {
    font:inherit;
    color:inherit
}
svg:not(:root) {
    overflow:hidden
}
a {
    outline:0;
    text-decoration:none;
    color:inherit;
    background-color:transparent;
    -webkit-text-decoration-skip:objects
}
a:not([class]) {
    text-decoration-skip-ink:auto
}
li {
    list-style:none
}
b,strong {
    font-weight:inherit
}
button,input,optgroup,select,textarea {
    font-family:inherit;
    appearance:none;
    -webkit-appearance:none;
    background:0 0;
    border:none;
    outline:0;
    margin:0;
    padding:0
}
input[type=checkbox],input[type=radio] {
    opacity:0;
    width:0;
    height:0;
    position:absolute
}
button,input {
    overflow:visible
}
button::-moz-focus-inner,input::-moz-focus-inner {
    border:0;
    padding:0
}
button:-moz-focusring,input:-moz-focusring {
    outline:1px dotted ButtonText
}
button,select {
    cursor:pointer;
    text-transform:none
}
[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner {
    border:none
}
select::-ms-expand {
    display:none
}
table {
    border-collapse:collapse;
    border-spacing:0
}
:root {
    --basecolor-black01:#000;
    --basecolor-black02:#363636;
    --basecolor-gray01:#F5F5F5;
    --basecolor-gray02:#D9D9D9;
    --basecolor-gray03:#7e7e7e;
    --basecolor-red01:#E7342C;
    --basecolor-red02:#FEF4F4;
    --basecolor-blue01:#0066C0;
    --pc-min-width:1200px;
    --text-base-size:16px;
    --heading-lv2:28px;
    --heading-lv3:20px
    --base-font: "游ゴシック", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", verdana, "メイリオ", "Meiryo", "Osaka", sans-serif;
}
.__accordion-target {
    overflow:hidden;
    position:relative
}
.__accordion-target[aria-hidden=true] {
    height:0
}
.__accordion-target[aria-hidden=false] {
    z-index:1
}
html {
    -webkit-text-size-adjust:100%
}

.wf-active body:after,.wf-inactive body:after {
    width:0;
    opacity:0;
    transition:width 0s,opacity 1s;
    transition-delay:1s,0s
}
body._preload * {
    transition:none!important
}
/*
body:after {
    content:"";
    display:block;
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background-color:#fff;
    pointer-events:none;
    z-index:100000000
}
*/



img:not(._text) {
    display:block
}
main {
    position:relative
}
p+p {
    margin-top:1em
}
.__accordion-target {
    overflow:hidden;
    position:relative
}
.__accordion-target[aria-hidden=true] {
    height:0
}
.__accordion-target[aria-hidden=false] {
    z-index:1
}
._hidden {
    display:none!important
}
:root {
    --pc-contents-width1200:1200px
}
:root {
    --pc-contents-width1000:1000px
}
:root {
    --pc-contents-width800:800px
}
:root {
    --pc-contents-width700:700px
}
:root {
    --sp-contents-padding20:20px
}
:root {
    --sp-contents-padding36:36px
}
._lc-1 {
    display:-webkit-box;
    -webkit-box-orient:vertical;
    text-align:justify;
    overflow:hidden;
    -webkit-line-clamp:1
}
._lc-2 {
    display:-webkit-box;
    -webkit-box-orient:vertical;
    text-align:justify;
    overflow:hidden;
    -webkit-line-clamp:2
}
._lc-3 {
    display:-webkit-box;
    -webkit-box-orient:vertical;
    text-align:justify;
    overflow:hidden;
    -webkit-line-clamp:3
}
._lh-1 {
    line-height:1
}
._t-justify {
    text-align-last:left;
    text-align:justify;
    text-justify:inter-ideograph
}
._t-last-justify {
    text-align-last:justify
}
._t-center {
    text-align:center
}
._t-center picture>img,._t-center>img {
    display:inline-block
}
._t-right {
    text-align:right
}
._t-right picture>img,._t-right>img {
    display:inline-block
}
._t-underline {
    text-decoration:underline
}
._bg-black01 {
    color:#fff;
    background-color:var(--basecolor-black02)!important
}
._bg-gray01 {
    background-color:var(--basecolor-gray01)!important
}
._bg-red01 {
    background-color:var(--basecolor-red02)!important
}
._bg-cover {
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat
}
._bg-contain {
    background-size:coutain;
    background-position:center;
    background-repeat:no-repeat
}
._of-cover {
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    font-family:"object-fit: cover;
    "
}
._of-contain {
    display:block;
    width:100%;
    height:100%;
    object-fit:contain;
    font-family:"object-fit: contain;
    "
}
._color-white {
    color:#fff
}
._color-black {
    color:var(--basecolor-black01)!important
}
._color-red01 {
    color:var(--basecolor-red01)!important
}
._color-blue01 {
    color:var(--basecolor-blue01)!important
}
._wb-break {
    word-break:break-all
}
._f-black {
    font-weight:900!important
}
._f-bold {
    font-weight:700!important
}
._f-bolder {
    font-weight:600!important
}
._f-medium {
    font-weight:500!important
}
._f-regular {
    font-weight:400!important
}
._f-km {
    font-family:"Kosugi Maru",sans-serif;
    font-weight:400
}
._flex {
    display:flex!important
}
._flex-j-between {
    justify-content:space-between!important
}
._flex-j-start {
    justify-content:flex-start!important
}
._flex-j-center {
    justify-content:center!important
}
._flex-j-end {
    justify-content:flex-end!important
}
._flex-a-start {
    align-items:flex-start!important
}
._flex-a-center {
    align-items:center!important
}
._flex-a-end {
    align-items:flex-end!important
}
._flex-d-column {
    flex-direction:column!important
}
._flex-d-row {
    flex-direction:row!important
}
._bd-bottom01 {
    border-bottom:1px solid var(--basecolor-gray02)
}
._bd-top01 {
    border-top:1px solid var(--basecolor-gray02)
}
._ico-tb01 {
    display:inline-block;
    border:1px solid;
    width:10px;
    height:8px;
    position:relative
}
._ico-tb01:after {
    content:"";
    display:block;
    border-right:1px solid;
    border-bottom:1px solid;
    width:calc(100% + 2px);
    height:calc(100% + 2px);
    position:absolute;
    right:-3px;
    bottom:-3px
}
._ico-plus {
    display:inline-block;
    position:relative;
    width:.9em;
    height:.9em
}
._ico-plus:after,._ico-plus:before {
    content:"";
    margin:auto;
    border-radius:100px;
    position:absolute;
    top:0;
    left:0;
    bottom:0;
    right:0;
    transition-property:transform;
    transition-duration:.5s;
    transition-delay:0s;
    transition-timing-function:cubic-bezier(.455,.03,.515,.955)
}
._ico-plus:before {
    width:100%;
    height:0;
    border-bottom:2px solid
}
._ico-plus:after {
    width:0;
    height:100%;
    border-right:2px solid
}
[aria-expanded=true] ._ico-plus:before {
    transform:rotate(180deg)
}
[aria-expanded=true] ._ico-plus:after {
    transform:rotate(90deg)
}
._mt-0,.mt-0 {
    margin-top:0!important
}
._mb-0,.mb-0 {
    margin-bottom:0!important
}
._pt-0,.pt-0 {
    padding-top:0!important
}
._pb-0,.pb-0 {
    padding-bottom:0!important
}
._mt-10,.mt-10 {
    margin-top:10px!important
}
._mb-10,.mb-10 {
    margin-bottom:10px!important
}
._pt-10,.pt-10 {
    padding-top:10px!important
}
._pb-10,.pb-10 {
    padding-bottom:10px!important
}
._mt-20,.mt-20 {
    margin-top:20px!important
}
._mb-20,.mb-20 {
    margin-bottom:20px!important
}
._pt-20,.pt-20 {
    padding-top:20px!important
}
._pb-20,.pb-20 {
    padding-bottom:20px!important
}
._mt-30,.mt-30 {
    margin-top:30px!important
}
._mb-30,.mb-30 {
    margin-bottom:30px!important
}
._pt-30,.pt-30 {
    padding-top:30px!important
}
._pb-30,.pb-30 {
    padding-bottom:30px!important
}
._mt-40,.mt-40 {
    margin-top:40px!important
}
._mb-40,.mb-40 {
    margin-bottom:40px!important
}
._pt-40,.pt-40 {
    padding-top:40px!important
}
._pb-40,.pb-40 {
    padding-bottom:40px!important
}
._mt-50,.mt-50 {
    margin-top:50px!important
}
._mb-50,.mb-50 {
    margin-bottom:50px!important
}
._pt-50,.pt-50 {
    padding-top:50px!important
}
._pb-50,.pb-50 {
    padding-bottom:50px!important
}
._mt-60,.mt-60 {
    margin-top:60px!important
}
._mb-60,.mb-60 {
    margin-bottom:60px!important
}
._pt-60,.pt-60 {
    padding-top:60px!important
}
._pb-60,.pb-60 {
    padding-bottom:60px!important
}
._mt-70,.mt-70 {
    margin-top:70px!important
}
._mb-70,.mb-70 {
    margin-bottom:70px!important
}
._pt-70,.pt-70 {
    padding-top:70px!important
}
._pb-70,.pb-70 {
    padding-bottom:70px!important
}
._mt-80,.mt-80 {
    margin-top:80px!important
}
._mb-80,.mb-80 {
    margin-bottom:80px!important
}
._pt-80,.pt-80 {
    padding-top:80px!important
}
._pb-80,.pb-80 {
    padding-bottom:80px!important
}
._mt-90,.mt-90 {
    margin-top:90px!important
}
._mb-90,.mb-90 {
    margin-bottom:90px!important
}
._pt-90,.pt-90 {
    padding-top:90px!important
}
._pb-90,.pb-90 {
    padding-bottom:90px!important
}
._mt-100,.mt-100 {
    margin-top:100px!important
}
._mb-100,.mb-100 {
    margin-bottom:100px!important
}
._pt-100,.pt-100 {
    padding-top:100px!important
}
._pb-100,.pb-100 {
    padding-bottom:100px!important
}
._mt-110,.mt-110 {
    margin-top:110px!important
}
._mb-110,.mb-110 {
    margin-bottom:110px!important
}
._pt-110,.pt-110 {
    padding-top:110px!important
}
._pb-110,.pb-110 {
    padding-bottom:110px!important
}
._mt-120,.mt-120 {
    margin-top:120px!important
}
._mb-120,.mb-120 {
    margin-bottom:120px!important
}
._pt-120,.pt-120 {
    padding-top:120px!important
}
._pb-120,.pb-120 {
    padding-bottom:120px!important
}
._mt-130,.mt-130 {
    margin-top:130px!important
}
._mb-130,.mb-130 {
    margin-bottom:130px!important
}
._pt-130,.pt-130 {
    padding-top:130px!important
}
._pb-130,.pb-130 {
    padding-bottom:130px!important
}
._mt-140,.mt-140 {
    margin-top:140px!important
}
._mb-140,.mb-140 {
    margin-bottom:140px!important
}
._pt-140,.pt-140 {
    padding-top:140px!important
}
._pb-140,.pb-140 {
    padding-bottom:140px!important
}
._mt-150,.mt-150 {
    margin-top:150px!important
}
._mb-150,.mb-150 {
    margin-bottom:150px!important
}
._pt-150,.pt-150 {
    padding-top:150px!important
}
._pb-150,.pb-150 {
    padding-bottom:150px!important
}
._mt-160,.mt-160 {
    margin-top:160px!important
}
._mb-160,.mb-160 {
    margin-bottom:160px!important
}
._pt-160,.pt-160 {
    padding-top:160px!important
}
._pb-160,.pb-160 {
    padding-bottom:160px!important
}
._mt-170,.mt-170 {
    margin-top:170px!important
}
._mb-170,.mb-170 {
    margin-bottom:170px!important
}
._pt-170,.pt-170 {
    padding-top:170px!important
}
._pb-170,.pb-170 {
    padding-bottom:170px!important
}
._mt-180,.mt-180 {
    margin-top:180px!important
}
._mb-180,.mb-180 {
    margin-bottom:180px!important
}
._pt-180,.pt-180 {
    padding-top:180px!important
}
._pb-180,.pb-180 {
    padding-bottom:180px!important
}
._mt-190,.mt-190 {
    margin-top:190px!important
}
._mb-190,.mb-190 {
    margin-bottom:190px!important
}
._pt-190,.pt-190 {
    padding-top:190px!important
}
._pb-190,.pb-190 {
    padding-bottom:190px!important
}
._mt-200,.mt-200 {
    margin-top:200px!important
}
._mb-200,.mb-200 {
    margin-bottom:200px!important
}
._pt-200,.pt-200 {
    padding-top:200px!important
}
._pb-200,.pb-200 {
    padding-bottom:200px!important
}
._w-100per {
    width:100%
}
.cmp-heading2_type01 {
    margin-bottom:28px;
    padding-bottom:28px;
    line-height:1;
    position:relative
}
.cmp-heading2_type01:after {
    content:"";
    display:block;
    width:80px;
    height:25px;
    background-image:url(/assets/images/common/heading-decoration.svg);
    background-size:100% auto;
    background-repeat:no-repeat;
    position:absolute;
    left:-20px;
    bottom:0
}
.cmp-heading2_type01>span {
    display:block
}
.cmp-heading2_type01 .h2-jp {
    font-size:14px;
    letter-spacing:.1em;
    font-family:"Kosugi Maru",sans-serif;
    font-weight:400
}
.cmp-heading2_type01 .h2-en {
    margin-top:20px
}
.cmp-heading2_type01 .h2-en img {
    width:auto;
    height:48px
}
.cmp-heading2_type02 {
    padding-top:110px;
    margin-bottom:32px;
    text-align:center;
    font-family:"Kosugi Maru",sans-serif;
    font-weight:400;
    font-size:var(--heading-lv2);
    letter-spacing:.1em;
    line-height:1.6
}
.cmp-heading2_type02:first-child {
    margin-top:-110px
}
.cmp-heading2_type02:after {
    content:"";
    display:block;
    margin:12px auto 0;
    border-bottom:3px solid var(--basecolor-red01);
    width:50px
}
.cmp-heading3_type01 {
    font-size:var(--heading-lv3);
    font-weight:700;
    line-height:1.6;
    letter-spacing:.05em
}
.cmp-heading3_type01:not(:first-child) {
    margin-top:48px
}
.cmp-heading3_type01:not(:last-child) {
    margin-bottom:20px
}
.cmp-heading3_type01._number {
    display:flex
}
.cmp-heading3_type01._number>.number {
    flex-shrink:0;
    margin-right:.4em
}
.cmp-heading3_type01._sdgs {
    display:flex;
    align-items:center
}
.cmp-heading3_type01._sdgs>img {
    margin-right:20px;
    flex-shrink:0;
    width:60px
}
.cmp-heading3_type02 {
    letter-spacing:.05em;
    padding-bottom:12px;
    margin-bottom:16px;
    font-family:"Kosugi Maru",sans-serif;
    font-weight:400;
    font-size:var(--heading-lv3);
    line-height:1.6;
    letter-spacing:.08;
    position:relative
}
.cmp-heading3_type02:not(:first-child) {
    margin-top:32px
}
.cmp-heading3_type02:after {
    content:"";
    display:block;
    border-bottom:2px solid var(--basecolor-red01);
    width:30px;
    position:absolute;
    bottom:0;
    left:0
}
p+.cmp-heading4_type01 {
    margin-top:16px
}
.cmp-heading4_type02 {
    margin-bottom:8px;
    font-size:18px;
    font-weight:700;
    letter-spacing:.03em;
    line-height:1.6
}
.cmp-heading4_type02:not(:first-child) {
    margin-top:28px
}
:not([class*=cmp-text])+[class*=cmp-text] {
    margin-top:28px
}
.cmp-text01 {
    font-size:var(--text-base-size);
    font-weight:500;
    line-height:1.875;
    letter-spacing:.03em
}
.cmp-text01:not([class*=_t-]) {
    text-align-last:left;
    text-align:justify;
    text-justify:inter-ideograph
}
.cmp-text02 {
    font-size:14px;
    letter-spacing:.03em;
    line-height:1.6
}
.cmp-caution {
    margin-top:12px
}
.cmp-caution>li {
    display:flex;
    position:relative;
    font-size:11px;
    letter-spacing:.03em
}
.cmp-caution>li+li {
    margin-top:.2em
}
.cmp-caution>li .asterisk {
    margin-right:.2em;
    flex-shrink:0
}
:not([class*=cmp-heading])+.cmp-ul01 {
    margin-top:28px
}
.cmp-ul01>li {
    position:relative;
    text-indent:-1em;
    padding-left:1em
}
.cmp-ul01>li+li {
    margin-top:.2em
}
.cmp-ul01>li:before {
    content:"・"
}
.cmp-ol01 {
    font-weight:700
}
*+.cmp-ol01 {
    margin-top:28px
}
.cmp-ol01>li {
    display:flex;
    position:relative;
    letter-spacing:.03em
}
.cmp-ol01>li+li {
    margin-top:.5em
}
.cmp-ol01>li .number {
    margin-right:1em
}
*+.cmp-ol02 {
    margin-top:28px
}
.cmp-ol02>li {
    display:flex;
    position:relative
}
.cmp-ol02>li+li {
    margin-top:.2em
}
.cmp-ol02>li .number {
    margin-right:.2em
}
.cmp-textlink01 {
    color:var(--basecolor-blue01)
}
.cmp-textlink01._arrow01 {
    padding-right:12px;
    position:relative
}
.cmp-textlink01._arrow01:after {
    content:"";
    display:block;
    width:8px;
    height:8px;
    position:absolute;
    transform:rotate(45deg);
    transition-property:transform;
    transition-duration:.5s;
    transition-delay:0s;
    transition-timing-function:cubic-bezier(.455,.03,.515,.955)
}
.cmp-textlink01._arrow01:after {
    border-top:1px solid;
    border-right:1px solid
}
.cmp-textlink01._arrow01:after {
    right:2px;
    top:calc(50% - .3em)
}
.cmp-textlink01._arrow01>span {
    border-bottom:1px solid
}
*+.cmp-buttons_wrap01 {
    margin-top:50px
}
.cmp-buttons_wrap01+[class*=cmp-] {
    margin-top:60px
}
*+.cmp-buttons_wrap02 {
    margin-top:16px
}
.cmp-buttons_wrap02+[class*=cmp-] {
    margin-top:28px
}
.cmp-button_type01 {
    background-color:var(--basecolor-red01);
    color:#fff;
    display:inline-flex;
    justify-content:center;
    align-items:center;
    border-radius:100px;
    padding:0 20px;
    min-width:320px;
    max-width:100%;
    height:60px;
    font-weight:700;
    position:relative
}
.cmp-button_type01._min {
    min-width:230px;
    height:40px
}
.cmp-button_type01[disabled] {
    background-color:var(--basecolor-gray03);
    cursor:not-allowed
}
.cmp-button_type02 {
    border:1px solid;
    color:var(--basecolor-red01);
    background-color:#fff;
    display:inline-flex;
    justify-content:center;
    align-items:center;
    border-radius:100px;
    padding:0 20px;
    min-width:320px;
    max-width:100%;
    height:60px;
    font-weight:700;
    position:relative
}
.cmp-button_type02._min {
    min-width:230px;
    height:40px
}
.cmp-button_type02[disabled] {
    background-color:var(--basecolor-gray03);
    cursor:not-allowed
}
.cmp-button_type03 {
    border:1px solid;
    background-color:var(--basecolor-gray03);
    color:#fff;
    display:inline-flex;
    justify-content:center;
    align-items:center;
    border-radius:100px;
    padding:0 20px;
    min-width:320px;
    max-width:100%;
    height:60px;
    font-weight:700;
    position:relative
}
.cmp-button_type03._min {
    min-width:230px;
    height:40px
}
.cmp-button_type03[disabled] {
    background-color:var(--basecolor-gray03);
    cursor:not-allowed
}
[class*=cmp-section] {
    overflow:hidden
}
.page_container>[class*=cmp-section]:last-child {
    padding-bottom:140px
}
.cmp-section_lv1 {
    padding-top:40px;
    padding-bottom:40px
}
.cmp-section_lv2 {
    padding-top:60px;
    padding-bottom:60px
}
.cmp-section_lv3 {
    padding-top:110px;
    margin-top:-30px;
    padding-bottom:80px
}
:not(.cmp-sbs_type01)+.cmp-sbs_type01 {
    margin-top:28px
}
.cmp-sbs_type01+.cmp-sbs_type01 {
    margin-top:60px
}
.cmp-sbs_type01>img,.cmp-sbs_type01>picture>img {
    border-radius:20px
}
.cmp-sbs_type02 {
    background-color:var(--basecolor-gray01);
    padding:28px 40px
}
.cmp-heading3_type01+.cmp-sbs_type02 {
    margin-top:-12px
}
*+[class*=cmp-column] {
    margin-top:28px
}
[class*=cmp-column] .column-item {
    display:block
}
[class*=cmp-column] .item-img {
    border-radius:20px;
    overflow:hidden;
    position:relative
}
[class*=cmp-column] .item-img img {
    border-radius:20px
}
[class*=cmp-column] .item-img .cmp-heading3_type01 {
    display:flex;
    justify-content:center;
    align-items:center;
    width:100%;
    height:100%;
    color:#fff;
    font-weight:700;
    background-color:rgba(0,0,0,.5);
    position:absolute;
    top:0;
    left:0;
    transition-property:background-color;
    transition-duration:.5s;
    transition-delay:0s;
    transition-timing-function:cubic-bezier(.455,.03,.515,.955)
}
[class*=cmp-column]._link .column-item[href] .item-img:after {
    content:"";
    display:block;
    width:40px;
    height:40px;
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
    background-image:url(/assets/images/common/arrow-right01.svg);
    position:absolute;
    right:10px;
    bottom:10px
}
[class*=cmp-column]._interview .column-item[href] .item-text .cmp-heading3_type01 {
    color:var(--basecolor-blue01);
    text-decoration:underline
}
[class*=cmp-column-1] .item-text:not(:first-child) {
    padding-top:40px
}
.cmp-column-2_type01 .column-item>.cmp-heading3_type01 {
    padding-bottom:12px;
    border-bottom:1px solid var(--basecolor-gray02)
}
.cmp-column-2_type01 .column-item .item-img {
    border-radius:0;
    position:relative
}
.cmp-column-2_type01 .column-item .item-img img {
    border-radius:0
}
.cmp-column-2_type01 .column-item .item-img .img-annotation {
    font-size:14px;
    position:absolute;
    top:0;
    left:0
}
.cmp-column-2_type02 .column-item {
    border-radius:20px;
    border:2px solid var(--basecolor-gray02);
    overflow:hidden
}
.cmp-column-2_type02 .item-heading {
    display:flex;
    align-items:center;
    padding:16px 24px;
    background-color:var(--basecolor-red02)
}
.cmp-column-2_type02 .item-heading .cmp-heading3_type01 {
    margin-bottom:0
}
.cmp-column-2_type02 .item-contents {
    padding:24px
}
.cmp-column-2_type02 .column-item {
    padding-bottom:20px
}
.cmp-column-2_type02 .contents-img img {
    margin:0 auto
}
.cmp-column-2_type02 .contents-plans {
    margin-top:28px;
    display:flex;
    flex-wrap:wrap;
    margin-left:-5px;
    margin-right:-5px;
    margin-bottom:-10px
}
.cmp-column-2_type02 .contents-plans>* {
    margin:0 5px 10px;
    width:calc(100% / 2 - 10px)
}
.cmp-column-2_type02 .contents-plans .plan {
    border-radius:4px;
    padding:8px 0;
    background-color:var(--basecolor-red01);
    color:#fff;
    font-size:14px;
    font-weight:700;
    line-height:1.6;
    text-align:center
}
.cmp-column-2_type02 .cmp-heading4_type01 {
    margin-top:16px
}
[class*=cmp-column-3] .item-text:not(:first-child) {
    padding-top:12px
}
[class*=cmp-column-3] .item-text .cmp-heading3_type01 {
    margin-bottom:8px
}
.cmp-column-3_type02 .column-item {
    border-radius:20px;
    background-color:#fff;
    box-shadow:0 2px 10px rgba(231,52,44,.07);
    overflow:hidden
}
.cmp-column-3_type02 .column-item .cmp-heading3_type01 {
    border-radius:0 0 20px 0;
    display:inline-flex;
    align-items:center;
    padding:0 16px;
    height:50px;
    color:#fff;
    background-color:var(--basecolor-red01)
}
.cmp-column-3_type02 .column-item>p {
    padding:0 40px 28px
}
.cmp-column-3_type03 .column-item .cmp-heading3_type01 {
    display:flex;
    justify-content:center;
    align-items:center;
    border-radius:10px;
    background-color:var(--basecolor-red02);
    text-align:center;
    height:50px
}
.cmp-column-3_type04 .column-item {
    border-radius:20px;
    border:2px solid var(--basecolor-gray02);
    overflow:hidden
}
.cmp-column-3_type04 .item-heading {
    display:flex;
    align-items:center;
    padding:16px 24px;
    background-color:var(--basecolor-red02)
}
.cmp-column-3_type04 .item-heading .cmp-heading3_type01 {
    margin-bottom:0
}
.cmp-column-3_type04 .item-contents {
    padding:24px
}
.cmp-column-3_type05 .item-img .cmp-heading3_type01 {
    border-radius:0 0 20px 0;
    display:inline-flex;
    align-items:center;
    padding:0 16px;
    width:auto;
    height:50px;
    color:#fff;
    background-color:var(--basecolor-red01);
    position:absolute;
    top:0;
    left:0
}
.cmp-column-3_type05 .item-contents .cmp-heading4_type01 {
    margin-top:16px;
    margin-bottom:8px
}
.cmp-column-3_type05 .item-contents>._bg-gray01 {
    border-radius:4px;
    padding:12px 16px;
    font-size:14px;
    line-height:1.6
}
.cmp-column-3_type05 .item-contents .contents-areas {
    display:flex;
    flex-wrap:wrap;
    margin-left:-5px;
    margin-right:-5px;
    margin-bottom:-10px
}
.cmp-column-3_type05 .item-contents .contents-areas>* {
    margin:0 5px 10px;
    width:calc(100% / 2 - 10px)
}
.cmp-column-3_type05 .item-contents .contents-areas .area {
    border-radius:4px;
    padding:4px 0;
    background-color:var(--basecolor-gray01);
    font-size:14px;
    line-height:1.6;
    text-align:center
}
.cmp-column-3_type05 .item-contents .cmp-ul01._flex {
    flex-wrap:wrap
}
.cmp-column-3_type05 .item-contents .cmp-ul01._flex._row2>li {
    margin-top:0;
    width:50%
}
.cmp-column-3_type05 .item-contents .cmp-ul01._flex._row2>li:not(:nth-child(-n+2)) {
    margin-top:.2em
}
.cmp-column-3_type05 .item-contents .cmp-ul01._flex._row3>li {
    margin-top:0;
    width:33.3333333333%
}
.cmp-column-3_type05 .item-contents .cmp-ul01._flex._row3>li:not(:nth-child(-n+3)) {
    margin-top:.2em
}
*+.cmp-service01 {
    margin-top:60px
}
.cmp-service01 .link {
    display:flex;
    align-items:center;
    border-radius:8px;
    padding-left:20px;
    padding-right:40px;
    height:120px;
    font-size:18px;
    font-weight:700;
    line-height:1.6;
    letter-spacing:.03em;
    background-color:#fff;
    box-shadow:0 2px 10px rgba(231,52,44,.07);
    position:relative
}
.cmp-service01 .link:after {
    content:"";
    display:block;
    width:8px;
    height:8px;
    position:absolute;
    transform:rotate(45deg);
    transition-property:transform;
    transition-duration:.5s;
    transition-delay:0s;
    transition-timing-function:cubic-bezier(.455,.03,.515,.955)
}
.cmp-service01 .link:after {
    border-top:1px solid;
    border-right:1px solid
}
.cmp-service01 .link:after {
    border-top:2px solid var(--basecolor-red01);
    border-right:2px solid var(--basecolor-red01);
    right:24px
}
.cmp-service01 .link>img {
    flex-shrink:0;
    width:90px
}
.cmp-service01 .link>span {
    margin-left:12px
}
.cmp-service02 {
    border-radius:20px;
    padding:30px 80px;
    font-size:18px;
    font-weight:700;
    line-height:1.6;
    background-color:#fff;
    box-shadow:0 2px 10px rgba(231,52,44,.07)
}
.cmp-service02 .service-link .link {
    display:flex;
    align-items:center
}
.cmp-service02 .service-link .link>img {
    flex-shrink:0;
    width:90px
}
.cmp-service02 .service-link .link>span {
    margin-left:12px
}
*+.cmp-partner-links {
    margin-top:28px
}
.cmp-partner-links .partner-link>p {
    margin-top:12px
}
.cmp-partner-links .link {
    display:flex;
    justify-content:center;
    align-items:center;
    height:100px;
    background-color:#fff
}
.cmp-partner-links .link>img {
    width:auto;
    height:100%
}
.cmp-partner-links .link.kepco>img {
    max-height:63px;
}
.cmp-news-links {
    border-top:1px solid var(--basecolor-gray02)
}
*+.cmp-news-links {
    margin-top:28px
}
.cmp-news-links .link {
    border-bottom:1px solid var(--basecolor-gray02);
    display:flex;
    align-items:flex-start;
    padding:24px 0
}
.cmp-news-links .link-date {
    flex-shrink:0;
    font-size:13px;
    line-height:calc(var(--text-base-size) * 1.875)
}
.cmp-news-links .link-date+* {
    margin-left:24px
}
.cmp-news-links .link-category {
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    border-radius:4px;
    border:1px solid;
    font-size:12px;
    width:120px;
    min-height:calc(var(--text-base-size) * 1.875)
}
.cmp-news-links .link-category:not([class*=_color]) {
    border-color:var(--basecolor-gray02)
}
.cmp-news-links .link-contents .content,.cmp-news-links .link-contents>a {
    display:block
}
.cmp-news-links .link-contents .content._pdf:after,.cmp-news-links .link-contents>a._pdf:after {
    content:"";
    display:inline-block;
    margin-left:10px;
    width:17px;
    height:22px;
    vertical-align:-22%;
    background-size:contain;
    background-position:center;
    background-repeat:no-repeat;
    background-image:url(/assets/images/common/icon-pdf.svg)
}
.cmp-news-contact{text-align:center;padding:50px 0 0 0;}
.cmp-news-contact br{display:none;}
.cmp-archive-links .links_inner {
    display:flex;
    flex-wrap:wrap;
    margin:0 -5px -10px
}
.cmp-archive-links .link {
    margin-left:auto;
    height:40px
}
.cmp-archive-links .link:not(._current) {
    color:var(--basecolor-gray03)
}
.cmp-archive-links .link>a {
    display:flex;
    align-items:center;
    border:1px solid;
    padding:0 28px 0 20px;
    border-radius:100px;
    line-height:1;
    width:100%;
    height:100%;
    position:relative
}
.cmp-archive-links .link>a:after {
    content:"";
    display:block;
    width:8px;
    height:8px;
    position:absolute;
    transform:rotate(45deg);
    transition-property:transform;
    transition-duration:.5s;
    transition-delay:0s;
    transition-timing-function:cubic-bezier(.455,.03,.515,.955)
}
.cmp-archive-links .link>a:after {
    border-top:1px solid;
    border-right:1px solid
}
.cmp-archive-links .link>a:after {
    right:20px
}
*+.cmp-flow01 {
    margin-top:28px
}
.cmp-flow01 .flow {
    padding-top:32px;
    padding-bottom:32px;
    background-color:var(--basecolor-gray01);
    position:relative
}
.cmp-flow01 .flow+.flow {
    margin-top:68px
}
.cmp-flow01 .flow+.flow:before {
    content:"";
    display:block;
    margin:0 auto;
    border-top:24px solid var(--basecolor-gray02);
    border-left:40px solid transparent;
    border-right:40px solid transparent;
    width:0;
    height:0;
    position:absolute;
    top:-46px;
    left:0;
    right:0
}
.cmp-flow01 .flow-heading {
    display:flex;
    justify-content:center
}
.cmp-flow01 .flow-heading+.cmp-buttons_wrap01 {
    margin-top:28px
}
.cmp-block01 {
    border-radius:20px;
    border:2px solid var(--basecolor-red01);
    padding:40px 40px 36px;
    position:relative
}
:not(.cmp-block01)+.cmp-block01 {
    margin-top:60px
}
.cmp-block01+.cmp-block01 {
    margin-top:60px
}
.cmp-block01 .block-heading {
    width:100%;
    font-size:18px;
    font-weight:700;
    letter-spacing:.1em;
    text-align:center;
    color:var(--basecolor-red01);
    line-height:1;
    position:absolute;
    top:-.5em;
    left:0
}
.cmp-block01 .block-heading>span {
    padding:0 20px;
    background-color:#fff
}
.cmp-block01 .block-heading+* {
    margin-top:0
}
.cmp-block02 {
    border-radius:20px;
    padding:20px;
    background-color:var(--basecolor-red02)
}
:not(.cmp-block02)+.cmp-block02 {
    margin-top:60px
}
.cmp-block02+.cmp-block02 {
    margin-top:28px
}
.cmp-block03+.cmp-block03 {
    margin-top:24px;
    border-top:1px solid var(--basecolor-gray02);
    padding-top:24px
}
.cmp-block04 {
    border:2px solid var(--basecolor-gray02);
    border-radius:20px;
    padding:20px
}
:not(.cmp-block04)+.cmp-block04 {
    margin-top:28px
}
.cmp-block04+.cmp-block04 {
    margin-top:28px
}
.cmp-block04>*+.cmp-ul01 {
    margin-top:16px
}
.cmp-table01 {
    border-top:1px solid var(--basecolor-gray02)
}
*+.cmp-table01 {
    margin-top:28px
}
.cmp-table01 .table-row {
    border-bottom:1px solid var(--basecolor-gray02);
    padding-top:40px;
    padding-bottom:40px
}
.cmp-table01 .row-heading {
    font-size:18px;
    letter-spacing:.03em;
    font-weight:700;
    color:var(--basecolor-red01)
}
.cmp-table01 .row-contents {
    padding-top:2px
}
*+.cmp-history01 {
    margin-top:28px
}
.cmp-history01 .history {
    padding-left:52px;
    position:relative
}
.cmp-history01 .history:not(:last-child) {
    padding-bottom:36px
}
.cmp-history01 .history:not(:last-child):before {
    content:"";
    display:block;
    height:100%;
    border-left:2px solid var(--basecolor-gray02);
    position:absolute;
    top:0;
    left:10px
}
.cmp-history01 .cmp-heading3_type01 {
    font-weight:700;
    line-height:1.3
}
.cmp-history01 .cmp-heading3_type01:before {
    content:"";
    display:block;
    width:24px;
    height:24px;
    background-image:url(/assets/images/common/history-point.svg);
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
    position:absolute;
    top:0;
    left:0
}
.cmp-iconlist01 {
    display:flex;
    flex-wrap:wrap;
    margin-left:-5px;
    margin-right:-5px;
    margin-bottom:-10px
}
*+.cmp-iconlist01 {
    margin-top:28px
}
.cmp-iconlist01>li {
    margin-left:5px;
    margin-right:5px;
    margin-bottom:10px
}
.cmp-iconlist01>li img {
    width:60px
}
:not(.cmp-faq01)+.cmp-faq01 {
    margin-top:28px
}
.cmp-faq01+.cmp-faq01 {
    margin-top:28px
}
.cmp-faq01 .faq-answer,.cmp-faq01 .faq-question {
    padding-left:120px;
    padding-right:30px;
    position:relative;
    transition-property:background-color;
    transition-duration:.5s;
    transition-delay:0s;
    transition-timing-function:cubic-bezier(.455,.03,.515,.955)
}
.cmp-faq01 .faq-answer:before,.cmp-faq01 .faq-question:before {
    display:flex;
    justify-content:center;
    align-items:center;
    width:70px;
    height:70px;
    font-size:28px;
    font-weight:700;
    letter-spacing:0;
    align-items:center;
    position:absolute;
    top:0;
    left:0
}
.cmp-faq01 .faq-question {
    display:flex;
    justify-content:space-between;
    padding-top:18px;
    padding-bottom:18px;
    min-height:70px;
    font-size:16px;
    letter-spacing:.08em;
    background-color:var(--basecolor-gray01)
}
.cmp-faq01 .faq-question:before {
    content:"Q";
    color:#fff;
    background-color:var(--basecolor-red01)
}
.cmp-faq01 .faq-question .cmp-heading3_type01 {
    margin:0;
    line-height:1.6
}
.cmp-faq01 .faq-answer {
    margin-top:10px;
    padding-top:20px;
    padding-bottom:40px
}
.cmp-faq01 .faq-answer:before {
    content:"A";
    color:var(--basecolor-red01)
}
.cmp-secondpage-header01 {
    position:relative
}
.cmp-secondpage-header01+[class*=_bg] {
    margin-top:80px
}
.cmp-secondpage-header01 .header-img {
    width:calc(50% + 300px);
    z-index:-1;
    position:relative
}
.cmp-secondpage-header01 .header-text {
    display:flex;
    align-items:center;
    background-color:#fff;
    border-radius:0 40px 0 0;
    padding-left:72px;
    padding-right:40px;
    min-width:400px;
    height:260px;
    line-height:1;
    position:absolute;
    bottom:0
}
.cmp-secondpage-header01 .header-text._wide {
    min-width:440px
}
.cmp-secondpage-header01 .text-heading {
    padding-bottom:32px;
    position:relative
}
.cmp-secondpage-header01 .text-heading:after {
    content:"";
    display:block;
    width:90px;
    height:28px;
    background-image:url(/assets/images/common/heading-decoration.svg);
    background-size:100% auto;
    background-repeat:no-repeat;
    position:absolute;
    left:-12px;
    bottom:0
}
.cmp-secondpage-header01 .text-heading>span {
    display:block
}
.cmp-secondpage-header01 .text-heading .heading-jp {
    font-family:"Kosugi Maru",sans-serif;
    font-weight:400;
    font-size:18px;
    letter-spacing:.1em
}
.cmp-secondpage-header01 .text-heading .heading-en {
    margin-top:16px
}
.cmp-secondpage-header01 .text-heading .heading-en img {
    width:auto;
    height:60px
}
.cmp-secondpage-header01 .text-heading .heading-en._row2 img {
    height:120px
}
.cmp-thirdpage-header01 {
    padding-top:50px;
    padding-bottom:50px;
    background-color:var(--basecolor-red02)
}
.cmp-thirdpage-header01 .header-heading {
    text-align:center;
    font-family:"Kosugi Maru",sans-serif;
    font-weight:400;
    font-size:28px;
    line-height:1.8;
    letter-spacing:.1em
}
.cmp-thirdpage-header01 .header-description {
    margin-top:20px
}
.cmp-navigation01 {
    overflow:hidden;
    margin-top:28px
}
.cmp-navigation01 .navigation-links {
    font-weight:700;
    font-size:18px;
    letter-spacing:.03em;
    line-height:1.6;
    color:var(--basecolor-red01)
}
.cmp-navigation01 .link {
    border-bottom:2px solid
}
.cmp-navigation01 .link>a {
    display:flex;
    justify-content:center;
    align-items:center;
    padding:10px 0
}
.cmp-navigation01 .link>a:after {
    content:"";
    flex-shrink:0;
    margin-left:20px;
    display:block;
    width:30px;
    height:30px;
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
    background-image:url(/assets/images/common/arrow-bottom01.svg)
}
.page_top .cmp-header:not(.__duplicate) .header-logo>a {
    height:200px
}
.cmp-header .header-logo {
    width:200px;
    height:100%;
    position:absolute;
    top:0;
    left:0
}
.cmp-header .header-logo>a {
    display:flex;
    align-items:center;
    justify-content:center;
    margin-top:-1px;
    height:calc(100% + 1px);
    background-color:var(--basecolor-red01)
}
.cmp-header .header-logo .logo-image img {
    height:auto
}
.cmp-header .navigation-main {
    line-height:1
}
.cmp-header .main-link>a,.cmp-header .main-link>button,.cmp-header .main-link>span {
    display:flex;
    align-items:center;
    position:relative
}
.cmp-header .link-sub_wrap {
    opacity:0;
    line-height:1.6
}
.cmp-header .link-sub_wrap .sub-link:not(.-parent)>a {
    padding-left:20px
}
.cmp-header .link-sub_wrap .sub-link:not(.-parent)>a:before {
    content:"";
    display:block;
    margin-top:calc(.8em - 2px);
    border-bottom:2px solid var(--basecolor-gray02);
    width:10px;
    position:absolute;
    left:0
}
.cmp-header .link-sub_wrap .sub-link>a {
    display:block;
    padding:14px 0;
    position:relative
}
.cmp-header .link-sub_wrap .sub-link>a:after {
    content:"";
    display:block;
    width:8px;
    height:8px;
    position:absolute;
    transform:rotate(45deg);
    transition-property:transform;
    transition-duration:.5s;
    transition-delay:0s;
    transition-timing-function:cubic-bezier(.455,.03,.515,.955)
}
.cmp-header .link-sub_wrap .sub-link>a:after {
    border-top:1px solid;
    border-right:1px solid
}
.cmp-header .link-sub_wrap .sub-link>a:after {
    margin:auto 0;
    right:0;
    top:0;
    bottom:0
}
.cmp-conversion-links {
    padding-top:32px;
    padding-bottom:40px;
    background-color:var(--basecolor-gray01);
    overflow:hidden
}
.cmp-conversion-links .link {
    display:flex;
    align-items:center;
    border-radius:8px;
    padding-left:40px;
    padding-right:100px;
    height:100px;
    font-size:18px;
    line-height:1.6;
    letter-spacing:.03em;
    background-color:#fff;
    background-position:calc(100% - 40px) center;
    background-repeat:no-repeat;
    box-shadow:0 2px 10px rgba(0,0,0,.07)
}
.cmp-conversion-links .link.-contact {
    background-image:url(/assets/images/common/icon-contact.svg)
}
.cmp-conversion-links .link.-download {
    background-image:url(/assets/images/common/icon-download.svg)
}
.cmp-footer .footer-sitemap {
    padding-top:40px;
    background-color:var(--basecolor-black02);
    color:#fff;
    overflow:hidden
}
.cmp-footer .first-logo>a {
    display:inline-block
}
.cmp-footer .first-links {
    margin-top:36px;
    font-weight:700
}
.cmp-footer .second-list_wrap .list-heading {
    font-weight:700
}
.cmp-footer .second-list_wrap .list-contents .content-link:not(._sp) {
    line-height:1.6
}
.cmp-footer .second-list_wrap .list-contents .content-link>a {
    display:inline-block;
    padding:2px 0
}
.cmp-footer .sitemap-bottom {
    padding-bottom:40px;
    color:var(basecolor-gray02)
}
.cmp-footer .bottom-links {
    font-size:12px;
    letter-spacing:.03em
}
.cmp-footer .bottom-copyright {
    font-size:10px;
    letter-spacing:.03em
}
.cmp-topicpath {
    height:50px
}
.cmp-topicpath .topicpath_inner {
    display:flex;
    align-items:center;
    height:100%;
    font-size:14px;
    letter-spacing:.03em;
    line-height:1;
    overflow-x:auto
}
.cmp-topicpath li {
    flex-shrink:0;
    position:relative
}
.cmp-topicpath li:not(:last-child) {
    margin-right:12px;
    padding-right:10px
}
.cmp-topicpath li:not(:last-child):after {
    content:"";
    display:block;
    border-top:1px solid;
    border-right:1px solid;
    width:6px;
    height:6px;
    position:absolute;
    top:4px;
    right:-3px;
    transform:rotate(45deg)
}
.cmp-topicpath li:not(:last-child) {
    color:var(--basecolor-gray03)
}
.cmp-topicpath li:last-child {
    padding-right:var(--sp-contents-padding20)
}
html:not(.__touchedevice) .cmp-topicpath li a:hover {
    text-decoration:underline
}
.cmp-pagetop {
    display:flex;
    justify-content:center;
    align-items:center;
    margin-top:-96px;
    margin-left:auto;
    width:96px;
    height:96px;
    position:sticky;
    bottom:0;
    z-index:100;
    filter:opacity(0);
    transform:translateY(100%);
    pointer-events:none;
    transition-property:filter,transform;
    transition-duration:.5s;
    transition-delay:0s;
    transition-timing-function:cubic-bezier(.455,.03,.515,.955);
    will-change:filter
}
.__scrolled .cmp-pagetop {
    filter:opacity(1);
    transform:translateY(0);
    pointer-events:auto
}
.cmp-form_block+.cmp-form_block {
    margin-top:40px
}
.cmp-form_block.-required.-complete>.cmp-heading3_type01:after {
    content:"済";
    width:calc(1.03em + 12px);
    background-color:var(--basecolor-blue01)
}
.cmp-form_block.-required>.cmp-heading3_type01 {
    position:relative
}
.cmp-form_block.-required>.cmp-heading3_type01:after {
    content:"必須";
    display:inline-flex;
    justify-content:center;
    margin-left:.5em;
    padding:6px;
    width:calc(2.06em + 12px);
    border-radius:4px;
    font-size:13px;
    line-height:1;
    letter-spacing:.03em;
    color:#fff;
    background-color:var(--basecolor-red01);
    vertical-align:28%;
    transition-property:"width,border-radius,background-color";
    transition-duration:.5s;
    transition-delay:0s;
    transition-timing-function:cubic-bezier(.455,.03,.515,.955);
    white-space:nowrap
}
.cmp-form_block .cmp-heading3_type01 {
    font-feature-settings:"palt"
}
.cmp-form-flex_wrap {
    display:flex
}
.cmp-form-flex_wrap>*+* {
    margin-left:40px
}
.cmp-form-insert_wrap {
    display:flex;
    align-items:center
}
.cmp-form-insert_wrap .insert {
    flex-shrink:0;
    margin-right:8px;
    min-width:32px
}
.cmp-form-caution {
    margin-top:16px;
    line-height:1.5
}
.cmp-form-attention-text {
    margin-top:8px;
    font-size:13px;
    color:#fc0303
}
:root {
    --fp-border-color:#909090;
    --fp-focus-color:#0364FF;
    --fp-error-bg-color:#FFD8D8;
    --fp-hover-color:#e5e5e6
}
._fp-email01,._fp-number01,._fp-tel01,._fp-text01,._fp-textarea01 {
    padding:12px 20px;
    width:100%;
    border:1px solid var(--fp-border-color);
    border-radius:4px
}
._fp-email01:-ms-input-placeholder, ._fp-number01:-ms-input-placeholder, ._fp-tel01:-ms-input-placeholder, ._fp-text01:-ms-input-placeholder, ._fp-textarea01:-ms-input-placeholder {
    color:var(--fp-border-color)
}
._fp-email01::placeholder,._fp-number01::placeholder,._fp-tel01::placeholder,._fp-text01::placeholder,._fp-textarea01::placeholder {
    color:var(--fp-border-color)
}
._fp-email01:focus,._fp-number01:focus,._fp-tel01:focus,._fp-text01:focus,._fp-textarea01:focus {
    border-color:var(--fp-focus-color)
}
.__error ._fp-email01,.__error ._fp-number01,.__error ._fp-tel01,.__error ._fp-text01,.__error ._fp-textarea01 {
    background-color:var(--fp-error-bg-color)
}
._fp-textarea01 {
    max-width:100%;
    line-height:1.8;
    min-height:calc(10.8em + 8px + 2px)
}
._fp-textarea01:focus {
    border-color:var(--fp-focus-color)
}
._fp-radio01_wrap {
    display:block
}
._fp-radio01 {
    display:block;
    width:fit-content;
    position:relative;
    font-feature-settings:"palt";
    cursor:pointer
}
._fp-radio01+._fp-radio01 {
    margin-top:10px
}
._fp-radio01 input[type=radio]:checked+span:after {
    opacity:1
}
._fp-radio01 input[type=radio]:focus+span:before {
    border-color:var(--fp-focus-color)
}
._fp-radio01 span {
    display:block;
    padding:calc(15px - .75em) 0 calc(15px - .75em) 52px;
    line-height:1.5;
    position:relative
}
._fp-radio01 span:after,._fp-radio01 span:before {
    content:"";
    display:block;
    border-radius:50%;
    position:absolute
}
._fp-radio01 span:before {
    border:1px solid var(--fp-border-color);
    width:30px;
    height:30px;
    top:0;
    left:0;
    transition-property:background-color,border-color;
    transition-duration:.5s;
    transition-delay:0s;
    transition-timing-function:cubic-bezier(.455,.03,.515,.955)
}
._fp-radio01 span:after {
    width:18px;
    height:18px;
    top:6px;
    left:6px;
    opacity:0;
    transition:opacity .5s;
    background-color:var(--basecolor-red01)
}
._fp-checkbox01 {
    display:block;
    width:fit-content;
    font-feature-settings:"palt";
    position:relative;
    cursor:pointer
}
._fp-checkbox01+._fp-checkbox01 {
    margin-top:10px
}
._fp-checkbox01>label {
    display:inline-block;
    cursor:pointer;
    vertical-align:middle
}
._fp-checkbox01>label>span {
    display:block;
    min-height:calc((15px - .75em) * 2 + 1.5em)
}
._fp-checkbox01>a {
    display:inline-block;
    vertical-align:middle;
    color:var(--basecolor-blue01);
    text-decoration:underline
}
._fp-checkbox01 input[type=checkbox]:checked+span:after {
    opacity:1
}
._fp-checkbox01 input[type=checkbox]:focus+span:before {
    border-color:var(--fp-focus-color)
}
._fp-checkbox01 span {
    display:block;
    padding:calc(15px - .75em) 0 calc(15px - .75em) 52px;
    line-height:1.5;
    position:relative
}
._fp-checkbox01 span:after,._fp-checkbox01 span:before {
    content:"";
    display:block;
    position:absolute
}
._fp-checkbox01 span:before {
    border-radius:4px;
    border:1px solid var(--fp-border-color);
    width:30px;
    height:30px;
    top:0;
    left:0;
    transition-property:background-color,border-color;
    transition-duration:.5s;
    transition-delay:0s;
    transition-timing-function:cubic-bezier(.455,.03,.515,.955)
}
._fp-checkbox01 span:after {
    margin:auto 0;
    border-right:4px solid var(--basecolor-red01);
    border-bottom:4px solid var(--basecolor-red01);
    width:12px;
    height:20px;
    top:0;
    bottom:6px;
    left:9px;
    opacity:0;
    transition:opacity .5s;
    transform:rotate(45deg)
}
.top-mainvisual {
    display:flex;
    align-items:flex-end;
    position:relative;
    height:680px;
    overflow:hidden
}
.top-mainvisual .mainvisual_inner {
    border-radius:0 20px 0 0;
    background-color:#fff;
    padding:72px 36px 0 100px;
    position:relative;
}
.top-mainvisual .mainvisual_inner .grandprix{
    position:absolute;top:-36%;left:14%;/*width:35vw;*/max-width:552px;display:block;
}
.top-mainvisual .mainvisual-heading {
    font-family:"Kosugi Maru",sans-serif;
    font-weight:400;
    font-size:50px;
    line-height:1.3;
    letter-spacing:.14em;
    color:var(--basecolor-red01)
}
.top-mainvisual .mainvisual-heading>small {
    font-size:42px
}
.top-mainvisual .mainvisual-catch {
    margin-top:-10px;
    width:600px
}
.top-mainvisual .mainvisual-decoration {
    mix-blend-mode:multiply;
    position:absolute;
    right:-50px
}
.top-mainvisual .mainvisual-img {
    width:calc(100% - 200px);
    height:calc(100% - 100px);
    position:absolute;
    top:0;
    right:0;
    z-index:-1
}
.top-recruitInfo._bg-red01 {
    padding:10px;
    border-radius:20px
}
.top-recruitInfo .cmp-sbs_type01 {
    position:relative
}
.top-recruitInfo .cmp-sbs_type01::after {
    content:"";
    display:block;
    width:40px;
    height:40px;
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
    background-image:url(/assets/images/common/arrow-right01.svg);
    position:absolute;
    right:0;
    bottom:0
}
.top-recruitInfo .cmp-sbs_type01 .sbs-text {
    margin:0;
    padding:20px 20px 0 0
}
.service-subscription {
    margin-top:28px;
    padding:10px
}
.service-subscription .subscription-text {
    padding:0 30px
}
.service-case01 {
    display:block;
    padding:20px 30px 30px
}
.service-case01 .case-img {
    margin-top:-5px;
    width:100%
}
.service-voice01 {
    border-radius:20px;
    border:2px solid var(--basecolor-gray02);
    overflow:hidden
}
.service-voice01 .voice-heading {
    display:flex;
    align-items:flex-start;
    padding:20px 10px 0 20px;
    background-color:var(--basecolor-red02)
}
.service-voice01 .voice-heading .heading-tag {
    display:flex;
    justify-content:center;
    align-items:center;
    border-radius:100px;
    width:100px;
    height:30px;
    background-color:var(--basecolor-red01);
    font-size:14px;
    font-weight:700;
    line-height:1;
    color:#fff
}
.service-voice01 .voice-heading .heading-tag+.cmp-heading3_type01 {
    margin-left:16px
}
.service-voice01 .voice-heading .cmp-heading3_type01 {
    margin-top:0;
    line-height:1.5
}
.service-voice01 .voice-contents {
    padding:28px
}
.service-voice01 .voice-profile .profile-img {
    flex-shrink:0;
    width:100px
}
.service-voice01 .voice-profile .profile-name {
    font-size:14px;
    text-align:center
}
.news-article .article-heading {
    margin-bottom:30px;
    font-size:20px;
    line-height:1.5
}
.news-article .article-subHeading+.article-heading {
    margin-top:40px
}
.news-article .article-subHeading {
    display:flex;
    align-items:baseline;
    justify-content:space-between;
    margin-bottom:20px
}
.news-article .article-subHeading .subHeading_category {
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    border-radius:4px;
    border:1px solid;
    font-size:13px;
    width:120px;
    min-height:calc(var(--text-base-size) * 1.875)
}
.news-article .article-subHeading .subHeading_date {
    text-align:right;
    font-size:14px;
    line-height:1.6
}
.news-article .article-img {
    margin:1em 0
}
.news-article .article-text .text_borderArea {
    padding:8px 8px 4px;
    border:1px solid
}
.news-article .article-text .text_borderTitle {
    display:inline-block;
    margin-top:2em;
    margin-bottom:1em;
    padding:0 4px;
    border:1px solid;
    font-size:var(--text-base-size)
}
.news-article .article-text .text_indent {
    text-indent:1em
}
.news-article .article-text .text_brackets {
    margin-top:1em;
    font-size:var(--text-base-size)
}
.news-article .article-text .text_brackets+.text_brackets {
    margin-top:0
}
.news-article .article-text .text_table table {
    width:100%;
    border-top:1px solid;
    border-left:1px solid
}
.news-article .article-text .text_table table td,.news-article .article-text .text_table table th {
    padding:0 3px;
    border-right:1px solid;
    border-bottom:1px solid
}
.news-article .article-text .text_table table th {
    text-align:center
}
.news-article .article-pdfLink {
    display:inline-block
}
.news-article .article-pdfLink>a {
    display:flex;
    align-items:center
}
.news-article .article-pdfLink>a:before {
    content:"";
    flex-shrink:0;
    margin-right:10px;
    display:block;
    width:19px;
    height:24px;
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
    background-image:url(/assets/images/common/icon-pdf.svg)
}
.recruit-staff-column-3 .recruit-staff-text {
    margin-top:20px
}
.recruit-staff-column-3 .recruit-staff-text .text-heading {
    display:inline;
    padding:.2em 10px;
    font-weight:700;
    font-size:16px;
    line-height:2;
    color:#fff;
    box-decoration-break:clone;
    -webkit-box-decoration-break:clone;
    background-color:#e7342c
}
.recruit-staff-column-3 .recruit-staff-text .text-name {
    margin-top:14px;
    line-height:1.5;
    font-weight:700;
    font-size:22px
}
.recruit-staff-column-3 .recruit-staff-text .text-name span {
    display:block;
    margin-bottom:6px;
    font-weight:400;
    font-size:14px
}
.recruit-interview .interview-item {
    position:relative
}
.recruit-interview .interview-item .interview-title {
    position:absolute;
    left:0;
    bottom:50px;
    display:flex;
    flex-direction:column;
    align-items:baseline
}
.recruit-interview .interview-item .interview-title .title-text span {
    display:inline;
    padding:.2em 10px;
    font-weight:700;
    font-size:24px;
    line-height:2;
    color:#fff;
    box-decoration-break:clone;
    -webkit-box-decoration-break:clone;
    background-color:#e7342c
}
.recruit-interview .interview-intro {
    margin-top:40px
}
.recruit-interview .interview-intro .interview-intro_team {
    margin-bottom:10px;
    font-weight:700;
    font-size:16px;
    line-height:1
}
.recruit-interview .interview-intro .interview-intro_name {
    margin-top:0;
    margin-bottom:16px;
    line-height:1;
    font-weight:600;
    font-size:22px
}
.recruit-interview .interview-intro .interview-intro_name span {
    font-size:16px
}
.recruit-interview .interview-intro .interview-intro_text {
    padding:20px 0 5px;
    border-top:1px solid #d9d9d9;
    border-bottom:1px solid #d9d9d9
}
.recruit-position-heading3 {
    font-size:20px;
    font-weight:700;
    line-height:1.6;
    letter-spacing:.05em;
    margin-bottom:25px;
    padding-top:110px;
    margin-top:-110px;
}
.recruit-position-heading3:not(:first-child) {
    padding-top:138px;
    margin-top:-110px;
}
.recruit-position-heading4 {
    font-size:16px;
    font-weight:700;
    line-height:1.6;
    letter-spacing:.05em;
    margin-bottom:16px
}
.recruit-position-heading4::before {
    content:"";
    display:inline-block;
    vertical-align:middle;
    width:14px;
    height:14px;
    margin-top:-2px;
    margin-right:10px;
    border-radius:50%;
    background:#d9d9d9
}
p+.recruit-position-heading4 {
    margin-top:16px
}
.recruit-position-worklife {
    margin-bottom:40px;
    padding:20px 0 40px;
    border-top:1px solid #d9d9d9;
    border-bottom:1px solid #d9d9d9
}
.recruit-position-img {
    margin-bottom:20px
}
.recruit-position-img img {
    border-radius:20px
}
.recruit-buttons .recruit-button-wrap .recruit-button_white {
    display:flex;
    align-items:center;
    padding:10px 40px;
    min-height:100px;
    font-size:18px;
    line-height:1.6;
    background:#fff;
    border-radius:6px;
    box-shadow:0 2px 10px rgba(0,0,0,.07);
    position:relative
}
.recruit-buttons .recruit-button-wrap .recruit-button_white:after {
    content:"";
    display:block;
    width:8px;
    height:8px;
    position:absolute;
    transform:rotate(45deg);
    transition-property:transform;
    transition-duration:.5s;
    transition-delay:0s;
    transition-timing-function:cubic-bezier(.455,.03,.515,.955)
}
.recruit-buttons .recruit-button-wrap .recruit-button_white:after {
    border-top:1px solid;
    border-right:1px solid
}
.recruit-buttons .recruit-button-wrap .recruit-button_white:after {
    right:30px;
    top:calc(50% - .3em);
    width:10px;
    height:10px;
    border-width:2px;
    border-color:#e7342c
}
.recruit-position-link>ul>li>a {
    display:flex;
    align-items:center;
    padding:10px 40px;
    min-height:100px;
    font-size:18px;
    line-height:1.6;
    background:#fff;
    border-radius:6px;
    box-shadow:0 2px 10px rgba(0,0,0,.07);
    position:relative
}
.recruit-position-link>ul>li>a:after {
    content:"";
    display:block;
    width:8px;
    height:8px;
    position:absolute;
    transform:rotate(45deg);
    transition-property:transform;
    transition-duration:.5s;
    transition-delay:0s;
    transition-timing-function:cubic-bezier(.455,.03,.515,.955)
}
.recruit-position-link>ul>li>a:after {
    border-top:1px solid;
    border-right:1px solid
}
.recruit-position-link>ul>li>a:after {
    right:30px;
    top:calc(50% - .3em);
    width:10px;
    height:10px;
    border-width:2px;
    border-color:#e7342c
}
.recruit-column-3-button-type02.cmp-column-3_type01 {
    margin-top:25px
}
.recruit-column-3-button-type02 .cmp-button_type02 {
    width:100%
}
.recruit-cta {
    padding:30px 20px 40px
}
.recruit-cta .cta-button-wrap {
    text-align:center;
    margin-top:20px
}
.recruit-cta .cta-button-wrap .cta-button {
    background-color:#fff;
    color:#262626;
    display:inline-flex;
    justify-content:space-between;
    align-items:center;
    border-radius:8px;
    padding:0 40px;
    width:335px;
    max-width:100%;
    height:70px;
    position:relative;
    font-size:16px;
    box-shadow:0 2px 10px rgba(0,0,0,.07)
}
.recruit-cta .cta-button-wrap .cta-button::after {
    content:"";
    display:block;
    width:36px;
    height:28px;
    background:url(/assets/images/common/icon-mail.svg) no-repeat;
    background-size:cover
}
.recruit-guide-table .row-heading {
    color:#000
}

.cmgallery{padding-bottom:80px!important;}
.cm_ico{max-width:104px;margin:0 auto;}
.header_bggray{background:#f3f4f5;font-weight:600;padding:75px 0;}
.cmp-thirdpage-header01.header_bggray .header-heading{font-weight:600!important;}
.height_clear{height:auto;padding:10px 0;}
.height_clear .topicpath_inner {overflow-x: visible!important;}

.cm_txt{font-size:24px;line-height:1.6;padding:30px 0 30px 0;margin:0 0 80px 0;border-bottom:1px solid #a7aeb6;text-align:center;}
.cm_box{/*max-width:400px;margin:0 auto;*/font-size:18px;}
.cm_box h2{font-size:30px;}
.cm_mv {width: 100%;aspect-ratio: 16 / 9;margin:20px 0 0 0;}
.cm_mv iframe {width: 100%;height: 100%;}
.cm_min {font-weight:bold;font-size:20px;}
.cm_min span{font-weight:normal;font-size:18px;}
.cm_min::first-letter {color: #e7342c;}

.cm_box_in{display:flex;margin:0 0 0 -30px;}
.cm_box_in_in{width:50%;padding:0 0 0 30px;}


@media screen and (max-width:767px) {

    .cmgallery{padding-bottom:40px!important;}
    .cm_ico{margin:20px auto 0 auto;}
    .cm_txt{text-align:center;font-weight:bold;margin:0 0 30px 0;}
    .cm_box{border-bottom:1px solid #a7aeb6;padding:0 0 30px 0;margin:0 0 30px 0;}
    .cm_box h2{font-weight:bold;}
    .cm_mv {margin:25px 0 0 0;}

    .cm_box_in{display:block;margin:0;}
    .cm_box_in_in{width:100%;padding:10px 0 0 0;}


}
@media screen and (max-width:480px) {

    .cm_ico{max-width:25%;}
    .cm_txt{font-size:5vw;}
    .cm_box{font-size:4vw;}
    .cm_box h2{font-size:6vw;}



}

@media (prefers-reduced-motion:reduce) {
    html:focus-within {
        scroll-behavior:auto
    }
    *,::after,::before {
        animation-duration:0s!important;
        animation-iteration-count:1!important;
        transition-duration:0s!important;
        scroll-behavior:auto!important
    }
}
@media screen and (max-width:767px) {
    :root {
        --text-base-size:13px
    }
    :root {
        --heading-lv2:22px;
        --heading-lv3:18px
    }
    body.__spMenu-open {
        overflow:hidden
    }
    .__accordion-button:not(.__pc) {
        cursor:pointer
    }
    .__accordion-button:not(.__pc) a[href] {
        pointer-events:none
    }
    html {
        scroll-padding-top:60px
    }
    body {
        /*padding-top:60px*/
    }
    body.__spMenu-open {
        overflow:hidden
    }
    .__accordion-button:not(.__pc) {
        cursor:pointer
    }
    .__accordion-button:not(.__pc) a[href] {
        pointer-events:none
    }
    ._pc {
        display:none!important
    }
    ._sp-pd20,.sp-pd20 {
        padding-left:var(--sp-contents-padding20);
        padding-right:var(--sp-contents-padding20)
    }
    ._sp-nm20,.sp-nm20 {
        margin-left:calc(-1 * var(--sp-contents-padding20));
        margin-right:calc(-1 * var(--sp-contents-padding20))
    }
    ._sp-pd36,.sp-pd36 {
        padding-left:var(--sp-contents-padding36);
        padding-right:var(--sp-contents-padding36)
    }
    ._sp-nm36,.sp-nm36 {
        margin-left:calc(-1 * var(--sp-contents-padding36));
        margin-right:calc(-1 * var(--sp-contents-padding36))
    }
    ._lc-sp-1 {
        display:-webkit-box;
        -webkit-box-orient:vertical;
        text-align:justify;
        overflow:hidden;
        -webkit-line-clamp:1
    }
    ._lc-sp-2 {
        display:-webkit-box;
        -webkit-box-orient:vertical;
        text-align:justify;
        overflow:hidden;
        -webkit-line-clamp:2
    }
    ._lc-sp-3 {
        display:-webkit-box;
        -webkit-box-orient:vertical;
        text-align:justify;
        overflow:hidden;
        -webkit-line-clamp:3
    }
    ._lh-sp-1 {
        line-height:1
    }
    ._t-sp-justify {
        text-align-last:left;
        text-align:justify;
        text-justify:inter-ideograph
    }
    ._t-sp-last-justify {
        text-align-last:justify
    }
    ._t-sp-center {
        text-align:center
    }
    ._t-sp-center picture>img,._t-sp-center>img {
        display:inline-block
    }
    ._t-sp-right {
        text-align:right
    }
    ._t-sp-right picture>img,._t-sp-right>img {
        display:inline-block
    }
    ._t-sp-underline {
        text-decoration:underline
    }
    ._bg-sp-black01 {
        color:#fff;
        background-color:var(--basecolor-black02)!important
    }
    ._bg-sp-gray01 {
        background-color:var(--basecolor-gray01)!important
    }
    ._bg-sp-red01 {
        background-color:var(--basecolor-red02)!important
    }
    ._bg-sp-cover {
        background-size:cover;
        background-position:center;
        background-repeat:no-repeat
    }
    ._bg-sp-contain {
        background-size:coutain;
        background-position:center;
        background-repeat:no-repeat
    }
    ._of-sp-cover {
        display:block;
        width:100%;
        height:100%;
        object-fit:cover;
        font-family:"object-fit: cover;
        "
    }
    ._of-sp-contain {
        display:block;
        width:100%;
        height:100%;
        object-fit:contain;
        font-family:"object-fit: contain;
        "
    }
    ._color-sp-white {
        color:#fff
    }
    ._color-sp-black {
        color:var(--basecolor-black01)!important
    }
    ._color-sp-red01 {
        color:var(--basecolor-red01)!important
    }
    ._color-sp-blue01 {
        color:var(--basecolor-blue01)!important
    }
    ._wb-sp-break {
        word-break:break-all
    }
    ._f-sp-black {
        font-weight:900!important
    }
    ._f-sp-bold {
        font-weight:700!important
    }
    ._f-sp-bolder {
        font-weight:600!important
    }
    ._f-sp-medium {
        font-weight:500!important
    }
    ._f-sp-regular {
        font-weight:400!important
    }
    ._flex-sp {
        display:flex!important
    }
    ._flex-sp-j-between {
        justify-content:space-between!important
    }
    ._flex-sp-j-start {
        justify-content:flex-start!important
    }
    ._flex-sp-j-center {
        justify-content:center!important
    }
    ._flex-sp-j-end {
        justify-content:flex-end!important
    }
    ._flex-sp-a-start {
        align-items:flex-start!important
    }
    ._flex-sp-a-center {
        align-items:center!important
    }
    ._flex-sp-a-end {
        align-items:flex-end!important
    }
    ._flex-sp-d-column {
        flex-direction:column!important
    }
    ._flex-sp-d-row {
        flex-direction:row!important
    }
    ._bd-sp-bottom01 {
        border-bottom:1px solid var(--basecolor-gray02)
    }
    ._bd-sp-top01 {
        border-top:1px solid var(--basecolor-gray02)
    }
    ._ico-plus {
        width:16px;
        height:16px
    }
    ._ico-sp-plus {
        display:inline-block;
        position:relative;
        width:.9em;
        height:.9em
    }
    ._ico-sp-plus:after,._ico-sp-plus:before {
        content:"";
        margin:auto;
        border-radius:100px;
        position:absolute;
        top:0;
        left:0;
        bottom:0;
        right:0;
        transition-property:transform;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.455,.03,.515,.955)
    }
    ._ico-sp-plus:before {
        width:100%;
        height:0;
        border-bottom:2px solid
    }
    ._ico-sp-plus:after {
        width:0;
        height:100%;
        border-right:2px solid
    }
    [aria-expanded=true] ._ico-sp-plus:before {
        transform:rotate(180deg)
    }
    [aria-expanded=true] ._ico-sp-plus:after {
        transform:rotate(90deg)
    }
    ._mt-sp-0,.mt-sp-0 {
        margin-top:0!important
    }
    ._mt-sp--40,.mt-sp--40 {
        margin-top:-40px!important
    }
    ._mb-sp-0,.mb-sp-0 {
        margin-bottom:0!important
    }
    ._pt-sp-0,.pt-sp-0 {
        padding-top:0!important
    }
    ._pb-sp-0,.pb-sp-0 {
        padding-bottom:0!important
    }
    ._mt-sp-10,.mt-sp-10 {
        margin-top:10px!important
    }
    ._mb-sp-10,.mb-sp-10 {
        margin-bottom:10px!important
    }
    ._pt-sp-10,.pt-sp-10 {
        padding-top:10px!important
    }
    ._pb-sp-10,.pb-sp-10 {
        padding-bottom:10px!important
    }
    ._mt-sp-20,.mt-sp-20 {
        margin-top:20px!important
    }
    ._mb-sp-20,.mb-sp-20 {
        margin-bottom:20px!important
    }
    ._pt-sp-20,.pt-sp-20 {
        padding-top:20px!important
    }
    ._pb-sp-20,.pb-sp-20 {
        padding-bottom:20px!important
    }
    ._mt-sp-30,.mt-sp-30 {
        margin-top:30px!important
    }
    ._mb-sp-30,.mb-sp-30 {
        margin-bottom:30px!important
    }
    ._pt-sp-30,.pt-sp-30 {
        padding-top:30px!important
    }
    ._pb-sp-30,.pb-sp-30 {
        padding-bottom:30px!important
    }
    ._mt-sp-40,.mt-sp-40 {
        margin-top:40px!important
    }
    ._mb-sp-40,.mb-sp-40 {
        margin-bottom:40px!important
    }
    ._pt-sp-40,.pt-sp-40 {
        padding-top:40px!important
    }
    ._pb-sp-40,.pb-sp-40 {
        padding-bottom:40px!important
    }
    ._mt-sp-50,.mt-sp-50 {
        margin-top:50px!important
    }
    ._mb-sp-50,.mb-sp-50 {
        margin-bottom:50px!important
    }
    ._pt-sp-50,.pt-sp-50 {
        padding-top:50px!important
    }
    ._pb-sp-50,.pb-sp-50 {
        padding-bottom:50px!important
    }
    ._mt-sp-60,.mt-sp-60 {
        margin-top:60px!important
    }
    ._mb-sp-60,.mb-sp-60 {
        margin-bottom:60px!important
    }
    ._pt-sp-60,.pt-sp-60 {
        padding-top:60px!important
    }
    ._pb-sp-60,.pb-sp-60 {
        padding-bottom:60px!important
    }
    ._mt-sp-70,.mt-sp-70 {
        margin-top:70px!important
    }
    ._mb-sp-70,.mb-sp-70 {
        margin-bottom:70px!important
    }
    ._pt-sp-70,.pt-sp-70 {
        padding-top:70px!important
    }
    ._pb-sp-70,.pb-sp-70 {
        padding-bottom:70px!important
    }
    ._mt-sp-80,.mt-sp-80 {
        margin-top:80px!important
    }
    ._mb-sp-80,.mb-sp-80 {
        margin-bottom:80px!important
    }
    ._pt-sp-80,.pt-sp-80 {
        padding-top:80px!important
    }
    ._pb-sp-80,.pb-sp-80 {
        padding-bottom:80px!important
    }
    ._mt-sp-90,.mt-sp-90 {
        margin-top:90px!important
    }
    ._mb-sp-90,.mb-sp-90 {
        margin-bottom:90px!important
    }
    ._pt-sp-90,.pt-sp-90 {
        padding-top:90px!important
    }
    ._pb-sp-90,.pb-sp-90 {
        padding-bottom:90px!important
    }
    ._mt-sp-100,.mt-sp-100 {
        margin-top:100px!important
    }
    ._mb-sp-100,.mb-sp-100 {
        margin-bottom:100px!important
    }
    ._pt-sp-100,.pt-sp-100 {
        padding-top:100px!important
    }
    ._pb-sp-100,.pb-sp-100 {
        padding-bottom:100px!important
    }
    ._mt-sp-110,.mt-sp-110 {
        margin-top:110px!important
    }
    ._mb-sp-110,.mb-sp-110 {
        margin-bottom:110px!important
    }
    ._pt-sp-110,.pt-sp-110 {
        padding-top:110px!important
    }
    ._pb-sp-110,.pb-sp-110 {
        padding-bottom:110px!important
    }
    ._mt-sp-120,.mt-sp-120 {
        margin-top:120px!important
    }
    ._mb-sp-120,.mb-sp-120 {
        margin-bottom:120px!important
    }
    ._pt-sp-120,.pt-sp-120 {
        padding-top:120px!important
    }
    ._pb-sp-120,.pb-sp-120 {
        padding-bottom:120px!important
    }
    ._mt-sp-130,.mt-sp-130 {
        margin-top:130px!important
    }
    ._mb-sp-130,.mb-sp-130 {
        margin-bottom:130px!important
    }
    ._pt-sp-130,.pt-sp-130 {
        padding-top:130px!important
    }
    ._pb-sp-130,.pb-sp-130 {
        padding-bottom:130px!important
    }
    ._mt-sp-140,.mt-sp-140 {
        margin-top:140px!important
    }
    ._mb-sp-140,.mb-sp-140 {
        margin-bottom:140px!important
    }
    ._pt-sp-140,.pt-sp-140 {
        padding-top:140px!important
    }
    ._pb-sp-140,.pb-sp-140 {
        padding-bottom:140px!important
    }
    ._mt-sp-150,.mt-sp-150 {
        margin-top:150px!important
    }
    ._mb-sp-150,.mb-sp-150 {
        margin-bottom:150px!important
    }
    ._pt-sp-150,.pt-sp-150 {
        padding-top:150px!important
    }
    ._pb-sp-150,.pb-sp-150 {
        padding-bottom:150px!important
    }
    ._mt-sp-160,.mt-sp-160 {
        margin-top:160px!important
    }
    ._mb-sp-160,.mb-sp-160 {
        margin-bottom:160px!important
    }
    ._pt-sp-160,.pt-sp-160 {
        padding-top:160px!important
    }
    ._pb-sp-160,.pb-sp-160 {
        padding-bottom:160px!important
    }
    ._mt-sp-170,.mt-sp-170 {
        margin-top:170px!important
    }
    ._mb-sp-170,.mb-sp-170 {
        margin-bottom:170px!important
    }
    ._pt-sp-170,.pt-sp-170 {
        padding-top:170px!important
    }
    ._pb-sp-170,.pb-sp-170 {
        padding-bottom:170px!important
    }
    ._mt-sp-180,.mt-sp-180 {
        margin-top:180px!important
    }
    ._mb-sp-180,.mb-sp-180 {
        margin-bottom:180px!important
    }
    ._pt-sp-180,.pt-sp-180 {
        padding-top:180px!important
    }
    ._pb-sp-180,.pb-sp-180 {
        padding-bottom:180px!important
    }
    ._mt-sp-190,.mt-sp-190 {
        margin-top:190px!important
    }
    ._mb-sp-190,.mb-sp-190 {
        margin-bottom:190px!important
    }
    ._pt-sp-190,.pt-sp-190 {
        padding-top:190px!important
    }
    ._pb-sp-190,.pb-sp-190 {
        padding-bottom:190px!important
    }
    ._mt-sp-200,.mt-sp-200 {
        margin-top:200px!important
    }
    ._mb-sp-200,.mb-sp-200 {
        margin-bottom:200px!important
    }
    ._pt-sp-200,.pt-sp-200 {
        padding-top:200px!important
    }
    ._pb-sp-200,.pb-sp-200 {
        padding-bottom:200px!important
    }
    ._w-sp-100per {
        width:100%
    }
    .cmp-heading2_type01 {
        margin-bottom:20px;
        padding-bottom:24px
    }
    .cmp-heading2_type01:after {
        width:64px;
        height:20px;
        left:-16px
    }
    .cmp-heading2_type01 .h2-jp {
        font-size:11px
    }
    .cmp-heading2_type01 .h2-en {
        margin-top:12px
    }
    .cmp-heading2_type01 .h2-en img {
        height:32px
    }
    .cmp-heading2_type02 {
        padding-top:60px
    }
    .cmp-heading2_type02:first-child {
        margin-top:-60px
    }
    .cmp-heading2_type02 {
        margin-bottom:28px;
        letter-spacing:.05em
    }
    .cmp-heading2_type02:after {
        width:40px
    }
    .cmp-heading3_type01:not(:first-child) {
        margin-top:28px
    }
    .cmp-heading3_type01:not(:last-child) {
        margin-bottom:16px
    }
    .cmp-heading3_type01._sdgs>img {
        margin-right:12px;
        width:50px
    }
    .cmp-heading3_type02:not(:first-child) {
        margin-top:28px
    }
    .cmp-heading3_type02 {
        margin-bottom:16px
    }
    .cmp-heading3_type02:after {
        width:24px
    }
    p+.cmp-heading4_type01 {
        margin-top:12px
    }
    .cmp-heading4_type02:not(:first-child) {
        margin-top:16px
    }
    .cmp-heading4_type02 {
        margin-bottom:4px;
        font-size:14px
    }
    :not([class*=cmp-text])+[class*=cmp-text] {
        margin-top:20px
    }
    .cmp-text02 {
        font-size:12px
    }
    :not([class*=cmp-heading])+.cmp-ul01 {
        margin-top:20px
    }
    *+.cmp-ol01 {
        margin-top:20px
    }
    .cmp-ol01>li .number {
        margin-right:.5em
    }
    *+.cmp-ol02 {
        margin-top:20px
    }
    .cmp-textlink01._arrow01:after {
        width:12px;
        height:12px
    }
    .cmp-textlink01._arrow01:after {
        border-top-width:2px;
        border-right-width:2px
    }
    *+.cmp-buttons_wrap01 {
        margin-top:36px
    }
    .cmp-buttons_wrap01+[class*=cmp-] {
        margin-top:40px
    }
    *+.cmp-buttons_wrap02 {
        margin-top:12px
    }
    .cmp-buttons_wrap02+[class*=cmp-] {
        margin-top:20px
    }
    .cmp-button_type01 {
        padding:0 16px;
        min-width:260px;
        height:50px
    }
    .cmp-button_type02 {
        padding:0 16px;
        min-width:260px;
        height:50px
    }
    .cmp-button_type03 {
        padding:0 16px;
        min-width:260px;
        height:50px
    }
    .cmp-section_lv1 {
        padding-top:40px;
        padding-bottom:40px
    }
    .cmp-section_lv2 {
        padding-top:60px;
        padding-bottom:60px
    }
    .cmp-section_lv3 {
        margin-top:-60px;
        padding-top:80px;
        padding-bottom:50px
    }
    [class*=cmp-sbs] img+.sbs-text {
        margin-top:32px
    }
    :not(.cmp-sbs_type01)+.cmp-sbs_type01 {
        margin-top:20px
    }
    .cmp-sbs_type01+.cmp-sbs_type01 {
        margin-top:40px
    }
    .cmp-sbs_type02 {
        padding:20px 20px 28px
    }
    *+[class*=cmp-column] {
        margin-top:20px
    }
    *+[class*=cmp-column] {
        margin-top:32px
    }
    [class*=cmp-column] .column-item+.column-item {
        margin-top:32px
    }
    [class*=cmp-column] .item-img {
        border-radius:15px
    }
    [class*=cmp-column] .item-img img {
        border-radius:15px
    }
    .cmp-column-2_type01 .column-item>.cmp-heading3_type01 {
        padding-bottom:8px
    }
    .cmp-column-2_type01 .column-item .item-img .img-annotation {
        font-size:12px
    }
    .cmp-column-2_type02 .column-item {
        border-radius:15px
    }
    .cmp-column-2_type02 .item-heading {
        padding-left:16px;
        padding-right:16px
    }
    .cmp-column-2_type02 .item-contents {
        padding:16px
    }
    .cmp-column-2_type02 .contents-plans .plan {
        padding:5px 0 4px;
        font-size:13px
    }
    .cmp-column-2_type02 .cmp-buttons_wrap01 {
        margin-top:20px
    }
    .cmp-column-3_type02 .column-item .cmp-heading3_type01 {
        height:40px
    }
    .cmp-column-3_type02 .column-item>p {
        padding:0 20px 20px
    }
    .cmp-column-3_type03 .column-item .cmp-heading3_type01 {
        height:40px
    }
    .cmp-column-3_type04 .column-item {
        border-radius:15px
    }
    .cmp-column-3_type04 .item-heading {
        padding-left:16px;
        padding-right:16px
    }
    .cmp-column-3_type04 .item-contents {
        padding:16px
    }
    .cmp-column-3_type05 .column-item+.column-item {
        margin-top:52px
    }
    .cmp-column-3_type05 .item-img .cmp-heading3_type01 {
        height:40px
    }
    .cmp-column-3_type05 .item-contents .contents-areas .area {
        padding:5px 0 4px;
        font-size:13px
    }
    *+.cmp-service01 {
        margin-top:40px
    }
    .cmp-service01 {
        padding-top:30px;
        padding-bottom:30px
    }
    .cmp-service01 .service-link+.service-link {
        margin-top:12px
    }
    .cmp-service01 .link:after {
        width:12px;
        height:12px
    }
    .cmp-service01 .link:after {
        border-top-width:2px;
        border-right-width:2px
    }
    .cmp-service01 .link {
        height:100px;
        padding-left:12px;
        padding-right:36px;
        font-size:14px
    }
    .cmp-service01 .link>img {
        width:100px
    }
    .cmp-service02 {
        padding:12px 20px;
        font-size:14px
    }
    .cmp-service02 .service-link+.service-link {
        margin-top:6px;
        border-top:1px solid var(--basecolor-gray02);
        padding-top:6px
    }
    .cmp-service02 .service-link .link {
        justify-content:center
    }
    .cmp-service02 .service-link .link>span {
        min-width:140px
    }
    *+.cmp-partner-links {
        margin-top:20px
    }
    .cmp-partner-links .partner-link+.partner-link {
        margin-top:12px
    }
    .cmp-partner-links .partner-link>p {
        margin-top:8px
    }
    .cmp-partner-links .link {
        height:80px
    }
    .cmp-partner-links .link.kepco>img {
        max-height:52px;
    }
    *+.cmp-news-links {
        margin-top:20px
    }
    .cmp-news-links .link {
        flex-wrap:wrap;
        padding:20px 0
    }
    .cmp-news-links .link-date+* {
        margin-left:20px
    }
    .cmp-news-links .link-category+* {
        margin-top:16px
    }
    .cmp-news-links .link-contents {
        width:100%
    }
    .cmp-news-links .link-contents .content._pdf:after,.cmp-news-links .link-contents>a._pdf:after {
        margin-left:5px;
        width:16px;
        height:20px
    }
    .cmp-news-contact{padding:40px 0 0 0;}
    .cmp-news-contact br{display:block;}

    .cmp-archive-links .links_inner {
        display:flex;
        flex-wrap:wrap;
        margin-left:-5px;
        margin-right:-5px;
        margin-bottom:-10px
    }
    .cmp-archive-links .links_inner>* {
        margin:0 5px 10px;
        width:calc(100% / 3 - 10px)
    }
    .cmp-archive-links .link>a {
        padding:0 16px 0 16px
    }
    .cmp-archive-links .link>a:after {
        width:12px;
        height:12px
    }
    .cmp-archive-links .link>a:after {
        border-top-width:2px;
        border-right-width:2px
    }
    .cmp-archive-links .link>a:after {
        width:8px;
        height:8px;
        right:12px;
        border-top-width:1px;
        border-right-width:1px
    }
    *+.cmp-flow01 {
        margin-top:20px
    }
    .cmp-flow01 .flow-heading+.cmp-buttons_wrap01 {
        margin-top:20px
    }
    :not(.cmp-block01)+.cmp-block01 {
        margin-top:40px
    }
    .cmp-block01+.cmp-block01 {
        margin-top:40px
    }
    .cmp-block01 {
        border-radius:15px;
        padding:32px 20px 32px
    }
    .cmp-block01 .block-heading {
        font-size:15px
    }
    .cmp-block01 .block-heading+* {
        margin-top:0
    }
    :not(.cmp-block02)+.cmp-block02 {
        margin-top:40px
    }
    .cmp-block02+.cmp-block02 {
        margin-top:20px
    }
    .cmp-block02 {
        border-radius:15px;
        padding:16px
    }
    :not(.cmp-block04)+.cmp-block04 {
        margin-top:20px
    }
    .cmp-block04+.cmp-block04 {
        margin-top:20px
    }
    .cmp-block04 {
        border-radius:15px;
        padding:16px
    }
    *+.cmp-table01 {
        margin-top:20px
    }
    .cmp-table01 .table-row {
        padding-top:20px;
        padding-bottom:20px
    }
    .cmp-table01 .row-heading {
        font-size:14px
    }
    .cmp-table01 .row-contents {
        padding-top:8px
    }
    *+.cmp-history01 {
        margin-top:20px
    }
    .cmp-history01 .history {
        padding-left:40px
    }
    .cmp-history01 .history:not(:last-child) {
        padding-bottom:20px
    }
    *+.cmp-iconlist01 {
        margin-top:20px
    }
    .cmp-iconlist01 {
        margin-left:-5px;
        margin-right:-5px;
        margin-bottom:-10px
    }
    .cmp-iconlist01>li img {
        width:50px
    }
    :not(.cmp-faq01)+.cmp-faq01 {
        margin-top:20px
    }
    .cmp-faq01+.cmp-faq01 {
        margin-top:20px
    }
    .cmp-faq01 .faq-answer,.cmp-faq01 .faq-question {
        padding-left:70px;
        padding-right:16px
    }
    .cmp-faq01 .faq-answer:before,.cmp-faq01 .faq-question:before {
        font-size:22px;
        width:50px;
        height:50px
    }
    .cmp-faq01 .faq-question {
        padding-top:12px;
        padding-bottom:10px;
        min-height:50px
    }
    .cmp-faq01 .faq-answer {
        padding-top:16px;
        padding-bottom:24px
    }
    .cmp-secondpage-header01+[class*=_bg] {
        margin-top:50px
    }
    .cmp-secondpage-header01 {
        padding-bottom:40px
    }
    .cmp-secondpage-header01 .header-img {
        width:100%
    }
    .cmp-secondpage-header01 .header-text {
        border-radius:0 20px 0 0;
        padding-left:40px;
        padding-right:20px;
        min-width:240px;
        width:fit-content;
        height:160px
    }
    .cmp-secondpage-header01 .header-text._wide {
        min-width:280px
    }
    .cmp-secondpage-header01 .text-heading {
        padding-bottom:24px
    }
    .cmp-secondpage-header01 .text-heading:after {
        width:60px;
        height:20px;
        left:-8px
    }
    .cmp-secondpage-header01 .text-heading .heading-jp {
        font-size:13px
    }
    .cmp-secondpage-header01 .text-heading .heading-en {
        margin-top:12px
    }
    .cmp-secondpage-header01 .text-heading .heading-en img {
        height:36px
    }
    .cmp-secondpage-header01 .text-heading .heading-en._row2 img {
        height:80px
    }
    .cmp-thirdpage-header01 {
        padding-top:28px;
        padding-bottom:28px
    }
    .cmp-thirdpage-header01 .header-heading {
        font-size:22px;
        letter-spacing:.05em
    }
    .cmp-thirdpage-header01 .header-description {
        margin-top:12px
    }
    .cmp-navigation01 {
        margin-top:20px
    }
    .cmp-navigation01 .navigation-links {
        font-size:15px
    }
    .cmp-navigation01 .link>a {
        padding:15px 0;
        justify-content:space-between
    }
    .cmp-navigation01 .link>a:after {
        width:26px;
        height:26px
    }
    .cmp-header:after {
        content:"";
        display:block;
        width:100vw;
        height:100vh;
        background-color:#fff;
        pointer-events:none;
        position:fixed;
        top:0;
        left:0;
        z-index:990;
        opacity:0;
        transition-property:opacity;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.455,.03,.515,.955)
    }
    .__spMenu-open .cmp-header:after {
        opacity:.5;
        pointer-events:auto
    }
    .page_top .cmp-header:not(.__duplicate) .header-logo {
        border-top-width:0;
        position:absolute;
        box-shadow:none;
        z-index:1000
    }
    .page_top .cmp-header:not(.__duplicate) .header-logo>a {
        height:110px
    }
    .page_top .cmp-header:not(.__duplicate) .header-sp_menu_btn {
        position:absolute;
        z-index:1001
    }
    .page_top .cmp-header.__duplicate:after {
        content:none
    }
    .page_top .cmp-header.__duplicate .header-logo {
        transform:translateY(-120%)
    }
    .page_top .cmp-header.__duplicate .header-sp_menu_btn {
        transform:translateY(-120%);
        z-index:992
    }
    .page_top .cmp-header.__duplicate .header-navigation {
        z-index:991
    }
    .page_top:not(.__spMenu-open) .cmp-header:not(.__duplicate) .header-sp_menu_btn>i,.page_top:not(.__spMenu-open) .cmp-header:not(.__duplicate) .header-sp_menu_btn>i:after,.page_top:not(.__spMenu-open) .cmp-header:not(.__duplicate) .header-sp_menu_btn>i:before {
        background-color:var(--basecolor-red01)
    }
    .__duplicate-header-view .cmp-header:not(.__duplicate):after {
        content:none
    }
    .__duplicate-header-view .cmp-header.__duplicate:after {
        content:""
    }
    .__duplicate-header-view .cmp-header.__duplicate .header-logo {
        transform:translateY(0)
    }
    .__duplicate-header-view .cmp-header.__duplicate .header-sp_menu_btn {
        transform:translateY(0)
    }
    .cmp-header .header-logo {
        display:flex;
        border-top:3px solid var(--basecolor-red01);
        padding-right:60px;
        width:100%;
        height:60px;
        background-color:#fff;
        position:fixed;
        transition-property:transform;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.455,.03,.515,.955);
        z-index:900;
        box-shadow:0 2px 10px rgba(0,0,0,.07)
    }
    .__scrolling.__scrolled:not(.__spMenu-open) .cmp-header .header-logo {
        transform:translateY(-100%)
    }
    .cmp-header .header-logo>a {
        width:110px
    }
    .cmp-header .header-logo .logo-image img {
        width:80px
    }
    .cmp-header .header-sp_menu_btn {
        width:60px;
        height:60px;
        position:fixed;
        top:0;
        right:0;
        z-index:1001;
        transition-property:background-color,transform;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.455,.03,.515,.955)
    }
    .__scrolling.__scrolled:not(.__spMenu-open) .cmp-header .header-sp_menu_btn {
        transform:translateY(-100%)
    }
    .__spMenu-open .cmp-header .header-sp_menu_btn {
        background-color:var(--basecolor-black02)
    }
    .__spMenu-open .cmp-header .header-sp_menu_btn>i {
        background-color:transparent
    }
    .__spMenu-open .cmp-header .header-sp_menu_btn>i:after,.__spMenu-open .cmp-header .header-sp_menu_btn>i:before {
        background-color:#fff
    }
    .__spMenu-open .cmp-header .header-sp_menu_btn>i:before {
        transform:translateY(0) rotate(45deg)
    }
    .__spMenu-open .cmp-header .header-sp_menu_btn>i:after {
        transform:translateY(0) rotate(-45deg)
    }
    .cmp-header .header-sp_menu_btn>i {
        display:block;
        margin:auto;
        width:28px;
        height:3px;
        background-color:var(--basecolor-black02);
        position:absolute;
        top:0;
        left:0;
        right:0;
        bottom:0;
        transition-property:background-color,transform;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.455,.03,.515,.955)
    }
    .cmp-header .header-sp_menu_btn>i:after,.cmp-header .header-sp_menu_btn>i:before {
        content:"";
        display:block;
        margin:auto;
        width:100%;
        height:100%;
        background-color:var(--basecolor-black02);
        position:absolute;
        top:0;
        left:0;
        right:0;
        bottom:0;
        transition-property:background-color,transform;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.455,.03,.515,.955)
    }
    .cmp-header .header-sp_menu_btn>i:before {
        transform:translateY(-10px)
    }
    .cmp-header .header-sp_menu_btn>i:after {
        transform:translateY(10px)
    }
    .cmp-header .header-navigation {
        width:280px;
        padding-top:80px;
        padding-bottom:100px;
        height:100vh;
        color:#fff;
        background-color:var(--basecolor-black02);
        position:fixed;
        top:0;
        left:100%;
        overflow-y:scroll;
        transition-property:transform;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.455,.03,.515,.955);
        z-index:1000;
        pointer-events:none
    }
    body.__spMenu-open .cmp-header .header-navigation[aria-hidden=false] {
        transform:translateX(-100%);
        pointer-events:auto
    }
    .cmp-header .header-navigation>:last-child {
        padding-bottom:100px
    }
    .cmp-header .main-link {
        border-bottom:1px solid var(--basecolor-gray02)
    }
    .cmp-header .main-link>a,.cmp-header .main-link>button,.cmp-header .main-link>span {
        justify-content:space-between;
        padding:20px 0;
        width:100%;
        line-height:1;
        font-size:14px;
        font-weight:700
    }
    .cmp-header .main-link>a {
        position:relative
    }
    .cmp-header .main-link>a:after {
        content:"";
        display:block;
        width:8px;
        height:8px;
        position:absolute;
        transform:rotate(45deg);
        transition-property:transform;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.455,.03,.515,.955)
    }
    .cmp-header .main-link>a:after {
        border-top:1px solid;
        border-right:1px solid
    }
    .cmp-header .main-link>a:after {
        margin:auto 0;
        top:0;
        bottom:0;
        right:12px
    }
    .cmp-header .link-sub-button ._ico-sp-plus {
        margin-right:8px
    }
    .cmp-header .link-sub_wrap {
        overflow:hidden;
        transition-property:opacity;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.455,.03,.515,.955)
    }
    .cmp-header .link-sub_wrap[aria-hidden=true] {
        height:0
    }
    .cmp-header .link-sub_wrap[aria-hidden=false] {
        opacity:1
    }
    .cmp-header .link-sub_wrap .sub-link:last-child {
        padding-bottom:16px
    }
    .cmp-header .link-sub_wrap .sub-link>a:after {
        width:12px;
        height:12px
    }
    .cmp-header .link-sub_wrap .sub-link>a:after {
        border-top-width:2px;
        border-right-width:2px
    }
    .cmp-header .link-sub_wrap .sub-link>a:after {
        right:12px
    }
    .cmp-conversion-links .top-link+.top-link {
        margin-top:30px
    }
    .cmp-conversion-links .link {
        height:70px;
        padding-left:30px;
        padding-right:90px;
        font-size:14px;
        background-position:calc(100% - 30px) center
    }
    .cmp-footer .first-links {
        border-top:1px solid var(--basecolor-gray02)
    }
    .cmp-footer .first-links>.link+.link {
        border-top:1px solid var(--basecolor-gray02)
    }
    .cmp-footer .first-links>.link>a {
        display:block;
        padding:20px 0;
        position:relative
    }
    .cmp-footer .first-links>.link>a:after {
        content:"";
        display:block;
        width:8px;
        height:8px;
        position:absolute;
        transform:rotate(45deg);
        transition-property:transform;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.455,.03,.515,.955)
    }
    .cmp-footer .first-links>.link>a:after {
        border-top:1px solid;
        border-right:1px solid
    }
    .cmp-footer .first-links>.link>a:after {
        margin:auto 0;
        right:20px;
        top:0;
        bottom:0
    }
    .cmp-footer .top-second {
        border-top:1px solid var(--basecolor-gray02)
    }
    .cmp-footer .second-list_wrap {
        border-bottom:1px solid var(--basecolor-gray02)
    }
    .cmp-footer .second-list_wrap .list-heading {
        padding:20px 0;
        position:relative
    }
    .cmp-footer .second-list_wrap .list-heading ._ico-sp-plus {
        margin:auto 0;
        position:absolute;
        top:0;
        bottom:0;
        right:16px
    }
    .cmp-footer .second-list_wrap .list-contents .content-link:not(._sp):last-child {
        padding-bottom:16px
    }
    .cmp-footer .second-list_wrap .list-contents .content-link:not(._sp)>a {
        padding-left:20px
    }
    .cmp-footer .second-list_wrap .list-contents .content-link:not(._sp)>a:before {
        content:"";
        display:block;
        margin-top:calc(.8em - 2px);
        border-bottom:2px solid var(--basecolor-gray02);
        width:10px;
        position:absolute;
        left:0
    }
    .cmp-footer .second-list_wrap .list-contents .content-link>a {
        display:block;
        padding:14px 0;
        position:relative
    }
    .cmp-footer .second-list_wrap .list-contents .content-link>a:after {
        content:"";
        display:block;
        width:8px;
        height:8px;
        position:absolute;
        transform:rotate(45deg);
        transition-property:transform;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.455,.03,.515,.955)
    }
    .cmp-footer .second-list_wrap .list-contents .content-link>a:after {
        border-top:1px solid;
        border-right:1px solid
    }
    .cmp-footer .second-list_wrap .list-contents .content-link>a:after {
        margin:auto 0;
        right:0;
        top:0;
        bottom:0
    }
    .cmp-footer .sitemap-bottom {
        padding-top:40px;
        padding-bottom:20px
    }
    .cmp-footer .bottom-links .link+.link {
        margin-top:12px
    }
    .cmp-footer .bottom-copyright {
        margin-top:40px
    }
    .cmp-topicpath {
        height:30px
    }
    .cmp-topicpath .topicpath_inner {
        font-size:11px
    }
    .cmp-topicpath li:not(:last-child) {
        margin-right:10px;
        padding-right:8px
    }
    .cmp-topicpath li:not(:last-child):after {
        top:2px
    }
    .cmp-pagetop {
        margin-top:-84px;
        width:84px;
        height:84px;
        bottom:calc(env(safe-area-inset-bottom,0) + 0px)
    }
    .cmp-pagetop>img {
        width:56px
    }
    .cmp-form_block.-required>.cmp-heading3_type01:after {
        font-size:11px
    }
    .cmp-form-flex_wrap>* {
        flex:1
    }
    .cmp-form-flex_wrap>*+* {
        margin-left:20px
    }
    .cmp-form-insert_wrap .insert {
        margin-right:4px;
        min-width:24px
    }
    .cmp-form-attention-text {
        font-size:11px
    }
    ._fp-email01,._fp-number01,._fp-tel01,._fp-text01,._fp-textarea01 {
        font-size:16px
    }
    ._fp-radio01 span {
        padding-left:44px
    }
    ._fp-checkbox01 span {
        padding-left:44px
    }
    .top-mainvisual {
        height:420px
    }
    .top-mainvisual .mainvisual_inner {
        width:calc(100% - 40px);
        padding:60px 0 0 20px
    }
    .top-mainvisual .mainvisual_inner .grandprix{
        position:absolute;top:auto;bottom:75%;left:5%;width:70vw;max-width:100%;
    }

    .top-mainvisual .mainvisual-heading {
        font-size:24px
    }
    .top-mainvisual .mainvisual-heading>small {
        font-size:18px
    }
    .top-mainvisual .mainvisual-catch {
        margin-top:-10px;
        width:280px
    }
    .top-mainvisual .mainvisual-decoration {
        width:160px;
        bottom:200px
    }
    .top-mainvisual .mainvisual-img {
        width:calc(100% - 60px);
        height:calc(100% - 110px)
    }
    .top-recruitInfo._bg-red01 {
        padding:20px 20px 10px
    }
    .top-recruitInfo .cmp-sbs_type01 .sbs-text {
        padding:20px 20px 50px 0
    }
    .service-subscription {
        margin-top:20px
    }
    .service-subscription .subscription-heading img {
        width:100%
    }
    .service-subscription .subscription-text {
        padding:20px 10px 10px
    }
    .service-case01 {
        padding:16px 20px 20px
    }
    .service-voice01 .voice-heading {
        padding:20px 20px 4px
    }
    .service-voice01 .voice-heading .heading-tag {
        width:90px;
        height:28px;
        font-size:12px
    }
    .service-voice01 .voice-heading .heading-tag+.cmp-heading3_type01 {
        margin-left:12px
    }
    .service-voice01 .voice-contents {
        display:flex;
        padding:20px
    }
    .service-voice01 .voice-profile {
        flex-shrink:0
    }
    .service-voice01 .voice-profile .profile-img {
        width:90px
    }
    .service-voice01 .voice-profile .profile-name {
        display:block;
        margin:12px -10px 0;
        font-size:12px
    }
    .service-voice01 .voice {
        margin-left:20px
    }
    .news-article .article-heading {
        font-size:18px
    }
    .news-article .article-subHeading .subHeading_category {
        font-size:11px
    }
    .news-article .article-subHeading .subHeading_date {
        font-size:12px
    }
    .recruit-staff-column-3 .column-item+.column-item {
        margin-top:26px
    }
    .recruit-staff-column-3 .recruit-staff-text {
        margin-top:16px
    }
    .recruit-staff-column-3 .recruit-staff-text .text-heading {
        padding:.3em 10px;
        font-size:13px;
        line-height:2.4
    }
    .recruit-staff-column-3 .recruit-staff-text .text-name {
        margin-top:10px;
        font-size:18px
    }
    .recruit-staff-column-3 .recruit-staff-text .text-name span {
        margin-bottom:0;
        font-size:12px
    }
    .recruit-interview .interview-item .interview-title {
        position:static;
        margin-top:20px
    }
    .recruit-interview .interview-item .interview-title .title-text span {
        font-size:20px
    }
    .recruit-interview .interview-intro .interview-intro_team {
        font-size:13px
    }
    .recruit-position-heading3 {
        font-size:18px;
        margin-bottom:16px
    }
    .recruit-position-heading4 {
        font-size:13px;
        margin-bottom:14px
    }
    .recruit-position-worklife {
        margin-bottom:30px;
        padding:15px 0 10px
    }
    .recruit-buttons .column-item+.column-item {
        margin-top:20px
    }
    .recruit-buttons .recruit-button-wrap .recruit-button_white:after {
        width:12px;
        height:12px
    }
    .recruit-buttons .recruit-button-wrap .recruit-button_white:after {
        border-top-width:2px;
        border-right-width:2px
    }
    .recruit-buttons .recruit-button-wrap .recruit-button_white {
        padding:10px 30px;
        min-height:70px;
        font-size:14px
    }
    .recruit-buttons .recruit-button-wrap .recruit-button_white:after {
        right:20px
    }
    .recruit-position-link>ul>li:not(:last-child) {
        margin-bottom:20px
    }
    .recruit-position-link>ul>li>a:after {
        width:12px;
        height:12px
    }
    .recruit-position-link>ul>li>a:after {
        border-top-width:2px;
        border-right-width:2px
    }
    .recruit-position-link>ul>li>a {
        padding:10px 30px;
        min-height:70px;
        font-size:14px
    }
    .recruit-position-link>ul>li>a:after {
        right:20px
    }
    .recruit-column-3-button-type02 .column-item+.column-item {
        margin-top:20px
    }
    .recruit-cta {
        padding:30px 20px 140px
    }
    .recruit-cta .cta-button-wrap {
        margin-top:7px
    }
    .recruit-cta .cta-button-wrap .cta-button {
        font-size:14px
    }
    .recruit-guide-table .row-contents {
        padding-top:17px
    }
}
@media print,screen and (min-width:768px) {
    html:not(.__touchedevice) a[href^="tel:"] {
        cursor:default
    }
    .__accordion-button:not(.__sp) {
        cursor:pointer
    }
    .__accordion-button:not(.__sp) a[href] {
        pointer-events:none
    }
    html {
        scroll-padding-top:80px
    }
    body {
        min-width:var(--pc-min-width);
        /*padding-top:80px*/
    }
    html:not(.__touchedevice) a:not([class]) {
        transition-property:color;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.455,.03,.515,.955)
    }
    html:not(.__touchedevice) a[href^="tel:"] {
        cursor:default
    }
    .__accordion-button:not(.__sp) {
        cursor:pointer
    }
    .__accordion-button:not(.__sp) a[href] {
        pointer-events:none
    }
    ._sp {
        display:none!important
    }
    ._pc-w1200,.pc-w1200 {
        margin-left:auto;
        margin-right:auto;
        width:var(--pc-contents-width1200);
        max-width:100%
    }
    ._pc-w1000,.pc-w1000 {
        margin-left:auto;
        margin-right:auto;
        width:var(--pc-contents-width1000);
        max-width:100%
    }
    ._pc-w800,.pc-w800 {
        margin-left:auto;
        margin-right:auto;
        width:var(--pc-contents-width800);
        max-width:100%
    }
    ._pc-w700,.pc-w700 {
        margin-left:auto;
        margin-right:auto;
        width:var(--pc-contents-width700);
        max-width:100%
    }
    ._lc-pc-1 {
        display:-webkit-box;
        -webkit-box-orient:vertical;
        text-align:justify;
        overflow:hidden;
        -webkit-line-clamp:1
    }
    ._lc-pc-2 {
        display:-webkit-box;
        -webkit-box-orient:vertical;
        text-align:justify;
        overflow:hidden;
        -webkit-line-clamp:2
    }
    ._lc-pc-3 {
        display:-webkit-box;
        -webkit-box-orient:vertical;
        text-align:justify;
        overflow:hidden;
        -webkit-line-clamp:3
    }
    ._lh-pc-1 {
        line-height:1
    }
    ._t-pc-justify {
        text-align-last:left;
        text-align:justify;
        text-justify:inter-ideograph
    }
    ._t-pc-last-justify {
        text-align-last:justify
    }
    ._t-pc-center {
        text-align:center
    }
    ._t-pc-center picture>img,._t-pc-center>img {
        display:inline-block
    }
    ._t-pc-right {
        text-align:right
    }
    ._t-pc-right picture>img,._t-pc-right>img {
        display:inline-block
    }
    ._t-pc-underline {
        text-decoration:underline
    }
    ._bg-pc-black01 {
        color:#fff;
        background-color:var(--basecolor-black02)!important
    }
    ._bg-pc-gray01 {
        background-color:var(--basecolor-gray01)!important
    }
    ._bg-pc-red01 {
        background-color:var(--basecolor-red02)!important
    }
    ._bg-pc-cover {
        background-size:cover;
        background-position:center;
        background-repeat:no-repeat
    }
    ._bg-pc-contain {
        background-size:coutain;
        background-position:center;
        background-repeat:no-repeat
    }
    ._of-pc-cover {
        display:block;
        width:100%;
        height:100%;
        object-fit:cover;
        font-family:"object-fit: cover;
        "
    }
    ._of-pc-contain {
        display:block;
        width:100%;
        height:100%;
        object-fit:contain;
        font-family:"object-fit: contain;
        "
    }
    ._color-pc-white {
        color:#fff
    }
    ._color-pc-black {
        color:var(--basecolor-black01)!important
    }
    ._color-pc-red01 {
        color:var(--basecolor-red01)!important
    }
    ._color-pc-blue01 {
        color:var(--basecolor-blue01)!important
    }
    ._wb-pc-break {
        word-break:break-all
    }
    ._f-pc-black {
        font-weight:900!important
    }
    ._f-pc-bold {
        font-weight:700!important
    }
    ._f-pc-bolder {
        font-weight:600!important
    }
    ._f-pc-medium {
        font-weight:500!important
    }
    ._f-pc-regular {
        font-weight:400!important
    }
    ._flex-pc {
        display:flex!important
    }
    ._flex-pc-j-between {
        justify-content:space-between!important
    }
    ._flex-pc-j-start {
        justify-content:flex-start!important
    }
    ._flex-pc-j-center {
        justify-content:center!important
    }
    ._flex-pc-j-end {
        justify-content:flex-end!important
    }
    ._flex-pc-a-start {
        align-items:flex-start!important
    }
    ._flex-pc-a-center {
        align-items:center!important
    }
    ._flex-pc-a-end {
        align-items:flex-end!important
    }
    ._flex-pc-d-column {
        flex-direction:column!important
    }
    ._flex-pc-d-row {
        flex-direction:row!important
    }
    ._bd-pc-bottom01 {
        border-bottom:1px solid var(--basecolor-gray02)
    }
    ._bd-pc-top01 {
        border-top:1px solid var(--basecolor-gray02)
    }
    ._ico-pc-plus {
        display:inline-block;
        position:relative;
        width:.9em;
        height:.9em
    }
    ._ico-pc-plus:after,._ico-pc-plus:before {
        content:"";
        margin:auto;
        border-radius:100px;
        position:absolute;
        top:0;
        left:0;
        bottom:0;
        right:0;
        transition-property:transform;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.455,.03,.515,.955)
    }
    ._ico-pc-plus:before {
        width:100%;
        height:0;
        border-bottom:2px solid
    }
    ._ico-pc-plus:after {
        width:0;
        height:100%;
        border-right:2px solid
    }
    [aria-expanded=true] ._ico-pc-plus:before {
        transform:rotate(180deg)
    }
    [aria-expanded=true] ._ico-pc-plus:after {
        transform:rotate(90deg)
    }
    ._mt-pc-0,.mt-pc-0 {
        margin-top:0!important
    }
    ._mb-pc-0,.mb-pc-0 {
        margin-bottom:0!important
    }
    ._pt-pc-0,.pt-pc-0 {
        padding-top:0!important
    }
    ._pb-pc-0,.pb-pc-0 {
        padding-bottom:0!important
    }
    ._mt-pc-10,.mt-pc-10 {
        margin-top:10px!important
    }
    ._mb-pc-10,.mb-pc-10 {
        margin-bottom:10px!important
    }
    ._pt-pc-10,.pt-pc-10 {
        padding-top:10px!important
    }
    ._pb-pc-10,.pb-pc-10 {
        padding-bottom:10px!important
    }
    ._mt-pc-20,.mt-pc-20 {
        margin-top:20px!important
    }
    ._mb-pc-20,.mb-pc-20 {
        margin-bottom:20px!important
    }
    ._pt-pc-20,.pt-pc-20 {
        padding-top:20px!important
    }
    ._pb-pc-20,.pb-pc-20 {
        padding-bottom:20px!important
    }
    ._mt-pc-30,.mt-pc-30 {
        margin-top:30px!important
    }
    ._mb-pc-30,.mb-pc-30 {
        margin-bottom:30px!important
    }
    ._pt-pc-30,.pt-pc-30 {
        padding-top:30px!important
    }
    ._pb-pc-30,.pb-pc-30 {
        padding-bottom:30px!important
    }
    ._mt-pc-40,.mt-pc-40 {
        margin-top:40px!important
    }
    ._mb-pc-40,.mb-pc-40 {
        margin-bottom:40px!important
    }
    ._pt-pc-40,.pt-pc-40 {
        padding-top:40px!important
    }
    ._pb-pc-40,.pb-pc-40 {
        padding-bottom:40px!important
    }
    ._mt-pc-50,.mt-pc-50 {
        margin-top:50px!important
    }
    ._mb-pc-50,.mb-pc-50 {
        margin-bottom:50px!important
    }
    ._pt-pc-50,.pt-pc-50 {
        padding-top:50px!important
    }
    ._pb-pc-50,.pb-pc-50 {
        padding-bottom:50px!important
    }
    ._mt-pc-60,.mt-pc-60 {
        margin-top:60px!important
    }
    ._mb-pc-60,.mb-pc-60 {
        margin-bottom:60px!important
    }
    ._pt-pc-60,.pt-pc-60 {
        padding-top:60px!important
    }
    ._pb-pc-60,.pb-pc-60 {
        padding-bottom:60px!important
    }
    ._mt-pc-70,.mt-pc-70 {
        margin-top:70px!important
    }
    ._mb-pc-70,.mb-pc-70 {
        margin-bottom:70px!important
    }
    ._pt-pc-70,.pt-pc-70 {
        padding-top:70px!important
    }
    ._pb-pc-70,.pb-pc-70 {
        padding-bottom:70px!important
    }
    ._mt-pc-80,.mt-pc-80 {
        margin-top:80px!important
    }
    ._mb-pc-80,.mb-pc-80 {
        margin-bottom:80px!important
    }
    ._pt-pc-80,.pt-pc-80 {
        padding-top:80px!important
    }
    ._pb-pc-80,.pb-pc-80 {
        padding-bottom:80px!important
    }
    ._mt-pc-90,.mt-pc-90 {
        margin-top:90px!important
    }
    ._mb-pc-90,.mb-pc-90 {
        margin-bottom:90px!important
    }
    ._pt-pc-90,.pt-pc-90 {
        padding-top:90px!important
    }
    ._pb-pc-90,.pb-pc-90 {
        padding-bottom:90px!important
    }
    ._mt-pc-100,.mt-pc-100 {
        margin-top:100px!important
    }
    ._mb-pc-100,.mb-pc-100 {
        margin-bottom:100px!important
    }
    ._pt-pc-100,.pt-pc-100 {
        padding-top:100px!important
    }
    ._pb-pc-100,.pb-pc-100 {
        padding-bottom:100px!important
    }
    ._mt-pc-110,.mt-pc-110 {
        margin-top:110px!important
    }
    ._mb-pc-110,.mb-pc-110 {
        margin-bottom:110px!important
    }
    ._pt-pc-110,.pt-pc-110 {
        padding-top:110px!important
    }
    ._pb-pc-110,.pb-pc-110 {
        padding-bottom:110px!important
    }
    ._mt-pc-120,.mt-pc-120 {
        margin-top:120px!important
    }
    ._mb-pc-120,.mb-pc-120 {
        margin-bottom:120px!important
    }
    ._pt-pc-120,.pt-pc-120 {
        padding-top:120px!important
    }
    ._pb-pc-120,.pb-pc-120 {
        padding-bottom:120px!important
    }
    ._mt-pc-130,.mt-pc-130 {
        margin-top:130px!important
    }
    ._mb-pc-130,.mb-pc-130 {
        margin-bottom:130px!important
    }
    ._pt-pc-130,.pt-pc-130 {
        padding-top:130px!important
    }
    ._pb-pc-130,.pb-pc-130 {
        padding-bottom:130px!important
    }
    ._mt-pc-140,.mt-pc-140 {
        margin-top:140px!important
    }
    ._mb-pc-140,.mb-pc-140 {
        margin-bottom:140px!important
    }
    ._pt-pc-140,.pt-pc-140 {
        padding-top:140px!important
    }
    ._pb-pc-140,.pb-pc-140 {
        padding-bottom:140px!important
    }
    ._mt-pc-150,.mt-pc-150 {
        margin-top:150px!important
    }
    ._mb-pc-150,.mb-pc-150 {
        margin-bottom:150px!important
    }
    ._pt-pc-150,.pt-pc-150 {
        padding-top:150px!important
    }
    ._pb-pc-150,.pb-pc-150 {
        padding-bottom:150px!important
    }
    ._mt-pc-160,.mt-pc-160 {
        margin-top:160px!important
    }
    ._mb-pc-160,.mb-pc-160 {
        margin-bottom:160px!important
    }
    ._pt-pc-160,.pt-pc-160 {
        padding-top:160px!important
    }
    ._pb-pc-160,.pb-pc-160 {
        padding-bottom:160px!important
    }
    ._mt-pc-170,.mt-pc-170 {
        margin-top:170px!important
    }
    ._mb-pc-170,.mb-pc-170 {
        margin-bottom:170px!important
    }
    ._pt-pc-170,.pt-pc-170 {
        padding-top:170px!important
    }
    ._pb-pc-170,.pb-pc-170 {
        padding-bottom:170px!important
    }
    ._mt-pc-180,.mt-pc-180 {
        margin-top:180px!important
    }
    ._mb-pc-180,.mb-pc-180 {
        margin-bottom:180px!important
    }
    ._pt-pc-180,.pt-pc-180 {
        padding-top:180px!important
    }
    ._pb-pc-180,.pb-pc-180 {
        padding-bottom:180px!important
    }
    ._mt-pc-190,.mt-pc-190 {
        margin-top:190px!important
    }
    ._mb-pc-190,.mb-pc-190 {
        margin-bottom:190px!important
    }
    ._pt-pc-190,.pt-pc-190 {
        padding-top:190px!important
    }
    ._pb-pc-190,.pb-pc-190 {
        padding-bottom:190px!important
    }
    ._mt-pc-200,.mt-pc-200 {
        margin-top:200px!important
    }
    ._mb-pc-200,.mb-pc-200 {
        margin-bottom:200px!important
    }
    ._pt-pc-200,.pt-pc-200 {
        padding-top:200px!important
    }
    ._pb-pc-200,.pb-pc-200 {
        padding-bottom:200px!important
    }
    ._w-pc-100per {
        width:100%
    }
    html:not(.__touchdevice) .cmp-textlink01 {
        transition-property:opacity;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.645,.045,.355,1)
    }
    html:not(.__touchdevice) .cmp-textlink01:hover {
        opacity:.6
    }
    html:not(.__touchdevice) .cmp-textlink01._arrow01[href] {
        transition-property:opacity;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.645,.045,.355,1)
    }
    html:not(.__touchdevice) .cmp-textlink01._arrow01[href]:hover {
        opacity:.6
    }
    html:not(.__touchdevice) .cmp-textlink01._arrow01[href]:hover:after {
        transform:translate(3px,0) rotate(45deg)
    }
    html:not(.__touchdevice) .cmp-button_type01 {
        transition-property:background-color,opacity;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.645,.045,.355,1)
    }
    html:not(.__touchdevice) .cmp-button_type01 {
        transition-property:opacity;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.645,.045,.355,1)
    }
    html:not(.__touchdevice) .cmp-button_type01:hover:not[disabled] {
        opacity:.7
    }
    html:not(.__touchdevice) .cmp-button_type02 {
        transition-property:background-color,opacity;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.645,.045,.355,1)
    }
    html:not(.__touchdevice) .cmp-button_type02 {
        transition-property:opacity;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.645,.045,.355,1)
    }
    html:not(.__touchdevice) .cmp-button_type02:hover:not[disabled] {
        opacity:.7
    }
    html:not(.__touchdevice) .cmp-button_type03 {
        transition-property:background-color,opacity;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.645,.045,.355,1)
    }
    html:not(.__touchdevice) .cmp-button_type03 {
        transition-property:opacity;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.645,.045,.355,1)
    }
    html:not(.__touchdevice) .cmp-button_type03:hover:not[disabled] {
        opacity:.7
    }
    [class*=cmp-section] {
        padding-left:calc(20px + env(safe-area-inset-left));
        padding-right:calc(20px + env(safe-area-inset-right))
    }
    [class*=cmp-sbs] {
        display:flex;
        align-items:flex-start
    }
    [class*=cmp-sbs]._reverse {
        flex-direction:row-reverse
    }
    [class*=cmp-sbs]>img,[class*=cmp-sbs]>picture {
        flex-shrink:0
    }
    [class*=cmp-sbs] .sbs-text {
        flex:1;
        margin:auto 0
    }
    .cmp-sbs_type01:not(._reverse)>img {
        margin-right:80px
    }
    .cmp-sbs_type01._reverse>img {
        margin-left:80px
    }
    .cmp-sbs_type01>img,.cmp-sbs_type01>picture>img {
        width:calc(50% - 40px)
    }
    .cmp-sbs_type02>img,.cmp-sbs_type02>picture>img {
        width:calc(50% + 80px)
    }
    .cmp-sbs_type02 .sbs-text {
        padding-left:40px
    }
    [class*=cmp-column] .column_inner {
        display:flex;
        flex-wrap:wrap
    }
    [class*=cmp-column] .column-item._flex-pc._flex-pc-d-column>[class^=cmp-block] {
        flex:1
    }
    html:not(.__touchdevice) [class*=cmp-column]._link .column-item[href]:hover .item-img .cmp-heading3_type01 {
        background-color:rgba(0,0,0,.25)
    }
    html:not(.__touchdevice) [class*=cmp-column]._interview .column-item[href] {
        transition-property:opacity;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.645,.045,.355,1)
    }
    html:not(.__touchdevice) [class*=cmp-column]._interview .column-item[href]:hover {
        opacity:.6
    }
    html:not(.__touchdevice) [class*=cmp-column]._interview .column-item[href]:hover .item-text .cmp-heading3_type01 {
        text-decoration:none
    }
    [class*=cmp-column-2]+[class*=cmp-column-2] {
        margin-top:80px
    }
    [class*=cmp-column-2] .column_inner {
        display:flex;
        flex-wrap:wrap;
        margin-left:-40px;
        margin-right:-40px;
        margin-bottom:-80px
    }
    [class*=cmp-column-2] .column_inner>* {
        margin:0 40px 80px;
        width:calc(100% / 2 - 80px)
    }
    .cmp-column-2_type02 .column_inner {
        display:flex;
        flex-wrap:wrap;
        margin-left:-22.5px;
        margin-right:-22.5px;
        margin-bottom:-45px
    }
    .cmp-column-2_type02 .column_inner>* {
        margin:0 22.5px 45px;
        width:calc(100% / 2 - 45px)
    }
    .cmp-column-2_type02 .item-heading {
        min-height:100px
    }
    .cmp-column-2_type02 .column-item {
        display:flex;
        flex-direction:column;
        height:auto
    }
    .cmp-column-2_type02 .item-contents {
        flex:1;
        display:flex;
        flex-direction:column
    }
    .cmp-column-2_type02 .contents-text {
        margin-bottom:16px
    }
    .cmp-column-2_type02 .cmp-buttons_wrap01 {
        margin-top:auto
    }
    [class*=cmp-column-3]+[class*=cmp-column-3] {
        margin-top:45px
    }
    [class*=cmp-column-3] .column_inner {
        display:flex;
        flex-wrap:wrap;
        margin-left:-22.5px;
        margin-right:-22.5px;
        margin-bottom:-45px
    }
    [class*=cmp-column-3] .column_inner>* {
        margin:0 22.5px 45px;
        width:calc(100% / 3 - 45px);
    }
    .column_inner #Group03 {
        padding-top:110px;
        margin-top:-110px;
    }
    .column_inner #Group04 {
        padding-top:110px;
        margin-top:-110px;
    }
    .column_inner #Group05 {
        padding-top:110px;
        margin-top:-110px;
    }
    .column-item#SDGs01 {
        padding-top:110px;
        margin-top:-110px;
    }
    .column-item#SDGs02 {
        padding-top:110px;
        margin-top:-110px;
    }
    .column-item#SDGs03 {
        padding-top:110px;
        margin-top:-110px;
    }
    .column-item#SDGs04 {
        padding-top:110px;
        margin-top:-110px;
    }


    .cmp-column-3_type04 .item-heading {
        min-height:100px
    }
    .cmp-column-3_type05 .column-item {
        display:flex;
        flex-direction:column;
        height:auto
    }
    .cmp-column-3_type05 .item-contents {
        margin-bottom:28px
    }
    .cmp-column-3_type05 .cmp-buttons_wrap01 {
        margin-top:auto
    }
    .cmp-service01 {
        border-radius:20px;
        padding:40px 200px
    }
    .cmp-service01 .service-link_wrap {
        display:flex;
        flex-wrap:wrap;
        margin-left:-10px;
        margin-right:-10px;
        margin-bottom:-20px
    }
    .cmp-service01 .service-link_wrap>* {
        margin:0 10px 20px;
        width:calc(100% / 2 - 20px)
    }
    html:not(.__touchdevice) .cmp-service01 .link[href] {
        transition-property:opacity;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.645,.045,.355,1)
    }
    html:not(.__touchdevice) .cmp-service01 .link[href]:hover {
        opacity:.6
    }
    html:not(.__touchdevice) .cmp-service01 .link[href]:hover:after {
        transform:translate(3px,0) rotate(45deg)
    }
    .cmp-service02 {
        display:flex;
        flex-wrap:wrap
    }
    .cmp-service02 .service-link {
        display:flex;
        justify-content:center;
        width:50%
    }
    .cmp-service02 .service-link:nth-child(2n+2) {
        border-left:1px solid var(--basecolor-gray02)
    }
    .cmp-service02 .service-link:not(:nth-child(-n+2)) {
        border-top:1px solid var(--basecolor-gray02)
    }
    html:not(.__touchdevice) .cmp-service02 .service-link .link {
        transition-property:opacity;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.645,.045,.355,1)
    }
    html:not(.__touchdevice) .cmp-service02 .service-link .link:hover {
        opacity:.6
    }
    .cmp-service02 .service-link .link {
        padding:10px 0
    }
    .cmp-partner-links .partner-links_wrap {
        display:flex;
        flex-wrap:wrap;
        margin-left:-15px;
        margin-right:-15px;
        margin-bottom:-30px
    }
    .cmp-partner-links .partner-links_wrap>* {
        margin:0 15px 30px;
        width:calc(100% / 3 - 30px)
    }
    html:not(.__touchdevice) .cmp-news-links .link a[href] {
        transition-property:opacity;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.645,.045,.355,1)
    }
    html:not(.__touchdevice) .cmp-news-links .link a[href]:hover {
        opacity:.6
    }
    .cmp-news-links .link-category+* {
        margin-left:40px
    }
    .cmp-archive-links {
        display:flex;
        justify-content:flex-end
    }
    .cmp-archive-links .link {
        margin:0 5px 10px;
        width:120px
    }
    html:not(.__touchdevice) .cmp-archive-links .link>a[href] {
        transition-property:opacity;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.645,.045,.355,1)
    }
    html:not(.__touchdevice) .cmp-archive-links .link>a[href]:hover {
        opacity:.6
    }
    html:not(.__touchdevice) .cmp-archive-links .link>a[href]:hover:after {
        transform:translate(3px,0) rotate(45deg)
    }
    .cmp-table01 .table-row {
        display:flex
    }
    .cmp-table01 .row-heading {
        flex-shrink:0;
        width:240px
    }
    .cmp-table01 .row-contents {
        flex:1
    }
    .cmp-secondpage-header01 {
        box-sizing:content-box;
        max-width:calc(100% - 40px - env(safe-area-inset-right) - env(safe-area-inset-left))
    }
    .cmp-secondpage-header01>* {
        flex-shrink:0
    }
    .cmp-secondpage-header01 .header-img {
        height:440px;
        margin-left:auto
    }
    .cmp-secondpage-header01 .header-img img {
        border-radius:40px
    }
    .cmp-thirdpage-header01 .header-description {
        text-align:center
    }
    .cmp-navigation01 .navigation-links._column2 {
        display:flex;
        flex-wrap:wrap;
        margin-left:-20px;
        margin-right:-20px;
        margin-bottom:-40px
    }
    .cmp-navigation01 .navigation-links._column2>* {
        margin:0 20px 40px;
        width:calc(100% / 2 - 40px)
    }
    .cmp-navigation01 .navigation-links._column3 {
        display:flex;
        flex-wrap:wrap;
        margin-left:-20px;
        margin-right:-20px;
        margin-bottom:-40px
    }
    .cmp-navigation01 .navigation-links._column3>* {
        margin:0 20px 40px;
        width:calc(100% / 3 - 40px)
    }
    html:not(.__touchdevice) .cmp-navigation01 .link>a {
        transition-property:opacity;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.645,.045,.355,1)
    }
    html:not(.__touchdevice) .cmp-navigation01 .link>a:hover {
        opacity:.6
    }
    .cmp-header {
        border-top:3px solid var(--basecolor-red01);
        width:100%;
        min-width:var(--pc-min-width);
        height:80px;
        position:fixed;
        left:0;
        top:0;
        z-index:1000;
        box-shadow:0 2px 10px rgba(0,0,0,.07);
        transition-property:height,box-shadow,background,transform;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.455,.03,.515,.955)
    }
    .cmp-header:before {
        content:"";
        display:block;
        width:100%;
        height:100%;
        background-color:#fff;
        position:absolute;
        top:0;
        left:0;
        pointer-events:none
    }
    .cmp-header .header_pc_wrap {
        display:flex;
        justify-content:flex-end;
        box-sizing:content-box;
        height:100%;
        max-width:calc(100% - 40px - env(safe-area-inset-right) - env(safe-area-inset-left))
    }
    .page_top .cmp-header:not(.__duplicate) {
        border-top-width:0;
        position:absolute;
        top:0
    }
    .page_top .cmp-header:not(.__duplicate) .header-logo .logo-image>img {
        width:150px
    }
    .page_top .cmp-header.__duplicate {
        transform:translateY(-120%);
        z-index:999
    }
    .__duplicate-header-view .cmp-header.__duplicate {
        transform:translateY(0)
    }
    html:not(.__touchedevice) .cmp-header .header-logo>a {
        transition-property:opacity;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.455,.03,.515,.955)
    }
    html:not(.__touchedevice) .cmp-header .header-logo>a:hover img {
        opacity:.6
    }
    .cmp-header .header-logo .logo-image img {
        width:120px;
        transition-property:width,height,opacity;
        transition-duration:1s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.455,.03,.515,.955)
    }
    .cmp-header .header-navigation {
        display:flex;
        align-items:center;
        flex-direction:row-reverse;
        height:100%
    }
    .cmp-header .navigation-main {
        margin:0 -20px;
        height:100%;
        display:flex;
        justify-content:center
    }
    .cmp-header .main-link {
        height:100%
    }
    .cmp-header .main-link.__hover-active .link-sub_wrap {
        opacity:1;
        pointer-events:auto;
        transform:translateY(0)
    }
    html:not(.__touchdevice) .cmp-header .main-link.__hover-active>a,html:not(.__touchdevice) .cmp-header .main-link.__hover-active>button,html:not(.__touchdevice) .cmp-header .main-link.__hover-active>span {
        transition-property:opacity;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.645,.045,.355,1)
    }
    html:not(.__touchdevice) .cmp-header .main-link.__hover-active>a:hover,html:not(.__touchdevice) .cmp-header .main-link.__hover-active>button:hover,html:not(.__touchdevice) .cmp-header .main-link.__hover-active>span:hover {
        opacity:.6
    }
    html:not(.__touchdevice) .cmp-header .main-link.__hover-active>a:hover ._ico-sp-plus,html:not(.__touchdevice) .cmp-header .main-link.__hover-active>button:hover ._ico-sp-plus,html:not(.__touchdevice) .cmp-header .main-link.__hover-active>span:hover ._ico-sp-plus {
        transform:translateY(3px)
    }
    .cmp-header .main-link>a,.cmp-header .main-link>button,.cmp-header .main-link>span {
        padding:0 20px;
        height:100%;
        cursor:pointer;
        letter-spacing:.03em
    }
    .cmp-header .link-sub-button ._ico-sp-plus {
        margin-top:-5px;
        margin-left:8px;
        margin-right:4px;
        width:8px;
        height:8px;
        position:relative;
        transition-property:transform;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.455,.03,.515,.955)
    }
    .cmp-header .link-sub-button ._ico-sp-plus:after {
        content:"";
        display:block;
        width:8px;
        height:8px;
        position:absolute;
        transform:rotate(45deg);
        transition-property:transform;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.455,.03,.515,.955)
    }
    .cmp-header .link-sub-button ._ico-sp-plus:after {
        border-right:1px solid;
        border-bottom:1px solid
    }
    .cmp-header .link-sub-button ._ico-sp-plus:after {
        top:0;
        left:0
    }
    .cmp-header .link-sub_wrap {
        padding:24px 24px;
        width:296px;
        background-color:var(--basecolor-black02);
        color:#fff;
        font-size:14px;
        letter-spacing:.03em;
        position:absolute;
        top:100%;
        opacity:0;
        pointer-events:none;
        transform:translateY(-20px);
        transition-property:opacity,transform,top;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.455,.03,.515,.955);
        z-index:-1
    }
    html:not(.__touchdevice) .cmp-header .link-sub_wrap .sub-link>a {
        transition-property:opacity;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.645,.045,.355,1)
    }
    html:not(.__touchdevice) .cmp-header .link-sub_wrap .sub-link>a:hover {
        opacity:.6
    }
    html:not(.__touchdevice) .cmp-header .link-sub_wrap .sub-link>a[href] {
        transition-property:opacity;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.645,.045,.355,1)
    }
    html:not(.__touchdevice) .cmp-header .link-sub_wrap .sub-link>a[href]:hover {
        opacity:.6
    }
    html:not(.__touchdevice) .cmp-header .link-sub_wrap .sub-link>a[href]:hover:after {
        transform:translate(3px,0) rotate(45deg)
    }
    .cmp-conversion-links .top-link_wrap {
        display:flex;
        flex-wrap:wrap;
        margin-left:-15px;
        margin-right:-15px;
        margin-bottom:-30px
    }
    .cmp-conversion-links .top-link_wrap>* {
        margin:0 15px 30px;
        width:calc(100% / 3 - 30px)
    }
    html:not(.__touchdevice) .cmp-footer a {
        transition-property:opacity;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.645,.045,.355,1)
    }
    html:not(.__touchdevice) .cmp-footer a:hover {
        opacity:.6
    }
    .cmp-footer .footer-sitemap {
        padding-left:calc(20px + env(safe-area-inset-left));
        padding-right:calc(20px + env(safe-area-inset-right))
    }
    .cmp-footer .sitemap-top {
        display:flex;
        justify-content:space-between;
        padding-bottom:80px
    }
    .cmp-footer .top-second {
        display:flex;
        flex-wrap:wrap;
        padding-top:40px;
        width:780px
    }
    .cmp-footer .second-list_wrap:not(:nth-child(3n+3)) {
        width:29%
    }
    .cmp-footer .second-list_wrap:not(:nth-child(3n+3)):last-child {
        width:71%
    }
    .cmp-footer .second-list_wrap:nth-child(3n+3) {
        width:42%
    }
    .cmp-footer .second-list_wrap:not(:nth-child(-n+3)) {
        margin-top:32px
    }
    .cmp-footer .second-list_wrap .list-heading:after {
        content:"";
        display:block;
        margin-top:4px;
        border-bottom:2px solid var(--basecolor-gray02);
        width:20px
    }
    .cmp-footer .second-list_wrap .list-heading+.list-contents {
        margin-top:12px
    }
    .cmp-footer .second-list_wrap .list-contents {
        font-size:14px;
        letter-spacing:.03em
    }
    .cmp-footer .sitemap-bottom {
        display:flex;
        flex-direction:row-reverse;
        justify-content:flex-end;
        align-items:center
    }
    .cmp-footer .bottom-links {
        display:flex;
        margin-left:180px
    }
    .cmp-footer .bottom-links .link+.link {
        margin-left:40px
    }
    .cmp-topicpath {
        padding-left:calc(20px + env(safe-area-inset-left));
        padding-right:calc(20px + env(safe-area-inset-right))
    }
    html:not(.__touchdevice) .cmp-pagetop {
        transition-property:filter,transform;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.645,.045,.355,1)
    }
    html:not(.__touchdevice) .cmp-pagetop:hover {
        filter:opacity(.6)
    }
    ._fp-email01,._fp-number01,._fp-tel01,._fp-text01,._fp-textarea01 {
        transition-property:background-color,border-color;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.455,.03,.515,.955)
    }
    html:not(.__touchedevice) ._fp-email01:not(:focus):hover,html:not(.__touchedevice) ._fp-number01:not(:focus):hover,html:not(.__touchedevice) ._fp-tel01:not(:focus):hover,html:not(.__touchedevice) ._fp-text01:not(:focus):hover,html:not(.__touchedevice) ._fp-textarea01:not(:focus):hover {
        background-color:var(--fp-hover-color)
    }
    html:not(.__touchedevice) ._fp-radio01:hover>input[type=radio]:not(:checked):not(:focus)+span:before {
        background-color:var(--fp-hover-color)
    }
    html:not(.__touchedevice) ._fp-checkbox01:hover>input[type=radio]:not(:checked):not(:focus)+span:before {
        background-color:var(--fp-hover-color)
    }
    html:not(.__touchdevice) ._fp-checkbox01>a:hover {
        text-decoration:none
    }
    .top-mainvisual .mainvisual-decoration {
        bottom:50px
    }
    html:not(.__touchdevice) .top-recruitInfo .cmp-sbs_type01 {
        transition-property:opacity;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.645,.045,.355,1)
    }
    html:not(.__touchdevice) .top-recruitInfo .cmp-sbs_type01:hover {
        opacity:.7
    }
    .top-recruitInfo .cmp-sbs_type01:not(._reverse)>img {
        margin-right:40px
    }
    .service-subscription {
        display:flex;
        align-items:center
    }
    .service-subscription .subscription-heading {
        flex-shrink:0
    }
    .service-voice01 {
        height:100%
    }
    .service-voice01 .voice-heading {
        min-height:100px
    }
    .service-voice01 .voice-profile {
        display:flex;
        align-items:flex-end
    }
    .service-voice01 .voice-profile .profile-name {
        padding-bottom:16px;
        margin-left:20px
    }
    .service-voice01 .voice {
        margin-top:16px
    }
    .recruit-buttons.cmp-column-3_type01 .column_inner {
        display:flex;
        flex-wrap:wrap;
        margin-left:-15px;
        margin-right:-15px;
        margin-bottom:-30px
    }
    .recruit-buttons.cmp-column-3_type01 .column_inner>* {
        margin:0 15px 30px;
        width:calc(100% / 3 - 30px)
    }
    html:not(.__touchdevice) .recruit-buttons .recruit-button-wrap .recruit-button_white[href] {
        transition-property:opacity;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.645,.045,.355,1)
    }
    html:not(.__touchdevice) .recruit-buttons .recruit-button-wrap .recruit-button_white[href]:hover {
        opacity:.6
    }
    html:not(.__touchdevice) .recruit-buttons .recruit-button-wrap .recruit-button_white[href]:hover:after {
        transform:translate(3px,0) rotate(45deg)
    }
    .recruit-position-link>ul {
        display:flex;
        flex-wrap:wrap;
        justify-content:center;
        margin-left:-15px;
        margin-right:-15px;
        margin-bottom:-40px
    }
    .recruit-position-link>ul>li {
        margin:0 15px 40px;
        width:calc(33.3333333333% - 30px)
    }
    html:not(.__touchdevice) .recruit-position-link>ul>li>a[href] {
        transition-property:opacity;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.645,.045,.355,1)
    }
    html:not(.__touchdevice) .recruit-position-link>ul>li>a[href]:hover {
        opacity:.6
    }
    html:not(.__touchdevice) .recruit-position-link>ul>li>a[href]:hover:after {
        transform:translate(3px,0) rotate(45deg)
    }
    .recruit-column-3-button-type02 .column_inner {
        display:flex;
        flex-wrap:wrap;
        margin-left:-15px;
        margin-right:-15px;
        margin-bottom:-30px
    }
    .recruit-column-3-button-type02 .column_inner>* {
        margin:0 15px 30px;
        width:calc(100% / 3 - 30px)
    }
    .recruit-cta {
        border-radius:20px
    }
    html:not(.__touchdevice) .recruit-cta .cta-button-wrap .cta-button {
        transition-property:opacity,transform;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.645,.045,.355,1)
    }
    html:not(.__touchdevice) .recruit-cta .cta-button-wrap .cta-button:hover {
        opacity:.7
    }
}
@media screen and (min-width:768px) and (max-width:767px) {
    ._ico-pc-plus {
        width:16px;
        height:16px
    }
    .cmp-header .link-sub-button ._ico-sp-plus:after {
        width:12px;
        height:12px
    }
    .cmp-header .link-sub-button ._ico-sp-plus:after {
        border-right-width:2px;
        border-bottom-width:2px
    }
}
@media screen and (max-width:767px) and (max-width:767px) {
    .column_inner #Group03 {
        padding-top:60px;
        margin-top:-60px;
    }
    .column_inner #Group04 {
        padding-top:60px;
        margin-top:-60px;
    }
    .column_inner #Group05 {
        padding-top:60px;
        margin-top:-60px;
    }
    .column-item#SDGs01 {
        padding-top:92px;
        margin-top:-92px;
    }
    .column-item#SDGs02 {
        padding-top:92px;
        margin-top:-60px;
    }
    .column-item#SDGs03 {
        padding-top:92px;
        margin-top:-60px;
    }
    .column-item#SDGs04 {
        padding-top:92px;
        margin-top:-60px;
    }

    ._ico-sp-plus {
        width:16px;
        height:16px
    }
    .cmp-header .main-link>a:after {
        width:12px;
        height:12px
    }
    .cmp-header .main-link>a:after {
        border-top-width:2px;
        border-right-width:2px
    }
    .cmp-footer .first-links>.link>a:after {
        width:12px;
        height:12px
    }
    .cmp-footer .first-links>.link>a:after {
        border-top-width:2px;
        border-right-width:2px
    }
    .cmp-footer .second-list_wrap .list-contents .content-link>a:after {
        width:12px;
        height:12px
    }
    .cmp-footer .second-list_wrap .list-contents .content-link>a:after {
        border-top-width:2px;
        border-right-width:2px
    }
    .cmp-footer .second-list_wrap .list-contents .content-link>a:after {
        right:20px
    }
}
@media print,screen and (min-width:768px) and (min-width:768px) {
    .cmp-secondpage-header01 {
        padding-left:calc(20px + env(safe-area-inset-left));
        padding-right:calc(20px + env(safe-area-inset-right))
    }
    .cmp-header .header_pc_wrap {
        padding-left:calc(20px + env(safe-area-inset-left));
        padding-right:calc(20px + env(safe-area-inset-right))
    }
    html:not(.__touchdevice) .cmp-header .main-link>a,html:not(.__touchdevice) .cmp-header .main-link>button,html:not(.__touchdevice) .cmp-header .main-link>span {
        transition-property:opacity;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.645,.045,.355,1)
    }
    html:not(.__touchdevice) .cmp-header .main-link>a:hover,html:not(.__touchdevice) .cmp-header .main-link>button:hover,html:not(.__touchdevice) .cmp-header .main-link>span:hover {
        opacity:.6
    }
    html:not(.__touchdevice) .cmp-header .link-sub-button ._ico-sp-plus[href] {
        transition-property:opacity;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.645,.045,.355,1)
    }
    html:not(.__touchdevice) .cmp-header .link-sub-button ._ico-sp-plus[href]:hover {
        opacity:.6
    }
    html:not(.__touchdevice) .cmp-header .link-sub-button ._ico-sp-plus[href]:hover:after {
        transform:translate(0,3px) rotate(45deg)
    }
}
@media print {
    .cmp-header {
        position:relative!important
    }
    .cmp-pagetop {
        display:none!important
    }
}
@media print,screen and (min-width:768px) and (max-width:1600px) {
    .cmp-header .navigation-main {
        margin:0 -10px
    }
}
@media print and (min-width:768px) and (max-width:1560px),screen and (min-width:768px) and (min-width:768px) and (max-width:1560px) {
    .cmp-header .main-link:last-child .link-sub_wrap {
        right:0
    }
}
@media print and (min-width:768px) and (max-width:1300px),screen and (min-width:768px) and (min-width:768px) and (max-width:1300px) {
    .cmp-header .main-link:nth-last-child(2) .link-sub_wrap {
        right:0
    }
}
@media screen and (max-width:767px) and (min-width:768px) {
    html:not(.__touchdevice) .cmp-header .main-link>a[href] {
        transition-property:opacity;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.645,.045,.355,1)
    }
    html:not(.__touchdevice) .cmp-header .main-link>a[href]:hover {
        opacity:.6
    }
    html:not(.__touchdevice) .cmp-header .main-link>a[href]:hover:after {
        transform:translate(3px,0) rotate(45deg)
    }
    html:not(.__touchdevice) .cmp-footer .first-links>.link>a[href] {
        transition-property:opacity;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.645,.045,.355,1)
    }
    html:not(.__touchdevice) .cmp-footer .first-links>.link>a[href]:hover {
        opacity:.6
    }
    html:not(.__touchdevice) .cmp-footer .first-links>.link>a[href]:hover:after {
        transform:translate(3px,0) rotate(45deg)
    }
    html:not(.__touchdevice) .cmp-footer .second-list_wrap .list-contents .content-link>a[href] {
        transition-property:opacity;
        transition-duration:.5s;
        transition-delay:0s;
        transition-timing-function:cubic-bezier(.645,.045,.355,1)
    }
    html:not(.__touchdevice) .cmp-footer .second-list_wrap .list-contents .content-link>a[href]:hover {
        opacity:.6
    }
    html:not(.__touchdevice) .cmp-footer .second-list_wrap .list-contents .content-link>a[href]:hover:after {
        transform:translate(3px,0) rotate(45deg)
    }
}