body {
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-weight: 500;
    font-style: normal;
    color: #333;
}

.breadcrumb {
    margin-top: 15px;
}

.breadcrumb-list li:after {
    content: ">";
    position: relative;
    top: -1.5px
}

.breadcrumb-list li a {
    text-decoration: none;
    color: #05ABF0;
}

.breadcrumb-list li i {
    display: none;
}

.breadcrumb-list li:last-child span {
    display: inline-block;
    overflow: hidden;
    white-space: nowrap;
    vertical-align: bottom;
}

.page-id-3 .breadcrumb-list li:last-child span,
.page-id-517 .breadcrumb-list li:last-child span {
    width: 5em;
}

.page-id-8 .breadcrumb-list li:last-child span,
.page-id-9 .breadcrumb-list li:last-child span,
.page-id-10 .breadcrumb-list li:last-child span,
.page-id-519 .breadcrumb-list li:last-child span,
.page-id-521 .breadcrumb-list li:last-child span,
.page-id-523 .breadcrumb-list li:last-child span,
.page-id-525 .breadcrumb-list li:last-child span {
    width: 4em;
}

.site-header,
.header_scrolled .site-header {
    box-shadow: none;
}

.site-header-logo img {
    max-height: 38px;
}

.site-header-logo span {
    display: flex;
}

.site-header-logo span::after {
    content: "採用サイト";
    font-size: 16px;
    color: #05ABF0;
    margin-left: 10px;
}

.page-header {
    height: 280px;
    background: url(../images/header_bk.png);
    background-size: cover;
    background-repeat: no-repeat;
    letter-spacing: 10%;
}

.site-header-logo {
    padding-top: 1rem;
}

.page-header-title,
h1.page-header-title,
.jost h2 {
    font-family: "Jost", sans-serif;
    font-size: 64px;
    font-weight: 700;
    color: #0089C2;
    letter-spacing: 20%;
}

.page-header-title span {
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 20px;
    display: block;
    line-height: 1;
    color: initial;

}

