@font-face {
    font-family: 'NotoSans';
    src:
        url('assets/font/NotoSans-Thin.otf') format('otf'),
        url('assets/font/NotoSans-Thin.ttf') format('truetype'),
        url('assets/font/NotoSans-Thin.woff') format('woff');
    font-style: normal;
    font-weight: 100;
}
@font-face {
    font-family: 'NotoSans';
    src:
        url('assets/font/NotoSans-ThinItalic.otf') format('otf'),
        url('assets/font/NotoSans-ThinItalic.ttf') format('truetype'),
        url('assets/font/NotoSans-ThinItalic.woff') format('woff');
    font-style: italic;
    font-weight: 100;
}
@font-face {
    font-family: 'NotoSans';
    src:
        url('assets/font/NotoSans-ExtraLightItalic.otf') format('otf'),
        url('assets/font/NotoSans-ExtraLightItalic.ttf') format('truetype'),
        url('assets/font/NotoSans-ExtraLightItalic.woff') format('woff');
    font-style: normal;
    font-weight: 200;
}
@font-face {
    font-family: 'NotoSans';
    src:
        url('assets/font/NotoSans-ExtraLightotf') format('otf'),
        url('assets/font/NotoSans-ExtraLightttf') format('truetype'),
        url('assets/font/NotoSans-ExtraLightwoff') format('woff');
    font-style: italic;
    font-weight: 200;
}
@font-face {
    font-family: 'NotoSans';
    src:
        url('assets/font/NotoSans-Light.otf') format('otf'),
        url('assets/font/NotoSans-Light.ttf') format('truetype'),
        url('assets/font/NotoSans-Light.woff') format('woff');
    font-style: normal;
    font-weight: 300;
}
@font-face {
    font-family: 'NotoSans';
    src:
        url('assets/font/NotoSans-LightItalic.otf') format('otf'),
        url('assets/font/NotoSans-LightItalic.ttf') format('truetype'),
        url('assets/font/NotoSans-LightItalic.woff') format('woff');
    font-style: italic;
    font-weight: 300;
}
@font-face {
    font-family: 'NotoSans';
    src:
        url('assets/font/NotoSans-Regular.otf') format('otf'),
        url('assets/font/NotoSans-Regular.ttf') format('truetype'),
        url('assets/font/NotoSans-Regular.woff') format('woff');
    font-style: normal;
    font-weight: 400;
}
@font-face {
    font-family: 'NotoSans';
    src:
        url('assets/font/NotoSans-RegularItalic.otf') format('otf'),
        url('assets/font/NotoSans-RegularItalic.ttf') format('truetype'),
        url('assets/font/NotoSans-RegularItalic.woff') format('woff');
    font-style: italic;
    font-weight: 400;
}
@font-face {
    font-family: 'NotoSans';
    src:
        url('assets/font/NotoSans-Medium.otf') format('otf'),
        url('assets/font/NotoSans-Medium.ttf') format('truetype'),
        url('assets/font/NotoSans-Medium.woff') format('woff');
    font-style: normal;
    font-weight: 500;
}
@font-face {
    font-family: 'NotoSans';
    src:
        url('assets/font/NotoSans-MediumItalic.otf') format('otf'),
        url('assets/font/NotoSans-MediumItalic.ttf') format('truetype'),
        url('assets/font/NotoSans-MediumItalic.woff') format('woff');
    font-style: italic;
    font-weight: 500;
}
@font-face {
    font-family: 'NotoSans';
    src:
        url('assets/font/NotoSans-SemiBold.otf') format('otf'),
        url('assets/font/NotoSans-SemiBold.ttf') format('truetype'),
        url('assets/font/NotoSans-SemiBold.woff') format('woff');
    font-style: normal;
    font-weight: 600;
}
@font-face {
    font-family: 'NotoSans';
    src:
        url('assets/font/NotoSans-SemiBoldItalic.otf') format('otf'),
        url('assets/font/NotoSans-SemiBoldItalic.ttf') format('truetype'),
        url('assets/font/NotoSans-SemiBoldItalic.woff') format('woff');
    font-style: italic;
    font-weight: 600;
}
@font-face {
    font-family: 'NotoSans';
    src:
        url('assets/font/NotoSans-Bold.otf') format('otf'),
        url('assets/font/NotoSans-Bold.ttf') format('truetype'),
        url('assets/font/NotoSans-Bold.woff') format('woff');
    font-style: normal;
    font-weight: 700;
}
@font-face {
    font-family: 'NotoSans';
    src:
        url('assets/font/NotoSans-BoldItalic.otf') format('otf'),
        url('assets/font/NotoSans-BoldItalic.ttf') format('truetype'),
        url('assets/font/NotoSans-BoldItalic.woff') format('woff');
    font-style: italic;
    font-weight: 700;
}
@font-face {
    font-family: 'NotoSans';
    src:
        url('assets/font/NotoSans-ExtraBold.otf') format('otf'),
        url('assets/font/NotoSans-ExtraBold.ttf') format('truetype'),
        url('assets/font/NotoSans-ExtraBold.woff') format('woff');
    font-style: normal;
    font-weight: 800;
}
@font-face {
    font-family: 'NotoSans';
    src:
        url('assets/font/NotoSans-BoldItalic.otf') format('otf'),
        url('assets/font/NotoSans-BoldItalic.ttf') format('truetype'),
        url('assets/font/NotoSans-BoldItalic.woff') format('woff');
    font-style: italic;
    font-weight: 800;
}
@font-face {
    font-family: 'NotoSans';
    src:
        url('assets/font/NotoSans-BlackItalic.otf') format('otf'),
        url('assets/font/NotoSans-BlackItalic.ttf') format('truetype'),
        url('assets/font/NotoSans-BlackItalic.woff') format('woff');
    font-style: italic;
    font-weight: 900;
}
@font-face {
    font-family: 'NotoSans';
    src:
        url('assets/font/NotoSans-Black.otf') format('otf'),
        url('assets/font/NotoSans-Black.ttf') format('truetype'),
        url('assets/font/NotoSans-Black.woff') format('woff');
    font-style: normal;
    font-weight: 900;
}
@font-face {
    font-family: 'BarlowCondensed';
    src:
        url('assets/font/BarlowCondensed-SemiBoldItalic.otf') format('otf'),
        url('assets/font/BarlowCondensed-SemiBoldItalic.ttf') format('truetype'),
        url('assets/font/BarlowCondensed-SemiBoldItalic.woff') format('woff');
    font-style: normal;
    font-weight: 900;
}
* {
    margin: 0;
    padding: 0;
    min-height: 0;
    min-width: 0;
    box-sizing: border-box;
}
html,
body,
div,
article,
section,
aside,
header,
footer,
hgroup,
nav,
h1,
h2,
h3,
ul,
li,
a,
p,
small,
img {
    border: none;
    display: block;
}
html {
    width: 100%;
    height: 100%;
    font-size: 11px;
    position: static;
    -webkit-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    text-size-adjust: 100%;
}
@media screen and (max-width: 576px) {
    html {
        font-size: 10px;
    }
}
@media screen and (min-width: 992px) {
    html {
        font-size: 12px;
    }
}
@media screen and (min-width: 1200px) {
    html {
        font-size: 14px;
    }
}
body {
    height: 100%;
    position: static;
    color: #07585f;
    font-family: 'NotoSans', '游ゴシック体', YuGothic, '游ゴシック Medium', 'Yu Gothic Medium', 'メイリオ', 'Meiryo', sans-serif;
    font-weight: 400;
    overflow-x: hidden;
    overflow-y: scroll;
    -webkit-font-smoothing: antialiased;
    transition-timing-function: cubic-bezier(0.64, 0.57, 0.67, 1.53);
    transition: opacity 0.6s;
}
body::before {
    visibility: hidden;
    opacity: 0;
    position: absolute;
}
@media screen and (max-width: 576px) {
    body::before {
        content: 'sm';
    }
}
@media screen and (min-width: 768px) and (max-width: 992px) {
    body::before {
        content: 'lg';
    }
}
@media screen and (min-width: 1200px) {
    body::before {
        content: 'xl';
    }
}
a {
    zoom: 1;
    outline: 0;
    color: #07585f;
    text-decoration: none;
}
img {
    outline: 0;
    border: 0;
    border-style: none;
}
@media screen and (max-width: 992px) {
    img {
        max-width: 100%;
        height: auto;
    }
}
ul,
li {
    list-style: none;
    list-style-image: none;
}
dl,
ol,
ul {
    margin-bottom: 0;
}
label {
    display: inline-block;
    vertical-align: middle;
}
ul,
li,
a,
small {
    display: block;
}
iframe {
    border: 0;
}
.hide {
    display: none !important;
}
.show-block {
    display: block !important;
}
.show-inline {
    display: inline !important;
}
.show-inline-block {
    display: inline-block !important;
}
.show-flex {
    display: flex !important;
}
.text-left {
    text-align: left !important;
}
.text-center {
    text-align: center !important;
}
.text-right {
    text-align: right !important;
}
@media screen and (min-width: 576px) {
    .sm-hide {
        display: none !important;
    }
    .sm-show-block {
        display: block !important;
    }
    .sm-show-inline {
        display: inline !important;
    }
    .sm-show-inline-block {
        display: inline-block !important;
    }
    .sm-show-flex {
        display: flex !important;
    }
    .sm-text-left {
        text-align: left !important;
    }
    .sm-text-center {
        text-align: center !important;
    }
    .sm-text-right {
        text-align: right !important;
    }
}
@media screen and (min-width: 768px) {
    .md-hide {
        display: none !important;
    }
    .md-show-block {
        display: block !important;
    }
    .md-show-inline {
        display: inline !important;
    }
    .md-show-inline-block {
        display: inline-block !important;
    }
    .md-show-flex {
        display: flex !important;
    }
    .md-text-left {
        text-align: left !important;
    }
    .md-text-center {
        text-align: center !important;
    }
    .md-text-right {
        text-align: right !important;
    }
}
@media screen and (min-width: 992px) {
    .lg-hide {
        display: none !important;
    }
    .lg-show-block {
        display: block !important;
    }
    .lg-show-inline {
        display: inline !important;
    }
    .lg-show-inline-block {
        display: inline-block !important;
    }
    .lg-show-flex {
        display: flex !important;
    }
    .lg-text-left {
        text-align: left !important;
    }
    .lg-text-center {
        text-align: center !important;
    }
    .lg-text-right {
        text-align: right !important;
    }
}
iframe {
    max-width: 100%;
}
@media screen and (max-width: 768px) {
    iframe {
        max-height: 200px;
    }
}
.container-wrap {
    overflow: hidden;
}
.section {
    position: relative;
    padding: 3.5rem 0 6rem;
}
@media screen and (min-width: 768px) and (max-width: 992px) {
    .section {
        padding: 7rem 0 7rem;
    }
}
@media screen and (min-width: 992px) {
    .section {
        padding-top: 10rem;
        padding-bottom: 7.14rem;
    }
}
.section__inner {
    position: relative;
    z-index: 1;
}
@media screen and (max-width: 768px) {
    .section__inner {
        padding-left: 4vw;
        padding-right: 4vw;
    }
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
    .section__inner {
        padding-left: 40px;
        padding-right: 40px;
    }
}
@media screen and (min-width: 1200px) {
    .section__inner {
        max-width: 1180px;
        margin-left: auto;
        margin-right: auto;
    }
}
.thumb {
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}
@media screen and (max-width: 992px) {
    .thumb {
        height: auto;
    }
}
.heading_left {
    position: relative;
    padding-left: 4.1rem;
}
@media screen and (min-width: 768px) {
    .heading_left {
        padding-left: 65px;
    }
}
.heading_left__heading {
    border-right: 1px solid #f1a16f;
    position: absolute;
    top: 0;
    left: 0;
    padding-right: 0.7rem;
    writing-mode: vertical-rl;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
    .heading_left__heading {
        padding-right: 5px;
        font-size: 1.4285714286rem;
    }
}
.categories {
    display: flex;
    flex-wrap: wrap;
    margin: 3.7rem 0 5.2rem;
}
@media screen and (min-width: 768px) {
    .categories {
        justify-content: center;
        align-items: center;
        margin: 67px 0 90px;
    }
}
.categories .cat {
    position: relative;
}
@media screen and (max-width: 768px) {
    .categories .cat {
        background-color: #07585f;
        border-right: 1px solid #fff;
        width: 50%;
    }
}
.categories .cat:nth-child(1)::before {
    display: none;
}
@media screen and (min-width: 768px) {
    .categories .cat::before {
        content: '';
        display: block;
        background-color: #07585f;
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        width: 1px;
    }
}
.categories .link {
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.03em;
}
@media screen and (max-width: 768px) {
    .categories .link {
        color: #fff;
        text-align: center;
        padding: 1.7rem 0;
    }
}
@media screen and (min-width: 768px) {
    .categories .link {
        font-size: 1.5714285714rem;
    }
}
@media screen and (min-width: 992px) {
    .categories .link {
        margin: 0 35px;
    }
}
@media screen and (min-width: 768px) and (max-width: 992px) {
    .categories .link {
        font-size: 1.2857142857rem;
        margin: 0 25px;
    }
}
.categories .link:hover,
.categories .link.active {
    color: #f1a16f;
}
@media screen and (min-width: 768px) {
    .swiper-case.swiper-case_fixed {
        padding: 0 130px;
    }
}
.section_cases_relation .swiper-button-next,
.section-case .swiper-button-next {
    right: 30px;
    width: 40px;
    transition: opacity 0.6s linear;
}
@media screen and (min-width: 768px) {
    .section_cases_relation .swiper-button-next,
    .section-case .swiper-button-next {
        top: 50%;
        transform: translate(0, -50%);
    }
}
@media screen and (max-width: 768px) {
    .section_cases_relation .swiper-button-next,
    .section-case .swiper-button-next {
        right: 1rem;
    }
}
.section_cases_relation .swiper-button-next:after,
.section-case .swiper-button-next:after {
    border-radius: 50px;
    background-color: #07585f;
    color: #fff;
    padding: 10px 0 10px 3px;
    width: 100%;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0;
    text-align: center;
}
@media screen and (min-width: 768px) {
    .section_cases_relation .swiper-button-next:after,
    .section-case .swiper-button-next:after {
        font-size: 1.4285714286rem;
    }
}
.section_cases_relation .swiper-button-next:hover,
.section-case .swiper-button-next:hover {
    opacity: 0.8;
}
.section_cases_relation .swiper-button-prev,
.section-case .swiper-button-prev {
    left: 30px;
    width: 40px;
    transition: opacity 0.6s linear;
}
@media screen and (min-width: 768px) {
    .section_cases_relation .swiper-button-prev,
    .section-case .swiper-button-prev {
        top: 50%;
        transform: translate(0, -50%);
    }
}
@media screen and (max-width: 768px) {
    .section_cases_relation .swiper-button-prev,
    .section-case .swiper-button-prev {
        left: 1rem;
    }
}
.section_cases_relation .swiper-button-prev:after,
.section-case .swiper-button-prev:after {
    border-radius: 50px;
    background-color: #07585f;
    color: #fff;
    padding: 10px 3px 10px 0;
    width: 100%;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0;
    text-align: center;
}
@media screen and (min-width: 768px) {
    .section_cases_relation .swiper-button-prev:after,
    .section-case .swiper-button-prev:after {
        font-size: 1.4285714286rem;
    }
}
.section_cases_relation .swiper-button-prev:hover,
.section-case .swiper-button-prev:hover {
    opacity: 0.8;
}
#header {
    background-color: #fff;
    margin: 0 auto;
    position: fixed;
    top: 0;
    z-index: 9999;
    width: 100%;
}
@media screen and (min-width: 768px) {
    #header {
        box-shadow: 0px 3px 16px rgba(0, 0, 0, 0.16);
    }
}
@media screen and (min-width: 992px) {
    #header {
        background-color: rgba(255, 255, 255, 0.9);
    }
}
#header.active {
    background-color: #dff2eb;
}
#header .header__inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}
@media screen and (max-width: 992px) {
    #header .header__inner {
        padding: 1.2rem 0.7rem 1.2rem 1.5rem;
    }
}
@media only screen and (min-width: 992px) and (max-width: 1400px) {
    #header .header__inner {
        margin-left: auto;
        max-width: 1310px;
        width: 90.9722222222vw;
    }
}
@media screen and (min-width: 1401px) {
    #header .header__inner {
        margin-left: auto;
        margin-right: 0;
    }
}
@media only screen and (min-width: 1201px) and (max-width: 1360px) {
    #header .header__inner {
        width: 93%;
    }
}
@media only screen and (min-width: 992px) and (max-width: 1200px) {
    #header .header__inner {
        width: 95%;
    }
}
.brand__logo {
    width: 14.2857142857vw;
    max-width: 200px;
}
@media screen and (max-width: 992px) {
    .brand__logo {
        width: 45.3333333333vw;
        max-width: 170px;
    }
}
@media screen and (min-width: 1401px) {
    .brand__logo {
        margin-left: 30px;
    }
}
.brand__logo img {
    width: 100%;
}
.header-body {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}
.header-links {
    display: flex;
    flex-direction: column;
    padding: 16px 0 29px;
}
.header-inquiry {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 25px;
}
.header-inquiry__link.download-form,
.header-inquiry__link.web-form {
    border-radius: 19px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    padding: 13px 0;
    width: 220px;
    transition:
        color 0.6s,
        background-color 0.6s;
    font-size: 1.2857142857rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0;
}
.gnav__item.download-form,
.gnav__item.web-form {
    background-color: #07585f;
    border-radius: 3rem;
    margin-top: 2.3rem;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0;
}
@media screen and (max-width: 992px) {
    .gnav__item.download-form,
    .gnav__item.web-form {
        padding: 1.6rem 1.7rem 1.6rem 2.5rem;
    }
}
.gnav__item.download-form .gnav__link,
.gnav__item.web-form .gnav__link {
    color: #fff;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding-left: 0;
}
.gnav__item.download-form .gnav__link::after,
.gnav__item.web-form .gnav__link::after {
    background-color: #fff;
    left: auto;
    right: 0;
}
.gnav__item.download-form .gnav__link::before,
.gnav__item.web-form .gnav__link::before {
    border-color: #07585f;
    left: auto;
    right: 0.4rem;
}
.header-inquiry__link.download-form {
    background-color: #dff2eb;
    color: #07585f;
    margin-right: 20px;
}
.header-inquiry__link.download-form .myfont-book {
    font-size: 15px;
    margin-right: 10px;
}
@media only screen and (min-width: 992px) and (max-width: 1360px) {
    .header-inquiry__link.download-form .myfont-book {
        font-size: 1.0714285714rem;
    }
}
.header-inquiry__link.download-form.active {
    background-color: #f1a16f;
    color: #fff;
}
.header-inquiry__link.download-form:hover {
    background-color: #07585f;
    color: #fff;
}
.gnav__item.download-form .myfont-book {
    font-size: 23px;
    margin-right: 2.6rem;
}
.header-inquiry__link.web-form {
    background-color: #07585f;
    color: #fff;
}
@media screen and (max-width: 992px) {
    .header-inquiry__link.web-form {
        border-radius: 3rem;
        margin-top: 1.6rem;
    }
}
.header-inquiry__link.web-form .myfont-email {
    font-size: 15px;
    margin-right: 10px;
}
@media only screen and (min-width: 992px) and (max-width: 1360px) {
    .header-inquiry__link.web-form .myfont-email {
        font-size: 1.0714285714rem;
    }
}
.header-inquiry__link.web-form.active {
    background-color: #f1a16f;
}
.header-inquiry__link.web-form:hover {
    background-color: #dff2eb;
    color: #07585f;
}
.gnav__item.web-form .myfont-email {
    font-size: 22px;
    margin-right: 2.6rem;
}
.header-body > .dts_logo {
    padding: 0 15px 0 10px;
    transition: opacity 0.6s linear;
}
@media only screen and (min-width: 992px) and (max-width: 1200px) {
    .header-body > .dts_logo {
        padding: 0 10px;
    }
}
.header-body > .dts_logo img {
    width: 7.5138888889vw;
    max-width: 95px;
}
.header-body > .dts_logo:hover {
    opacity: 0.7;
}
.header-nav {
    margin-left: auto;
}
@media screen and (max-width: 992px) {
    .header-nav {
        width: 100%;
        position: fixed;
        top: 21.8666666667vw;
        top: 84px;
        right: 0;
        overflow: hidden;
        transition: height 0.6s ease-in-out;
        background-color: #fff;
    }
}
@media screen and (min-width: 992px) {
    .header-nav {
        display: flex;
        align-items: center;
    }
}
@media screen and (max-width: 768px) {
    .header-nav {
        display: none;
    }
}
.header-nav.active {
    background-color: #dff2eb;
}
@media screen and (max-width: 992px) {
    .header-nav.active {
        height: calc(100vh - 120px);
    }
    .header-nav.active .gnav__list,
    .header-nav.active .header-nav-foot {
        opacity: 1;
    }
}
@media screen and (max-width: 768px) {
    .header-nav.active {
        display: block;
        height: calc(100vh - 22.4vw);
    }
}
@media screen and (max-width: 992px) {
    .header-nav:not(.active) {
        height: 0;
        transition-delay: 0.2s;
    }
    .header-nav:not(.active) .gnav__list,
    .header-nav:not(.active) .header-nav-foot {
        opacity: 0;
    }
}
@media screen and (max-width: 992px) {
    .gnav__list {
        overflow-y: scroll;
        position: relative;
        transition: opacity 0.6s ease-in-out;
        margin: 0 auto;
        padding: 4.1rem 0 20rem;
        height: 100%;
        width: 92%;
    }
}
@media screen and (min-width: 992px) {
    .gnav__list {
        display: flex;
        align-items: center;
    }
}
@media screen and (max-width: 992px) {
    .gnav__item {
        background-color: #fff;
        margin-bottom: 1rem;
        padding: 1.6rem 1.3rem;
    }
}
.gnav__link {
    color: #07585f;
    position: relative;
    transition: opacity 0.6s linear;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1;
}
.gnav__link:hover {
    opacity: 0.8;
}
@media screen and (min-width: 768px) {
    .gnav__link {
        margin: 0 10px;
        font-size: 1rem;
    }
}
@media only screen and (min-width: 1201px) and (max-width: 1360px) {
    .gnav__link {
        margin: 0 10px;
        font-size: 1rem;
    }
}
@media only screen and (min-width: 992px) and (max-width: 1200px) {
    .gnav__link {
        margin: 0 10px;
        font-size: 1rem;
    }
}
@media screen and (max-width: 768px) {
    .gnav__link {
        padding-left: 3rem;
    }
    .gnav__link::before,
    .gnav__link::after {
        content: '';
        position: absolute;
        display: inline-block;
    }
    .gnav__link::after {
        top: 50%;
        left: 0;
        transform: translate(0, -50%);
        width: 18px;
        height: 18px;
        background-color: #07585f;
        border-radius: 100%;
    }
    .gnav__link::before {
        z-index: 2;
        top: 48%;
        left: 0.6rem;
        width: 5px;
        height: 5px;
        border-right: 2px solid #fff;
        border-bottom: 2px solid #fff;
        transform: rotate(-45deg) translate(0, -50%);
    }
}
.gnav__link.active {
    position: relative;
}
@media screen and (min-width: 992px) {
    .gnav__link.active::after {
        content: '';
        background-color: #07585f;
        position: absolute;
        bottom: -8px;
        left: 50%;
        transform: translate(-50%, 0);
        height: 2px;
        width: 30px;
    }
}
.menu-box {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-left: auto;
    background-color: #dff2eb;
    height: 6rem;
    width: 6rem;
    max-height: 6rem;
    box-shadow: 0 0.3rem 1rem rgba(7, 88, 95, 0.16);
}
.menu-box .menu-line,
.menu-box .menu-line span {
    display: inline-block;
    transition: all 0.6s;
    box-sizing: border-box;
}
.menu-box .menu-line {
    position: relative;
    width: 2.5rem;
    height: 21px;
}
.menu-box .menu-line span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 3px;
    background-color: #07585f;
}
.menu-box .menu-line span:nth-of-type(1) {
    top: 0;
}
.menu-box .menu-line span:nth-of-type(2) {
    top: 9px;
}
.menu-box .menu-line span:nth-of-type(3) {
    bottom: 0;
}
.menu-box.active .menu-line span:nth-of-type(1) {
    transform: translateY(0.9rem) rotate(-45deg);
}
.menu-box.active .menu-line span:nth-of-type(2) {
    left: 50%;
    opacity: 0;
    animation: active-menu-bar02 0.8s forwards;
}
.menu-box.active .menu-line span:nth-of-type(3) {
    transform: translateY(-0.9rem) rotate(45deg);
}
@media screen and (min-width: 992px) {
    .footer-gnav {
        display: flex;
        flex-wrap: wrap;
        width: 50%;
    }
}
@media screen and (min-width: 992px) {
    .footer-gnav .links {
        width: 45%;
    }
}
.footer-gnav .fnav__link {
    transition: opacity 0.6s linear;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.03em;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-right: 3rem;
    position: relative;
    padding-left: 3.4rem;
}
.footer-gnav .fnav__link:hover {
    opacity: 0.7;
}
@media screen and (max-width: 768px) {
    .footer-gnav .fnav__link {
        border-bottom: 1px solid #07585f;
        padding-bottom: 1.3rem;
        margin-bottom: 1.8rem;
        width: 100%;
    }
}
@media screen and (min-width: 768px) {
    .footer-gnav .fnav__link {
        margin-bottom: 18px;
        padding-left: 35px;
        font-size: 1.1428571429rem;
    }
}
.footer-gnav .fnav__link::before,
.footer-gnav .fnav__link::after {
    content: '';
    position: absolute;
    display: inline-block;
}
.footer-gnav .fnav__link::after {
    background-color: #07585f;
    border-radius: 100%;
    top: 0;
    left: 0;
    height: 18px;
    width: 18px;
}
@media screen and (min-width: 768px) {
    .footer-gnav .fnav__link::after {
        height: 18px;
        width: 18px;
    }
}
.footer-gnav .fnav__link::before {
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    top: 0.35em;
    left: 0.25em;
    transform: rotate(-45deg);
    height: 5px;
    width: 5px;
    z-index: 2;
}
@media screen and (min-width: 768px) {
    .footer-gnav .fnav__link::before {
        top: 5.5px;
        left: 4px;
        height: 5px;
        width: 5px;
    }
}
.footer-gnav .icon-external {
    margin-left: 13px;
    height: 10px;
}
.footer.home {
    background-color: #fff;
}
.footer {
    background-color: #f9f9f9;
    padding: 1.4rem 0 3rem;
}
@media screen and (min-width: 1200px) {
    .footer {
        padding: 64px 0;
    }
}
.footer .brand-logo {
    width: 17%;
}
@media screen and (max-width: 768px) {
    .footer .brand-logo {
        width: 20rem;
    }
}
.footer .footer-information {
    margin-bottom: 34px;
}
@media screen and (min-width: 768px) {
    .footer .footer-information {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
}
@media screen and (max-width: 768px) {
    .footer .footer-information .brand-info {
        margin-bottom: 2rem;
    }
}
.footer .footer-information .brand-info__link {
    transition:
        color 0.6s,
        background-color 0.6s;
    background-color: #dff2eb;
    border-radius: 3rem;
    padding: 1.9rem 2.5rem;
    margin: 3rem 0 2rem;
    position: relative;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0;
}
@media screen and (min-width: 768px) {
    .footer .footer-information .brand-info__link {
        border-radius: 50px;
        margin: 20px 0 0;
        padding: 11px 0 10px 24px;
        width: 240px;
        font-size: 1.1428571429rem;
    }
}
.footer .footer-information .brand-info__link::before,
.footer .footer-information .brand-info__link::after {
    content: '';
    position: absolute;
    display: inline-block;
}
.footer .footer-information .brand-info__link::after {
    top: 50%;
    right: 22px;
    transform: translate(0, -50%);
    width: 18px;
    height: 18px;
    background-color: #07585f;
    border-radius: 100%;
}
.footer .footer-information .brand-info__link::before {
    z-index: 2;
    top: 48%;
    right: 26px;
    width: 5px;
    height: 5px;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: rotate(-45deg) translate(0, -50%);
}
.footer .footer-information .brand-info__link:hover {
    background-color: #07585f;
    color: #fff;
}
.footer .footer-information .brand-info__link:hover::after {
    background-color: #fff;
}
.footer .footer-information .brand-info__link:hover::before {
    border-color: #07585f;
}
.footer .footer-information .brand-addr {
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: 0.03em;
}
@media screen and (max-width: 768px) {
    .footer .footer-information .brand-addr {
        margin-left: 1.9rem;
    }
}
@media screen and (min-width: 768px) {
    .footer .footer-information .brand-addr {
        font-size: 1.2857142857rem;
    }
}
.footer .footer-information .link-info .link {
    transition:
        color 0.6s,
        background-color 0.6s;
    background-color: #dff2eb;
    border-radius: 3rem;
    padding: 1.9rem 2.5rem;
    position: relative;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0;
}
@media screen and (min-width: 768px) {
    .footer .footer-information .link-info .link {
        border-radius: 50px;
        padding: 24px 34px 23px;
        width: 377px;
        font-size: 1.5rem;
    }
}
.footer .footer-information .link-info .link i {
    margin-right: 28px;
}
.footer .footer-information .link-info .link::before,
.footer .footer-information .link-info .link::after {
    content: '';
    position: absolute;
    display: inline-block;
}
.footer .footer-information .link-info .link::after {
    top: 50%;
    right: 22px;
    transform: translate(0, -50%);
    width: 18px;
    height: 18px;
    background-color: #07585f;
    border-radius: 100%;
}
.footer .footer-information .link-info .link::before {
    z-index: 2;
    top: 48%;
    right: 26px;
    width: 5px;
    height: 5px;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: rotate(-45deg) translate(0, -50%);
}
.footer .footer-information .link-info .link:hover {
    background-color: #07585f;
    color: #fff;
}
.footer .footer-information .link-info .link:hover::after {
    background-color: #fff;
}
.footer .footer-information .link-info .link:hover::before {
    border-color: #07585f;
}
.footer .footer-information .link-info .link:nth-child(1) {
    margin-bottom: 2rem;
}
@media screen and (min-width: 768px) {
    .footer .footer-information .link-info .link:nth-child(1) {
        margin-bottom: 28px;
    }
}
.footer .footer-information .link-info .link:nth-child(2) {
    background-color: #07585f;
    color: #fff;
}
.footer .footer-information .link-info .link:nth-child(2)::after {
    background-color: #fff;
}
.footer .footer-information .link-info .link:nth-child(2)::before {
    border-color: #07585f;
}
.footer .footer-information .link-info .link:nth-child(2):hover {
    background-color: #dff2eb;
    color: #07585f;
}
.footer .footer-information .link-info .link:nth-child(2):hover::after {
    background-color: #07585f;
}
.footer .footer-information .link-info .link:nth-child(2):hover::before {
    border-color: #fff;
}
@media screen and (min-width: 768px) {
    .footer .footer-nav {
        display: flex;
        flex-wrap: wrap;
        align-items: flex-end;
        justify-content: space-between;
    }
}
.footer .copy {
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: 0;
}
@media screen and (max-width: 768px) {
    .footer .copy {
        margin-top: 4.4rem;
    }
}
@media screen and (min-width: 768px) {
    .footer .copy {
        width: 44%;
        font-size: 1rem;
    }
}
.topup {
    background-color: #07585f;
    border-radius: 5px;
    position: fixed;
    bottom: 10%;
    right: 5%;
    z-index: 999;
    transition: opacity 0.6s linear;
}
.topup > a {
    color: #fff;
    font-family: 'BarlowCondensed';
    padding: 28px 23px 20px 24px;
    position: relative;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0;
}
@media screen and (min-width: 768px) {
    .topup > a {
        font-size: 1.5714285714rem;
    }
}
.topup > a::before {
    content: '';
    font-family: 'myfonts';
    font-size: 10px;
    display: block;
    position: absolute;
    top: 17px;
    left: 50%;
    transform: scale(0.6) translate(-50%, 0);
    transform-origin: left top;
}
.topup:hover {
    opacity: 0.8;
}
.hero:not(.hero-home) {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    height: 500px;
}
@media screen and (max-width: 768px) {
    .hero:not(.hero-home) {
        align-items: flex-end;
        padding-bottom: 5.8rem;
        height: 28.5rem;
    }
}
.hero:not(.hero-home) .hero__title {
    width: 100%;
    color: #07585f;
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: 0;
    text-align: center;
}
@media screen and (min-width: 768px) {
    .hero:not(.hero-home) .hero__title {
        font-size: 1.4285714286rem;
    }
}
.hero:not(.hero-home) .hero__sub_title {
    width: 100%;
    color: #07585f;
    font-style: italic;
    font-size: 3rem;
    font-weight: 700;
    letter-spacing: 0.03em;
    text-align: center;
}
@media screen and (min-width: 768px) {
    .hero:not(.hero-home) .hero__sub_title {
        font-size: 2.8571428571rem;
    }
}
.hero-lower {
    background-image: url(assets/img/hero_lower_lg.jpg);
}
.hero-home {
    background-color: #07585f;
    height: 720px;
    position: relative;
}
@media screen and (max-width: 768px) {
    .hero-home {
        height: 62rem;
    }
}
.hero-home #particles-js {
    height: 100%;
}
.hero-home .copy {
    color: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
}
.hero-home .copy__secondary {
    margin-bottom: 1rem;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0;
    text-align: center;
}
@media screen and (min-width: 768px) {
    .hero-home .copy__secondary {
        margin-bottom: 40px;
        line-height: 1;
        font-size: 2.1428571429rem;
    }
}
.hero-home .copy__primary {
    font-size: 5.2rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0;
    text-align: center;
}
@media screen and (min-width: 768px) {
    .hero-home .copy__primary {
        font-size: 5.7142857143rem;
    }
}
.hero-home .copy__primary span {
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0;
}
@media screen and (min-width: 768px) {
    .hero-home .copy__primary span {
        margin-left: 10px;
        font-size: 2.8571428571rem;
    }
}
.light {
    font-weight: 400;
}
.bold {
    font-weight: 700;
}
.default-font {
    font-family: 'NotoSans', '游ゴシック体', YuGothic, '游ゴシック Medium', 'Yu Gothic Medium', 'メイリオ', 'Meiryo', sans-serif;
}
.ming-font {
    font-family: '游明朝', YuMincho, 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
}
.js-sc_animate[data-animate='fadeIn'] {
    transition-property: opacity, transform;
    opacity: 0;
}
.js-sc_animate[data-animate='fadeIn'].js-sc_animate--active {
    opacity: 1;
}
.js-sc_animate[data-animate='fadeInTop'],
.js-sc_animate[data-animate='fadeInLeft'],
.js-sc_animate[data-animate='fadeInRight'],
.js-sc_animate[data-animate='fadeInBottom'] {
    transition:
        transform 0.6s,
        opacity 0.6s cubic-bezier(0.22, 0.61, 0.36, 1);
    opacity: 0;
}
.js-sc_animate[data-animate='fadeInTop'] {
    transform: translateY(20px);
}
.js-sc_animate[data-animate='fadeInTop'].js-sc_animate--active {
    opacity: 1;
    transform: translateY(0) !important;
}
@media screen and (min-width: 992px) {
    .js-sc_animate[data-animate='fadeInTop'] {
        transform: translateY(20px);
    }
}
.js-sc_animate[data-animate='fadeInLeft'] {
    transform: translateX(100px);
}
.js-sc_animate[data-animate='fadeInLeft'].js-sc_animate--active {
    opacity: 1;
    transform: translateX(0) !important;
}
@media screen and (min-width: 992px) {
    .js-sc_animate[data-animate='fadeInLeft'] {
        transform: translateX(100px);
    }
}
.js-sc_animate[data-animate='fadeInRight'] {
    transform: translateX(-100px);
}
.js-sc_animate[data-animate='fadeInRight'].js-sc_animate--active {
    opacity: 1;
    transform: translateX(0) !important;
}
@media screen and (min-width: 992px) {
    .js-sc_animate[data-animate='fadeInRight'] {
        transform: translateX(-100px);
    }
}
.js-sc_animate[data-animate='fadeInBottom'] {
    transform: translateY(-20px);
}
.js-sc_animate[data-animate='fadeInBottom'].js-sc_animate--active {
    opacity: 1;
    transform: translateY(0) !important;
}
@media screen and (min-width: 992px) {
    .js-sc_animate[data-animate='fadeInBottom'] {
        transform: translateY(-20px);
    }
}
.js-sc_animate-wrapper {
    overflow: hidden;
}
.js-sc_animate-wrapper .js-sc_animate[data-animate='slideUp'] {
    transform: translateY(150%);
}
.js-sc_animate-wrapper .js-sc_animate[data-animate='slideUp'].js-sc_animate--active {
    animation: slideUp 0.8s cubic-bezier(0.53, 0.08, 0.49, 0.96) forwards;
}
@keyframes slideUp {
    0% {
        transform: translateY(120%);
    }
    100% {
        transform: translateY(0);
    }
}
.js-sc_animate-slideView {
    overflow: hidden;
    position: relative;
}
.js-sc_animate-slideView::before {
    background: #fff;
    bottom: 0;
    content: '';
    left: 0;
    pointer-events: none;
    position: absolute;
    right: 0;
    top: 0;
}
.js-sc_animate-slideView.js-sc_animate--active::before {
    animation: slideView 1s cubic-bezier(0.53, 0.08, 0.49, 0.96) forwards;
}
@keyframes slideView {
    100% {
        transform: translateX(100%);
    }
}
.delayScroll_item {
    opacity: 0;
}
.fadeUp {
    animation-name: fadeUpAnime;
    animation-duration: 0.6s;
    animation-fill-mode: forwards;
    opacity: 0;
    transition: opacity 0.6s linear;
}
@keyframes fadeUpAnime {
    from {
        opacity: 0;
        transform: translateY(100px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
.breadcrumbs {
    background-color: #f9f9f9;
}
@media screen and (max-width: 768px) {
    .breadcrumbs {
        padding: 0.5rem 0;
    }
}
.breadcrumbs__inner {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
@media screen and (min-width: 768px) {
    .breadcrumbs__inner {
        padding: 11px 0 9px;
    }
}
@media screen and (max-width: 768px) {
    .breadcrumbs__inner {
        padding-left: 4vw;
        padding-right: 4vw;
    }
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
    .breadcrumbs__inner {
        padding-left: 40px;
        padding-right: 40px;
    }
}
@media screen and (min-width: 1200px) {
    .breadcrumbs__inner {
        max-width: 1300px;
        margin-left: auto;
        margin-right: auto;
        width: 90%;
    }
}
.breadcrumbs a,
.breadcrumbs .current-item {
    display: inline;
    color: #07585f;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 1;
    letter-spacing: 0.1em;
}
@media screen and (min-width: 768px) {
    .breadcrumbs a,
    .breadcrumbs .current-item {
        font-size: 1rem;
    }
}
.breadcrumbs a {
    font-weight: 700;
}
.breadcrumbs a::after {
    content: '';
    font-family: 'myfonts';
    font-size: 10px;
    display: inline-block;
    transform: rotate(90deg) scale(0.5);
    padding: 10px 0;
}
@media screen and (min-width: 768px) {
    .no-hover {
        pointer-events: none;
    }
}
a.underline {
    display: inline;
    text-decoration: underline;
}
a.underline:hover {
    text-decoration: none;
}
a.hover-action_primary {
    transition:
        box-shadow 0.6s,
        opacity 0.6s;
}
a.hover-action_primary:hover {
    opacity: 0.7;
    box-shadow: 0px 0px 13px -3px rgba(0, 0, 0, 0.3);
}
a[disabled] {
    pointer-events: none;
}
.internal-link-target {
    display: table;
    width: 0;
    height: 0;
    visibility: hidden;
}
@media screen and (max-width: 992px) {
    .internal-link-target {
        margin-top: -25vw;
        padding-top: 25vw;
    }
}
@media screen and (min-width: 992px) {
    .internal-link-target {
        margin-top: -103px;
        padding-top: 103px;
    }
}
.more-link {
    display: block;
    font-weight: 500;
    letter-spacing: 0.2em;
    line-height: 1;
    position: relative;
}
@media screen and (min-width: 992px) {
    .more-link {
        font-size: 1rem;
    }
}
.more-link i[class^='myicon-arrow-'] {
    width: 2.5rem;
    height: 2.5rem;
    transition:
        color 0.6s,
        background 0.6s;
}
@media screen and (min-width: 992px) {
    .more-link i[class^='myicon-arrow-'] {
        width: 49px;
        height: 49px;
    }
}
.more-link.position-top_right {
    position: absolute;
}
@media screen and (max-width: 992px) {
    .more-link.position-top_right {
        top: 0;
        right: 4vw;
    }
}
@media screen and (min-width: 768px) {
    .more-link.position-top_right {
        top: -0.77em;
        right: 0;
    }
}
a.more-link:hover i {
    color: #fff;
    background: #07585f;
    border: 0;
}
.banners {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.banners .banner__link {
    margin-bottom: 1rem;
    transition: opacity 0.6s linear;
}
.banners .banner__link:hover {
    opacity: 0.7;
}
.banners .banner {
    width: 100%;
}
@media screen and (max-width: 768px) {
    .banners .banner {
        height: auto;
    }
}
.banners .banner__title {
    padding-top: 0.3em;
    font-size: 1.4rem;
    line-height: 2;
    text-align: center;
}
@media screen and (max-width: 576px) {
    .banners .banner__title {
        font-size: 1.2rem;
    }
}
@media screen and (min-width: 992px) {
    .banners .banner__title {
        font-size: 1.2857142857rem;
    }
}
.news-list {
    max-width: 770px;
    margin-left: auto;
    margin-right: auto;
}
.news-list .news__item {
    margin-bottom: 2rem;
    padding-bottom: 2rem;
    border-bottom: 1px solid #999;
}
@media screen and (min-width: 992px) {
    .news-list .news__item {
        display: flex;
        align-items: flex-start;
        padding: 0 2rem 2rem;
    }
}
.news-list .news__item .news__title {
    padding-top: 0.7em;
    font-size: 1.4rem;
    line-height: 1.6;
    transition: opacity 0.6s linear;
}
@media screen and (max-width: 576px) {
    .news-list .news__item .news__title {
        font-size: 1.2rem;
    }
}
@media screen and (min-width: 992px) {
    .news-list .news__item .news__title {
        width: 85%;
        padding: 0;
        font-size: 1.2857142857rem;
    }
}
.news-list .news__item .news__title:hover {
    opacity: 0.7;
}
@media screen and (max-width: 576px) {
    .news-list .news__item .news__time {
        font-size: 1.3rem;
    }
}
@media screen and (min-width: 992px) {
    .news-list .news__item .news__time {
        width: 15%;
        font-size: 1.1428571429rem;
    }
}
.not-found {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.03em;
    text-align: center;
}
@media screen and (min-width: 768px) {
    .not-found {
        margin-bottom: 100px;
        font-size: 1.4285714286rem;
    }
}
.btn {
    width: 100%;
    display: inline-block;
    border: 0;
    outline: none;
    padding: 1.5em 0;
    cursor: pointer;
    position: relative;
    backface-visibility: hidden;
    overflow: hidden;
    border-radius: 3em;
}
@media screen and (max-width: 576px) {
    .btn {
        font-size: 1.3rem;
    }
}
@media screen and (min-width: 992px) {
    .btn {
        padding: 1.7em 4.2em;
        font-size: 1.1428571429rem;
    }
}
.btn[disabled],
.btn.disabled {
    pointer-events: none;
    cursor: not-allowed;
}
.btn-primary {
    transition:
        color 0.6s,
        background-color 0.6s;
    color: #fff;
    background-color: #07585f;
    border-radius: 3rem;
    margin: 0 auto;
    padding: 2.2rem 0;
    position: relative;
    width: 100%;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.03em;
    text-align: center;
}
@media screen and (min-width: 768px) {
    .btn-primary {
        border-radius: 35px;
        padding: 26px 0;
        width: 320px;
        font-size: 1.2857142857rem;
    }
}
.btn-primary::before,
.btn-primary::after {
    content: '';
    position: absolute;
    display: inline-block;
}
.btn-primary::after {
    top: 50%;
    right: 22px;
    transform: translate(0, -50%);
    width: 18px;
    height: 18px;
    background-color: #fff;
    border-radius: 100%;
}
.btn-primary::before {
    z-index: 2;
    top: 48%;
    right: 26px;
    width: 5px;
    height: 5px;
    border-right: 2px solid #07585f;
    border-bottom: 2px solid #07585f;
    transform: rotate(-45deg) translate(0, -50%);
}
.btn-primary:hover {
    background-color: #dff2eb;
    color: #07585f;
}
.btn-primary:hover::after {
    background-color: #07585f;
}
.btn-primary:hover::before {
    border-color: #fff;
}
.btn-secondary {
    transition: background-color 0.6s linear;
    color: #07585f;
    background-color: #f2f0bf;
    border: 3px solid #f2f0bf;
}
.btn-secondary:hover {
    background-color: #fff;
}
.btn-submit {
    padding: 0 !important;
}
.btn-submit input[type='submit'],
.btn-submit button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: 0;
    background: rgba(0, 0, 0, 0);
    color: inherit;
    border: 0;
    font-size: inherit;
    margin: 0;
    line-height: 1;
    height: auto;
    width: 100%;
    z-index: 1;
}
.btn-submit input[type='submit']::-ms-expand,
.btn-submit button::-ms-expand {
    display: none;
}
.link_back {
    background-color: #07585f;
    border-radius: 35px;
    color: #fff;
    margin: 8rem 1.5rem 12rem;
    padding: 2.2rem 0;
    position: relative;
    transition:
        color 0.6s,
        background-color 0.6s;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0;
    text-align: center;
}
@media screen and (min-width: 768px) {
    .link_back {
        margin: 74px auto 120px;
        padding: 26px 0;
        width: 320px;
        font-size: 1.2857142857rem;
    }
}
.link_back::before,
.link_back::after {
    content: '';
    position: absolute;
    display: inline-block;
}
.link_back::after {
    top: 50%;
    left: 25px;
    transform: translate(0, -50%);
    width: 18px;
    height: 18px;
    background-color: #fff;
    border-radius: 100%;
}
.link_back::before {
    z-index: 2;
    top: 50%;
    left: 31px;
    width: 5px;
    height: 5px;
    border-right: 2px solid #07585f;
    border-bottom: 2px solid #07585f;
    transform: translate(0, -50%) rotate(140deg);
}
.link_back:hover {
    background-color: #dff2eb;
    color: #07585f;
}
.link_back:hover::after {
    background-color: #07585f;
}
.link_back:hover::before {
    border-color: #fff;
}
input[type='text'],
input[type='email'],
input[type='tel'],
input[type='search'],
input[type='number'],
input[type='password'],
textarea {
    outline: none;
    border: none;
    border-radius: 0;
    letter-spacing: 0.05em;
    -webkit-appearance: none;
    width: 100%;
}
@font-face {
    font-family: 'myfonts';
    src:
        url('assets/font/myfonts/myfonts.ttf?trfuaw') format('truetype'),
        url('assets/font/myfonts/myfonts.woff?trfuaw') format('woff'),
        url('assets/font/myfonts/myfonts.svg?trfuaw#myfonts') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: block;
}
i {
    font-family: 'myfonts' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.myfont-arrow-down:before {
    content: '';
}
.myfont-twitter:before {
    content: '';
}
.myfont-external:before {
    content: '';
}
.myfont-arrow_double:before {
    content: '';
}
.myfont-arrow:before {
    content: '';
}
.myfont-facebook:before {
    content: '';
}
.myfont-instagram:before {
    content: '';
}
.myfont-back-icon:before {
    content: '';
}
.myfont-rod-arrow:before {
    content: '';
}
.myfont-tel:before {
    content: '';
}
.myfont-email:before {
    content: '';
}
.myfont-book:before {
    content: '';
}
.wp-pagenavi {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    background-color: #dff2eb;
    border-radius: 35px;
    margin: 0 auto;
    padding: 1rem;
    width: 100%;
}
@media screen and (min-width: 768px) {
    .wp-pagenavi {
        padding: 13px 23px;
        width: 500px;
    }
}
.wp-pagenavi a.page {
    background-color: #dff2eb;
}
.wp-pagenavi a,
.wp-pagenavi span,
.wp-pagenavi a:hover {
    background-color: #fff;
    border-radius: 50px;
    padding: 0.4rem 0.8rem;
    margin-right: 4.6rem;
    font-size: 2.2rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .wp-pagenavi a,
    .wp-pagenavi span,
    .wp-pagenavi a:hover {
        margin-right: 35px;
        padding: 11px 15.38px;
        font-size: 1.5714285714rem;
    }
}
.previouspostslink,
.nextpostslink {
    color: #fff;
    position: relative;
}
.previouspostslink::after,
.nextpostslink::after {
    content: '';
    font-family: 'myfonts';
    color: #07585f;
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 1rem;
    line-height: 1;
    letter-spacing: 0;
}
@media screen and (min-width: 992px) {
    .previouspostslink::after,
    .nextpostslink::after {
        font-size: 0.8571428571rem;
    }
}
@media screen and (max-width: 768px) {
    .wp-pagenavi a.nextpostslink {
        margin-right: 0;
    }
}
.previouspostslink::after {
    transform: translate(-50%, -50%) scaleX(-1);
}
.home__heading .secondary {
    font-style: italic;
    margin-bottom: 0.3em;
    font-size: 3rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0;
    text-align: center;
}
@media screen and (min-width: 768px) {
    .home__heading .secondary {
        margin-bottom: 9px;
        font-size: 2.8571428571rem;
    }
}
.home__heading .primary {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.03em;
    text-align: center;
}
@media screen and (min-width: 768px) {
    .home__heading .primary {
        font-size: 1.4285714286rem;
    }
}
.home__text {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.8;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
    .home__text {
        font-size: 1.2142857143rem;
    }
}
.intro_copy {
    margin-top: -119px;
    position: relative;
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
    .intro_copy {
        margin-top: -8.5vw;
    }
}
@media screen and (max-width: 768px) {
    .intro_copy {
        margin-top: -14rem;
        z-index: 1;
    }
}
@media screen and (max-width: 768px) {
    .intro_copy .copy_list {
        padding-left: 4vw;
        padding-right: 4vw;
    }
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
    .intro_copy .copy_list {
        padding-left: 40px;
        padding-right: 40px;
    }
}
@media screen and (min-width: 1200px) {
    .intro_copy .copy_list {
        max-width: 1180px;
        margin-left: auto;
        margin-right: auto;
    }
}
@media screen and (min-width: 768px) {
    .intro_copy .copy_list {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }
}
.intro_copy .copy {
    border-radius: 0.5rem;
    box-shadow: 0.6rem 0.6rem 0.6rem rgba(7, 61, 92, 0.16);
    background-color: #fff;
    padding: 1.6rem 0;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0;
    text-align: center;
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
    .intro_copy .copy {
        padding: 1.4285714286vw 3.4285714286vw 1.2857142857vw;
        font-size: 1.5714285714vw;
    }
}
@media screen and (min-width: 768px) {
    .intro_copy .copy {
        box-shadow: 6px 6px 6px rgba(7, 61, 92, 0.16);
        border-radius: 12px;
        padding: 24px 55px 22px;
        font-size: 1.5714285714rem;
    }
}
@media screen and (max-width: 768px) {
    .intro_copy .copy {
        margin-bottom: 1.2rem;
        width: 23rem;
    }
}
@media screen and (min-width: 768px) {
    .intro_copy .copy:nth-child(-n + 3) {
        margin-bottom: 22px;
    }
}
.intro_copy .copy:nth-child(1) {
    margin-right: 74px;
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
    .intro_copy .copy:nth-child(1) {
        margin-right: 5.2857142857vw;
    }
}
@media screen and (max-width: 768px) {
    .intro_copy .copy:nth-child(1) {
        margin-right: auto;
    }
}
.intro_copy .copy:nth-child(2) {
    margin-right: 50px;
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
    .intro_copy .copy:nth-child(2) {
        margin-right: 3.5714285714vw;
    }
}
@media screen and (max-width: 768px) {
    .intro_copy .copy:nth-child(2) {
        margin-right: 0;
        margin-left: auto;
    }
}
@media screen and (max-width: 768px) {
    .intro_copy .copy:nth-child(3) {
        margin: 0 auto 1.2rem;
        width: 28rem;
    }
}
.intro_copy .copy:nth-child(4) {
    margin-right: 107px;
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
    .intro_copy .copy:nth-child(4) {
        margin-right: 7.6428571429vw;
    }
}
@media screen and (max-width: 768px) {
    .intro_copy .copy:nth-child(4) {
        margin-right: 0;
        margin-left: auto;
    }
}
@media screen and (max-width: 768px) {
    .intro_copy .copy:nth-child(5) {
        margin-bottom: 0;
        width: 25rem;
    }
}
.section-news {
    margin-top: 4.4rem;
}
@media screen and (min-width: 768px) {
    .section-news {
        margin-top: 96px;
    }
}
.section-news .news_list {
    margin: 3.2rem 0 4.6rem;
}
@media screen and (min-width: 768px) {
    .section-news .news_list {
        margin: 48px 0 76px;
    }
}
.section-news .news {
    margin-bottom: 30px;
}
@media screen and (max-width: 768px) {
    .section-news .news {
        margin-bottom: 3.6rem;
    }
}
.section-news .news:last-child {
    margin-bottom: 0;
}
.section-news .news__link {
    transition: opacity 0.6s linear;
}
@media screen and (min-width: 768px) {
    .section-news .news__link {
        display: flex;
        flex-wrap: wrap;
        align-items: flex-start;
    }
}
.section-news .news__link:hover {
    opacity: 0.8;
}
.section-news .news__head {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
@media screen and (max-width: 768px) {
    .section-news .news__head {
        margin-bottom: 1.6rem;
    }
}
@media screen and (min-width: 768px) {
    .section-news .news__head {
        justify-content: space-between;
        padding-right: 26px;
    }
}
.section-news .news__time {
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0;
}
@media screen and (min-width: 768px) {
    .section-news .news__time {
        font-size: 1rem;
    }
}
.section-news .news__cat {
    background-color: #f1a16f;
    border-radius: 21px;
    color: #fff;
    padding: 0.6rem 0;
    width: 8rem;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0;
    text-align: center;
}
@media screen and (max-width: 768px) {
    .section-news .news__cat {
        margin-right: 1.4rem;
    }
}
@media screen and (min-width: 768px) {
    .section-news .news__cat {
        margin-right: 27px;
        padding: 6px 0;
        width: 100px;
        font-size: 1rem;
    }
}
.section-news .news__title {
    flex: 1;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -o-box-orient: vertical;
    -ms-box-orient: vertical;
    -o-box-orient: vertical;
    -ms-box-orient: vertical;
    overflow: hidden;
    -webkit-line-clamp: 3;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.8;
    letter-spacing: 0;
}
@media screen and (min-width: 768px) {
    .section-news .news__title {
        -webkit-line-clamp: 2;
        width: 79%;
        font-size: 1.2857142857rem;
    }
}
.section-strength {
    position: relative;
}
.section-strength .section__inner {
    padding-top: 6rem;
    padding-bottom: 9.5rem;
}
@media screen and (min-width: 768px) {
    .section-strength .section__inner {
        padding: 149px 0 133px;
    }
}
.section-strength .human_icon02 {
    position: absolute;
    bottom: -20px;
    right: 0;
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
    .section-strength .human_icon02 {
        right: 40px;
    }
}
@media screen and (max-width: 768px) {
    .section-strength .human_icon02 {
        bottom: -3.7rem;
        right: 1.5rem;
        width: 8rem;
    }
}
.section-strength .home__text {
    margin: 2.8rem 0 3.6rem;
}
@media screen and (min-width: 768px) {
    .section-strength .home__text {
        text-align: center;
        margin: 53px 0 46px;
    }
}
.section-strength .strength_icon {
    margin: 0 auto;
}
.section-strength .strength_icon__text {
    margin: 2.8rem 0 4.6rem;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.8;
    letter-spacing: 0.03em;
    text-align: center;
}
@media screen and (min-width: 768px) {
    .section-strength .strength_icon__text {
        margin: 20px 0 81px;
        font-size: 1.2857142857rem;
    }
}
.section-service {
    position: relative;
    background-color: #f9f9f9;
}
.section-service .section__inner {
    padding-top: 5.5rem;
    padding-bottom: 6.5rem;
}
@media screen and (min-width: 768px) {
    .section-service .section__inner {
        padding-top: 121px;
        padding-bottom: 105px;
    }
}
.section-service .human_icon05 {
    position: absolute;
    left: 1.5rem;
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
    .section-service .human_icon05 {
        left: 40px;
    }
}
@media screen and (max-width: 768px) {
    .section-service .human_icon05 {
        bottom: -6.2rem;
        width: 8rem;
    }
}
@media screen and (min-width: 768px) {
    .section-service .human_icon05 {
        top: -163px;
        left: 0;
    }
}
.section-service .home__text {
    margin: 2.8rem 0 4.6rem;
}
@media screen and (min-width: 768px) {
    .section-service .home__text {
        text-align: center;
        margin: 71px auto;
        width: 100%;
        max-width: 900px;
    }
}
@media screen and (min-width: 768px) {
    .section-service .links {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
}
.section-service .service_link:hover .service_bg01,
.section-service .service_link:hover .service_bg02 {
    transform: translate(-50%, -50%) scale(1.2, 1.2);
}
.section-service .service_bg01,
.section-service .service_bg02 {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: -1;
    transition: transform 0.6s linear;
}
@media screen and (max-width: 768px) {
    .section-service .service_link:nth-child(1) {
        margin-bottom: 3.6rem;
    }
}
.section-service .service_link {
    background-size: cover;
    background-repeat: no-repeat;
    border-radius: 0.8rem;
    color: #fff;
    padding: 3.5rem 0;
    position: relative;
    overflow: hidden;
    font-size: 2.2rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.03em;
    text-align: center;
}
@media screen and (min-width: 768px) {
    .section-service .service_link {
        border-radius: 12px;
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;
        height: 150px;
        width: 47.5%;
        font-size: 1.8571428571rem;
    }
}
.section-service .service_link::before,
.section-service .service_link::after {
    content: '';
    position: absolute;
    display: inline-block;
}
.section-service .service_link::after {
    top: 50%;
    right: 22px;
    transform: translate(0, -50%);
    width: 18px;
    height: 18px;
    background-color: #fff;
    border-radius: 100%;
}
.section-service .service_link::before {
    z-index: 2;
    top: 49%;
    right: 26px;
    width: 5px;
    height: 5px;
    border-right: 2px solid #07585f;
    border-bottom: 2px solid #07585f;
    transform: rotate(-45deg) translate(0, -50%);
}
.section-case {
    background-color: #dff2eb;
    padding: 10.8rem 0 13.4rem;
}
@media screen and (min-width: 768px) {
    .section-case {
        padding: 112px 0 96px;
    }
}
.section-case .btn-primary:hover {
    background-color: #fff;
}
.section-case .home__text {
    margin: 2.8rem 0 4.6rem;
}
@media screen and (min-width: 768px) {
    .section-case .home__text {
        text-align: center;
        margin: 59px auto 40px;
        width: 100%;
        max-width: 770px;
    }
}
.section-case .cases {
    margin-bottom: 4.6rem;
}
@media screen and (min-width: 768px) {
    .section-case .cases {
        margin-bottom: 60px;
    }
}
.section-case .case__item {
    background-color: #fff;
    border-radius: 5px;
    transition: box-shadow 0.6s linear;
}
.section-case .case__item:hover {
    box-shadow: 0px 3px 16px rgba(7, 88, 95, 0.1);
}
.section-case .case__thumb {
    position: relative;
    height: 18rem;
    overflow: hidden;
}
@media screen and (min-width: 768px) {
    .section-case .case__thumb {
        height: 16.2142857143vw;
        max-height: 227px;
    }
}
.section-case .case__thumb img {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, 0);
    height: 100%;
    max-width: none;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}
.section-case .case__txt {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -o-box-orient: vertical;
    -ms-box-orient: vertical;
    -o-box-orient: vertical;
    -ms-box-orient: vertical;
    overflow: hidden;
    -webkit-line-clamp: 2;
    margin: 23px 26px 43px;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
    .section-case .case__txt {
        font-size: 1.1428571429rem;
    }
}
.section-column {
    background-color: #f9f9f9;
    position: relative;
}
.section-column .section__inner {
    padding-top: 7.5rem;
    padding-bottom: 12.5rem;
}
@media screen and (min-width: 768px) {
    .section-column .section__inner {
        padding-top: 138px;
        padding-bottom: 121px;
    }
}
.section-column .human_icon03 {
    position: absolute;
    top: -96px;
    left: 0;
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
    .section-column .human_icon03 {
        left: 40px;
    }
}
@media screen and (max-width: 768px) {
    .section-column .human_icon03 {
        top: -7.4rem;
        left: 1.5rem;
        width: 6.5rem;
    }
}
.section-column .human_icon04 {
    position: absolute;
    bottom: -60px;
    right: 0;
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
    .section-column .human_icon04 {
        right: 40px;
    }
}
.section-column .home__text {
    margin: 2.8rem 0 4.6rem;
}
@media screen and (min-width: 768px) {
    .section-column .home__text {
        text-align: center;
        margin: 59px auto 40px;
        width: 100%;
        max-width: 770px;
    }
}
@media screen and (min-width: 768px) {
    .section-column .column_list {
        display: flex;
        flex-wrap: wrap;
    }
}
.section-column .column {
    border-radius: 0.5rem;
    margin-bottom: 2.8rem;
    overflow: hidden;
}
@media screen and (min-width: 768px) {
    .section-column .column {
        border-radius: 5px;
        margin-bottom: 40px;
        width: 49%;
    }
}
@media screen and (min-width: 768px) {
    .section-column .column:nth-child(odd) {
        margin-right: 2%;
    }
}
.section-column .column:last-child {
    margin-bottom: 60px;
}
@media screen and (max-width: 768px) {
    .section-column .column:last-child {
        margin-bottom: 4.6rem;
    }
}
.section-column .column__link {
    background-color: #fff;
    transition: box-shadow 0.6s linear;
}
@media screen and (min-width: 768px) {
    .section-column .column__link {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
    }
}
.section-column .column__link:hover {
    box-shadow: 0px 3px 16px rgba(7, 88, 95, 0.1);
}
.section-column .column__thumb {
    overflow: hidden;
    height: 230px;
    position: relative;
}
@media screen and (min-width: 768px) {
    .section-column .column__thumb {
        width: 37%;
    }
}
.section-column .column__thumb img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}
.section-column .column__body {
    padding-left: 1.3rem;
    padding-right: 1.3rem;
}
@media screen and (max-width: 768px) {
    .section-column .column__body {
        padding-top: 2.1rem;
        padding-bottom: 2rem;
    }
}
@media screen and (min-width: 768px) {
    .section-column .column__body {
        padding-left: 3%;
        padding-right: 4%;
        width: 63%;
    }
}
.section-column .column__title {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -o-box-orient: vertical;
    -ms-box-orient: vertical;
    -o-box-orient: vertical;
    -ms-box-orient: vertical;
    overflow: hidden;
    -webkit-line-clamp: 2;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .section-column .column__title {
        font-size: 1.2857142857rem;
    }
}
.section-column .column__text {
    margin: 1rem 0 2rem;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -o-box-orient: vertical;
    -ms-box-orient: vertical;
    -o-box-orient: vertical;
    -ms-box-orient: vertical;
    overflow: hidden;
    -webkit-line-clamp: 2;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .section-column .column__text {
        margin: 18px 0 20px;
        font-size: 1.1428571429rem;
    }
}
.section-column .column__cat {
    background-color: #dff2eb;
    border-radius: 21px;
    padding: 0.8rem 3rem;
    display: inline-block;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .section-column .column__cat {
        padding: 10px 23px;
        font-size: 1rem;
    }
}
.section-complete .section__heading {
    margin-bottom: 10px;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 2;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
    .section-complete .section__heading {
        text-align: center;
        margin-bottom: 40px;
        font-size: 2.1428571429rem;
    }
}
.section-complete .text {
    font-size: 1.4rem;
    font-weight: 600;
    line-height: 2;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .section-complete .text {
        text-align: center;
        font-size: 1.2857142857rem;
    }
}
.section-404 .txt {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 2;
    letter-spacing: 0.03em;
    text-align: center;
}
@media screen and (min-width: 768px) {
    .section-404 .txt {
        margin-bottom: 80px;
        font-size: 1.5rem;
    }
}
.news_archive .news__head,
.news_single .news__head {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
.news_archive .news__time,
.news_single .news__time {
    margin-right: 2.5rem;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0;
}
@media screen and (min-width: 992px) {
    .news_archive .news__time,
    .news_single .news__time {
        margin-right: 14px;
        font-size: 1rem;
    }
}
.news_archive .news__cat,
.news_single .news__cat {
    background-color: #f1a16f;
    border-radius: 21px;
    color: #fff;
    padding: 0.6rem 1.6rem;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0;
}
@media screen and (min-width: 992px) {
    .news_archive .news__cat,
    .news_single .news__cat {
        padding: 6px 16px;
        font-size: 1rem;
    }
}
.categories_news .cat:nth-child(-n + 2) {
    border-bottom: 1px solid #fff;
}
.news_archive__inner {
    margin: 0 auto;
    max-width: 1180px;
    width: 90%;
}
.news_archive {
    margin-bottom: 120px;
}
.news_archive .news {
    border-bottom: 1px dashed #dbdbdb;
    margin-bottom: 3.3rem;
}
@media screen and (min-width: 992px) {
    .news_archive .news {
        margin-bottom: 38px;
    }
}
.news_archive .news__link {
    transition: opacity 0.6s linear;
}
.news_archive .news__link:hover {
    opacity: 0.8;
}
.news_archive .news__title {
    margin: 1.6rem 0 2.3rem;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -o-box-orient: vertical;
    -ms-box-orient: vertical;
    -o-box-orient: vertical;
    -ms-box-orient: vertical;
    overflow: hidden;
    -webkit-line-clamp: 2;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0;
}
@media screen and (min-width: 992px) {
    .news_archive .news__title {
        -webkit-line-clamp: 1;
        font-size: 1.5714285714rem;
    }
}
.news_archive .news__text {
    margin-bottom: 1.3rem;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -o-box-orient: vertical;
    -ms-box-orient: vertical;
    -o-box-orient: vertical;
    -ms-box-orient: vertical;
    overflow: hidden;
    -webkit-line-clamp: 3;
    font-size: 1.4rem;
    line-height: 1.5;
    letter-spacing: 0;
}
@media screen and (min-width: 992px) {
    .news_archive .news__text {
        margin-bottom: 19px;
        font-size: 1.1428571429rem;
    }
}
.news_single .news {
    background-image: url(assets/img/news_bg.jpg);
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: top right;
    box-shadow: 0px 3px 16px rgba(7, 88, 95, 0.1);
    margin: 6.7rem 1.5rem 0;
    padding: 5.1rem 1.5rem 3.1rem;
    position: relative;
}
@media screen and (max-width: 768px) {
    .news_single .news {
        padding-left: 4vw;
        padding-right: 4vw;
    }
}
@media screen and (min-width: 1200px) {
    .news_single .news {
        max-width: 1180px;
        margin-left: auto;
        margin-right: auto;
    }
}
@media screen and (min-width: 768px) {
    .news_single .news {
        margin: 111px auto 0;
        padding: 82px 50px 110px;
    }
}
.news_single .human_icon01 {
    position: absolute;
    top: -51px;
    right: 0;
}
@media screen and (max-width: 768px) {
    .news_single .human_icon01 {
        top: -2.6rem;
        right: 1.5rem;
        width: 6rem;
    }
}
.news_single .news__thumb {
    margin: 3.7rem auto 0;
}
@media screen and (min-width: 768px) {
    .news_single .news__thumb {
        margin: 38px auto 0;
        width: 80%;
        max-width: 800px;
    }
}
.news_single .news__thumb img {
    height: auto;
    width: 100%;
}
.news_single .news__title {
    margin-top: 3rem;
}
@media screen and (min-width: 768px) {
    .news_single .news__title {
        margin-top: 40px;
    }
}
.news_single .news__body {
    margin-top: 43px;
}
.news_single .news__body h2 {
    border-bottom: 3px solid #f1a16f;
    position: relative;
    margin: 3.3rem 0;
    padding-bottom: 1.6rem;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .news_single .news__body h2 {
        padding-bottom: 13px;
        margin: 40px 0;
        font-size: 1.2857142857rem;
    }
}
.news_single .news__body h2::after {
    content: '';
    display: block;
    border-bottom: solid 3px #07585f;
    position: absolute;
    bottom: -3px;
    width: 20%;
}
.news_single .news__body h3 {
    border-top: 1px dashed #f1a16f;
    border-bottom: 1px dashed #f1a16f;
    margin: 3.3rem 0;
    padding: 1.1rem 0;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .news_single .news__body h3 {
        margin: 40px 0;
        padding: 15px 0;
        font-size: 1.2857142857rem;
    }
}
.news_single .news__body p {
    font-size: 1.3rem;
    line-height: 1.5;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .news_single .news__body p {
        font-size: 1.1428571429rem;
    }
}
.news_single .news__body .wp-caption {
    max-width: 100%;
}
.news_single .news__body img.aligncenter,
.news_single .news__body .aligncenter {
    margin: 0 auto;
}
.news_single .news__body .wp-caption.aligncenter > img {
    margin: 0 auto;
}
.news_single .news__body img.alignright,
.news_single .news__body .alignright {
    margin-left: auto;
    margin-right: 0;
}
.news_single .news__body img.alignleft,
.news_single .news__body .alignleft {
    margin-left: 0;
    margin-right: auto;
}
.news_single .news__body a {
    color: #07585f;
    display: inline-block;
    text-decoration: underline;
}
.news_single .news__body a:hover {
    text-decoration: none;
}
.news_single .news__body ul {
    padding-left: 2rem;
    margin: 15px 0;
}
@media screen and (min-width: 992px) {
    .news_single .news__body ul {
        padding-left: 20px;
    }
}
.news_single .news__body ol {
    padding-left: 2.4rem;
    margin: 15px 0;
}
@media screen and (min-width: 992px) {
    .news_single .news__body ol {
        padding-left: 24px;
    }
}
.news_single .news__body ul > li {
    list-style: disc;
    list-style-type: disc;
    display: list-item;
    margin-bottom: 8px;
    font-size: 1.3rem;
    line-height: 1.5;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .news_single .news__body ul > li {
        font-size: 1.1428571429rem;
    }
}
.news_single .news__body ol > li {
    list-style: decimal;
    list-style-type: decimal;
    display: list-item;
    margin-bottom: 8px;
    font-size: 1.3rem;
    line-height: 1.5;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .news_single .news__body ol > li {
        font-size: 1.1428571429rem;
    }
}
@media screen and (max-width: 768px) {
    .categories_column .cat:nth-child(3),
    .categories_column .cat:last-child {
        border-right: none;
    }
    .categories_column .cat {
        border-bottom: 1px solid #fff;
        width: 33.3333333333vw;
    }
}
@media screen and (min-width: 768px) {
    .column_archive__inner {
        display: flex;
        flex-wrap: wrap;
    }
}
.column_archive {
    padding-bottom: 12.5rem;
    position: relative;
}
@media screen and (min-width: 768px) {
    .column_archive {
        padding-bottom: 120px;
    }
}
@media screen and (min-width: 768px) {
    .column_archive::after {
        content: '';
        background-image: url(assets/img/human_icon02.png);
        background-size: cover;
        background-repeat: no-repeat;
        display: block;
        position: absolute;
        bottom: -20px;
        right: 9.2857142857vw;
        height: 12.2857142857vw;
        width: 11.3571428571vw;
        max-height: 172px;
        max-width: 159px;
    }
}
.column_archive .column {
    margin-bottom: 6rem;
    position: relative;
    box-shadow: 0px 3px 16px rgba(7, 88, 95, 0.1);
    transition: box-shadow 0.6s linear;
}
.column_archive .column:hover {
    box-shadow: none;
}
.column_archive .column:nth-child(3n) {
    margin-right: 0;
}
@media screen and (min-width: 768px) {
    .column_archive .column {
        margin-right: 5%;
        margin-bottom: 120px;
        width: 30%;
    }
}
.column_archive .column__thumb {
    height: 19.8rem;
    position: relative;
    overflow: hidden;
}
@media screen and (min-width: 768px) {
    .column_archive .column__thumb {
        height: 206px;
    }
}
.column_archive img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}
.column_archive .column__body {
    padding: 2rem 1.3rem 6.8rem;
}
@media screen and (min-width: 768px) {
    .column_archive .column__body {
        padding: 12px 13px 85px 13px;
    }
}
.column_archive .column__cat {
    background-color: #dff2eb;
    border-radius: 21px;
    padding: 7px 23px;
    display: inline-block;
    position: absolute;
    bottom: 2rem;
    left: 1.3rem;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.03em;
    text-align: center;
}
@media screen and (min-width: 768px) {
    .column_archive .column__cat {
        bottom: 15px;
        left: 13px;
        font-size: 1rem;
    }
}
.column_archive .column__title {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -o-box-orient: vertical;
    -ms-box-orient: vertical;
    -o-box-orient: vertical;
    -ms-box-orient: vertical;
    overflow: hidden;
    -webkit-line-clamp: 2;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
    .column_archive .column__title {
        font-size: 1.2857142857rem;
    }
}
.column_archive .column__text {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -o-box-orient: vertical;
    -ms-box-orient: vertical;
    -o-box-orient: vertical;
    -ms-box-orient: vertical;
    overflow: hidden;
    -webkit-line-clamp: 2;
    margin-top: 1rem;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 2;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
    .column_archive .column__text {
        margin-top: 15px;
        font-size: 1rem;
    }
}
.flow__inner {
    margin: 6.5rem 0 6.8rem;
}
@media screen and (max-width: 768px) {
    .flow__inner {
        padding-left: 4vw;
        padding-right: 4vw;
    }
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
    .flow__inner {
        padding-left: 40px;
        padding-right: 40px;
    }
}
@media screen and (min-width: 1200px) {
    .flow__inner {
        max-width: 1180px;
        margin-left: auto;
        margin-right: auto;
    }
}
@media screen and (min-width: 768px) {
    .flow__inner {
        margin: 139px auto 120px;
    }
}
.flow_item {
    margin-bottom: 4.2rem;
}
@media screen and (min-width: 992px) {
    .flow_item {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        margin-bottom: 40px;
    }
}
@media screen and (min-width: 992px) {
    .flow_item::after {
        content: '';
        font-family: 'myfonts';
        font-size: 31px;
        margin-left: 32px;
    }
    .flow_item:last-child::after {
        display: none;
    }
}
.flow_head {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    position: relative;
}
@media screen and (max-width: 992px) {
    .flow_head {
        border-bottom: 1px solid #07585f;
        margin-bottom: 1.3rem;
    }
}
@media screen and (min-width: 992px) {
    .flow_head {
        width: 46%;
    }
}
@media screen and (min-width: 992px) {
    .flow_head::after {
        content: '';
        background-color: #07585f;
        display: block;
        position: absolute;
        top: 50%;
        right: 80px;
        transform: translate(0, -50%);
        height: 100%;
        width: 3px;
    }
}
.flow_head .num {
    color: #f1a16f;
    font-style: italic;
    font-size: 5.2rem;
    font-weight: 800;
    line-height: 90px;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .flow_head .num {
        margin-right: 39px;
        font-size: 5.2857142857rem;
        line-height: 111px;
    }
}
@media screen and (max-width: 992px) {
    .flow_head .num {
        margin-right: 1.8rem;
    }
}
.flow_head .title {
    font-size: 2.2rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .flow_head .title {
        font-size: 1.8571428571rem;
    }
}
@media screen and (min-width: 992px) {
    .flow_body {
        width: 54%;
    }
}
.flow_body p {
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.8;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .flow_body p {
        font-size: 1.1428571429rem;
    }
}
.flow_body a {
    transition:
        color 0.6s,
        background-color 0.6s;
    background-color: #07585f;
    border-radius: 50px;
    color: #fff;
    padding: 22px 0 20px;
    margin-top: 13px;
    width: 316px;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0;
    text-align: center;
}
@media screen and (min-width: 992px) {
    .flow_body a {
        font-size: 1.2857142857rem;
    }
}
.flow_body a:hover {
    background-color: #dff2eb;
    color: #07585f;
}
.flow_body .myfont-email {
    margin-right: 28px;
    vertical-align: middle;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0;
}
@media screen and (min-width: 992px) {
    .flow_body .myfont-email {
        font-size: 1.5714285714rem;
    }
}
.section_cases_relation {
    margin-bottom: 15.7rem;
}
@media screen and (min-width: 992px) {
    .section_cases_relation {
        margin-bottom: 130px;
    }
}
.section_cases_relation .cases {
    margin: 6rem 0;
}
@media screen and (min-width: 992px) {
    .section_cases_relation .cases {
        margin: 84px 0 68px;
    }
}
.section_cases_relation .case__item {
    background-color: #fff;
    box-shadow: 0px 3px 16px rgba(7, 88, 95, 0.1);
    border-radius: 5px;
    margin-bottom: 16px;
    transition: box-shadow 0.6s linear;
}
.section_cases_relation .case__item:hover {
    box-shadow: none;
}
.section_cases_relation .case__thumb {
    position: relative;
    overflow: hidden;
    height: 74.6666666667vw;
}
@media screen and (min-width: 768px) {
    .section_cases_relation .case__thumb {
        height: 16.2142857143vw;
        max-height: 227px;
    }
}
.section_cases_relation .case__thumb img {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, 0);
    height: 100%;
    width: 100%;
    max-width: none;
    -o-object-fit: cover;
    object-fit: cover;
}
.section_cases_relation .case__txt {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -o-box-orient: vertical;
    -ms-box-orient: vertical;
    -o-box-orient: vertical;
    -ms-box-orient: vertical;
    overflow: hidden;
    -webkit-line-clamp: 2;
    margin: 23px 26px 43px;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .section_cases_relation .case__txt {
        font-size: 1.1428571429rem;
    }
}
.cases_relation__heding {
    margin-bottom: 6rem;
}
@media screen and (min-width: 992px) {
    .cases_relation__heding {
        margin-bottom: 84px;
    }
}
.cases_relation__heding .primary {
    font-size: 2.8rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0;
    text-align: center;
}
@media screen and (min-width: 992px) {
    .cases_relation__heding .primary {
        font-size: 2.2857142857rem;
    }
}
.cases_relation__heding .secondary {
    font-size: 1.7rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0;
    text-align: center;
}
@media screen and (min-width: 992px) {
    .cases_relation__heding .secondary {
        font-size: 1.4285714286rem;
    }
}
.cases_relation__heding .secondary::after {
    content: '';
    display: block;
    background-color: #f1a16f;
    margin: 6px auto 13px;
    height: 1px;
    width: 87px;
}
.text-loop {
    margin-top: 3.7rem;
}
@media screen and (min-width: 992px) {
    .text-loop {
        margin-top: 37px;
    }
}
.loop__item {
    overflow: hidden;
    white-space: nowrap;
    margin-bottom: 10px;
}
.loop__item ul {
    display: inline-block;
    margin: 0;
    padding: 0;
}
.loop__item li {
    background-color: #07585f;
    box-shadow: 6px 6px 6px rgba(7, 61, 95, 0.16);
    border-radius: 8px;
    color: #fff;
    display: inline-block;
    margin-right: 1.5rem;
    margin-bottom: 0.6rem;
    padding: 1.5rem 4.9rem;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .loop__item li {
        margin-right: 25px;
        margin-bottom: 10px;
        padding: 23px 75px 22px;
        font-size: 1.5714285714rem;
    }
}
.loop01 ul {
    animation: text_loop 120s linear infinite;
}
.loop02 ul {
    animation: text_loop 135s linear infinite;
}
@keyframes text_loop {
    0% {
        transform: translateX(0px);
    }
    100% {
        transform: translateX(-100%);
    }
}
.section_strength__intro {
    padding: 6.5rem 0 6rem;
}
@media screen and (min-width: 768px) {
    .section_strength__intro {
        padding: 100px 0 60px;
    }
}
.section_strength__intro .info__txt {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 2;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .section_strength__intro .info__txt {
        text-align: center;
        font-size: 1.4285714286rem;
    }
}
.section_strength__info {
    padding: 6.5rem 0 5.3rem;
    position: relative;
    overflow-x: hidden;
}
@media screen and (min-width: 768px) {
    .section_strength__info {
        padding: 139px 0 131px;
    }
}
.section_strength__info::before {
    content: '';
    background-image: url(assets/img/strength_achievement_bg.png);
    background-repeat: no-repeat;
    background-size: cover;
    display: block;
    position: absolute;
    height: 23.6rem;
    width: 20rem;
}
@media screen and (max-width: 768px) {
    .section_strength__info::before {
        top: 16rem;
        right: 0;
        transform: scale(-1, 1);
    }
}
@media screen and (min-width: 768px) {
    .section_strength__info::before {
        bottom: 150px;
        left: 22px;
        height: 32.2142857143vw;
        width: 27.1428571429vw;
        max-height: 451px;
        max-width: 380px;
    }
}
.section_strength__info .human_icon02 {
    position: absolute;
    bottom: -50px;
    left: 0;
    transform: scale(-1, 1);
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
    .section_strength__info .human_icon02 {
        left: 40px;
    }
}
@media screen and (min-width: 768px) {
    .section_strength__info .achievement {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-end;
        align-items: center;
    }
}
.section_strength__info .achievement__thumb {
    border-radius: 0.5rem;
    overflow: hidden;
}
@media screen and (max-width: 768px) {
    .section_strength__info .achievement__thumb {
        margin-top: 1.7rem;
    }
}
@media screen and (min-width: 768px) {
    .section_strength__info .achievement__thumb {
        border-radius: 5px;
        margin-left: 47px;
        width: 44%;
    }
}
@media screen and (min-width: 768px) {
    .section_strength__info .achievement__body {
        flex: 1;
        max-width: 499px;
    }
}
.section_strength__info .info_body__heding {
    margin-bottom: 1.2rem;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .section_strength__info .info_body__heding {
        margin-bottom: 0;
        font-size: 1.8571428571rem;
    }
}
.section_strength__info .info_body__text {
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 2.3;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .section_strength__info .info_body__text {
        margin-top: 30px;
        font-size: 1.1428571429rem;
    }
}
.section_strength__reason {
    position: relative;
}
.section_strength__reason .human_icon04 {
    position: absolute;
    bottom: -55px;
    right: 130px;
    z-index: 1;
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
    .section_strength__reason .human_icon04 {
        right: 40px;
    }
}
@media screen and (max-width: 768px) {
    .section_strength__reason .human_icon04 {
        bottom: -5rem;
        right: 1.5rem;
        width: 10rem;
    }
}
.section_strength__reason .reason__inner {
    overflow: hidden;
    position: relative;
    padding-bottom: 131px;
}
.section_strength__reason .reason__inner::before {
    content: '';
    background-image: url(assets/img/strength_reason_bg01.png);
    background-size: cover;
    display: block;
    position: absolute;
    top: 89px;
    right: -100px;
    height: 946px;
    width: 455px;
}
@media screen and (max-width: 768px) {
    .section_strength__reason .reason__inner::before {
        top: 55%;
        right: 0;
        height: 62rem;
        width: 30rem;
        transform: translate(0, -50%);
    }
}
.section_strength__reason .reason__inner::after {
    content: '';
    background-image: url(assets/img/strength_reason_bg02.png);
    background-size: cover;
    display: block;
    position: absolute;
    bottom: 18px;
    left: 32px;
    height: 367px;
    width: 263px;
}
@media screen and (max-width: 768px) {
    .section_strength__reason .reason__inner::after {
        bottom: 3.7rem;
        left: -2rem;
        height: 23rem;
        width: 16rem;
    }
}
.section_strength__reason .company_list_copy {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.03em;
    text-align: center;
}
@media screen and (min-width: 992px) {
    .section_strength__reason .company_list_copy {
        font-size: 1.4285714286rem;
    }
}
.section_strength__reason .company_list {
    margin-bottom: 8rem;
}
@media screen and (min-width: 768px) {
    .section_strength__reason .company_list {
        margin-bottom: 149px;
    }
}
@media screen and (min-width: 768px) {
    .section_strength__reason .reason {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
}
.section_strength__reason .reason:nth-child(1) {
    margin-bottom: 5.3rem;
}
@media screen and (min-width: 768px) {
    .section_strength__reason .reason:nth-child(1) {
        margin-bottom: 76px;
    }
}
.section_strength__reason .reason__thumb {
    border-radius: 5px;
    overflow: hidden;
}
@media screen and (min-width: 768px) {
    .section_strength__reason .reason__thumb {
        overflow: hidden;
        width: 50%;
    }
}
@media screen and (max-width: 768px) {
    .section_strength__reason .reason__body {
        margin-top: 2.1rem;
    }
}
@media screen and (min-width: 768px) {
    .section_strength__reason .reason__body {
        width: 47%;
    }
}
.section_strength__reason .info_body__heding {
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
    .section_strength__reason .info_body__heding {
        font-size: 1.8571428571rem;
    }
}
.section_strength__reason .info_body__text {
    margin-top: 1.5rem;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 2.3;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
    .section_strength__reason .info_body__text {
        margin-top: 30px;
        font-size: 1.1428571429rem;
    }
}
.section_strength__numbers {
    background-color: #dff2eb;
    position: relative;
    overflow-x: hidden;
    overflow-y: clip;
}
@media screen and (min-width: 768px) {
    .section_strength__numbers {
        margin-bottom: 103px;
    }
}
.section_strength__numbers .strength_num_bg01 {
    position: absolute;
    top: -35px;
    right: -80px;
}
@media screen and (max-width: 768px) {
    .section_strength__numbers .strength_num_bg01 {
        top: 1rem;
        right: -7.4rem;
        width: 29rem;
    }
}
.section_strength__numbers .strength_num_bg02 {
    position: absolute;
    top: 271px;
    left: -40px;
}
@media screen and (max-width: 768px) {
    .section_strength__numbers .strength_num_bg02 {
        top: 43.3rem;
        left: -2.5rem;
        width: 20rem;
    }
}
.section_strength__numbers .strength_num_bg03 {
    position: absolute;
}
@media screen and (min-width: 768px) {
    .section_strength__numbers .strength_num_bg03 {
        bottom: -51px;
        left: -18px;
    }
}
@media screen and (max-width: 768px) {
    .section_strength__numbers .strength_num_bg03 {
        top: 56%;
        right: -7.4rem;
        width: 29rem;
    }
}
.section_strength__numbers .strength_num_bg04 {
    position: absolute;
    bottom: 69px;
}
@media screen and (min-width: 768px) {
    .section_strength__numbers .strength_num_bg04 {
        right: -126px;
    }
}
@media screen and (max-width: 768px) {
    .section_strength__numbers .strength_num_bg04 {
        left: 0;
        bottom: 3.9rem;
        width: 20rem;
        transform: scale(1, -1);
    }
}
.section_strength__numbers .numbers__inner {
    padding-top: 9.8rem;
    padding-bottom: 10rem;
}
@media screen and (min-width: 768px) {
    .section_strength__numbers .numbers__inner {
        padding-top: 112px;
        padding-bottom: 133px;
    }
}
.section_strength__numbers .numbers__thumb .thumbs {
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}
@media screen and (min-width: 768px) {
    .section_strength__numbers .numbers__thumb .thumbs {
        margin-right: -20px;
    }
}
.section_strength__numbers .numbers__thumb .thumbs.thumbs__only {
    margin-bottom: 10px;
}
.section_strength__numbers .numbers__thumb .thumbs__item {
    height: auto;
    width: 31rem;
}
@media screen and (min-width: 768px) {
    .section_strength__numbers .numbers__thumb .thumbs__item {
        width: 28.5714285714vw;
        max-width: 400px;
    }
}
@media screen and (max-width: 767px) {
    .section_strength__numbers .strength_thumb02 {
        margin-left: auto;
    }
}
.section_strength__numbers .numbers__thumb__caution {
    margin: 2rem 0 6.6rem;
    font-size: 1.4rem;
    line-height: 1;
    letter-spacing: 0.03em;
    text-align: right;
}
@media screen and (min-width: 768px) {
    .section_strength__numbers .numbers__thumb__caution {
        margin: 47px 0 82px;
        font-size: 1rem;
    }
}
.section_strength__numbers .numbers__copy {
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.03em;
    text-align: center;
}
@media screen and (min-width: 768px) {
    .section_strength__numbers .numbers__copy {
        font-size: 2rem;
    }
}
.section_strength__numbers .strength_icon {
    margin: 52px auto 56px;
}
@media screen and (max-width: 768px) {
    .section_strength__numbers .strength_icon {
        margin: 5.3rem auto;
        width: 22rem;
    }
}
.section_strength__numbers .qualification_ttl {
    background-color: #f1a16f;
    color: #fff;
    border-radius: 50px;
    padding: 1.1rem 0;
    width: 18rem;
    margin: 0 auto;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0;
    text-align: center;
}
@media screen and (min-width: 768px) {
    .section_strength__numbers .qualification_ttl {
        padding: 14px 0;
        width: 203px;
        font-size: 1.2857142857rem;
    }
}
.section_strength__numbers .qualification_txt {
    margin: 1.4rem 0 1rem;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
    .section_strength__numbers .qualification_txt {
        margin: 46px 0 42px;
        text-align: center;
        font-size: 1.2857142857rem;
    }
}
@media screen and (min-width: 768px) {
    .section_strength__numbers .point {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
}
.section_strength__numbers .point_item {
    border-radius: 0.8rem;
    padding: 2.6rem 1.5rem;
    color: #fff;
    background-color: #07585f;
}
@media screen and (max-width: 768px) {
    .section_strength__numbers .point_item:nth-child(1) {
        margin-bottom: 3.3rem;
    }
}
@media screen and (min-width: 768px) {
    .section_strength__numbers .point_item {
        border-radius: 8px;
        padding: 56px 43px;
        width: 48%;
    }
}
.section_strength__numbers .point__ttl {
    border-bottom: 2px solid #fff;
    padding-bottom: 1.3rem;
    margin-bottom: 2.5rem;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.03em;
    text-align: center;
}
@media screen and (min-width: 992px) {
    .section_strength__numbers .point__ttl {
        padding-bottom: 16px;
        margin-bottom: 27px;
        line-height: 1;
        font-size: 1.5714285714rem;
    }
}
.section_strength__numbers .point__txt {
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .section_strength__numbers .point__txt {
        font-size: 1.1428571429rem;
    }
}
.section_strength__numbers .interview_banner {
    margin: 89px auto 78px;
    width: 48.2638888889vw;
    max-width: 695px;
    transition: opacity 0.6s linear;
}
@media screen and (max-width: 768px) {
    .section_strength__numbers .interview_banner {
        margin: 5rem auto;
        width: 92vw;
        max-width: 345px;
    }
}
.section_strength__numbers .interview_banner:hover {
    opacity: 0.7;
    cursor: pointer;
}
.section_strength__numbers .in_house {
    background-color: #fff;
    padding: 2.6rem 1.5rem;
}
@media screen and (min-width: 992px) {
    .section_strength__numbers .in_house {
        padding: 55.6px 0 60px;
    }
}
.section_strength__numbers .in_house__title {
    margin-bottom: 1.5rem;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: 0.03em;
    text-align: center;
}
@media screen and (min-width: 992px) {
    .section_strength__numbers .in_house__title {
        margin-bottom: 18px;
        font-size: 1.5714285714rem;
    }
}
.section_strength__numbers .in_house__text {
    margin-bottom: 3rem;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.8;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .section_strength__numbers .in_house__text {
        margin-bottom: 45.6px;
        text-align: center;
        font-size: 1rem;
    }
}
.section_strength__numbers .in_house_banner {
    margin: 0 auto;
    width: 48.2638888889vw;
    max-width: 695px;
    transition: opacity 0.6s linear;
}
@media screen and (max-width: 768px) {
    .section_strength__numbers .in_house_banner {
        width: 100%;
        max-width: 345px;
    }
}
.section_strength__numbers .in_house_banner:hover {
    opacity: 0.7;
    cursor: pointer;
}
.section_about__info {
    padding: 6.5rem 0 0;
    position: relative;
    overflow: hidden;
}
@media screen and (min-width: 768px) {
    .section_about__info {
        padding: 109px 0 87px;
    }
}
.section_about__info .about-bg {
    position: absolute;
    bottom: 165px;
    left: -40px;
}
@media screen and (min-width: 768px) {
    .section_about__info .about-bg {
        width: 51.2857142857vw;
        height: 67.5714285714vw;
        max-width: 718px;
        max-height: 946px;
    }
}
@media screen and (max-width: 768px) {
    .section_about__info .about-bg {
        bottom: auto;
        top: 39rem;
        left: -6rem;
    }
}
@media screen and (min-width: 768px) {
    .section_about__info .info {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
}
@media screen and (min-width: 768px) {
    .section_about__info .info_body {
        width: 50%;
    }
}
.section_about__info .info_body__heding {
    margin-bottom: 1.2rem;
    font-size: 2rem;
    font-weight: 700;
    line-height: 2;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
    .section_about__info .info_body__heding {
        margin-bottom: 25px;
        font-size: 1.8571428571rem;
    }
}
.section_about__info .info_body__text {
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 2.1;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
    .section_about__info .info_body__text {
        line-height: 2.5;
        font-size: 1.1428571429rem;
    }
}
@media screen and (max-width: 768px) {
    .section_about__info .info_thumb {
        margin-top: 4.5rem;
    }
}
@media screen and (min-width: 768px) {
    .section_about__info .info_thumb {
        width: 42%;
    }
}
.section_about__info .about_figure01 {
    height: auto;
    width: 100%;
}
.section_about__info .figure02 {
    background-color: #f9f9f9;
    margin-top: 5.5rem;
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
    .section_about__info .figure02 {
        padding-left: 40px;
        padding-right: 40px;
    }
}
@media screen and (min-width: 1200px) {
    .section_about__info .figure02 {
        max-width: 1180px;
        margin-left: auto;
        margin-right: auto;
    }
}
@media screen and (min-width: 768px) {
    .section_about__info .figure02 {
        margin-top: 25px;
    }
}
.section_about__info .figure02 img {
    margin: 0 auto;
    padding: 3rem 0;
    height: auto;
    width: 100%;
}
@media screen and (min-width: 768px) {
    .section_about__info .figure02 img {
        padding: 21px 0;
        width: 95%;
    }
}
.section_about__features {
    background-color: #dff2eb;
    padding: 7rem 4vw 9rem;
}
@media screen and (min-width: 768px) {
    .section_about__features {
        padding: 104px 0 83px;
    }
}
.section_about__features .section__inner {
    background-color: #fff;
    border-radius: 10px;
    padding: 5rem 1.5rem;
}
@media screen and (min-width: 768px) {
    .section_about__features .section__inner {
        padding: 76px 50px;
    }
}
@media screen and (max-width: 768px) {
    .section_about__features .cases_relation__heding {
        margin-bottom: 2.8rem;
    }
}
@media screen and (min-width: 576px) {
    .section_about__features .features {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-end;
    }
}
.section_about__features .features:nth-child(n + 2) {
    margin-top: 60px;
}
@media screen and (max-width: 576px) {
    .section_about__features .features:nth-child(n + 2) {
        margin-top: 4.2rem;
    }
}
@media screen and (min-width: 576px) {
    .section_about__features .features__body {
        flex: 1;
        max-width: 544px;
    }
}
.section_about__features .features__body__heading {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 1.5rem;
}
@media screen and (min-width: 576px) {
    .section_about__features .features__body__heading {
        margin-bottom: 20px;
    }
}
.section_about__features .features__body__heading .num {
    color: #f1a16f;
    font-style: italic;
    font-size: 5.2rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
    .section_about__features .features__body__heading .num {
        font-size: 5.2857142857rem;
    }
}
.section_about__features .features__body__heading .ttl {
    flex: 1;
    margin-left: 1rem;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.7;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 576px) {
    .section_about__features .features__body__heading .ttl {
        margin-left: 26px;
        font-size: 1.8571428571rem;
    }
}
.section_about__features .features__body__txt {
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.8;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 576px) {
    .section_about__features .features__body__txt {
        line-height: 2.5;
        font-size: 1.1428571429rem;
    }
}
@media screen and (min-width: 576px) {
    .section_about__features .about_human01 {
        margin-right: 6.9285714286vw;
        width: 26.8571428571vw;
        max-width: 376px;
    }
}
@media screen and (min-width: 1400px) {
    .section_about__features .about_human01 {
        margin-right: 97px;
    }
}
@media screen and (max-width: 576px) {
    .section_about__features .about_human01 {
        margin-bottom: 0.6rem;
        width: 22rem;
    }
}
@media screen and (min-width: 576px) {
    .section_about__features .about_human02 {
        margin-right: 4.0714285714vw;
        width: 28vw;
        max-width: 392px;
    }
}
@media screen and (min-width: 1400px) {
    .section_about__features .about_human02 {
        margin-right: 57px;
    }
}
@media screen and (max-width: 576px) {
    .section_about__features .about_human02 {
        margin-bottom: 0.6rem;
        margin-left: auto;
        width: 22rem;
    }
}
@media screen and (min-width: 576px) {
    .section_about__features .about_human03 {
        margin-right: 6.3571428571vw;
        width: 27.6428571429vw;
        max-width: 387px;
    }
}
@media screen and (min-width: 1400px) {
    .section_about__features .about_human03 {
        margin-right: 89px;
    }
}
@media screen and (max-width: 576px) {
    .section_about__features .about_human03 {
        margin-bottom: 0.6rem;
        width: 26rem;
    }
}
@media screen and (min-width: 576px) {
    .section_about__features .about_human04 {
        margin-right: 4.4285714286vw;
        width: 28.0714285714vw;
        max-width: 393px;
    }
}
@media screen and (min-width: 1400px) {
    .section_about__features .about_human04 {
        margin-right: 62px;
    }
}
@media screen and (max-width: 576px) {
    .section_about__features .about_human04 {
        margin-bottom: 1.5rem;
        margin-left: auto;
        width: 22rem;
    }
}
.first_guide {
    padding: 71px 0 160px;
}
@media screen and (max-width: 576px) {
    .first_guide {
        padding: 5.6rem 0 17.8rem;
    }
}
.first_guide .link {
    margin: 0 auto;
    width: 64.5833333333vw;
    max-width: 930px;
    transition: opacity 0.6s linear;
}
@media screen and (max-width: 576px) {
    .first_guide .link {
        width: 92vw;
        max-width: 345px;
    }
}
.first_guide .link:hover {
    opacity: 0.7;
}
.resource_archive {
    margin: 73px auto 120px;
}
@media screen and (max-width: 768px) {
    .resource_archive {
        margin: 6.4rem auto 12.5rem;
        padding-left: 4vw;
        padding-right: 4vw;
    }
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
    .resource_archive {
        padding-left: 40px;
        padding-right: 40px;
    }
}
@media screen and (min-width: 1200px) {
    .resource_archive {
        max-width: 1180px;
        margin-left: auto;
        margin-right: auto;
    }
}
@media screen and (min-width: 768px) {
    .resource_archive__inner {
        display: flex;
        flex-wrap: wrap;
    }
}
.resource_archive .resource {
    margin-bottom: 6rem;
}
@media screen and (min-width: 768px) {
    .resource_archive .resource {
        margin-right: 5%;
        margin-bottom: 5%;
        width: 30%;
    }
}
.resource_archive .resource:nth-child(3n) {
    margin-right: 0;
}
.resource_archive .resource__link {
    box-shadow: 0px 3px 16px rgba(7, 88, 95, 0.1);
    display: flex;
    flex-direction: column;
    transition: box-shadow 0.6s linear;
}
.resource_archive .resource__link:hover {
    box-shadow: none;
}
.resource_archive .resource__thumb {
    max-height: 206px;
    height: 18.5714285714vw;
    position: relative;
}
@media screen and (max-width: 768px) {
    .resource_archive .resource__thumb {
        height: 52.8vw;
        min-height: 19.8rem;
    }
}
.resource_archive img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}
.resource_archive .resource__body {
    flex: 2;
    padding: 20px 13px 29px;
}
.resource_archive .resource__title {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -o-box-orient: vertical;
    -ms-box-orient: vertical;
    -o-box-orient: vertical;
    -ms-box-orient: vertical;
    overflow: hidden;
    -webkit-line-clamp: 2;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
    .resource_archive .resource__title {
        font-size: 1.4285714286rem;
    }
}
.resource_archive .resource__text {
    margin-top: 16px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -o-box-orient: vertical;
    -ms-box-orient: vertical;
    -o-box-orient: vertical;
    -ms-box-orient: vertical;
    overflow: hidden;
    -webkit-line-clamp: 2;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
    .resource_archive .resource__text {
        font-size: 1.1428571429rem;
    }
}
.resource_archive .btn_download {
    background-color: #07585f;
    color: #fff;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    padding: 21px 0;
    position: relative;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.03em;
    text-align: center;
}
@media screen and (min-width: 768px) {
    .resource_archive .btn_download {
        font-size: 1.2857142857rem;
    }
}
.resource_archive .btn_download::before,
.resource_archive .btn_download::after {
    content: '';
    position: absolute;
    display: inline-block;
}
.resource_archive .btn_download::after {
    top: 50%;
    right: 22px;
    transform: translate(0, -50%);
    width: 18px;
    height: 18px;
    background-color: #fff;
    border-radius: 100%;
}
.resource_archive .btn_download::before {
    z-index: 2;
    top: 48%;
    right: 26px;
    width: 5px;
    height: 5px;
    border-right: 2px solid #07585f;
    border-bottom: 2px solid #07585f;
    transform: rotate(-45deg) translate(0, -50%);
}
.resource_single {
    margin: 73px auto 126px;
}
@media screen and (max-width: 768px) {
    .resource_single {
        margin: 3.9rem auto 13.7rem;
        padding-left: 4vw;
        padding-right: 4vw;
    }
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
    .resource_single {
        padding-left: 40px;
        padding-right: 40px;
    }
}
@media screen and (min-width: 1200px) {
    .resource_single {
        max-width: 1180px;
        margin-left: auto;
        margin-right: auto;
    }
}
.resource_single .resource__heading {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
    .resource_single .resource__heading {
        font-size: 1.8571428571rem;
    }
}
.resource_single .resource__thumb {
    margin-top: 3.9rem;
}
@media screen and (min-width: 768px) {
    .resource_single .resource__thumb {
        margin-top: 50px;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }
}
.resource_single .thumb {
    height: auto;
}
@media screen and (min-width: 768px) {
    .resource_single .thumb {
        width: 38%;
    }
}
@media screen and (max-width: 768px) {
    .resource_single .thumb:nth-child(2) {
        margin-top: 2rem;
    }
}
@media screen and (min-width: 768px) {
    .resource_single .thumb:nth-child(2) {
        margin-left: 4%;
    }
}
.resource_single .resource__body {
    background-color: #f9f9f9;
    padding: 44px 66px;
    margin-top: 50px;
    position: relative;
}
@media screen and (max-width: 768px) {
    .resource_single .resource__body {
        padding: 5.4rem 1.5rem;
        margin-top: 4.6rem;
    }
}
.resource_single .human_icon03 {
    transform: scale(-1, 1);
    position: absolute;
    bottom: -63px;
    right: 0;
}
@media screen and (max-width: 768px) {
    .resource_single .human_icon03 {
        width: 4rem;
    }
}
.resource_single .resource__body__title {
    border-bottom: 3px solid #f1a16f;
    position: relative;
    padding-bottom: 1.7rem;
    margin-bottom: 3.2rem;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.03em;
}
.resource_single .resource__body__title::after {
    content: '';
    display: block;
    border-bottom: solid 3px #07585f;
    position: absolute;
    bottom: -3px;
    width: 20%;
}
@media screen and (min-width: 768px) {
    .resource_single .resource__body__title {
        padding-bottom: 13px;
        margin-bottom: 32px;
        font-size: 1.5714285714rem;
    }
}
.resource_single .resource__body__text {
    font-size: 1.4rem;
    line-height: 1.5;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
    .resource_single .resource__body__text {
        font-size: 1.2857142857rem;
    }
}
.resource_form {
    margin-top: 113px;
}
@media screen and (max-width: 768px) {
    .resource_form {
        margin-top: 9.1rem;
    }
}
.resource_form__copy {
    margin-bottom: 4.6rem;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .resource_form__copy {
        margin-bottom: 60px;
        text-align: center;
        font-size: 1.2857142857rem;
    }
}
.resource_form__form form {
    width: 100% !important;
}
.resource_form__form .mktoForm .mktoButtonWrap.mktoSimple .mktoButton {
    background-color: #07585f;
    border-radius: 35px;
    background-image: none;
    color: #fff;
    display: block;
    margin: 3rem auto 0;
    padding: 2rem 0;
    transition: background-color 0.6s;
    position: relative;
    width: 100%;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .resource_form__form .mktoForm .mktoButtonWrap.mktoSimple .mktoButton {
        margin: 50px auto 0;
        padding: 26px 0px;
        width: 320px;
        font-size: 1.2857142857rem;
    }
}
.resource_form__form .mktoForm .mktoButtonWrap.mktoSimple .mktoButton::before,
.resource_form__form .mktoForm .mktoButtonWrap.mktoSimple .mktoButton::after {
    content: '';
    position: absolute;
    display: inline-block;
}
.resource_form__form .mktoForm .mktoButtonWrap.mktoSimple .mktoButton::after {
    top: 50%;
    right: 22px;
    transform: translate(0, -50%);
    width: 18px;
    height: 18px;
    background-color: #fff;
    border-radius: 100%;
}
.resource_form__form .mktoForm .mktoButtonWrap.mktoSimple .mktoButton::before {
    z-index: 2;
    top: 48%;
    right: 26px;
    width: 5px;
    height: 5px;
    border-right: 2px solid #07585f;
    border-bottom: 2px solid #07585f;
    transform: rotate(-45deg) translate(0, -50%);
}
.resource_form__form .mktoForm .mktoButtonWrap.mktoSimple .mktoButton:hover {
    border: 1px solid #dff2eb !important;
    background-color: #dff2eb;
    color: #07585f;
    opacity: 0.8;
}
.resource_form__form .mktoForm .mktoButtonWrap.mktoSimple .mktoButton:hover::after {
    background-color: #07585f;
}
.resource_form__form .mktoForm .mktoButtonWrap.mktoSimple .mktoButton:hover::before {
    border-color: #fff;
}
@media screen and (max-width: 992px) {
    .resource_form__form .mktoFieldDescriptor {
        margin-bottom: 3.2rem !important;
    }
}
.resource_form__form .mktoForm .mktoRequiredField label.mktoLabel,
.resource_form__form .mktoForm .mktoLabel {
    background-color: #f9f9f9;
    color: #07585f;
    position: relative;
    padding: 1.8rem 1.5rem;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: 0.03em;
}
@media screen and (max-width: 992px) {
    .resource_form__form .mktoForm .mktoRequiredField label.mktoLabel,
    .resource_form__form .mktoForm .mktoLabel {
        margin-bottom: 1.2rem;
        width: 100% !important;
    }
}
@media screen and (min-width: 992px) {
    .resource_form__form .mktoForm .mktoRequiredField label.mktoLabel,
    .resource_form__form .mktoForm .mktoLabel {
        padding: 26px 28px;
        margin-right: 0.7%;
        width: 28% !important;
        font-size: 1.2857142857rem;
    }
}
.resource_form__form input:not([name='privacyPolicyAgreement']),
.resource_form__form textarea {
    -webkit-appearance: none;
}
.resource_form__form input:not([name='privacyPolicyAgreement']),
.resource_form__form textarea,
.resource_form__form select {
    background-color: #f9f9f9;
    line-height: 1.5em;
    color: #000;
    border: 1px solid #e3e3e3;
    padding: 10px !important;
    font-size: 1.6rem !important;
    line-height: 1.3;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .resource_form__form input:not([name='privacyPolicyAgreement']),
    .resource_form__form textarea,
    .resource_form__form select {
        font-size: 18px !important;
    }
}
@media screen and (max-width: 992px) {
    .resource_form__form input:not([name='privacyPolicyAgreement']),
    .resource_form__form textarea,
    .resource_form__form select {
        width: 100% !important;
    }
}
.resource_form__form input[name='privacyPolicyAgreement'] {
    border-radius: 0 !important;
    background-color: #f9f9f9;
    color: #000;
    border: 1px solid #e3e3e3;
}
.resource_form__form .mktoForm input[type='checkbox'] + label:before,
.resource_form__form .mktoForm input[type='radio'] + label:before {
    box-shadow: none !important;
}
.resource_form__form select,
.resource_form__form input:not([name='privacyPolicyAgreement']) {
    height: 70px;
}
@media screen and (max-width: 992px) {
    .resource_form__form select,
    .resource_form__form input:not([name='privacyPolicyAgreement']) {
        height: 5.5rem !important;
    }
}
@media screen and (min-width: 992px) {
    .resource_form__form input:not([name='privacyPolicyAgreement']),
    .resource_form__form textarea {
        width: 70% !important;
    }
}
.resource_form__form .mktoForm .mktoLogicalField {
    width: 70% !important;
}
@media screen and (max-width: 992px) {
    .resource_form__form .mktoForm .mktoLogicalField {
        width: 100% !important;
    }
}
@media screen and (min-width: 992px) {
    .resource_form__form select {
        width: 30% !important;
    }
}
.resource_form__form textarea {
    height: 25rem !important;
}
@media screen and (min-width: 992px) {
    .resource_form__form textarea {
        margin-bottom: 50px !important;
        height: 200px !important;
    }
}
.resource_form__form .mktoGutter.mktoHasWidth {
    height: 0 !important;
}
.resource_form__form .mktoAsterix {
    color: #fff !important;
    background-color: #f1a16f;
    padding: 0.4rem 0.7rem 0.4rem !important;
    position: absolute;
    top: 50%;
    right: 1.5rem;
    transform: translate(0, -50%);
    font-size: 1.2rem;
    line-height: 1;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .resource_form__form .mktoAsterix {
        right: 30px;
        padding: 7px 11px;
        font-size: 1rem;
    }
}
.resource_form__form .mktoForm .mktoCheckboxList {
    float: unset;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    height: 70px;
}
@media screen and (max-width: 992px) {
    .resource_form__form .mktoForm .mktoCheckboxList {
        height: auto;
    }
}
.resource_form__form .mktoHtmlText {
    font-size: 1.4rem;
    line-height: 1.8;
    letter-spacing: 0.05em;
}
@media screen and (min-width: 992px) {
    .resource_form__form .mktoHtmlText {
        font-size: 1.0714285714rem;
    }
}
.resource_form__form .mktoHtmlText > a {
    display: inline;
    transition: opacity 0.6s linear;
}
.resource_form__form .mktoHtmlText > a:hover {
    opacity: 0.8;
}
.resource_form__form .mktoForm .mktoOffset {
    width: 0 !important;
}
.resource_form__form .mktoForm .mktoFormCol,
.resource_form__form .mktoForm .mktoFieldWrap,
.resource_form__form .mktoButtonRow,
.resource_form__form .mktoButtonWrap.mktoSimple,
.resource_form__form .mktoHtmlText.mktoHasWidth {
    float: unset;
    margin-left: 0 !important;
    width: 100% !important;
}
.case_archive__links {
    display: flex;
    margin-bottom: 1px;
}
.case_archive__link {
    border: 1px solid #07585f;
    color: #07585f;
    padding: 1.2rem 1.3rem 1.4rem;
    width: 49%;
    transition:
        background-color 0.6s linear,
        border-color 0.6s linear;
}
@media screen and (min-width: 768px) {
    .case_archive__link {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        padding: 22px 0 24px 30px;
        width: 420px;
    }
}
.case_archive__link:nth-child(1) {
    margin-right: 2%;
}
@media screen and (min-width: 768px) {
    .case_archive__link:nth-child(1) {
        margin-right: 2px;
    }
}
.case_archive__link:hover {
    background-color: #dff2eb;
    border-color: #dff2eb;
}
.case_archive__link .primary {
    position: relative;
    padding-left: 2.6rem;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1;
}
@media screen and (max-width: 768px) {
    .case_archive__link .primary {
        margin-bottom: 0.8rem;
    }
}
@media screen and (min-width: 768px) {
    .case_archive__link .primary {
        margin-right: 16px;
        padding-left: 36px;
        font-size: 1.5714285714rem;
    }
}
.case_archive__link .secondary {
    font-size: 1.2rem;
    font-weight: 400;
    line-height: 1;
}
@media screen and (min-width: 768px) {
    .case_archive__link .secondary {
        font-size: 1rem;
    }
}
.case_archive__link .primary::before,
.case_archive__link .primary::after {
    content: '';
    position: absolute;
    display: inline-block;
}
.case_archive__link .primary::after {
    top: 50%;
    left: 0;
    transform: translate(0, -50%);
    width: 18px;
    height: 18px;
    background-color: #07585f;
    border-radius: 100%;
}
.case_archive__link .primary::before {
    z-index: 2;
    top: 48%;
    left: 7px;
    width: 5px;
    height: 5px;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: rotate(-45deg) translate(0, -50%);
}
.case_archive__link.active {
    background-color: #07585f;
    color: #fff;
    pointer-events: none;
    position: relative;
}
.case_archive__link.active::after {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 8px 11px 0 11px;
    border-color: #07585f rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0);
    position: absolute;
    bottom: -8px;
    left: 50%;
    transform: translate(-50%, 0);
}
.case_archive__link.active .primary::after {
    background-color: #fff;
}
.case_archive__link.active .primary::before {
    border-color: #07585f;
    top: 43%;
    left: 3px;
    transform: rotate(45deg) translate(0, -50%);
}
.case_archive__wrapper {
    background-color: #f9f9f9;
    padding: 4rem 0 8px;
    margin-bottom: 10rem;
}
@media screen and (min-width: 768px) {
    .case_archive__wrapper {
        padding: 68px 0 8px;
        margin-bottom: 182px;
    }
}
@media screen and (max-width: 768px) {
    .case_archive__wrapper > .not-found {
        padding-bottom: 4rem;
    }
}
@media screen and (min-width: 768px) {
    .case_archive__wrapper > .not-found {
        margin-bottom: 60px;
    }
}
@media screen and (min-width: 768px) {
    .case_archive__inner {
        display: flex;
        flex-wrap: wrap;
        margin: 0 auto;
        width: 90.3%;
        max-width: 1065px;
    }
}
.case_archive {
    padding: 3.7rem 0 12.5rem;
    position: relative;
}
@media screen and (min-width: 768px) {
    .case_archive {
        padding: 67px 0 240px;
    }
}
@media screen and (min-width: 768px) {
    .case_archive::after {
        content: '';
        background-image: url(assets/img/human_icon02.png);
        background-size: cover;
        background-repeat: no-repeat;
        display: block;
        position: absolute;
        bottom: -20px;
        right: 9.2857142857vw;
        height: 12.2857142857vw;
        width: 11.3571428571vw;
        max-height: 172px;
        max-width: 159px;
    }
}
.case_archive .human_icon02 {
    position: absolute;
    bottom: 0;
    right: 0;
}
.case_archive .case {
    margin: 0 auto 3rem;
    width: 90%;
    transition: opacity 0.6s linear;
}
@media screen and (min-width: 768px) {
    .case_archive .case {
        margin: 0 6.2% 60px 0;
        width: 29%;
        max-width: 309px;
    }
}
@media screen and (min-width: 768px) and (min-width: 1440px) {
    .case_archive .case {
        margin-right: 69px;
    }
}
@media screen and (min-width: 768px) {
    .case_archive .case:nth-child(3n) {
        margin-right: 0;
    }
}
.case_archive .case:hover {
    opacity: 0.8;
}
.case_archive .case__thumb {
    height: 52.8vw;
    max-height: 198px;
    width: 100%;
    overflow: hidden;
    position: relative;
}
@media screen and (min-width: 768px) {
    .case_archive .case__thumb {
        height: 13.5714285714vw;
        max-height: 344px;
    }
}
@media screen and (min-width: 1440px) {
    .case_archive .case__thumb {
        height: 190px;
    }
}
.case_archive .case__thumb img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}
.case_archive .case__title {
    padding: 2.1rem 1.3rem;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
    .case_archive .case__title {
        padding: 10px 0 0;
        font-size: 1rem;
    }
}
@media screen and (max-width: 768px) {
    .news_archive__inner {
        padding-left: 4vw;
        padding-right: 4vw;
    }
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
    .news_archive__inner {
        padding-left: 40px;
        padding-right: 40px;
    }
}
@media screen and (min-width: 1200px) {
    .news_archive__inner {
        max-width: 1180px;
        margin-left: auto;
        margin-right: auto;
    }
}
.news_archive .news {
    border-bottom: 1px dashed #dbdbdb;
    margin-bottom: 38px;
}
.news_archive .news__title {
    margin: 18px 0 16px;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0;
}
@media screen and (min-width: 992px) {
    .news_archive .news__title {
        font-size: 1.5714285714rem;
    }
}
.news_archive .news__text {
    margin-bottom: 19px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -o-box-orient: vertical;
    -ms-box-orient: vertical;
    -o-box-orient: vertical;
    -ms-box-orient: vertical;
    overflow: hidden;
    -webkit-line-clamp: 2;
    font-size: 1.4rem;
    line-height: 1.5;
    letter-spacing: 0;
}
@media screen and (min-width: 992px) {
    .news_archive .news__text {
        font-size: 1.1428571429rem;
    }
}
.case_single {
    background-image: url(assets/img/news_bg.jpg);
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: top right;
    box-shadow: 0px 3px 16px rgba(7, 88, 95, 0.1);
    margin: 6.7rem auto 0;
    padding: 5.1rem 3rem 5.6rem;
    position: relative;
}
@media screen and (max-width: 768px) {
    .case_single {
        padding-left: 4vw;
        padding-right: 4vw;
    }
}
@media screen and (min-width: 1200px) {
    .case_single {
        max-width: 1180px;
        margin-left: auto;
        margin-right: auto;
    }
}
@media screen and (min-width: 768px) {
    .case_single {
        margin: 111px auto 0;
        padding: 82px 50px 110px;
    }
}
.case_single__heading {
    border-bottom: 4px solid #f2f0bf;
    position: relative;
    margin-bottom: 40px;
    padding-bottom: 13px;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .case_single__heading {
        font-size: 1.8571428571rem;
    }
}
.case_single__heading::after {
    content: '';
    display: block;
    border-bottom: 4px solid #f1a16f;
    position: absolute;
    bottom: -3px;
    width: 14%;
}
@media screen and (min-width: 768px) {
    .case_single .case_list {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
}
.case_single .case_list .case_item {
    background-color: #f9f9f9;
}
@media screen and (min-width: 768px) {
    .case_single .case_list .case_item {
        width: 49.9%;
    }
}
@media screen and (min-width: 768px) {
    .case_single .case_list .case_item:nth-child(n + 3) {
        margin-top: 23px;
    }
}
.case_single .case_list .title {
    background-color: #dff2eb;
    padding: 1rem;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
    .case_single .case_list .title {
        padding: 14px 44px;
        font-size: 1.2857142857rem;
    }
}
.case_single .case_list .text {
    padding: 1rem;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
    .case_single .case_list .text {
        padding: 10px 44px;
        font-size: 1.5714285714rem;
    }
}
.case_single .col_pt__heading {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.03em;
}
@media screen and (max-width: 768px) {
    .case_single .col_pt__heading {
        margin-bottom: 3rem;
    }
}
@media screen and (min-width: 768px) {
    .case_single .col_pt__heading {
        font-size: 1.5714285714rem;
    }
}
.case_single .col_pt__text {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.8;
    letter-spacing: 0.03em;
    text-align: left;
}
@media screen and (min-width: 768px) {
    .case_single .col_pt__text {
        font-size: 1.2857142857rem;
    }
}
.case_single .col_pt__text a {
    color: #07585f;
    display: inline-block;
    padding: 0 0.25rem;
}
@media screen and (min-width: null) {
    .case_single .col_pt__text a {
        padding: 0 5px;
    }
}
.case_single .col_pt__text a:hover {
    opacity: 0.5;
}
.case_single .col_pt__text ul {
    padding-left: 2rem;
}
@media screen and (min-width: null) {
    .case_single .col_pt__text ul {
        padding-left: 20px;
    }
}
.case_single .col_pt__text ol {
    padding-left: 2.4rem;
}
@media screen and (min-width: null) {
    .case_single .col_pt__text ol {
        padding-left: 24px;
    }
}
.case_single .col_pt__text ul > li {
    list-style: disc;
    list-style-type: disc;
    display: list-item;
}
@media screen and (max-width: null) {
    .case_single .col_pt__text ul > li {
        font-size: 1.2rem;
    }
}
.case_single .col_pt__text ol > li {
    list-style: decimal;
    list-style-type: decimal;
    display: list-item;
}
@media screen and (max-width: null) {
    .case_single .col_pt__text ol > li {
        font-size: 1.2rem;
    }
}
.case_single .col_pt__thumb_copy {
    margin-top: 10px;
    font-size: 1.2rem;
    line-height: 1;
    letter-spacing: 0.03em;
    text-align: right;
}
@media screen and (min-width: 768px) {
    .case_single .col_pt__thumb_copy {
        font-size: 1rem;
    }
}
.case_single .col_pt:nth-child(n + 2) {
    margin-top: 40px;
}
@media screen and (max-width: 768px) {
    .case_single .col_pt__thumb_copy + .col_pt__text {
        margin-top: 3rem;
    }
}
@media screen and (min-width: 768px) {
    .case_single .col2_content {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        margin-top: 40px;
    }
}
@media screen and (min-width: 768px) {
    .case_single .col2__thumb {
        width: 43%;
    }
}
.case_single .col2__thumb img {
    height: auto;
}
@media screen and (max-width: 768px) {
    .case_single .col2__thumb + .col_pt__text {
        margin-top: 3rem;
    }
}
@media screen and (min-width: 768px) {
    .case_single .col2__text {
        width: 54%;
    }
}
.case_single .col2.reverse .col2_content {
    flex-flow: row-reverse;
}
.case_single .col_pt.col1 .col_pt__heading {
    margin-bottom: 3rem;
}
@media screen and (min-width: 768px) {
    .case_single .col_pt.col1 .col_pt__heading {
        margin-bottom: 30px;
    }
}
.case_single .col_pt.col1 .col1__thumb {
    margin-top: 3rem;
}
@media screen and (min-width: 768px) {
    .case_single .col_pt.col1 .col1__thumb {
        margin-top: 30px;
    }
}
.case_single .col_pt.col1 .col1__thumb img {
    margin: 0 auto;
    height: auto;
    width: auto;
    max-width: 100%;
}
.section_case_single__intro .case_single__heading {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
    .section_case_single__intro .case_single__heading {
        font-size: 1.8571428571rem;
    }
}
.section_case_single__intro .thumb {
    margin: 0 auto 40px;
    height: 344px;
    width: auto;
    position: relative;
}
.section_case_single__intro .thumb img {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, 0);
    height: 100%;
    width: auto;
}
.section_case_single__intro + .section_case_single__loop {
    margin-top: 50px;
}
.section_case_single__loop + .section_case_single__loop {
    margin-top: 70px;
}
.section_case_single__summary {
    background-color: #dff2eb;
    border-radius: 5px;
    padding: 2rem;
    margin-top: 3rem;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .section_case_single__summary {
        margin-top: 60px;
        padding: 58px 85px;
        font-size: 1.8571428571rem;
    }
}
.section_contact {
    margin-bottom: 13.7rem;
}
@media screen and (min-width: 992px) {
    .section_contact {
        margin-bottom: 126px;
    }
}
.section_contact .contact__txt {
    margin: 6.4rem 0 5rem;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .section_contact .contact__txt {
        margin: 73px 0 80px;
        text-align: center;
        font-size: 1.2857142857rem;
    }
}
.contact_form form {
    width: 100% !important;
}
.contact_form .mktoForm .mktoButtonWrap.mktoSimple .mktoButton {
    background-color: #07585f;
    border-radius: 35px;
    background-image: none;
    color: #fff;
    display: block;
    margin: 3rem auto 0;
    padding: 2rem 0;
    transition: background-color 0.6s;
    position: relative;
    width: 100%;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .contact_form .mktoForm .mktoButtonWrap.mktoSimple .mktoButton {
        margin: 50px auto 0;
        padding: 26px 0px;
        width: 320px;
        font-size: 1.2857142857rem;
    }
}
.contact_form .mktoForm .mktoButtonWrap.mktoSimple .mktoButton::before,
.contact_form .mktoForm .mktoButtonWrap.mktoSimple .mktoButton::after {
    content: '';
    position: absolute;
    display: inline-block;
}
.contact_form .mktoForm .mktoButtonWrap.mktoSimple .mktoButton::after {
    top: 50%;
    right: 22px;
    transform: translate(0, -50%);
    width: 18px;
    height: 18px;
    background-color: #fff;
    border-radius: 100%;
}
.contact_form .mktoForm .mktoButtonWrap.mktoSimple .mktoButton::before {
    z-index: 2;
    top: 48%;
    right: 26px;
    width: 5px;
    height: 5px;
    border-right: 2px solid #07585f;
    border-bottom: 2px solid #07585f;
    transform: rotate(-45deg) translate(0, -50%);
}
.contact_form .mktoForm .mktoButtonWrap.mktoSimple .mktoButton:hover {
    border: 1px solid #dff2eb !important;
    background-color: #dff2eb;
    color: #07585f;
    opacity: 0.8;
}
.contact_form .mktoForm .mktoButtonWrap.mktoSimple .mktoButton:hover::after {
    background-color: #07585f;
}
.contact_form .mktoForm .mktoButtonWrap.mktoSimple .mktoButton:hover::before {
    border-color: #fff;
}
@media screen and (max-width: 992px) {
    .contact_form .mktoFieldDescriptor {
        margin-bottom: 3.2rem !important;
    }
}
.contact_form .mktoForm .mktoRequiredField label.mktoLabel,
.contact_form .mktoForm .mktoLabel {
    background-color: #f9f9f9;
    color: #07585f;
    position: relative;
    padding: 1.8rem 1.5rem;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: 0.03em;
}
@media screen and (max-width: 992px) {
    .contact_form .mktoForm .mktoRequiredField label.mktoLabel,
    .contact_form .mktoForm .mktoLabel {
        margin-bottom: 1.2rem;
        width: 100% !important;
    }
}
@media screen and (min-width: 992px) {
    .contact_form .mktoForm .mktoRequiredField label.mktoLabel,
    .contact_form .mktoForm .mktoLabel {
        padding: 26px 28px;
        margin-right: 0.7%;
        width: 28% !important;
        font-size: 1.2857142857rem;
    }
}
.contact_form input:not([name='privacyPolicyAgreement']),
.contact_form textarea {
    -webkit-appearance: none;
}
.contact_form input:not([name='privacyPolicyAgreement']),
.contact_form textarea,
.contact_form select {
    background-color: #f9f9f9;
    line-height: 1.5em;
    color: #000;
    border: 1px solid #e3e3e3;
    padding: 10px !important;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .contact_form input:not([name='privacyPolicyAgreement']),
    .contact_form textarea,
    .contact_form select {
        font-size: 1.2857142857rem;
    }
}
@media screen and (max-width: 992px) {
    .contact_form input:not([name='privacyPolicyAgreement']),
    .contact_form textarea,
    .contact_form select {
        width: 100% !important;
    }
}
.contact_form input[name='privacyPolicyAgreement'] {
    border-radius: 0 !important;
    background-color: #f9f9f9;
    color: #000;
    border: 1px solid #e3e3e3;
}
.contact_form .mktoForm input[type='checkbox'] + label:before,
.contact_form .mktoForm input[type='radio'] + label:before {
    box-shadow: none !important;
}
.contact_form select,
.contact_form input:not([name='privacyPolicyAgreement']) {
    height: 70px;
}
@media screen and (max-width: 992px) {
    .contact_form select,
    .contact_form input:not([name='privacyPolicyAgreement']) {
        height: 5.5rem !important;
    }
}
@media screen and (min-width: 992px) {
    .contact_form input:not([name='privacyPolicyAgreement']),
    .contact_form textarea {
        width: 70% !important;
    }
}
@media screen and (min-width: 992px) {
    .contact_form .mktoForm .mktoLogicalField {
        width: 70% !important;
    }
}
@media screen and (min-width: 992px) {
    .contact_form select {
        width: 30% !important;
    }
}
@media screen and (min-width: 992px) {
    .contact_form #ServiceNow_InquiryItem {
        width: 70% !important;
    }
}
.contact_form textarea {
    height: 25rem !important;
}
@media screen and (min-width: 992px) {
    .contact_form textarea {
        margin-bottom: 50px !important;
        height: 200px !important;
    }
}
.contact_form .mktoGutter.mktoHasWidth {
    height: 0 !important;
}
.contact_form .mktoAsterix {
    color: #fff !important;
    background-color: #f1a16f;
    padding: 0.4rem 0.7rem !important;
    position: absolute;
    top: 50%;
    right: 1.5rem;
    transform: translate(0, -50%);
    font-size: 1.2rem;
    line-height: 1;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .contact_form .mktoAsterix {
        right: 30px;
        padding: 7px 11px;
        font-size: 1rem;
    }
}
.contact_form .mktoForm .mktoCheckboxList {
    float: unset;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    height: 70px;
}
@media screen and (max-width: 992px) {
    .contact_form .mktoForm .mktoCheckboxList {
        height: auto;
        width: 100% !important;
    }
}
.contact_form .mktoHtmlText {
    font-size: 1.4rem;
    line-height: 1.8;
    letter-spacing: 0.05em;
}
@media screen and (min-width: 992px) {
    .contact_form .mktoHtmlText {
        font-size: 1.0714285714rem;
    }
}
.contact_form .mktoHtmlText > a {
    display: inline;
    transition: opacity 0.6s linear;
}
.contact_form .mktoHtmlText > a:hover {
    opacity: 0.8;
}
.contact_form .mktoForm .mktoOffset {
    width: 0 !important;
}
.contact_form .mktoForm .mktoFormCol,
.contact_form .mktoForm .mktoFieldWrap,
.contact_form .mktoButtonRow,
.contact_form .mktoButtonWrap.mktoSimple,
.contact_form .mktoHtmlText.mktoHasWidth {
    float: unset;
    margin-left: 0 !important;
    width: 100% !important;
}
.contact_form .mktoHtmlText,
.resource_form__form .mktoHtmlText {
    background-color: #f9f9f9;
    margin-top: 30px;
    height: 300px;
    overflow-y: scroll;
    padding: 3rem 2rem;
    word-break: break-all;
}
@media screen and (min-width: 992px) {
    .contact_form .mktoHtmlText,
    .resource_form__form .mktoHtmlText {
        padding: 40px 30px;
    }
}
.contact_form .mktoHtmlText::-webkit-scrollbar,
.resource_form__form .mktoHtmlText::-webkit-scrollbar {
    background: #e2e2e2;
    width: 15px;
    height: 15px;
}
.contact_form .mktoHtmlText::-webkit-scrollbar-thumb,
.resource_form__form .mktoHtmlText::-webkit-scrollbar-thumb {
    background-color: #888;
}
.section_product__info {
    padding: 6.5rem 0;
    position: relative;
    overflow: hidden;
}
@media screen and (min-width: 768px) {
    .section_product__info {
        padding: 109px 0 63px;
    }
}
.section_product__info::after {
    content: '';
    background-image: url(assets/img/product_intro_bg.png);
    background-size: cover;
    display: block;
    position: absolute;
    top: 15.4rem;
    left: -7rem;
    height: 52.7rem;
    width: 40rem;
}
@media screen and (min-width: 768px) {
    .section_product__info::after {
        bottom: 0;
        left: -40px;
        height: 946px;
        width: 718px;
    }
}
.section_product__info .info__heading {
    margin-bottom: 2rem;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.7;
    letter-spacing: 0.03em;
    text-align: center;
}
@media screen and (min-width: 768px) {
    .section_product__info .info__heading {
        margin-bottom: 30px;
        font-size: 1.8571428571rem;
    }
}
.section_product__info .info__text {
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 2.1;
    letter-spacing: 0.03em;
    text-align: center;
}
@media screen and (min-width: 768px) {
    .section_product__info .info__text {
        margin: 0 auto;
        width: 90%;
        max-width: 980px;
        font-size: 1.1428571429rem;
    }
}
.section_product__info .figure01 {
    margin-top: 6.5rem;
}
@media screen and (min-width: 768px) {
    .section_product__info .figure01 {
        margin-top: 68px;
    }
}
.section_product__info .figure01 img {
    height: auto;
    width: 100%;
}
.section_product__lineup {
    position: relative;
    overflow: hidden;
    padding: 8rem 0 0;
}
@media screen and (min-width: 768px) {
    .section_product__lineup {
        padding: 37px 0 120px;
    }
}
.section_product__lineup .cases_relation__heding {
    margin-bottom: 8rem;
}
@media screen and (min-width: 768px) {
    .section_product__lineup .cases_relation__heding {
        margin-bottom: 114px;
    }
}
.section_product__lineup::before {
    content: '';
    background-image: url(assets/img/product_lineup01_bg.png);
    background-size: cover;
    display: block;
    position: absolute;
    top: 0;
    right: -19.7333333333vw;
    height: 101.8666666667vw;
    width: 77.3333333333vw;
}
@media screen and (min-width: 768px) {
    .section_product__lineup::before {
        right: -83px;
        height: 531px;
        width: 403px;
    }
}
@media screen and (min-width: 768px) {
    .section_product__lineup::after {
        content: '';
        background-image: url(assets/img/product_lineup02_bg.png);
        background-size: cover;
        display: block;
        position: absolute;
        bottom: 571px;
        left: -73px;
        height: 531px;
        width: 403px;
    }
}
@media screen and (min-width: 768px) {
    .section_product__lineup .list {
        display: flex;
        flex-wrap: wrap;
    }
}
.section_product__lineup .item {
    background-color: #f9f9f9;
    margin-bottom: 4rem;
}
@media screen and (min-width: 768px) {
    .section_product__lineup .item {
        margin-right: 3%;
        margin-bottom: 45px;
        width: 31%;
    }
}
@media screen and (min-width: 768px) {
    .section_product__lineup .item:nth-child(3n) {
        margin-right: 0;
    }
}
.section_product__lineup .item__thumb {
    height: 58.6666666667vw;
}
@media screen and (min-width: 768px) {
    .section_product__lineup .item__thumb {
        height: 15.2777777778vw;
    }
}
.section_product__lineup .item__thumb img {
    -o-object-fit: cover;
    object-fit: cover;
    height: 100%;
    width: 100%;
}
.section_product__lineup .item__body {
    padding: 32px 15px;
}
.section_product__lineup .item__heading .primary {
    font-size: 2.2rem;
    font-weight: 700;
    line-height: 1;
}
@media screen and (min-width: 768px) {
    .section_product__lineup .item__heading .primary {
        font-size: 1.5714285714rem;
    }
}
.section_product__lineup .item__heading .secondary {
    padding: 11px 0 18px;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1;
}
@media screen and (min-width: 768px) {
    .section_product__lineup .item__heading .secondary {
        font-size: 1rem;
    }
}
.section_product__lineup .item__text {
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.8;
}
@media screen and (min-width: 768px) {
    .section_product__lineup .item__text {
        font-size: 1rem;
    }
}
.product-materials_download {
    background-color: #dff2eb;
    padding: 6.9rem 4vw 5.6rem;
    margin-bottom: 9.8rem;
}
@media screen and (min-width: 768px) {
    .product-materials_download {
        padding: 66px 0 65px;
        margin-bottom: 105px;
        position: relative;
    }
}
@media screen and (min-width: 768px) {
    .product-materials_download::after {
        content: '';
        background-image: url(assets/img/product_download_bg.png);
        background-size: cover;
        display: block;
        position: absolute;
        top: 50%;
        right: -103px;
        transform: translate(0, -50%);
        height: 946px;
        width: 455px;
        z-index: 5;
    }
}
.product-materials_download .section__inner {
    z-index: 10;
}
.product-materials_download .download {
    background-color: #fff;
    border-radius: 10px;
    padding: 3.7rem 0 3.6rem;
}
@media screen and (min-width: 768px) {
    .product-materials_download .download {
        padding: 69px 0 70px;
    }
}
.product-materials_download .copy {
    color: #07585f;
    margin-bottom: 2.2rem;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.5;
    text-align: center;
}
@media screen and (min-width: 768px) {
    .product-materials_download .copy {
        margin-bottom: 39.5px;
        font-size: 1.4285714286rem;
        line-height: 1;
    }
}
.product-materials_download .link {
    margin: 0 auto;
    width: 83%;
    max-width: 930px;
    transition: opacity 0.6s linear;
}
@media screen and (max-width: 576px) {
    .product-materials_download .link {
        max-width: 315px;
    }
}
.product-materials_download .link:hover {
    opacity: 0.7;
}
.product-materials_download .link > img {
    height: auto;
    width: 100%;
}
.interview_archive {
    padding: 6.5rem 0;
}
@media screen and (min-width: 768px) {
    .interview_archive {
        padding: 109px 0 63px;
    }
}
@media screen and (min-width: 768px) {
    .interview_archive__inner {
        display: flex;
        flex-wrap: wrap;
    }
}
.interview_archive {
    padding-bottom: 12.5rem;
    position: relative;
}
@media screen and (min-width: 768px) {
    .interview_archive {
        padding-bottom: 120px;
    }
}
@media screen and (min-width: 768px) {
    .interview_archive::after {
        content: '';
        background-image: url(assets/img/human_icon02.png);
        background-size: cover;
        background-repeat: no-repeat;
        display: block;
        position: absolute;
        bottom: -20px;
        right: 9.2857142857vw;
        height: 12.2857142857vw;
        width: 11.3571428571vw;
        max-height: 172px;
        max-width: 159px;
    }
}
.interview_archive .interview {
    margin-bottom: 6rem;
    position: relative;
    box-shadow: 0px 3px 16px rgba(7, 88, 95, 0.1);
    transition: box-shadow 0.6s linear;
}
.interview_archive .interview:hover {
    box-shadow: none;
}
.interview_archive .interview:nth-child(3n) {
    margin-right: 0;
}
@media screen and (min-width: 768px) {
    .interview_archive .interview {
        margin-right: 5%;
        margin-bottom: 120px;
        width: 30%;
    }
}
.interview_archive .interview__thumb {
    height: 19.8rem;
    position: relative;
    overflow: hidden;
}
@media screen and (min-width: 768px) {
    .interview_archive .interview__thumb {
        height: 206px;
    }
}
.interview_archive img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}
.interview_archive .interview__body {
    padding: 2rem 1.3rem 6.8rem;
}
@media screen and (min-width: 768px) {
    .interview_archive .interview__body {
        padding: 12px 13px 85px 13px;
    }
}
.interview_archive .interview__cat {
    background-color: #dff2eb;
    border-radius: 21px;
    padding: 7px 23px;
    display: inline-block;
    position: absolute;
    bottom: 2rem;
    left: 1.3rem;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.03em;
    text-align: center;
}
@media screen and (min-width: 768px) {
    .interview_archive .interview__cat {
        bottom: 15px;
        left: 13px;
        font-size: 1rem;
    }
}
.interview_archive .interview__title {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -o-box-orient: vertical;
    -ms-box-orient: vertical;
    -o-box-orient: vertical;
    -ms-box-orient: vertical;
    overflow: hidden;
    -webkit-line-clamp: 2;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
    .interview_archive .interview__title {
        font-size: 1.2857142857rem;
    }
}
.interview_archive .interview__text {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -o-box-orient: vertical;
    -ms-box-orient: vertical;
    -o-box-orient: vertical;
    -ms-box-orient: vertical;
    overflow: hidden;
    -webkit-line-clamp: 2;
    margin-top: 1rem;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 2;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
    .interview_archive .interview__text {
        margin-top: 15px;
        font-size: 1rem;
    }
}
.interview_single .interview {
    background-image: url(assets/img/news_bg.jpg);
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: top right;
    box-shadow: 0px 3px 16px rgba(7, 88, 95, 0.1);
    margin: 6.7rem 1.5rem 0;
    padding: 7rem 1.5rem 10.7rem;
    position: relative;
}
@media screen and (max-width: 768px) {
    .interview_single .interview {
        padding-left: 4vw;
        padding-right: 4vw;
    }
}
@media screen and (min-width: 1200px) {
    .interview_single .interview {
        max-width: 1180px;
        margin-left: auto;
        margin-right: auto;
    }
}
@media screen and (min-width: 768px) {
    .interview_single .interview {
        margin: 80px auto 0;
        padding: 80px 50px 123px;
    }
}
.interview_single .human_icon01 {
    position: absolute;
    top: -51px;
    right: 0;
}
@media screen and (max-width: 768px) {
    .interview_single .human_icon01 {
        top: -2.6rem;
        right: 1.5rem;
        width: 6rem;
    }
}
.interview_single .human_icon03 {
    position: absolute;
    bottom: -87.4px;
    right: 15px;
    width: 70px;
    transform: scale(-1, 1);
}
.section_interview_single__intro {
    margin-bottom: 2.5rem;
}
@media screen and (min-width: 768px) {
    .section_interview_single__intro {
        margin-bottom: 60px;
    }
}
.section_interview_single__intro .interview__thumb {
    margin: 0 auto 3.4rem;
}
@media screen and (min-width: 768px) {
    .section_interview_single__intro .interview__thumb {
        margin: 0 auto 46px;
        width: 80%;
        max-width: 800px;
    }
}
.section_interview_single__intro .interview__thumb img {
    height: auto;
    width: 100%;
}
.section_interview_single__intro .interview__time {
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0;
}
@media screen and (min-width: 992px) {
    .section_interview_single__intro .interview__time {
        font-size: 1rem;
    }
}
.section_interview_single__intro .interview__title {
    margin: 1.2rem 0 2.8rem;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.9;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .section_interview_single__intro .interview__title {
        margin: 10px 0 26px;
        font-size: 1.8571428571rem;
    }
}
.section_interview_single__intro .interview__text {
    font-size: 1.3rem;
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .section_interview_single__intro .interview__text {
        font-size: 1.1428571429rem;
    }
}
.section_interview_single__profile {
    border: 1px solid #07585f;
    border-radius: 5px;
    margin-bottom: 14.6rem;
    padding: 4.3rem 1.8rem;
    position: relative;
}
@media screen and (min-width: 992px) {
    .section_interview_single__profile {
        padding: 70px 95px;
        margin-bottom: 170px;
    }
}
.section_interview_single__profile .human_icon02 {
    position: absolute;
    bottom: -9.5rem;
    right: 0;
    width: 13.5rem;
}
@media screen and (min-width: 992px) {
    .section_interview_single__profile .human_icon02 {
        bottom: -86px;
        width: 159px;
    }
}
.section_interview_single__profile .profile__heading {
    border-bottom: 3px solid #f1a16f;
    position: relative;
    padding-bottom: 1.6rem;
    margin-bottom: 3.4rem;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .section_interview_single__profile .profile__heading {
        padding-bottom: 16px;
        margin-bottom: 30px;
        font-size: 1.5714285714rem;
    }
}
.section_interview_single__profile .profile__heading::after {
    content: '';
    display: block;
    border-bottom: solid 3px #07585f;
    position: absolute;
    bottom: -3px;
    width: 20%;
}
@media screen and (min-width: 992px) {
    .section_interview_single__profile .profile {
        display: flex;
    }
}
.section_interview_single__profile .profile__thumb {
    border-radius: 5px;
    margin: 0 auto 2.2rem;
    overflow: hidden;
    height: 70.9333333333vw;
    width: 53.3333333333vw;
}
@media screen and (min-width: 992px) {
    .section_interview_single__profile .profile__thumb {
        margin: 0 30px 0 0;
        height: 352px;
        width: 264px;
    }
}
.section_interview_single__profile .profile__thumb img {
    -o-object-fit: cover;
    object-fit: cover;
    height: 100%;
    width: 100%;
}
@media screen and (min-width: 992px) {
    .section_interview_single__profile .profile__body {
        flex: 1;
    }
}
@media screen and (min-width: 992px) {
    .section_interview_single__profile .name {
        display: flex;
        align-items: center;
    }
}
.section_interview_single__profile .kanji {
    margin: 22px 0 2px 0;
    font-size: 3rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .section_interview_single__profile .kanji {
        margin: 0 16px 0 0;
        font-size: 2.5rem;
    }
}
.section_interview_single__profile .alphabet {
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .section_interview_single__profile .alphabet {
        font-size: 1.1428571429rem;
    }
}
.section_interview_single__profile .fixation {
    margin: 15px 0 20px;
}
@media screen and (min-width: 992px) {
    .section_interview_single__profile .fixation__items {
        display: flex;
        justify-content: space-between;
        margin-top: 2px;
    }
}
@media screen and (min-width: 992px) {
    .section_interview_single__profile .fixation__items > .fixation__item {
        width: 49.9%;
    }
}
@media screen and (min-width: 992px) {
    .section_interview_single__profile .fixation__item {
        display: flex;
    }
}
.section_interview_single__profile .fixation__item__title {
    background-color: #dff2eb;
    padding: 1.3rem 1.6rem;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .section_interview_single__profile .fixation__item__title {
        padding: 13px 16px;
        width: 130px;
        font-size: 1rem;
    }
}
.section_interview_single__profile .fixation__item__text {
    background-color: #f9f9f9;
    padding: 1rem 1.6rem;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.9;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .section_interview_single__profile .fixation__item__text {
        padding: 9px 16px;
        flex: 1;
        font-size: 1.1428571429rem;
        font-size: 1.1428571429rem;
        line-height: 1.5;
    }
}
.section_interview_single__profile .fixation__item__text a {
    display: inline;
    padding: 0 0.25rem;
}
@media screen and (min-width: null) {
    .section_interview_single__profile .fixation__item__text a {
        padding: 0 5px;
    }
}
.section_interview_single__profile .fixation__item__text a:hover {
    opacity: 0.5;
}
.section_interview_single__profile .fixation__item__text ul {
    padding-left: 2rem;
    margin: 15px 0;
}
@media screen and (min-width: 992px) {
    .section_interview_single__profile .fixation__item__text ul {
        padding-left: 20px;
    }
}
.section_interview_single__profile .fixation__item__text ol {
    padding-left: 2.4rem;
    margin: 15px 0;
}
@media screen and (min-width: 992px) {
    .section_interview_single__profile .fixation__item__text ol {
        padding-left: 24px;
    }
}
.section_interview_single__profile .fixation__item__text ul > li {
    list-style: disc;
    list-style-type: disc;
    display: list-item;
    margin-bottom: 8px;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.9;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .section_interview_single__profile .fixation__item__text ul > li {
        font-size: 1.1428571429rem;
        line-height: 1.5;
    }
}
.section_interview_single__profile .fixation__item__text ol > li {
    list-style: decimal;
    list-style-type: decimal;
    display: list-item;
    margin-bottom: 8px;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.9;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .section_interview_single__profile .fixation__item__text ol > li {
        font-size: 1.1428571429rem;
        line-height: 1.5;
    }
}
.section_interview_single__profile .profile_loop th,
.section_interview_single__profile .profile_loop td {
    border-bottom: 2px solid #fff;
}
.section_interview_single__profile .profile_loop th {
    background-color: #f2f0bf;
    padding: 1.2rem 1.6rem;
    width: 12rem;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.03em;
    text-align: left;
}
@media screen and (min-width: 992px) {
    .section_interview_single__profile .profile_loop th {
        padding: 11px 16px;
        width: 130px;
        font-size: 1rem;
    }
}
.section_interview_single__profile .profile_loop td {
    width: calc(100% - 12rem);
    padding: 1.2rem 0.9rem;
    font-size: 1.2rem;
    font-weight: 500;
    line-height: 2.1;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .section_interview_single__profile .profile_loop td {
        padding: 11px 16px;
        width: calc(100% - 130px);
        font-size: 1.1428571429rem;
        line-height: 1.5;
    }
}
.section_interview_single__profile .profile_loop td a {
    display: inline;
    padding: 0 0.25rem;
}
@media screen and (min-width: null) {
    .section_interview_single__profile .profile_loop td a {
        padding: 0 5px;
    }
}
.section_interview_single__profile .profile_loop td a:hover {
    opacity: 0.5;
}
.section_interview_single__profile .profile_loop td ul {
    padding-left: 2rem;
    margin: 15px 0;
}
@media screen and (min-width: 992px) {
    .section_interview_single__profile .profile_loop td ul {
        padding-left: 20px;
    }
}
.section_interview_single__profile .profile_loop td ol {
    padding-left: 2.4rem;
    margin: 15px 0;
}
@media screen and (min-width: 992px) {
    .section_interview_single__profile .profile_loop td ol {
        padding-left: 24px;
    }
}
.section_interview_single__profile .profile_loop td ul > li {
    list-style: disc;
    list-style-type: disc;
    display: list-item;
    margin-bottom: 8px;
    font-size: 1.2rem;
    font-weight: 500;
    line-height: 2.1;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .section_interview_single__profile .profile_loop td ul > li {
        font-size: 1.1428571429rem;
        line-height: 1.5;
    }
}
.section_interview_single__profile .profile_loop td ol > li {
    list-style: decimal;
    list-style-type: decimal;
    display: list-item;
    margin-bottom: 8px;
    font-size: 1.2rem;
    font-weight: 500;
    line-height: 2.1;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .section_interview_single__profile .profile_loop td ol > li {
        font-size: 1.1428571429rem;
        line-height: 1.5;
    }
}
.section_interview_single__serialization {
    margin: 12rem 0 9rem;
}
@media screen and (min-width: 992px) {
    .section_interview_single__serialization {
        margin: 130px 0 115px;
    }
}
.section_interview_single__serialization .serialization__inner {
    background-color: #f9f9f9;
    border-radius: 5px;
    padding: 3.6rem 1.6rem;
}
@media screen and (min-width: 992px) {
    .section_interview_single__serialization .serialization__inner {
        padding: 44px 66px;
    }
}
.section_interview_single__serialization .serialization__heading {
    border-bottom: 3px solid #f1a16f;
    position: relative;
    padding-bottom: 1.6rem;
    margin-bottom: 3rem;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .section_interview_single__serialization .serialization__heading {
        padding-bottom: 16px;
        margin-bottom: 35px;
        font-size: 1.5714285714rem;
    }
}
.section_interview_single__serialization .serialization__heading::after {
    content: '';
    display: block;
    border-bottom: solid 3px #07585f;
    position: absolute;
    bottom: -3px;
    width: 20%;
}
.section_interview_single__serialization .serialization:not(:last-child) {
    margin-bottom: 2rem;
}
@media screen and (min-width: 992px) {
    .section_interview_single__serialization .serialization:not(:last-child) {
        margin-bottom: 20px;
    }
}
.section_interview_single__serialization .serialization .link span {
    margin-right: 1rem;
}
@media screen and (min-width: 992px) {
    .section_interview_single__serialization .serialization .link span {
        margin-right: 15px;
    }
}
.section_interview_single__serialization .serialization .link {
    position: relative;
    display: inline-block;
    padding-left: 3.4rem;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.9;
    letter-spacing: 0.03em;
    transition: opacity 0.6s linear;
}
@media screen and (min-width: 992px) {
    .section_interview_single__serialization .serialization .link {
        padding-left: 34px;
        font-size: 1.2857142857rem;
    }
}
.section_interview_single__serialization .serialization .link:hover {
    opacity: 0.7;
}
.section_interview_single__serialization .serialization .link::before,
.section_interview_single__serialization .serialization .link::after {
    content: '';
    position: absolute;
    display: inline-block;
}
.section_interview_single__serialization .serialization .link::after {
    top: 0.8rem;
    left: 0;
    width: 18px;
    height: 18px;
    background-color: #07585f;
    border-radius: 100%;
}
@media screen and (min-width: 992px) {
    .section_interview_single__serialization .serialization .link::after {
        top: 50%;
        transform: translate(0, -50%);
    }
}
.section_interview_single__serialization .serialization .link::before {
    z-index: 2;
    top: 1.3rem;
    left: 0.5rem;
    width: 5px;
    height: 5px;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: rotate(-45deg);
}
@media screen and (min-width: 992px) {
    .section_interview_single__serialization .serialization .link::before {
        top: 48%;
        left: 6px;
        transform: rotate(-45deg) translate(0, -50%);
    }
}
.section_interview_single__loop .col_pt {
    margin-top: 3rem;
}
@media screen and (min-width: 768px) {
    .section_interview_single__loop .col_pt {
        margin-top: 50px;
    }
}
.section_interview_single__loop .col_pt__text h2 {
    position: relative;
    margin-bottom: 1rem;
    padding-left: 3.3rem;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.9;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
    .section_interview_single__loop .col_pt__text h2 {
        margin-bottom: 10px;
        padding-left: 31px;
        font-size: 1.5714285714rem;
    }
}
.section_interview_single__loop .col_pt__text h2:before {
    content: '';
    background-color: #07585f;
    display: block;
    position: absolute;
    top: 1.3rem;
    left: 0;
    height: 0.2rem;
    width: 2rem;
}
@media screen and (min-width: 768px) {
    .section_interview_single__loop .col_pt__text h2:before {
        top: 20px;
        height: 2px;
        width: 20px;
    }
}
.section_interview_single__loop .col_pt__text p {
    font-size: 1.3rem;
    font-weight: 400;
    line-height: 1.9;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .section_interview_single__loop .col_pt__text p {
        font-size: 1.1428571429rem;
    }
}
.section_interview_single__loop .col_pt__text a {
    color: #07585f;
    display: inline-block;
    padding: 0 0.25rem;
}
@media screen and (min-width: null) {
    .section_interview_single__loop .col_pt__text a {
        padding: 0 5px;
    }
}
.section_interview_single__loop .col_pt__text a:hover {
    opacity: 0.5;
}
.section_interview_single__loop .col_pt__text ul {
    padding-left: 2rem;
}
@media screen and (min-width: null) {
    .section_interview_single__loop .col_pt__text ul {
        padding-left: 20px;
    }
}
.section_interview_single__loop .col_pt__text ol {
    padding-left: 2.4rem;
}
@media screen and (min-width: null) {
    .section_interview_single__loop .col_pt__text ol {
        padding-left: 24px;
    }
}
.section_interview_single__loop .col_pt__text ul > li {
    list-style: disc;
    list-style-type: disc;
    display: list-item;
}
@media screen and (max-width: null) {
    .section_interview_single__loop .col_pt__text ul > li {
        font-size: 1.2rem;
    }
}
.section_interview_single__loop .col_pt__text ol > li {
    list-style: decimal;
    list-style-type: decimal;
    display: list-item;
}
@media screen and (max-width: null) {
    .section_interview_single__loop .col_pt__text ol > li {
        font-size: 1.2rem;
    }
}
.section_interview_single__loop .col_pt__thumb_copy {
    margin-top: 10px;
    font-size: 1.2rem;
    line-height: 1.3;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
    .section_interview_single__loop .col_pt__thumb_copy {
        font-size: 1rem;
    }
}
.section_interview_single__loop .col_pt:nth-child(n + 2) {
    margin-top: 3rem;
}
@media screen and (min-width: 768px) {
    .section_interview_single__loop .col_pt:nth-child(n + 2) {
        margin-top: 40px;
    }
}
@media screen and (max-width: 768px) {
    .section_interview_single__loop .col_pt__thumb_copy + .col_pt__text {
        margin-top: 3rem;
    }
}
@media screen and (min-width: 768px) {
    .section_interview_single__loop .col2_content {
        display: flex;
        flex-wrap: wrap;
        align-items: flex-start;
        justify-content: space-between;
        margin-top: 40px;
    }
}
@media screen and (min-width: 768px) {
    .section_interview_single__loop .col2__thumb {
        margin-right: 4.1666666667vw;
    }
}
.section_interview_single__loop .col2__thumb.interview_loop_thumb01_vertical {
    width: 70%;
}
@media screen and (max-width: 768px) {
    .section_interview_single__loop .col2__thumb.interview_loop_thumb01_vertical {
        margin: 0 auto;
    }
}
@media screen and (min-width: 768px) {
    .section_interview_single__loop .col2__thumb.interview_loop_thumb01_vertical {
        width: 16.3888888889vw;
        max-width: 236px;
    }
}
@media screen and (min-width: 768px) {
    .section_interview_single__loop .col2__thumb.interview_loop_thumb01_beside {
        width: 27.0833333333vw;
        max-width: 390px;
    }
}
.section_interview_single__loop .col2__thumb img {
    border-radius: 5px;
    -o-object-fit: cover;
    object-fit: cover;
    height: 100%;
    width: 100%;
}
@media screen and (max-width: 768px) {
    .section_interview_single__loop .col2__thumb + .col_pt__text {
        margin-top: 3rem;
    }
}
@media screen and (min-width: 768px) {
    .section_interview_single__loop .col2__text {
        flex: 1;
    }
}
.section_interview_single__loop .col2.reverse .col2_content {
    flex-flow: row-reverse;
}
@media screen and (min-width: 768px) {
    .section_interview_single__loop .col2.reverse .col2__thumb {
        margin-left: 4.1666666667vw;
        margin-right: 0;
    }
}
.section_interview_single__loop .col_pt.col1 .col_pt__heading {
    margin-bottom: 3rem;
}
@media screen and (min-width: 768px) {
    .section_interview_single__loop .col_pt.col1 .col_pt__heading {
        margin-bottom: 30px;
    }
}
.section_interview_single__loop .col_pt.col1 .col1__thumb {
    margin: 3rem auto 0;
}
@media screen and (min-width: 768px) {
    .section_interview_single__loop .col_pt.col1 .col1__thumb {
        margin: 30px auto 0;
        width: 80%;
        max-width: 800px;
    }
}
.section_interview_single__loop .col_pt.col1 .col1__thumb img {
    border-radius: 5px;
    margin: 0 auto;
    height: 100%;
    width: 100%;
    max-width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}
@media screen and (min-width: 768px) {
    .section_interview_single__loop .col_pt.col1 .thumbs {
        display: flex;
        justify-content: space-between;
    }
}
@media screen and (min-width: 768px) {
    .section_interview_single__loop .col_pt.col1 .thumbs > .col1__thumb {
        width: 49%;
    }
}
.interview_loop__heading {
    border-bottom: 3px solid #f1a16f;
    position: relative;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.9;
    letter-spacing: 0.03em;
}
.interview_loop__heading::after {
    content: '';
    display: block;
    border-bottom: solid 3px #07585f;
    position: absolute;
    bottom: -3px;
    width: 20%;
}
@media screen and (min-width: 768px) {
    .interview_loop__heading {
        padding-bottom: 16px;
        font-size: 2.1428571429rem;
    }
}
.col_pt + .interview_loop__heading {
    margin-top: 5rem;
}
@media screen and (min-width: 768px) {
    .col_pt + .interview_loop__heading {
        margin-top: 80px;
    }
}
.section_servicemenu__intro {
    padding: 6.5rem 0;
}
@media screen and (min-width: 768px) {
    .section_servicemenu__intro {
        margin: 100px 0 97px;
    }
}
.section_servicemenu__intro .info__title {
    margin-top: 2rem;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.7;
    letter-spacing: 0.03em;
    text-align: center;
}
@media screen and (min-width: 992px) {
    .section_servicemenu__intro .info__title {
        margin-top: 50px;
        line-height: 1;
        font-size: 1.8571428571rem;
    }
}
.section_servicemenu__intro .info__txt {
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 2;
    letter-spacing: 0.03em;
    text-align: center;
}
@media screen and (min-width: 992px) {
    .section_servicemenu__intro .info__txt {
        font-size: 1.4285714286rem;
    }
}
.servicemenu__wrapper {
    position: relative;
}
.servicemenu__wrapper::before {
    content: '';
    background-image: url(assets/img/strength_reason_bg01.png);
    background-size: cover;
    display: block;
    position: absolute;
    top: -33px;
    right: -105px;
    height: 946px;
    width: 455px;
}
@media screen and (max-width: 768px) {
    .servicemenu__wrapper::before {
        top: 0;
        right: -10rem;
        height: 62rem;
        width: 30rem;
    }
}
.servicemenu__wrapper::after {
    content: '';
    background-image: url(assets/img/strength_achievement_bg.png);
    background-repeat: no-repeat;
    background-size: cover;
    display: block;
    position: absolute;
    bottom: 50rem;
    right: -3rem;
    height: 23.6rem;
    width: 20rem;
    transform: scale(-1, 1);
}
@media screen and (min-width: 768px) {
    .servicemenu__wrapper::after {
        bottom: 447px;
        right: -60.5px;
        height: 32.2142857143vw;
        width: 27.1428571429vw;
        max-height: 451px;
        max-width: 380px;
    }
}
.section_servicemenu__reason {
    position: relative;
}
.section_servicemenu__reason .reason__inner {
    overflow: hidden;
    position: relative;
    padding-bottom: 100px;
}
.section_servicemenu__reason .reason__inner::before {
    content: '';
    background-image: url(assets/img/strength_achievement_bg.png);
    background-size: cover;
    display: block;
    position: absolute;
    top: 165px;
    left: 40px;
    height: 367px;
    width: 263px;
}
@media screen and (max-width: 768px) {
    .section_servicemenu__reason .reason__inner::before {
        top: 45%;
        left: 1rem;
        height: 23.6rem;
        width: 20rem;
        transform: translate(0, -50%);
    }
}
.section_servicemenu__reason .reason__inner::after {
    content: '';
    background-image: url(assets/img/strength_reason_bg01.png);
    background-size: cover;
    display: block;
    position: absolute;
    bottom: 123px;
    left: 0;
    height: 946px;
    width: 455px;
    opacity: 3;
    transform: scale(-1, 1);
}
@media screen and (max-width: 768px) {
    .section_servicemenu__reason .reason__inner::after {
        bottom: 2rem;
        left: 0;
        height: 62rem;
        width: 30rem;
    }
}
.section_servicemenu__reason .company_list_copy {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.03em;
    text-align: center;
}
@media screen and (min-width: 992px) {
    .section_servicemenu__reason .company_list_copy {
        font-size: 1.4285714286rem;
    }
}
.section_servicemenu__reason .company_list {
    margin-bottom: 8rem;
}
@media screen and (min-width: 768px) {
    .section_servicemenu__reason .company_list {
        margin-bottom: 149px;
    }
}
@media screen and (min-width: 768px) {
    .section_servicemenu__reason .reason {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
}
.section_servicemenu__reason .reason:not(:last-child) {
    margin-bottom: 5.3rem;
}
@media screen and (min-width: 768px) {
    .section_servicemenu__reason .reason:not(:last-child) {
        margin-bottom: 85px;
    }
}
.section_servicemenu__reason .reason:last-child {
    margin-bottom: 114px;
}
.section_servicemenu__reason .reason__thumb {
    border-radius: 5px;
    overflow: hidden;
}
@media screen and (min-width: 768px) {
    .section_servicemenu__reason .reason__thumb {
        overflow: hidden;
        width: 50%;
    }
}
.section_servicemenu__reason .reason__thumb > img {
    height: 100%;
    width: 100%;
    -o-object-fit: contain;
    object-fit: contain;
}
@media screen and (max-width: 768px) {
    .section_servicemenu__reason .reason__body {
        margin-top: 2.1rem;
    }
}
@media screen and (min-width: 768px) {
    .section_servicemenu__reason .reason__body {
        width: 47%;
    }
}
.section_servicemenu__reason .reason_body__heding {
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.7;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
    .section_servicemenu__reason .reason_body__heding {
        font-size: 1.8571428571rem;
    }
}
.section_servicemenu__reason .reason_body__text {
    margin-top: 1.5rem;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 2.3;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
    .section_servicemenu__reason .reason_body__text {
        margin-top: 15px;
        font-size: 1.1428571429rem;
    }
}
.section_servicemenu__reason .reason_body__text li {
    list-style-type: none;
    position: relative;
    padding-left: 19px;
    margin-bottom: 15px;
}
.section_servicemenu__reason .reason_body__text li::before {
    content: '';
    background: #f1a16f;
    border-radius: 50%;
    display: block;
    position: absolute;
    left: 0;
    top: 15px;
    height: 10px;
    width: 10px;
}
.section_servicemenu__reason .reason_body__link {
    position: relative;
    margin-top: 3rem;
    height: 6.2rem;
    width: 100%;
}
@media screen and (min-width: 768px) {
    .section_servicemenu__reason .reason_body__link {
        margin-top: 33px;
        height: 70px;
        width: 360px;
    }
}
.section_servicemenu__reason .reason_body__link img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    display: block;
    transition: 0.7s;
}
.section_servicemenu__reason .reason_body__link:hover img:nth-of-type(2) {
    opacity: 0;
}

/*=========================================================
 スタートパック　イントロ
=========================================================*/
.section_start-pack__intro {
    padding: 12.5rem 0 4rem;
    position: relative;
    background-color: #dff2eb;
}
@media screen and (min-width: 768px) {
    .section_start-pack__intro {
        padding: 10.5rem 0 6.7rem;
    }
}
.section_start-pack__intro .info__txt {
    position: relative;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .section_start-pack__intro .info__txt {
        text-align: center;
        line-height: 1.35;
        font-size: 1.4285714286rem;
    }
}
.section_start-pack__intro .info__txt span {
    font-size: 2rem;
}
@media screen and (min-width: 992px) {
    .section_start-pack__intro .info__txt span {
        text-align: center;
        font-size: 2.2857142857rem;
    }
}
.section_start-pack__intro .info__txt::before {
    content: '';
    background-image: url(assets/img/start-pack/start-pack-intro__icon.png);
    background-size: cover;
    display: block;
    position: absolute;
    top: 0%;
    left: 0%;
    transform: translate(0%, -100%);
    margin: 0;
    padding: 0;
    height: 6.743rem;
    width: 9.2143rem;
}
@media screen and (min-width: 992px) {
    .section_start-pack__intro .info__txt::before {
        background-size: cover;
        display: block;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-350%, -108%);
        margin: 0;
        padding: 0;
        height: 6.743rem;
        width: 9.2143rem;
    }
}
.section_start-pack__intro .in_service-pickup__subtitle {
    position: relative;
    text-align: center;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .section_start-pack__intro .in_service-pickup__subtitle {
        line-height: 1;
        font-size: 1.2857142857rem;
    }
}
.section_start-pack__intro .in_service-pickup__subtitle.balloon {
    position: relative;
    display: block;
    margin: 0 auto;
    padding: 7px 10px;
    width: 100%;
    max-width: 15.2143rem;
    color: #ffffff;
    background: #07585f;
    border-radius: 15px;
}
.section_start-pack__intro .in_service-pickup__subtitle.balloon::before {
    content: '';
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -10px;
    border: 10px solid transparent;
    border-top: 7px solid #07585f;
}
.section_start-pack__intro .in_service-pickup__title {
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.03em;
    text-align: center;
    margin-top: 1.7rem;
}
@media screen and (min-width: 992px) {
    .section_start-pack__intro .in_service-pickup__title {
        line-height: 1;
        font-size: 2.5714285714rem;
    }
}
.section_start-pack__intro .in_service-pickup__title .exclamation-mark {
    position: relative;
    transform: rotate(17deg);
    display: inline-block;
    margin-left: -0.5rem;
    top: -0.1rem;
}
.section_start-pack__intro .in_service-pickup__title .exclamation-mark.ptn02 {
    position: relative;
    transform: rotate(39deg);
    display: inline-block;
    margin-left: -1.7rem;
    top: 0.4rem;
}
.section_start-pack__intro .service-pickup {
    background: #ffffff;
    padding: 2.5rem 2rem;
    position: relative;
    margin-top: 5.6rem;
}
@media screen and (min-width: 768px) {
    .section_start-pack__intro .service-pickup {
        padding: 3.2rem;
    }
}
.section_start-pack__intro .service-pickup::before {
    content: '';
    background-image: url(assets/img/start-pack/start-pack-service__icon.png);
    background-size: cover;
    display: block;
    position: absolute;
    height: 9.2145rem;
    width: 8.5rem;
    top: 0%;
    left: 100%;
    transform: translate(-100%, -50%);
    margin: 0;
    padding: 0;
}
.section_start-pack__intro .service-pickup ul.card-content {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 3.4rem;
}
@media screen and (min-width: 768px) {
    .section_start-pack__intro .service-pickup ul.card-content {
        margin-top: 3rem;
    }
}
.section_start-pack__intro .service-pickup .card-content li {
    width: 47.1812%;
    margin-bottom: 2rem;
    position: relative;
}
.section_start-pack__intro .service-pickup .card-content li:last-of-type {
    margin-bottom: 0;
}
@media screen and (min-width: 768px) {
    .section_start-pack__intro .service-pickup .card-content li {
        width: 31.1812%;
        margin-bottom: 0rem;
    }
}
.section_start-pack__intro .service-pickup .card-content li img {
    width: 100%;
}
.section_start-pack__intro .service-pickup .card-content li .num {
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.35;
    letter-spacing: 0.03em;
    font-style: italic;
    position: absolute;
    top: -1.4rem;
    text-shadow:
        2px 2px 1px #ffffff,
        -2px 2px 1px #ffffff,
        2px -2px 1px #ffffff,
        -2px -2px 1px #ffffff,
        2px 0px 1px #ffffff,
        0px 2px 1px #ffffff,
        -2px 0px 1px #ffffff,
        0px -2px 1px #ffffff;
}
@media screen and (min-width: 992px) {
    .section_start-pack__intro .service-pickup .card-content li .num {
        font-size: 2.6428571429rem;
        top: -1.8rem;
    }
}
.section_start-pack__intro .service-pickup .card-content li .in_card-content__title {
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.03em;
    margin-top: 1.3rem;
}
@media screen and (min-width: 992px) {
    .section_start-pack__intro .service-pickup .card-content li .in_card-content__title {
        font-size: 1.4285714286rem;
        margin-top: 1.3rem;
    }
}
.section_start-pack__intro .service-pickup .card-content li .in_card-content__text {
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.8;
    letter-spacing: 0.03em;
    margin-top: 0.2rem;
}
@media screen and (min-width: 992px) {
    .section_start-pack__intro .service-pickup .card-content li .in_card-content__text {
        font-size: 1.1428571429rem;
        margin-top: 0.4rem;
    }
}

/*=========================================================
 サービス概要
=========================================================*/
.section_start-pack__about {
    padding: 10.8rem 0 0rem;
    position: relative;
}
@media screen and (min-width: 768px) {
    .section_start-pack__about {
        padding: 10.8rem 0 0rem;
    }
}
.section_start-pack__about::before {
    content: '';
    position: absolute;
    height: 4.25rem;
    width: 100%;
    -webkit-clip-path: polygon(50% 100%, 100% 0%, 0% 0%);
    clip-path: polygon(50% 100%, 100% 0%, 0% 0%);
    background-color: #dff2eb;
    left: 0;
    top: 0;
}
.section_start-pack__about .section__inner {
    position: relative;
}
.section_start-pack__about .section__inner::before {
    content: '';
    background-image: url(assets/img/start-pack/start-pack-about__icon01.png);
    background-size: cover;
    display: block;
    position: absolute;
    height: 10.643rem;
    width: 14.786rem;
    top: 0%;
    left: 0%;
    transform: translate(0%, -100%);
    margin: 0;
    padding: 0;
}
.section_start-pack__about .section__inner::after {
    content: '';
    background-image: url(assets/img/start-pack/start-pack-about__icon02.png);
    background-size: cover;
    background-size: cover;
    display: block;
    position: absolute;
    height: 8rem;
    width: 8.143rem;
    top: 0%;
    left: 100%;
    transform: translate(-100%, 125%);
    margin: 0;
    padding: 0;
    z-index: -1;
}
.section_start-pack__about .start-pack_about__thumb {
    width: 55.7143rem;
    margin: 0 auto;
    margin-top: 2.8rem;
}

/*=========================================================
 利用されるシーン
=========================================================*/
.section_start-pack__opportunity {
    padding: 6.2rem 0 0rem;
    position: relative;
}
@media screen and (min-width: 768px) {
    .section_start-pack__opportunity {
        padding: 6.2rem 0 0rem;
    }
}
.section_start-pack__opportunity .section__inner {
    position: relative;
}
.section_start-pack__opportunity .section__inner::before {
    content: '';
    background-image: url(assets/img/start-pack/start-pack-about__icon03.png);
    background-size: cover;
    display: block;
    position: absolute;
    height: 8.4rem;
    width: 8.143rem;
    top: 0%;
    left: 0%;
    transform: translate(-57%, 36%);
    margin: 0;
    padding: 0;
    z-index: -1;
}
.section_start-pack__opportunity .start-pack_opportunity__thumb {
    width: 75.7143rem;
    margin: 0 auto;
    margin-top: 2.8rem;
}

/*=========================================================
 期待される効果
=========================================================*/
.section_start-pack__achievement {
    padding: 6.2rem 0 0rem;
    position: relative;
}
@media screen and (min-width: 768px) {
    .section_start-pack__achievement {
        padding: 6.2rem 0 0rem;
    }
}
.section_start-pack__achievement .start-pack_achievement__thumb {
    width: 100%;
    margin: 0 auto;
    margin-top: 2.8rem;
}

/*=========================================================
 基本のサービス
=========================================================*/
.section_start-pack__service {
    padding: 14.5rem 0 19.5rem;
    position: relative;
    margin-top: 5.5rem;
    margin-bottom: 6rem;
}
.section_start-pack__service::before {
    content: '';
    background-image: url(assets/img/start-pack/start-pack-service__bk-right.png);
    background-size: cover;
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    margin: 0;
    padding: 0;
    height: 100%;
    width: 100%;
    background-position: center;
    background-repeat: no-repeat;
    -webkit-clip-path: polygon(0 10%, 100% 0, 100% calc(90% - 0px), 0 100%);
    clip-path: polygon(0 10%, 100% 0, 100% calc(90% - 0px), 0 100%);
}
@media screen and (min-width: 768px) {
    .section_start-pack__service::before {
        background-size: cover;
        display: block;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        margin: 0;
        padding: 0;
        height: 100%;
        width: 100%;
        background-position: center;
        background-repeat: no-repeat;
        -webkit-clip-path: polygon(0 10%, 100% 0, 100% calc(90% - 0px), 0 100%);
        clip-path: polygon(0 10%, 100% 0, 100% calc(90% - 0px), 0 100%);
    }
}
.section_start-pack__service::after {
    content: '';
    background-image: url(assets/img/start-pack/start-pack-service__bk-left.png);
    background-size: cover;
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    margin: 0;
    padding: 0;
    height: 100%;
    width: 100%;
    background-position: center;
    background-repeat: no-repeat;
    -webkit-clip-path: polygon(0px 0px, 100% 10%, 100% calc(100% - 0px), 0 90%);
    clip-path: polygon(0px 0px, 100% 10%, 100% calc(100% - 0px), 0 90%);
    z-index: 0;
}
@media screen and (min-width: 768px) {
    .section_start-pack__service::after {
        background-size: cover;
        display: block;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        margin: 0;
        padding: 0;
        height: 100%;
        width: 100%;
        background-position: center;
        background-repeat: no-repeat;
        -webkit-clip-path: polygon(0px 0px, 100% 10%, 100% calc(100% - 0px), 0 90%);
        clip-path: polygon(0px 0px, 100% 10%, 100% calc(100% - 0px), 0 90%);
        z-index: 0;
    }
}
@media screen and (min-width: 768px) {
    .section_start-pack__service {
        padding: 14.5rem 0 19.5rem;
    }
}
.section_start-pack__service .in_start-pack__subtitle {
    color: #ffffff;
}
.section_start-pack__service .in_start-pack__subtitle::before {
    background-color: #ffffff;
}
.section_start-pack__service .in_start-pack__title {
    color: #ffffff;
}
.section_start-pack__service .start-pack_service__thumb {
    width: 55.7143rem;
    margin: 0 auto;
    margin-top: 2.8rem;
}
.section_start-pack__service .in_start-pack_list {
    counter-reset: listnum;
}
.section_start-pack__service .in_start-pack_flex {
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    flex-wrap: wrap;
    width: 100%;
    margin-top: 3.5rem;
}
.section_start-pack__service .in_start-pack_flex:last-of-type {
    margin-top: 2.2rem;
}
@media screen and (min-width: 768px) {
    .section_start-pack__service .in_start-pack_flex {
        width: 55.7143rem;
    }
}
.section_start-pack__service .in_start-pack_flex .left {
    width: 100%;
    background: #07585f;
    color: #ffffff;
    padding: 0.65rem 1.2rem;
}
@media screen and (min-width: 768px) {
    .section_start-pack__service .in_start-pack_flex .left {
        width: 25.7%;
        padding: 1.65rem 1.2rem;
    }
}
.section_start-pack__service .in_start-pack_flex .left .in_start-pack_flex__title {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.8;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .section_start-pack__service .in_start-pack_flex .left .in_start-pack_flex__title {
        line-height: 1.8;
        font-size: 1.2857142857rem;
    }
}
.section_start-pack__service .in_start-pack_flex .left .sml {
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.03em;
    display: block;
    margin-top: 0.5rem;
}
@media screen and (min-width: 992px) {
    .section_start-pack__service .in_start-pack_flex .left .sml {
        line-height: 1.5;
        font-size: 1rem;
    }
}
.section_start-pack__service .in_start-pack_flex .right {
    background: #ffffff;
    width: 100%;
    padding: 1rem 1.5rem;
}
@media screen and (min-width: 768px) {
    .section_start-pack__service .in_start-pack_flex .right {
        width: 74.3%;
        padding: 1.65rem 1.5rem;
    }
}
.section_start-pack__service .in_start-pack_flex .right .in_start-pack_list__text {
    position: relative;
    border-bottom: 1px solid;
    border-color: #f1a16f;
    margin-bottom: 0.5rem;
    padding-bottom: 0.3rem;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.8;
    letter-spacing: 0.03em;
    display: flex;
    align-items: baseline;
}
@media screen and (min-width: 992px) {
    .section_start-pack__service .in_start-pack_flex .right .in_start-pack_list__text {
        line-height: 1.8;
        font-size: 1.1428571429rem;
    }
}
.section_start-pack__service .in_start-pack_flex .right .in_start-pack_list__text::before {
    counter-increment: listnum;
    content: counter(listnum, decimal-leading-zero) '.';
    padding-right: 15px;
    vertical-align: middle;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.8;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .section_start-pack__service .in_start-pack_flex .right .in_start-pack_list__text::before {
        line-height: 1.8;
        font-size: 1.4285714286rem;
    }
}
.section_start-pack__service .in_start-pack_flex .right .in_start-pack_list__text .sml {
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.03em;
    display: block;
    margin-top: -0.3rem;
}
@media screen and (min-width: 992px) {
    .section_start-pack__service .in_start-pack_flex .right .in_start-pack_list__text .sml {
        line-height: 1.5;
        font-size: 1rem;
    }
}

/*=========================================================
 スケジュール
=========================================================*/
.section_start-pack__schedule {
    padding: 0rem 0 10rem;
    position: relative;
}
@media screen and (min-width: 768px) {
    .section_start-pack__schedule {
        padding: 0rem 0 10rem;
    }
}
.section_start-pack__schedule .start-pack_schedule__thumb {
    width: 55.7143rem;
    margin: 0 auto;
    margin-top: 2.8rem;
}

/*=========================================================
 スタートパック 共通
=========================================================*/
.in_start-pack__subtitle {
    position: relative;
    text-align: center;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.03em;
}
@media screen and (min-width: 992px) {
    .in_start-pack__subtitle {
        line-height: 1;
        font-size: 1.4285714286rem;
    }
}
.in_start-pack__subtitle::before {
    background-color: #f1a16f;
    bottom: -10px;
    content: '';
    height: 1px;
    left: 50%;
    position: absolute;
    transform: translateX(-50%);
    width: 6.2143rem;
}

.in_start-pack__title {
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.03em;
    text-align: center;
    margin-top: 1.7rem;
}
@media screen and (min-width: 992px) {
    .in_start-pack__title {
        line-height: 1;
        font-size: 2.2857142857rem;
    }
}

.in_start-pack__text {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.8;
    letter-spacing: 0.03em;
    text-align: center;
    margin-top: 1.7rem;
}
@media screen and (min-width: 992px) {
    .in_start-pack__text {
        line-height: 1.8;
        font-size: 1.4285714286rem;
    }
}

/*=========================================================
 フローティングバナー
=========================================================*/
.banner {
    display: none;
    position: fixed;
    margin: 185px 0px;
    z-index: 999;
    bottom: 0;
    right: 0;
}

.banner a {
    text-decoration: none;
}

.banner-icon {
    color: #f8f8f8;
    font-size: 40px;
}

.banner-back {
    width: 300px;
    background-color: #fff;
    border-radius: 10px;
}

.banner-copy {
    font-size: 18px;
    position: relative;
}

.banner-body {
    width: 300px;
    background: #f8f8f8;
    color: #000000;
    font-weight: bold;
    text-align: center;
    border-radius: 25px;
    box-shadow: 0 0 7px rgba(0, 0, 0, 0.4);
}

.banner-bottom img {
    width: 100%;
}

.banner-body:hover {
    transition: opacity 0.3s ease;
    opacity: 0.7;
}

.banner-close {
    font-weight: bold;
    position: absolute;
    top: -10px;
    right: 0px;
    z-index: 99999;
    padding: 4px 8px;
    border: none;
    background-color: #f8f8f8;
    border-radius: 25px;
    cursor: pointer;
    box-shadow: 0 0 7px rgba(0, 0, 0, 0.4);
}

@media screen and (max-width: 567px) {
    .banner {
        width: 100%;
        margin: 0px;
    }
    .banner-icon {
        font-size: 28px;
    }
    .banner-body {
        width: 100%;
        border-radius: 0px;
        background: none;
        opacity: 1;
        box-shadow: none;
    }
    .banner-back {
        width: 100%;
        margin: 0px;
        border-radius: 0px;
        background: none;
    }
    .banner-top {
        padding: 5px;
        border-radius: 0px;
        background: linear-gradient(#006eb0 50%, #0ab0c7);
    }
    .banner-bottom {
        padding: 0;
    }
    .banner-copy {
        font-size: 15px;
    }
    .banner-copy::after {
        font-size: 12px;
        margin-top: 1.4px;
        margin-left: 12px;
        top: initial;
        right: initial;
    }
    .banner-close {
        top: 8px;
        right: 15px;
    }
    .banner-copy-br {
        display: none;
    }

    .topup {
        bottom: 20%;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1400px) {
    #header .header__inner {
        margin-left: auto;
        max-width: 100%;
        width: 98%;
        margin-left: auto;
        margin-right: 0;
    }
}

@media only screen and (min-width: 1201px) and (max-width: 1360px) {
    .gnav__link {
        margin: 0 5px;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1200px) {
    .gnav__link {
        margin: 0 5px;
        font-size: 1rem;
    }
}

.servicemenu_link__column {
    gap: 2rem 0;
}

.scrool-item {
    margin-top: -9.143rem;
    padding-top: 9.143rem;
    display: block;
}

@media screen and (max-width: 768px) {
    .servicemenu_link__column {
        gap: 0.5rem;
        justify-content: space-between;
    }

    .servicemenu_link__column .cat {
        width: 49%;
    }
}

.usecases-company__wrap {
    padding: 3rem 2rem;
    background: #f9f9f9;
    margin-top: 2rem;
}

.usecases-company__ttl {
    font-size: 1.2857142857rem;
    font-weight: bold;
}

.usecases-company__info {
    font-size: 1.1428571429rem;
    line-height: 1.5;
    letter-spacing: 0.03em;
    margin-top: 1rem;
}

.usecases-company__img img {
    width: auto;
    object-fit: cover;
    max-width: 8rem;
    height: auto;
}

.usecases-company__img {
    margin-bottom: 1rem;
    width: 100%;
}

.section__inner.achievement,
.section__inner.achievement-feature,
.section__inner.achievement-about,
.achievement-faq,
.section_about__features.achievement-flow {
    background: none;
    padding-left: 0;
    padding-right: 0;
}

.section_about__features.achievement-faq,
.section_about__features.achievement-flow {
    padding-top: 0;
    padding-bottom: 0;
}

.section__inner.achievement {
    padding-top: 2rem;
}

.section_about__features.achievement-feature {
    position: relative;
    overflow: hidden;
    z-index: 0;
}

/* 背景ラッパー */
.feature-bg {
    position: absolute;
    inset: 0;
    z-index: -1;
}

/* 共通背景レイヤー */
.bg-layer {
    position: absolute;
    width: 100%;
    height: 100%;
}

/* 下層：深緑 #07585F（斜め上がり） */
.layer1 {
    background: #07585f;
    clip-path: polygon(0 10%, 100% 0%, 100% 90%, 0% 100%);
}

/* 上層：濃紺 #073D5F（斜め下がり） */
.layer2 {
    background: #073d5f;
    clip-path: polygon(0 0, 100% 10%, 100% 100%, 0% 90%);
}

.section_about__features.achievement-fst {
    padding-bottom: 0;
}

.section__inner.achievement-feature {
    color: #ffffff;
}

.section__inner.achievement-feature .secondary::after {
    background-color: #ffffff;
}

.achievement-feature-list {
    display: flex;
    gap: 1.6rem 1.69%;
}

.achievement-feature-list .item .content {
    padding: 1.5rem;
    font-weight: 600;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.section__inner.achievement-feature .primary__text,
.section__inner.achievement-about .primary__text {
    text-align: center;
    margin-top: 1rem;
}

.section_about__features.achievement-about {
    padding-top: 0;
}

.achievements-about-img01 {
    width: 66.102%;
    margin: 0 auto;
}

.f-graphic-item {
    width: 100%;
    margin: 0 auto;
    max-width: 49.286rem;
    margin-top: 2rem;
    margin-bottom: 2rem;
}

.achievements-about-img02 {
    width: 66.102%;
    margin: 0 auto;
    margin-top: 4rem;
}

.achievement-banner img,
.achievements-about-img03 {
    width: 100%;
    margin: 0 auto;
}

.achievement-about-price {
    margin-top: 6rem;
}

.faq-content {
    max-width: 930px;
    margin: 0 auto;
}

.faq-item {
    border-bottom: 1px dotted #dedede;
    padding: 30px 0;
}

.faq-question {
    font-weight: bold;
    font-size: 1.285712rem;
    margin-bottom: 8px;
    position: relative;
    padding-left: 2.3em;
}

.faq-question::before {
    content: 'Q.';
    position: absolute;
    left: 0;
    color: #ffffff;
    font-weight: bold;
    background: #073d5f;
    font-size: 1.285712rem;
    font-style: italic;
    border-radius: 100%;
    width: 32px;
    height: 32px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.faq-answer {
    font-size: 1rem;
    line-height: 1.6;
    padding-left: 0;
    margin-top: 1rem;
}

.achievement-feature-list .item .content .point {
    font-style: italic;
    display: flex;
    align-items: center;
    gap: 0.3rem;
}

.achievement-feature-list .item .content .title {
    font-size: 1.714287rem;
    line-height: 1.3;
    margin-top: 0.5rem;
    font-weight: bold;
    height: 3rem;
}

.achievement-feature-list .item .content .info {
    padding-top: 2rem;
}

.achievement-feature-list .item .content .point .num {
    font-style: normal;
    font-size: 1.285712rem;
    font-weight: bold;
}

.achievement-feature-list .item {
    width: 32.204%;
    background: #ffffff;
    border-radius: 8px;
    flex-direction: column;
    display: flex;
    color: #07585f;
    flex: 1;
    flex-direction: column;
}

.achievement-feature-list .item img {
    width: 100%;
}

.achievements-list {
    display: flex;
    gap: 1.6rem 1.69%;
    flex-wrap: wrap;
    justify-content: center;
}

.achievements-list li {
    width: 32.204%;
    background: #ffffff;
    border-radius: 8px;
    flex-direction: column;
    display: flex;
}

.list__body {
    display: flex;
    align-items: center;
    gap: 5%;
    padding: 1rem;
    padding-bottom: 1.5rem;
    flex-grow: 1;
    justify-content: center;
}

.list__body .left {
    width: auto;
}

img.achievements_icon01 {
    width: 3.6rem;
    min-width: 35px;
}

img.achievements_icon02 {
    width: 5.7145rem;
    min-width: 35px;
}

img.achievements_icon03 {
    width: 5.6rem;
    min-width: 35px;
}

img.achievements_icon04 {
    width: 3rem;
    min-width: 35px;
}

img.achievements_icon05 {
    width: 6.6rem;
    min-width: 35px;
}

.list__body .right {
    width: 65%;
    font-size: 1.4285714286rem;
    font-weight: bold;
}

.achievements-list li .title {
    background: #07585f;
    color: #ffffff;
    border-radius: 8px 8px 0px 0;
    text-align: center;
    font-weight: bold;
    padding: 6px;
}

.hero.hero-lower.hero-operational-support .hero__sub_title {
    font-size: 1.4285714286rem;
}

.hero.hero-lower.hero-operational-support .hero__title {
    font-size: 2.8571428571rem;
}

.hero-flex {
    display: flex;
    gap: 2rem;
    margin-top: 3rem;
    width: max-content;
    margin-left: auto;
    margin-right: auto;
}

.hero.hero-lower.hero-operational-support {
    height: 625px;
    position: relative;
}

.hero-flex .btn-primary {
    display: flex;
    align-items: center;
    gap: 1rem;
    text-align: left;
    justify-content: center;
}

.btn-primary.document {
    background: #f1a16f;
    color: #ffffff;
}

.btn-primary.document::before {
    border-right: 2px solid #f1a16f;
    border-bottom: 2px solid #f1a16f;
}

.btn-primary.document:hover {
    background-color: #dff2eb;
    color: #07585f;
}

.btn-primary.document:hover.btn-primary.document::before {
    border-right: 2px solid #ffffff;
    border-bottom: 2px solid #ffffff;
}

.btn-primary.contact {
    background: #073d5f;
    color: #ffffff;
}

.btn-primary.contact:hover {
    background-color: #dff2eb;
    color: #07585f;
}

.hero-flex i {
    margin-right: 0px;
    margin-left: -20px;
}

.hero.hero-lower.hero-operational-support .hero__inner {
    position: absolute;
    top: 60%;
    left: 50%;
    -ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    margin: 0;
    padding: 0;
    width: 100%;
    max-width: 65rem;
}

.hero-operational-support .hero__copy {
    text-align: center;
    font-size: 1.714287rem;
    font-weight: bold;
    margin-top: 2rem;
}

.hero-operational-support .hero__text {
    text-align: center;
    font-size: 1.14286em;
    font-weight: bold;
    margin-top: 1rem;
    line-height: 1.8;
}

.flow-content {
    position: relative;
    max-width: 930px;
    margin: 0 auto;
    padding-left: 0px;
}

.first_guide.achievement-banner {
    padding: 111px 0 70px;
}

/* 縦線（1本のみ） */
.flow-content::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50px;
    width: 2px;
    background-color: #f3ad83;
    z-index: 0;
}

/* 各ステップ（ラベル＋ボックス） */
.flow-step {
    display: flex;
    align-items: stretch;
    position: relative;
    margin-bottom: 40px;
    z-index: 1; /* 縦線より上に */
}

/* STEPラベル */
.flow-label {
    background-color: #f3ad83;
    color: #fff;
    font-style: italic;
    font-weight: bold;
    padding: 24px 16px;
    min-width: 100px;
    display: flex;
    justify-content: center;
    border-radius: 8px 0 0 8px;
}

.flow-label .num {
    font-size: 1.285712rem;
    line-height: 1;
    padding: 0.1rem;
    padding-left: 0.2rem;
}

/* 吹き出しボックス */
.flow-box {
    background-color: #07585f;
    color: #fff;
    border-radius: 0 8px 8px 0px;
    padding: 24px;
    flex: 1;
}

/* テキスト */
.flow-title {
    font-size: 1.714287rem;
    font-weight: bold;
    margin-bottom: 0px;
    position: relative;
    top: -0.5rem;
}

.flow-text {
    font-size: 1rem;
    line-height: 1.6;
}

.column_archive.introduction_archive {
    margin: 67px 0;
}

.balloon {
    position: relative;
    display: inline-block;
    margin-bottom: 0;
    padding: 4px 10px;
    min-width: 120px;
    max-width: 100%;
    color: #ffffff;
    font-size: 2rem;
    font-weight: 600;
    background: #07585f;
    margin-top: 0;
    border-radius: 4px;
    text-align: center;
}

.primary__text.servicenow {
    font-size: 1.125rem;
    font-weight: 600;
}

.achievements-about.mt-20 {
    margin-top: 3rem;
}

.balloon-wrap.mt-20 {
    margin-top: 3rem;
}

.balloon:before {
    content: '';
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -9px;
    border: 9px solid transparent;
    border-top: 9px solid #07585f;
}

.balloon.col-blue {
    background: #063d5f;
    text-align: center;
}

.balloon.col-blue::before {
    border-top: 9px solid #063d5f;
}

.balloon-wrap {
    display: flex;
    justify-content: center;
    margin-top: 2rem;
    margin-bottom: 2rem;
}

.mb-none {
    margin-bottom: 0 !important;
}

.balloon p {
    margin: 0;
    padding: 0;
}

/* ===============================
  共通スタイル
================================= */
.gnav__item {
    position: relative;
}

.gnav__item--has-sub {
    position: relative;
}

/* サブメニュー本体 */
.gnav__submenu {
    position: absolute;
    top: calc(100% - 10px);
    left: 0;
    min-width: 320px;
    border: 1px solid #dff2eb;
    padding: 20px;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1);
    z-index: 999;

    /* アニメーション制御 */
    opacity: 0;
    transform: translateY(10px);
    visibility: hidden;
    pointer-events: none;
    transition:
        opacity 0.3s ease,
        transform 0.3s ease,
        visibility 0.3s;
}

/* 表示時（PC hover） */
.gnav__item--has-sub.is-hovered .gnav__submenu {
    opacity: 1;
    transform: translateY(0);
    visibility: visible;
    pointer-events: auto;
}

/* サブメニュー構造 */
.submenu__block {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.submenu__title {
    font-weight: bold;
    font-size: 1rem;
    margin-bottom: 0px;
}

.submenu__list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.gnav__submenu.sml {
    min-width: 100px;
}

.gnav__submenu.middle {
    min-width: 167px;
}

.submenu__list li {
    font-size: 0.95rem;
    margin: 4px 0;
    line-height: 1.4;
    cursor: pointer;
    position: relative;
    padding-left: 15px;
}

.submenu__list li::before {
    content: '';
    display: block;
    position: absolute;
    width: 10px;
    height: 1px;
    left: 0px;
    top: 9px;
    background: #07585f;
}

.header-links {
    padding-bottom: 0;
}

.column_archive .usecases .column__text {
    -webkit-line-clamp: 3;
}

@media screen and (min-width: 768px) {
    .column_archive .column__thumb.usecases {
        height: 199px;
    }
    .news_single .news.usecases {
        margin: 81px auto 0;
        padding: 62px 50px 80px;
    }
}

@media (hover: hover) {
    .gnav__item {
        padding-bottom: 30px; /* サブメニューとの距離 */
    }

    .gnav__item--has-sub::after {
        content: '';
        position: absolute;
        top: 100%;
        left: 0;
        width: 100%;
        height: 30px;
        background: transparent;
        pointer-events: auto;
        z-index: 10;
    }
}

/* ===============================
  SP: クリック開閉対応
================================= */
@media (max-width: 768px) {
    .gnav__submenu {
        position: static;
        opacity: 1;
        visibility: visible;
        transform: none;
        pointer-events: auto;
        box-shadow: none;
        background: #f9f9f9;
        border-radius: 0;
        padding: 16px;
        margin-top: 10px;
        transition: none;
    }

    .gnav__submenu {
        display: none;
    }

    .gnav__item--open .gnav__submenu {
        display: block;
    }

    .gnav__link {
        position: relative;
    }

    .gnav__item--has-sub .gnav__link::after {
        content: '▼';
        position: absolute;
        right: 16px;
        top: 50%;
        transform: translateY(-50%);
        font-size: 0.75em;
        color: #555;
    }
}

/* モバイル対応 */
@media (max-width: 560px) {
    .balloon {
        font-size: 1.6rem;
    }

    .achievements-list li {
        width: 100%;
    }
    .list__body {
        flex-wrap: wrap;
    }
    .list__body .right {
        width: 100%;
        font-size: 1.3rem;
        text-align: center;
        margin-top: 1rem;
    }
    .usecases-company__wrap {
        padding: 3rem 2rem;
    }
    .achievements-about-img01,
    .achievements-about-img02 {
        width: 100%;
    }
}

/* モバイル対応 */
@media (max-width: 767.8px) {
    .column_archive .column__thumb.usecases {
        height: 51.5vw;
    }
    .submenu__title {
        font-size: 1.6rem;
    }
    .submenu__list li {
        margin: 10px 0;
        font-size: 1.2rem;
    }
    .submenu__list li:first-of-type {
        margin-top: 0;
    }
    .flow-content {
        padding-left: 0;
    }

    .flow-content::before {
        display: none;
    }

    .flow-step {
        flex-direction: column;
    }

    .flow-label {
        border-radius: 4px;
        margin-bottom: 8px;
        padding: 10px;
        width: auto;
    }

    .flow-box {
        border-radius: 8px;
        padding: 16px;
    }

    .hero-flex {
        width: 100%;
        flex-wrap: wrap;
        max-width: 34rem;
    }
    .hero.hero-lower.hero-operational-support .hero__title {
        font-size: 2.5rem;
    }
    .hero-operational-support .hero__copy {
        width: 80%;
        margin-left: auto;
        margin-right: auto;
    }
    .achievements-list li {
        width: 49%;
    }
    .cases_relation__heding .primary {
        font-size: 1.7rem;
        line-height: 1.5;
    }
    .achievement-feature-list .item {
        width: 49%;
        flex: inherit;
        margin: 0 auto;
    }
    .achievement-feature-list {
        flex-wrap: wrap;
    }
    .achievement-feature-list .item .content .info {
        padding-top: 3rem;
    }
    .achievement-feature-list .item .content .title {
        height: auto;
    }
    .first_guide.achievement-banner {
        padding: 71px 0 10px;
    }
    .faq-question {
        padding-left: 3.3em;
    }
    .faq-answer {
        margin-top: 2rem;
    }
    .section__inner.achievement-flow {
        padding-top: 0;
    }
    .hero.hero-lower.hero-operational-support {
        height: 565px;
    }
    .hero.hero-lower.hero-operational-support .hero__inner {
        top: 55%;
    }
}

/* 202603 MVリニューアル */
.mv {
    position: relative;
}
@media screen and (max-width: 992px) {
    .mv {
        margin-top: 80px;
    }
}
.mv__bg img {
    background: #08585f;
    width: 100%;
    height: auto;
}
.mv__btn-wrap {
    display: flex;
    justify-content: center;
    gap: 3%;
    position: absolute;
    top: 80%;
    left: 50%;
    transform: translateX(-50%);
    animation: fadeIn 0.6s ease 0.2s forwards;
    opacity: 0;
    z-index: 1;
}
@keyframes fadeIn {
    to {
        opacity: 1;
    }
}
@media screen and (max-width: 992px) {
    .mv__btn-wrap {
        flex-direction: column;
        gap: 1.2em;
        top: 70%;
    }
}
.mv__btn {
    background: #e27b3a;
    background: linear-gradient(0deg, rgba(226, 123, 58, 1) 0%, rgba(232, 155, 108, 1) 100%);
    border: 2px solid #e27b3a;
    border-radius: 100px;
    color: #fff;
    overflow: hidden;
    font-size: clamp(16px, 1.6vw, 22px);
    font-weight: 700;
    text-align: center;
    padding: 0.8em;
    position: relative;
    width: clamp(280px, 30vw, 430px);
    z-index: 1;
}
.mv__btn::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 0;
    background: #e09465;
    background: linear-gradient(0deg, rgba(224, 148, 101, 1) 0%, rgba(250, 199, 167, 1) 100%);
    opacity: 0;
    transition: opacity 0.5s;
}
.mv__btn:hover::before {
    opacity: 1;
}
@media screen and (max-width: 992px) {
    .mv__btn {
        font-size: clamp(14px, 3vw, 24px);
        padding: 1.2em 0.8em;
        width: clamp(280px, 64vw, 480px);
    }
}
.mv__btn-text {
    position: relative;
    z-index: 2;
}
.mv__btn-arrow {
    background-color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    right: 1em;
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
}
.mv__btn-arrow::before {
    content: '';
    display: block;
    width: 5px;
    height: 5px;
    border-top: 1px solid #e27b3a;
    border-right: 1px solid#e27b3a;
    transform: rotate(45deg) translate(-1px, 1px);
}