.page-header-title::after {
    content: "";
    display: block;
    width: 38px;
    height: 6px;
    margin: 8px auto 0;
    background: radial-gradient(circle, #0089C2 2px, transparent 3px);
    background-size: 12px 6px;
    background-repeat: repeat-x;
}

.global-nav-list>li .global-nav-name {
    font-size: 16px;
}

.global-nav-list .menu-item-has-children>a {
    position: relative;
    padding-right: 2em;
}

.global-nav-list .menu-item-has-children>a::after {
    content: "";
    position: absolute;
    right: .25em;
    top: 50%;
    width: 0.5em;
    height: 0.5em;
    border-right: 2px solid #05ABF0;
    border-bottom: 2px solid #05ABF0;
    transform: translateY(-50%) rotate(45deg);
    transition: transform .2s ease;
}

.global-nav-list .menu-item-has-children:hover>a::after {
    transform: translateY(-50%) rotate(-135deg);
}

.global-nav.global-nav--layout--float-right {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    height: 100%;
}

.header_scrolled .site-header .global-nav {
    position: static;
    transform: inherit;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    height: 100%;
}

.header_scrolled .site-header-logo {
    display: block;
}

.global-nav.global-nav--layout--float-right>ul {
    height: 100%;
}

.global-nav.global-nav--layout--float-right>ul>li:last-child {
    background: #0089C2;
    margin-left: 80px;
}

.global-nav.global-nav--layout--float-right>ul>li:last-child:hover {
    background: #1aa0d8;
    transition: all 0.3s ease;
}

.global-nav.global-nav--layout--float-right>ul>li:last-child a {
    color: #fff;
    align-items: end;
    padding-bottom: 15px;
    padding: 14px 1em;
}

.global-nav.global-nav--layout--float-right>ul>li:last-child a .global-nav-name {
    font-size: 15px;
}

.global-nav.global-nav--layout--float-right>ul>li:last-child a .global-nav-name::before {
    content: '';
    /*何も入れない*/
    display: block;
    width: 33px;
    /*画像の幅*/
    height: 26px;
    /*画像の高さ*/
    background-image: url(../images/header_icon.png);
    background-size: contain;
    vertical-align: middle;
    margin: auto;
}

.device-pc .global-nav-list>li>a {
    padding: 14px 2.5em;
}

.site-footer-copyright p {
    font-size: 14px;
}

.site-body-bottom {
    background: #42BA88;
    padding: 20px 0;
    color: #fff;
}

.site-footer {
    background: #3e3e3e;
    color: #fff;
    content-visibility: inherit;
}

.container.site-footer-copyright {
    background: #383838;
    max-width: none;
}

.site-footer-content>div>div:last-child {
    display: none;
}

.site-footer-content>div>div {
    flex: 0 0 50%;
    max-width: 50%;
}

.site-footer-content img {
    height: 40px;
}

.site-footer-content>div>div:first-child div {
    display: inline-block;
    text-align: center;
}

.site-footer-content>div>div:first-child div.btn {
    border: 1px solid #fff;
    padding: .5em 3.5em;
    border-radius: 50px;
    color: #fff;
    font-weight: 700;
    z-index: 9;
    position: relative;
    padding-left: 4.5em;

}

.site-footer-content>div>div:first-child div a:has(.btn) {
    margin-top: 20px;
}

.site-footer-content>div>div:first-child div a:hover div.btn {
    color: #333;
}

/*== ボタン共通設定 */
.site-footer a:has(.btn) {
    /*アニメーションの起点とするためrelativeを指定*/
    position: relative;
    overflow: hidden;
    /*ボタンの形状*/
    text-decoration: none;
    display: inline-block;
    border: 1px solid #555;
    /* ボーダーの色と太さ */
    /*padding: 10px 30px;*/
    text-align: center;
    outline: none;
    /*アニメーションの指定*/
    transition: ease .2s;
    border-radius: 50px;
}

/*ボタン内spanの形状*/
.site-footer a:has(.btn) {
    position: relative;
    z-index: 3;
    /*z-indexの数値をあげて文字を背景よりも手前に表示*/
    color: #fff;
}

.site-footer a:has(.btn):hover {
    color: #333;
}

/*== 背景が流れる（左から右） */
.site-footer a:has(.btn):before {
    content: '';
    /*絶対配置で位置を指定*/
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    /*色や形状*/
    background: #fff;
    /*背景色*/
    width: 100%;
    height: 100%;
    /*アニメーション*/
    transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
    transform: scale(0, 1);
    transform-origin: right top;
}

/*hoverした際の形状*/
.site-footer a:has(.btn):hover:before {
    transform-origin: left top;
    transform: scale(1, 1);
}

.site-footer-content>div>div:first-child p {
    font-size: 16px;
    color: #05ABF0;
    line-height: 1;
}

.site-body-bottom>div {
    display: flex;
}

.site-body-bottom>div aside {
    width: 50%;
}

.site-body-bottom>div aside h2 {
    font-family: "Jost", sans-serif;
    font-size: 64px;
    font-weight: 700;
    margin-bottom: 0;
    position: relative;
}

.site-body-bottom>div aside h2 span {
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 20px;
    display: block;
    line-height: 1;
}

.site-body-bottom>div aside h2::after {
    content: url(../images/f_txt.png);
    right: 130px;
    position: absolute;
    top: 0px;
}

.site-body-bottom p {
    font-size: 16px;
    font-weight: 700;
    margin-bottom: .5em;
}

.footer_btn {
    /*background: #fff;*/
    color: #42BA88;
    font-weight: 900;
    font-size: 20px;
    display: inline-block;
    padding: .5em 5em;
    border-radius: 50px;
}

/*== ボタン共通設定 */
a:has(.footer_btn) {
    /*アニメーションの起点とするためrelativeを指定*/
    position: relative;
    overflow: hidden;
    /*ボタンの形状*/
    text-decoration: none;
    display: inline-block;
    /*padding: 10px 30px;*/
    text-align: center;
    outline: none;
    /*アニメーションの指定*/
    transition: ease .2s;
    border-radius: 50px;
    color: #42BA88;
    background: #fff;
}

/*ボタン内spanの形状*/
.footer_btn {
    position: relative;
    z-index: 3;
    /*z-indexの数値をあげて文字を背景よりも手前に表示*/
    color: #42BA88;
}

.footer_btn:hover,
section.top_work a.elementor-button:hover {
    color: #fff !important;
}

.top_work a.elementor-button span {
    z-index: 9;
}

section.top_work a.elementor-button {
    position: relative;
    overflow: hidden;
}

section.top_work>div>div:last-child img {
    border-radius: 5px;
}

/*== 背景が流れる（左から右） */
a:has(.footer_btn):before,
section.top_work a.elementor-button::before {
    content: '';
    /*絶対配置で位置を指定*/
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    /*色や形状*/
    background: #333;
    /*背景色*/
    width: 100%;
    height: 100%;
    /*アニメーション*/
    transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
    transform: scale(0, 1);
    transform-origin: right top;
}

section.top_work a.elementor-button::before {
    background: #05ABF0;
}

/*hoverした際の形状*/
a:has(.footer_btn):hover:before,
section.top_work a.elementor-button:hover::before {
    transform-origin: left top;
    transform: scale(1, 1);
}



.site-body-bottom>div aside:last-child {
    display: flex;
    align-items: center;
}

.site-body-bottom>div aside:last-child>div {
    display: inline-block;
    text-align: center;
}

.site-body-bottom i,
.site-footer-content i {
    margin: 0 20px;
}

.site-body-bottom .footer_btn i:first-child {
    margin-right: 7.5px;
}

.widget_nav_menu>div>ul>li {
    display: inline-block;
    float: left;
    width: 25%;
}

.widget_nav_menu>div>ul>li:last-child {
    clear: both;
    margin-top: -125px;
    margin-left: 25%;

}

.widget_nav_menu>div>ul li a {
    border-bottom: none;
    font-size: 16px;
    font-weight: 700;
    color: #fff;
}

.widget_nav_menu>div>ul li ul li a {
    font-size: 15px;
}

.circle::before {
    content: "" !important;
    position: absolute !important;
    top: -40px !important;
    left: -40px !important;
    width: calc(100% + 80px) !important;
    height: calc(100% + 80px) !important;
    background: url(../images/w_back.png) no-repeat center / cover !important;
    /*z-index: -1!important;*/
}

section.work-1>div>div:not(:nth-child(2)) {
    z-index: 9;
}

section.work-1>div>div:nth-child(2) {
    margin-left: -10%;
    margin-right: -10%;
}

section.work-1>div>div:nth-child(2)>div:last-child {
    max-width: 325px !important;
    margin: 0 auto;
}

section.work-1>div>div:nth-child(2)>div:last-child p {
    margin-bottom: 0;
}

section.work-1>div>div:first-child>div:first-child img,
section.work-1>div>div:last-child>div:last-child img {
    max-width: 170px;
}

section.work-1>div>div:first-child>div:first-child img {
    margin-right: 110px;
}

section.work-1>div>div:first-child>div:last-child img {
    margin-left: -155px;
}

section.work-1>div>div:last-child>div:last-child img {
    margin-left: 15px;
}

section.work-1>div>div:last-child>div:first-child img {
    max-width: 300px;
    margin-top: 50px;
    margin-left: 115px;
}

section.work-1>div>div:first-child>div:first-child {
    margin-bottom: 50px;
    margin-top: 50px;
}

section.work-1>div>div:last-child>div:last-child {
    margin-top: 50px;
}

section.work-1 h2 {
    font-size: 36px;
    font-weight: 700;
    line-height: 1.8;
    margin-bottom: 25px;
}

h2 span,
h3 span {
    display: block;
}

section.work-1 h2 span {
    font-size: 24px;
    font-weight: 700;
    color: #0089C2;
}

section.work-1 h2 strong,
.vertical-text strong,
.dot-heading h3 strong {
    color: #0089C2;
    font-weight: inherit;
}

section {
    padding: 50px 0;
}

section.work-1 {
    padding-bottom: 100px;
}

section.work-2 {
    background: rgba(0, 137, 194, .1);
    padding-top: 150px;
    width: calc(100% + 240px);
    margin-left: -120px;
    border-radius: 15px;
    max-width: none !important;
}

section.top_work>div {
    position: relative;
}

section.work-2::before,
.page-id-8 .site-body::before,
section.person_header::before,
section.sc_flow::before,
section.top_work>div::before,
section.top_faq::before {
    top: -10%;
    content: '';
    position: absolute;
    display: block;
    width: 100%;
    height: 800px;
    background-image: url(../images/sh_bk.png);
    background-size: contain;
    vertical-align: middle;
    margin: auto;
    background-repeat: no-repeat;
    /* right: 0; */
    /* left: auto; */
    background-position-x: right;
}

.page-id-8 .site-body::before,
section.person_header::before {
    top: 350px;
}

section.person_header::before {
    right: -230px;
}

section.top_work>div::before,
section.top_faq::before {
    left: -700px;
    top: -21%;
    background-position-x: left;
    background-image: url(../images/sh2_bk.png);
    height: 1200px;
}

section.top_faq::before {
    width: 300%;
    left: -1100px;
    top: -220px;
    height: 1200px;
}

.page-id-8 .site-body,
.page-id-9 .site-body {
    overflow: hidden;
}

section.work-2::after,
.page-id-8 .site-body::after,
section.interview_box::after {
    top: 30%;
    content: '';
    position: absolute;
    display: block;
    width: 100%;
    height: 800px;
    background-image: url(../images/sh_bk.png);
    background-size: contain;
    vertical-align: middle;
    margin: auto;
    background-repeat: no-repeat;
    /* right: 0; */
    /* left: auto; */
    background-position-x: left;
    left: -600px;
}

section.interview_box::after {
    top: auto;
    bottom: 0;
}

.page-id-8 .site-body::after {
    bottom: -42.5%;
    top: auto;
    left: -600px;
}

section.work-2>div>div:nth-child(3) img {
    margin-left: -125px;
}

section.work-2 h2 span {
    font-size: 18px;
    font-family: "Zen Kaku Gothic New", sans-serif;
    margin-top: 1.5em;
}

section.work-2 #gallery-1,
section.work-2 #gallery-2 {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

section.work-2 #gallery-1 br,
section.work-2 #gallery-2 br {
    display: none;
}

section.work-2 #gallery-1 dl,
section.work-2 #gallery-2 dl {
    width: 30%;
    margin: 0;
    margin-right: 5%;
}

section.work-2 #gallery-1 dl:last-of-type,
section.work-2 #gallery-2 dl:last-of-type {
    margin-right: 0;
}

section.work-2 #gallery-1 img,
section.work-2 #gallery-2 img {
    border: none;
}

section.work-2 #gallery-1 dl dd,
section.work-2 #gallery-2 dl dd {
    font-weight: 700;
    margin-bottom: 2em;
}

section.work-2 #gallery-1 dl dd {
    margin-bottom: 0;
}

.vertical-text {
    writing-mode: vertical-rl;
    /* 縦書き */
    text-orientation: upright;
    /* 日本語を正立 */
}

.vertical-text span {
    display: inline-block;
    /* ここで3行に分ける */
    background: #fff;
    /* 白背景 */
    padding: 10px 6px;
    margin-bottom: 10px;
    margin-left: 10px;
    margin-right: 10px;
    font-size: 24px;
    font-weight: 900;
    letter-spacing: 10%;
    /* 行間 */
}

.full-width {
    margin: 0 calc(50% - 50vw) !important;
    width: 100vw !important;
    max-width: none !important;
}

.bk_wh {
    background: #fff;
    padding: 100px;
    border-radius: 15px !important;
    margin-top: -100px !important;
    padding-bottom: 20px !important;
    z-index: 9;
}

.bk_wh>div:first-child {
    margin-top: -120px;
}

.bk_wh h2 {
    display: inline-block;
    background: #0089C2;
    color: #fff;
    padding: 10px 40px;
    font-size: 32px;
    font-weight: 900;

    clip-path: polygon(10px 0,
        100% 0,
        calc(100% - 10px) 100%,
        0 100%);
}

.bk_wh h3 {
    font-size: 20px;
    font-weight: 700;
    margin: 25px auto;
}

.dot-heading {
    width: 100%;
    text-align: center;
    margin: 100px auto !important;
}

.dot-heading h3 {
    position: relative;
    text-align: center;
    /* 点の分だけ余白を確保 */
    display: inline-block;
    font-size: 24px;
    font-weight: 900;
    margin-top: 30px;
    background: #fff;
    padding: .75em 5em;
}

.dot-heading::before {
    content: "";
    position: absolute;
    top: -40px;
    left: 50%;
    transform: translateX(-50%);
    width: 10px;
    height: 50px;
    /* 3つ分の高さ */

    background:
        radial-gradient(circle at center, rgba(5, 171, 240, 0.1) 4px, transparent 5px) top center / 12px 12px no-repeat,
        radial-gradient(circle at center, rgba(5, 171, 240, 0.5) 4px, transparent 5px) center / 12px 12px no-repeat,
        radial-gradient(circle at center, rgba(5, 171, 240, 1) 4px, transparent 5px) bottom center / 12px 12px no-repeat;
}

.dot-heading h3::before {
    content: "";
    display: block;
    width: 167px;
    /*画像の幅*/
    height: 173px;
    /*画像の高さ*/
    background-image: url(../images/midashi_left.png);
    background-size: contain;
    vertical-align: middle;
    margin: auto;
    position: absolute;
    left: -60px;
    top: -80%;
    background-repeat: no-repeat;
}

.dot-heading h3::after {
    content: "";
    display: block;
    width: 125px;
    /*画像の幅*/
    height: 168px;
    /*画像の高さ*/
    background-image: url(../images/midashi_right.png);
    background-size: contain;
    vertical-align: middle;
    margin: auto;
    position: absolute;
    right: -60px;
    top: -80%;
    background-repeat: no-repeat;
}

section.work-2-2 h2 span {
    font-size: 32px;
    display: inline-block;
}

section.work-2-2 h2 span {
    display: inline-block;
    background: #0089C2;
    color: #fff;
    padding: 10px 20px;
    font-size: 32px;

    clip-path: polygon(10px 0,
        100% 0,
        calc(100% - 10px) 100%,
        0 100%);
}

section.work-2-2 {
    margin-top: 160px;
}

section.work-2-2 h3 {
    font-size: 20px;
    color: #0089C2;
    margin: 30px auto;
}

section.work-2-2>div:first-child {
    margin-top: -185px;
}

section.work-2-2>div:last-child {
    margin-top: -225px;
    width: 50%;
    margin-left: -10%;
    margin-bottom: -100px;
}

section.work-2-2>div:first-child>div:last-child {
    max-width: 500px !important;
}

.factory_name h2 {
    font-size: 36px;
    margin: 50px auto 30px;
}

.form_link h3,
.boshu_youkoh .elementor-widget-n-accordion .e-n-accordion-item-title-text {
    font-size: 24px;
    position: relative;
    font-weight: 700;
    line-height: 1;
}

.form_link h3::after {
    content: "\f138";
    font-family: "Font Awesome 7 Free";
    font-weight: 900;
    margin-right: 8px;
    color: #0089C2;
    right: -7.5%;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    position: absolute;
}

.form_link h3 span,
.boshu_youkoh .elementor-widget-n-accordion .e-n-accordion-item-title-text span {
    font-family: "Jost", sans-serif;
    font-size: .5em;
    color: #05ABF0;
    letter-spacing: .2em;
    display: block;
}

.form_link>div {
    border: 2px solid #0089C2;
    border-radius: 5px;
    min-width: 900px !important;
    padding: 1.5em 5em;
    margin-bottom: 10px !important;
    background: #fff;
    z-index: 9;
}

.close_link::before {
    content: "現在、募集は終了しました。";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.65);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 0.05em;
    z-index: 2;
    text-align: center;
    padding: 20px;
    box-sizing: border-box;
}


.boshu_youkoh .elementor-widget-n-accordion summary {
    min-width: 900px;
    margin: auto;
    padding: 1.5em 2.5em;
    padding-left: 5em;
}

.boshu_youkoh .e-n-accordion-item-title-icon {
    margin-right: -7.5px;
}

section.person_header>div>div:nth-child(2) {
    top: 50%;
    left: 100px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}

section.person_header>div>div:last-child {
    background: #0089C2;
    bottom: 90px;
    display: inline-block;
    width: auto;
    height: auto;
    right: 40px;
    left: auto !important;
    top: auto !important;
    color: #fff;
    min-width: 250px;
    padding-left: 2.5em;
}

section.person_header>div>div:last-child p.name {
    font-size: 24px;
    font-weight: 700;
}

section.person_header>div>div:last-child p.name span {
    font-size: .5em;
    font-weight: 500;
    letter-spacing: 20%;
    margin-left: 1.5em;
}

section.person_header>div>div:last-child p.year {
    font-size: 14px;
    font-weight: 500;
}

section.person_header>div>div:last-child p.year span {
    margin-left: .25em;
    position: relative;
}

section.person_header>div>div:last-child p.year span::before {
    /*content: "|";*/
    position: absolute;
    left: -.75em;
}

section.person_header>div>div:last-child p {
    margin-bottom: 0;
}

section.person_header h2 {
    font-size: 36px;
}

section.person_header h2 span.blue {
    font-family: "Jost", sans-serif;
    font-size: 20px;
    letter-spacing: 20%;
    color: #05ABF0;
    margin-bottom: 15px;
}

section.person_header h2 span:nth-last-of-type(-n+2) {
    background: #fff;
    padding: .25em .75em;
    margin-bottom: 15px;
    display: inline-block;
}

section.interview_box h2 {
    font-family: "Jost", sans-serif;
    font-size: 54px;
    color: #0089C2;
    letter-spacing: 20%;
}

section.interview_box h3 {
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 26px;
    position: relative;
    margin-bottom: 1em;
    line-height: 1.4;
}

section.interview_box h3::after {
    content: "";
    border-bottom: 1px solid rgba(0, 137, 194, .5);
    width: 100%;
    height: 1px;
    position: absolute;
    bottom: -1em;
    left: 0;
}

section.interview_box .wide_over h3::after {
    width: 120%;
}

section.interview_box h2 span {
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 20px;
    color: initial;
    letter-spacing: 10%;
    margin-bottom: .5em;
}

section.interview_box h3 span {
    font-family: "Jost", sans-serif;
    font-size: 12px;
    display: inline-block;
    background: rgba(0, 137, 194, .5);
    color: #fff;
    font-weight: 500;
    padding: .5em 2em;
    border-radius: 50px;
    margin-bottom: 1.5em;
    letter-spacing: 10%;
}

section.sc_flow {
    margin: 0 calc(50% - 50vw);
    width: 100vw;
    background: rgba(0, 137, 194, .1);
    max-width: none !important;
}

section.sc_flow dl {
    display: flex;
    flex-wrap: wrap;
    margin: 0;
}

section.sc_flow dt {
    font-family: "Jost", sans-serif;
    font-size: 18px;
    color: #0089C2;
    width: 45%;
    background: #fff;
    border-radius: 5px 0 0 5px;
    margin-bottom: 20px;
    padding: 17.5px;
    padding-left: 2em;
}

section.sc_flow dd {
    width: 55%;
    background: #fff;
    border-radius: 0 5px 5px 0;
    margin-bottom: 20px;
    padding: 17.5px;
}

section.sc_flow h2 {
    font-family: "Jost", sans-serif;
    font-size: 36px;
    letter-spacing: 20%;
    font-weight: 700;
    color: #0089C2;
}

section.sc_flow h2 span {
    font-family: "Zen Kaku Gothic New", sans-serif;
    margin-left: 2em;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 10%;
    display: inline-block;
}

/*section.interview_others {
    max-width: 800px !important;
}*/

section.interview_others.top_staff {
    max-width: none !important;
}

section.interview_others h2 {
    font-size: 32px;
    font-weight: 700;
    letter-spacing: 20%;
}

section.interview_others h2 span {
    font-family: "Jost", sans-serif;
    font-size: 20px;
    color: #0089C2;
    margin-top: .5em;
}

section.interview_others.top_staff h2 span {
    color: #fff;
}

section.interview_others h3 {
    font-size: 18px;
}

section.interview_others span.label {
    background: #05ABF0;
    color: #fff;
    display: inline-block;
    font-size: 14px;
    padding: 0em 2em;
    border-radius: 5px;
    margin-bottom: 10px;
}

.sp_only {
    display: none;
}

section.interview_others .elementor-widget-image-box figure {
    position: relative;
}

section.interview_others .elementor-widget-image-box figure::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(255, 255, 255, .4);
    opacity: 0;
    transition: opacity 0.3s ease;
    pointer-events: none;
    border-radius: 20px;
}

section.interview_others .elementor-widget-image-box:hover figure::before {
    opacity: 1;
}

section.interview_others .elementor-widget-image-box .elementor-image-box-wrapper {
    transition: transform 0.3s ease;
    transform-origin: center center;
    backface-visibility: hidden;
    will-change: transform;
}

section.interview_others .elementor-widget-image-box:hover .elementor-image-box-wrapper {
    transform: scale(0.95);
}

body.home section.interview_others .e-con {
    position: relative;
}

body.home section.interview_others .elementor-widget-image-box {
    position: relative;
    z-index: 2;
}

body.home section.interview_others .elementor-image-box-wrapper {
    transition: transform 0.3s ease;
}

body.home section.interview_others .e-con:hover .elementor-image-box-wrapper {
    transform: scale(0.95);
}

section.interview_others .elementor-widget-image-box figure img {
    vertical-align: bottom;
    width: 100%;
}

section.top_about,
section.top_work {
    max-width: 1000px !important;
}

section.top_about h2 {
    color: #0089c2;
    font-size: 36px;
}

section.top_about h2 {
    color: #0089c2;
    font-size: 36px;
    line-height: 1.7;
}

section.top_about h2 span,
section.top_work h2 span,
section.top_area h2 span,
section.top_faq h2 span,
span.midashi_before {
    color: #333;
    font-size: 20px;
    display: block;
    position: relative;
    padding-left: 1em;
    letter-spacing: .1em;
}

span.midashi_before {
    font-weight: 700;
    letter-spacing: .2em;
}

section.top_area span.midashi_before {
    display: inline-block;
}

section.top_about h2 span::before,
section.top_work h2 span::before,
section.top_area h2 span::before,
section.top_faq h2 span::before,
span.midashi_before::before {
    content: "";
    width: 8px;
    height: 8px;
    background-color: #05ABF0;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 0%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}

section.top_about h3 {
    font-size: 22px;
    color: #0089c2;
    margin-bottom: 25px;
    margin-top: 20px;
}

section.top_about p,
section.top_work p {
    margin-bottom: 0;
}

section.top_work {
    margin: 0 calc(50% - 50vw);
    width: 100vw;
    max-width: none !important;
}

section.top_work>div {
    max-width: 1000px !important;
}

section.top_about .elementor-widget-image::before {
    content: "ABOUT US";
    font-family: "Jost", sans-serif;
    font-size: 84px;
    color: #fff;
    font-weight: 700;
    position: absolute;
    bottom: 0;
    right: 0;
    line-height: .8;
}

section.top_work h2,
section.top_area h2,
section.top_faq h2 {
    font-family: "Jost", sans-serif;
    font-size: 64px;
    color: #0089c2;
    line-height: 1.4;
    letter-spacing: .2em;
}

section.top_area h2 {
    color: #90C4DA;
}

section.top_work h2 span,
section.top_area h2 span,
section.top_faq h2 span,
span.midashi_before {
    font-family: "Zen Kaku Gothic New", sans-serif;
    letter-spacing: .1em;
}

section.top_area h2 span {
    display: inline-block;
}

section.top_work .icon_outer>div {
    aspect-ratio: 1;
    background: #fff;
    border-radius: 50%;
}

section.top_work .icon_outer>div>div {
    position: relative;
    width: 100%;
    text-align: center;
    top: 50%;
    left: 0%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}

section.top_work .icon_outer>div>div::after {
    content: "ブランケット";
    font-size: 12px;
    width: 100%;
    font-weight: 700;
}

section.top_work .icon_outer>div:nth-child(2)>div::after {
    content: "カバー";
}

section.top_work .icon_outer>div:last-child>div::after {
    content: "整備士の制服";
}

section.top_work>div>div:first-child {
    margin-right: 7.5%;
}

section.top_work>div>div:nth-child(2) {
    margin-right: 2.5%;
}

section.top_work {
    background: linear-gradient(to bottom,
        transparent 200px,
        #F0F6F9 200px,
        #F0F6F9 calc(100% - 100px),
        transparent calc(100% - 200px));
}

section.top_work .elementor-button-text {
    line-height: .75;
}

section.top_staff>div>div:first-child {
    width: 100vw;
    margin-right: calc(50% - 50vw);
    color: #fff;
    padding: 50px 100px;
    margin-bottom: -17.5%;
    padding-bottom: 200px;
    border-radius: 0 0 0 20px;
}

section.top_staff>div>div:nth-child(2) {
    margin-left: 75px;
}

section.top_staff h2 {
    display: flex;
}

section.top_staff .e-n-accordion-item-title-text {
    position: relative;
}

section.top_faq .e-n-accordion-item-title-text::before {
    content: "Q";
    font-family: "Jost", sans-serif;
    font-size: 24px;
    font-weight: 700;
    color: #05ABF0;
    margin-right: 1em;
}

section.top_faq .e-n-accordion-item-title+div>div::before {
    content: "A";
    font-family: "Jost", sans-serif;
    font-size: 24px;
    font-weight: 700;
    color: #05ABF0;
    position: absolute;
}

section.top_faq .e-n-accordion-item-title+div>div p {
    padding-left: 3em;
    padding-top: .25em;
}

section.top_about>div>div:nth-child(2) {
    margin-top: -30px;
}

.sub-section {
    position: fixed;
    right: 0;
    top: 36%;
    color: #fff;
    line-height: 1.2;
    text-align: center;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.2s ease;
    z-index: 1;
    width: auto;
}

.sub-section a {
    padding: 25px 30px;
    padding-top: 50px;
    display: block;
    color: #fff;
    background: #42BA88;
    transition: background 0.5s cubic-bezier(.4, 0, .2, 1);
}

.sub-section a:hover {
    background: #62d3a4;
}

body.page-id-10 .sub-section {
    display: none;
}

body:not(.home) .sub-section {
    opacity: 1;
    visibility: visible;
    z-index: 9;
}

.sub-section.is-ready {
    opacity: 1;
    visibility: visible;
}

.sub-section.is-scrolling,
body:not(.home) .sub-section.is-scrolling {
    opacity: 0.5;
}

.sub-section .floating_menu {
    writing-mode: vertical-rl;
    display: grid;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: .2em;
    position: relative;
}

.sub-section .floating_menu a {
    color: #fff;
}

.sub-section .floating_menu span {
    font-family: "Jost", sans-serif;
    font-size: 24px;
    display: block;
}

.sub-section .floating_menu::before {
    content: "\f0e0";
    font-family: "Font Awesome 7 Free";
    font-weight: 500;
    font-size: 1.4em;
    position: absolute;
    top: -1.5em;
    right: 3px;
}

.factory-map {
    position: relative;
    width: 100%;
    max-width: 1200px;
}

.factory-map img {
    display: block;
    width: 100%;
    height: auto;
}

.map-label {
    position: absolute;
    font-weight: 700;
    line-height: 1.2;
    white-space: nowrap;
}

/* 配置例 */
.label-haneda {
    left: 16%;
    top: 79%;
    color: #111;
}

.label-dry {
    left: 20%;
    top: 38%;
    color: #111;
}

.label-haneda-airport {
    left: 37%;
    top: 60%;
    color: #1493d1;
    padding-left: 35px;
}

.label-haneda-airport::before,
.label-narita-airport::before {
    content: url(../images/airplan.png);
    position: absolute;
    left: 0px;
    top: -5px;
}

.label-narita-airport {
    left: 68%;
    top: 32%;
    color: #1493d1;
    padding-left: 35px;
}

.label-narita {
    left: 73%;
    top: 11%;
    color: #111;
    z-index: 6;
}

.label-toyosumi {
    left: 67%;
    top: 40%;
    color: #111;
}

.label-tama {
    left: 63%;
    top: 56%;
    color: #111;
}

.label-shibayama {
    left: 79%;
    top: 54%;
    color: #111;
}

.map-label a {
    display: inline-block;
    position: relative;
    padding: 0.15em 0.45em;
    color: #0077b6;
    background: #fff;
    text-decoration: none;
    border-radius: 4px;
    overflow: hidden;
    z-index: 1;
    transition:
        transform 0.2s ease,
        background-color 0.25s ease,
        color 0.25s ease,
        box-shadow 0.25s ease;
}

/* ホバー */
.map-label a:hover {
    transform: translateY(2px);
    background-color: #e6f4fb;
    color: #005f8f;
    box-shadow: inset 0 3px 6px rgba(0, 119, 182, 0.25);
}

.notice_text p {
    display: inline-block;
    margin-bottom: 0;
    padding: 1em;
    background: #fff;
    color: #333;
    font-weight: 700;
    border-radius: 5px;
}

.widget_nav_menu>div>ul li li.menu-item-556 a {
    padding-left: 1.8em;
}

.site-footer .menu-item-has-children>a {
    pointer-events: none;
}

.custom-page-slider {
    visibility: hidden;
    overflow: hidden;
}

.custom-page-slider.is-ready {
    visibility: visible;
}

.custom-page-slider .page-slide-image {
    overflow: hidden;
}

.snow-monkey-form {
    max-width: 800px;
    margin: auto;
}

.snow-monkey-form .smf-action {
    text-align: center;
    margin-top: 50px;
}

.snow-monkey-form .smf-action button.smf-button-control__control {
    background: #42BA88;
    color: #fff;
    border: 1px solid #42ba88;
    border-radius: 50px;
    padding: 10px 150px 10px 100px;
    font-size: 1.1em;
    font-family: "Zen Kaku Gothic New", sans-serif;
    position: relative;
    overflow: hidden;
    z-index: 0;
}

.snow-monkey-form .smf-action button.smf-button-control__control:hover {
    color: #42BA88;
}

.snow-monkey-form .smf-action button.smf-button-control__control::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    background: #fff;
    width: 100%;
    height: 100%;
    transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1);
    transform: scale(0, 1);
    transform-origin: right top;
    border-radius: 50px;
}

.snow-monkey-form .smf-action button.smf-button-control__control:hover::before {
    transform-origin: left top;
    transform: scale(1, 1);
}

.snow-monkey-form .smf-action button.smf-button-control__control::after {
    content: "\f105";
    font-family: "Font Awesome 7 Free";
    /* ← ここが違う */
    font-weight: 900;

    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);

    font-size: 16px;
    transition: transform 0.3s ease;
}

/* hoverでちょい動かすと高級感 */
.snow-monkey-form .smf-action button.smf-button-control__control:hover::after {
    transform: translateY(-50%) translateX(5px);
}

.snow-monkey-form em {
    color: #dc3545;
    font-weight: 700;
    font-style: normal;
    margin-right: .25em;
}

.snow-monkey-form .smf-item {
    margin-bottom: 25px;
    border-bottom: 1px solid #dcdcdc;
    padding-bottom: 25px;
}

.snow-monkey-form .smf-item__col--label {
    margin-bottom: .5em;
}

.snow-monkey-form .smf-form>div:last-child {
    border-bottom: none;
}

.snow-monkey-form .smf-form>div:last-child .smf-item__controls {
    text-align: center;
}

form.snow-monkey-form h3 {
    font-size: 1.2em;
    position: relative;
    padding-left: 3em;
    display: inline-block;
    text-align: center;
    margin-bottom: 0;
}

form.snow-monkey-form h3::before {
    content: "";
    border-bottom: 1px solid #000;
    width: 2.3em;
    height: 1px;
    position: absolute;
    top: 50%;
    left: 0%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);

}

.scroll-contents_outer {
    background: #fff;
    padding: 25px 0;
    text-align: left;
}

.scroll-contents {
    height: 250px;
    padding: 10px;
    border: 1px solid #CCC;
    overflow: auto;
    margin: 0px auto;
    font-size: .9em;
}

.snow-monkey-form .has-custom-css .smf-item__controls {
    display: flex;
}

.snow-monkey-form .has-custom-css .smf-item__controls > div:last-child {
    margin-left: 50px;
}

/* タブレット（iPad含む） */
@media (max-width: 1024px) and (min-width: 769px) {

    .header_scrolled .lightning-swiper-wrap,
    .header_scrolled .page-header {
        margin-top: 0 !important;
    }

    section.top_staff>div>div:nth-child(2) {
        margin-left: 25px;
    }

    section.top_work>div>div:first-child {
        width: 60%;
        padding-left: 10%;
    }

    section.top_about>div>div:first-child {
        width: 40%;
    }

    section.top_about>div>div:nth-child(2) {
        width: 55%;
    }

    .site-header-container {
        display: flex;
        max-width: none;
    }

    .global-nav.global-nav--layout--float-right {
        display: block;
    }

    .device-pc .global-nav-list>li>a {
        padding: 14px 1em;
    }

    .global-nav.global-nav--layout--float-right>ul>li:last-child {
        margin-left: 10px;
    }

    .site-header-logo {
        margin-bottom: 1.5rem;
    }

    .site-footer-content>div>div {
        flex: 0 0 100%;
        max-width: none;
        margin-bottom: 30px;
    }

    .site-header-logo span {
        position: relative;
    }

    .site-header-logo span::after {
        position: absolute;
        bottom: -1em;
        right: 0;
    }

    .lightning-swiper-wrap .swiper-pagination {
        bottom: 0 !important;
    }

    .vk-mobile-nav-menu-btn {
        display: none;
    }

    .swiper-pagination::before {
        font-size: 12px !important;
    }

    section.work-2-2>div:first-child,
    section.work-2-2>div:last-child {
        width: 45%;
    }

    section.work-2-2>div:first-child {
        margin-left: 5%;
    }

    section.work-2-2>div:last-child {
        margin-right: 5%;
        margin-left: auto;
    }

    .boshu_youkoh .elementor-widget-n-accordion summary,
    .form_link>div {
        min-width: 75% !important;
    }

    .footer_btn {
        padding: .5em 3em;
    }

}

@media screen and (max-width: 767px) {
    .pc_only {
        display: none;
    }

    .site-header-logo span::after {
        margin-left: 35px;
    }

    .site-header-logo span {
        flex-wrap: wrap;
    }

    .site-header-logo img {
        width: 80%;
        margin-left: 0;
    }

    .page-header-title,
    h1.page-header-title,
    .jost h2 {
        font-size: 56px;
    }

    section.work-1>div>div:first-child,
    section.work-1>div>div:last-child {
        justify-content: space-between;
        flex-direction: row;
    }

    section.work-1>div>div:first-child>*,
    section.work-1>div>div:last-child>* {
        width: 45%;
    }

    section.work-1>div>div:first-child>div:first-child {
        margin-top: 0;
    }

    section.work-1>div>div:first-child>div:first-child img,
    section.work-1>div>div:first-child>div:last-child img {
        margin-right: 0;
        width: 100%;
        margin-left: 0;
    }

    section.work-1>div>div:last-child>div:first-child img,
    section.work-1>div>div:last-child>div:last-child img {
        margin-left: 0;
        width: 100%;
    }

    section.work-1>div>div:nth-child(2) {
        margin-left: 0;
        margin-right: 0;
    }

    section.work-1 h2 span {
        white-space: nowrap;
    }

    section.work-2 {
        margin: 0 calc(50% - 50vw);
        width: 100vw;
        border-radius: 0;
        padding-top: 50px;
    }

    section.work-2>div>div:first-child {
        padding-left: 0;
    }

    section.work-2>div>div:nth-child(2),
    section.work-2>div>div:nth-child(3) {
        width: 50%;
    }

    section.work-2>div>div:nth-child(3) img {
        margin-left: 0;
    }

    section.work-2 h2 span {
        margin-bottom: 2.25em;
    }

    .elementor-3 .elementor-element.elementor-element-76d2b39 {
        width: 94%;
        margin: auto;
        margin-top: 0 !important;
        padding: 15px;
    }

    .bk_wh>div:first-child {
        margin-top: -50px;
    }

    .bk_wh h2 {
        font-size: 22px;
    }

    section.work-2 #gallery-1 dl {
        width: 48%;
    }

    .dot-heading h3 {
        font-size: 22px;
        padding: .75em 2em;
    }

    .dot-heading h3::before {
        width: 100px;
        height: 103px;
        left: 0%;
        top: -170%;
    }

    .dot-heading h3::after {
        width: 77px;
        height: 105px;
        right: 0;
        top: -170%;
    }

    section.work-2-2 {
        margin-top: 100px;
        padding-left: 10px !important;
        padding-right: 10px !important;
        width: 94%;
        margin-right: auto;
        margin-left: auto;
    }

    section.work-2-2 h2 span {
        font-size: 20px;
        margin-bottom: 0
    }

    section.work-2-2>div:last-child {
        margin-top: 0;
        width: 100%;
        margin-left: 0;
        margin-bottom: 50px;
    }

    .site-body-bottom>div {
        flex-wrap: wrap;
    }

    .site-body-bottom>div aside {
        width: 100%;
    }

    .site-body-bottom>div aside h2::after {
        right: 0;
    }

    .site-body-bottom>div aside:last-child>div {
        width: 100%;
    }

    .footer_btn {
        display: block;
        padding: .5em 0;
    }

    .site-footer-content>div>div {
        flex: 0 0 100%;
        max-width: none;
    }

    .site-footer-content>div>div:first-child {
        margin-bottom: 30px;
    }

    .widget_nav_menu>div>ul>li {
        width: 33%;
    }

    .widget_nav_menu>div>ul>li:last-child {
        clear: none;
        margin-top: 0;
        margin-left: 0;
    }

    .form_link>div,
    .boshu_youkoh .elementor-widget-n-accordion summary {
        min-width: unset !important;
        padding: .75em 2.5em;
        margin-bottom: 10px !important;
        width: 100%;
    }

    .bk_wh h3,
    .form_link h3,
    section.interview_box h3,
    .boshu_youkoh .elementor-widget-n-accordion .e-n-accordion-item-title-text {
        line-height: 1.2;
    }

    .sp_only {
        display: block;
    }

    section.person_header {
        padding: 0;
        margin: 0 calc(50% - 50vw);
        width: 100vw !important;
        max-width: none !important;
    }

    section.person_header img {
        height: 300px;
        object-fit: cover;
    }

    section.person_header>div>div:last-child {
        top: 205px !important;
        bottom: auto;
        right: 15px;
    }

    section.person_header>div>div:nth-child(2) {
        top: 25px;
        left: 15px;
        /* transform: translateY(-50%); */
        transform: none;
        -webkit-transform: none;
    }

    section.person_header h2 {
        font-size: 18px;
    }

    section.interview_box h2 {
        font-size: 42px;
    }

    section.sc_flow dt {
        width: 47.5%;
        padding-left: 1em;
    }

    section.sc_flow dd {
        width: 52.5%;
    }

    section.interview_others h2 {
        font-size: 26px;
    }

    body.header_scrolled .page-header {
        margin-top: 0 !important;
    }

    .sub-section {
        width: auto;
        top: 50% !important;
    }

    .lightning-swiper-wrap {
        width: auto !important;
    }

    .lightning-swiper-wrap .swiper-pagination {
        position: static !important;
        flex-direction: row !important;
        padding-top: 50px;
        justify-content: center;
    }

    .swiper-pagination::before {
        bottom: 2em !important;
        right: 0;
        writing-mode: unset !important;
    }

    .title-line-main {
        font-size: 4.5vw !important;
    }

    .title-line-highlight {
        font-size: 7.5vw !important;
    }

    .title-line-highlight-wrap {
        margin-top: clamp(0.16em, 3.8vw, 0.6em) !important;
    }

    .title-line-highlight-wrap--script::after {
        right: -250px !important;
        bottom: -130px !important;
    }

    .ltg-slide-text-title+.ltg-slide-text-caption {
        margin-top: 100px !important;
    }

    .header_scrolled .lightning-swiper-wrap {
        margin-top: 0 !important;
    }

    section.top_about>div>div:nth-child(2) {
        margin-top: 30px;
    }

    section.top_about .elementor-widget-image::before,
    section.top_work h2,
    section.top_area h2,
    section.top_faq h2 {
        font-size: 15vw;
    }

    section.top_about h2 {
        font-size: 8.75vw;
    }

    section.top_work>div>div:first-child {
        margin-right: 0;
        width: 94%;
        margin: auto;
    }

    .icon_outer>div {
        width: 30%;

    }

    .title-line-highlight-wrap {
        padding: clamp(0.65em, 0.4vw, 0.35em) clamp(0.6em, 0.6vw, 0.35em) !important;
    }

    .sub-section {
        z-index: 6;
    }

    section.top_work>div>div:first-child .elementor-button {
        margin-top: 25px;
    }

    section.top_work>div>div:nth-child(2) {
        width: 45%;
        margin-left: 2.5%;
        margin-top: 50px;

    }

    section.top_work>div>div:last-child {
        width: 45%;
        margin-left: 2.5%;

    }

    section.top_staff>div>div:first-child {
        padding: 50px 25px;
        padding-bottom: 75px;
    }

    section.top_staff>div>div:nth-child(2) {
        margin-left: 0;
    }

    .sp-factory-map {
        display: block;
        padding: 0 16px;
    }

    .sp-factory-map__bg {
        position: relative;
        overflow: hidden;
        background: url(../images/map_sp_bk.webp) center center / cover no-repeat;
        min-height: 450px;
        margin: 0 calc(50% - 50vw);
        width: 100vw;
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 24px 16px 24px;
        background-size: 170%;
    }

    .sp-factory-map__bg::before {
        content: "";
        position: absolute;
        inset: 0;
        background: rgba(255, 255, 255, 0.18);
        backdrop-filter: blur(1px);
    }

    .sp-factory-map__panel {
        position: relative;
        z-index: 1;
        background: rgba(255, 255, 255, 0.6);
        border-radius: 16px;
        padding: 18px 16px;
        box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
        max-width: 90%;
        margin-top: 0;
        width: 75%;
    }

    .sp-factory-group+.sp-factory-group {
        margin-top: 18px;
        padding-top: 18px;
        border-top: 1px solid rgba(0, 120, 180, 0.15);
    }

    .sp-factory-group__title {
        margin: 0 0 10px;
        font-size: 16px;
        font-weight: 700;
        color: #1296db;
        line-height: 1.4;
        font-size: 1.35em;
    }

    .sp-factory-group__list {
        margin: 0;
        padding: 0;
        list-style: none;
    }

    .sp-factory-group__list li {
        position: relative;
        margin: 0;
        padding-left: 1em;
        font-size: 15px;
        font-weight: 600;
        color: #222;
        line-height: 1.8;
        padding: 0;
        list-style: none;
    }

    .sp-factory-group {
        width: fit-content;
        /* ← ここがポイント */
        margin: 0 auto;
        /* ← 中央寄せ */
        text-align: left;
        /* ← 中は左揃え */
    }

    .sp-factory-group__list a {
        display: inline-block;
        transition: transform 0.2s ease, color 0.2s ease;
        font-size: 1.15em;
        line-height: 2;
    }

    /* タップした瞬間 */
    .sp-factory-group__list a:active {
        transform: scale(0.92);
    }

    /* タップ後（フォーカス） */
    .sp-factory-group__list a:focus {
        transform: scale(1.08);
    }

    .boshu_youkoh .e-n-accordion-item-title-icon {
        margin-right: -1em;
    }

    section.work-2 #gallery-1,
    section.work-2 #gallery-2 {
        justify-content: space-between;
    }

    section.work-2 #gallery-1 dl,
    section.work-2 #gallery-2 dl {
        width: 48%;
        margin-right: 0;
    }
}