@charset "UTF-8";
@media screen and (max-width: 768px) {
.kugiri_m02 {
    padding: 8.5rem 0 15.5rem;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
汎用
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
:root:root .cmn_page_btn {
    width: 100%;
    max-width: none;
}

    .cmn_page_btn button ,p.cmn_page_btn a {
        width: 52.5rem;
        font-size: 3.8rem;
        padding: 4rem;
        height: 13rem;
        border-radius: 6.5rem;
    }

    .cmn_page_btn button::before ,p.cmn_page_btn a::before, .cmn_page_btn button::after ,p.cmn_page_btn a::after {
        width: 6rem;
        height: 6rem;
        right: 3rem;
    }

    .cmn_page_btn button::before ,p.cmn_page_btn a::before {
    }

    .cmn_page_btn button::after ,p.cmn_page_btn a::after {
        mask-size: 2.6rem auto;
    }
    
    ul.page_btn_list {
        gap: 2rem;
        width: 68rem;
        margin-top: 10rem;
    }
    
    .page_outline ul.page_btn_list {
        margin-left: -1.5rem;
    }

    ul.page_btn_list li a {
        font-size: 3.2rem;
        min-height: 13rem;
        padding: 1rem 2rem;
    }

    ul.page_btn_list li a::before, ul.page_btn_list li a::after {
        width: 4rem;
        height: 4rem;
        right: 1.5rem;
    }

    /* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    プロモ
    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
    .page_promo {
        padding: 5.5rem 0 0;
    }

    .page_promo .promo_inner .ttl_wrap {
        margin: 0;
        padding: 0;
    }

    .page_promo .promo_inner .slug {
        font-size: 9.8rem;
    }
    
    .page_promo .promo_inner .slug.sp_small {
        font-size: 9.2rem;
        white-space: pre;
    }

    .page_promo .promo_inner .ja {
        font-size: 2.8rem;
        padding: 0 0 0 7rem;
        margin-bottom: 1rem;
    }

    .page_promo .promo_inner .ja::before {
        width: 3.7rem;
        height: 2.2rem;
        left: 1rem;
    }

    .page_main_img {
        padding: 8vw 0;
        width: calc(100% - 30px);
    }

    .page_main_img img {
        border-radius: 2.66666666vw;
    }

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ごあいさつ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
    .page_greeting > .page_width {
        width: 100%;
    }

    .page_greeting .fv_area {
        min-height: auto;
        margin-bottom: 6rem;
    }

    .page_greeting .fv_area p.main_img {
        width: 64.5rem;
        position: static;
    }

    .page_greeting .fv_area .contents_area {
        padding: 0;
        margin: -19rem 0 0;
    }

    .page_greeting .fv_area .contents_area h2.main_ttl {
        margin-bottom: 8.5rem;
    }

    .page_greeting .fv_area .contents_area .ceo_wrap {
        margin-left: 4rem;
    }

    .page_greeting .fv_area .contents_area .ceo_wrap p.ceo {
        font-size: 3rem;
    }

    .page_greeting .fv_area .contents_area .ceo_wrap p.name {
        width: 28rem;
        margin-bottom: 1.5rem;
    }

    .page_greeting .fv_area .contents_area .ceo_wrap p.furigana {
        font-size: 2.6rem;
    }

    .page_greeting .page_width .cmn_txt_wrap {
        padding: 0 3rem;
    }

    .page_greeting .page_width .cmn_txt_wrap p {
        font-size: 3rem;
        line-height: 1.75;
    }

    .page_greeting .page_width .cmn_txt_wrap p:not(:last-child) {
        margin-bottom: 4rem;
    }
    
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
概要・沿革
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
    .page_outline section.overview {
        margin-bottom: 9rem;
    }

    .page_outline section .inner h2.main_ttl span.en {
        font-size: 2.6rem;
    }

    .page_outline section .inner dl.cmn_data_list .data_item dt {
        font-size: 3.4rem;
    }

    
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
選ばれる理由
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
    .page_reasons > .page_width {
        width: 100%;
    }

    .reason_main {
        padding-bottom: 4rem;
    }

    .reason_main .bg {
        min-height: 65rem;
        background-position: top left 33%;
    }

    .reason_main .bg .content_area h2.main_ttl {
        width: 69rem;
    }

    .reason_main .bg .content_area p.txt {
        font-size: 2.8rem;
        letter-spacing: .06em;
        line-height: 1.5;
    }

    .cmn_zigzag {
        padding-top: 4rem;
    }

    .cmn_zigzag .zigzag_wrap:nth-child(even) .zigzag_inner {
        display: block;
    }

    .cmn_zigzag .zigzag_wrap:not(:last-child) {
        margin-bottom: 14rem;
    }

    .cmn_zigzag .zigzag_wrap .contents_wrap {
        padding: 0 1.5rem;
        margin-bottom: 5rem;
    }

    .cmn_zigzag .zigzag_wrap .contents_wrap p.slug {
        font-size: 2.5rem;
        min-width: 20rem;
    }

    .cmn_zigzag .zigzag_wrap .contents_wrap h2.main_ttl {
        margin-bottom: 4rem;
    }

    .cmn_zigzag .zigzag_wrap .contents_wrap p.main_txt {
        font-size: 3rem;
        max-width: none;
        line-height: 1.75;
    }

    .cmn_zigzag .zigzag_wrap .img_wrap {
        position: static;
    }

    .cmn_zigzag .zigzag_wrap:nth-child(odd) .img_wrap {
        margin-right: -5rem;
    }

    .cmn_zigzag .zigzag_wrap:nth-child(even) .img_wrap {
        margin-left: -5rem;
    }

    .cmn_zigzag .zigzag_wrap .img_wrap p.img.main {
        width: 46rem;
    }

    .cmn_zigzag .zigzag_wrap:nth-child(odd) .img_wrap p.img.main {
        margin-left: auto;
    }

    .cmn_zigzag .zigzag_wrap .img_wrap p.img.sub {
        width: 41rem;
        margin-top: -21rem;
    }

    .cmn_zigzag .zigzag_wrap:nth-child(odd) .img_wrap p.img.sub {
        margin-left: 0;
    }

    .page_reasons .inner {
        padding-bottom: 10rem;
    }

    .page_reasons .inner h3.ttl {
        font-size: 4.6rem;
    }

    .page_reasons .inner ul.items.f_wrap {
        width: 60rem;
        margin-bottom: 5rem;
    }

    .page_reasons .inner ul.items.f_wrap::after {
        content: none;
    }

    .page_reasons .inner ul.items.f_wrap li {
        width: 100%;
        height: auto;
        background: transparent;
        grid-template-columns: 12.2rem 1fr;
        gap: 3rem;
        align-items: center;
    }

    .page_reasons .inner ul.items.f_wrap li h4.ttl {
        background: var(--theme_m_color);
        border-radius: 100%;
        height: 12rem;
        display: grid;
        justify-content: center;
        align-items: center;
        margin: 0;
        font-size: 3rem;
        position: relative;
        padding-left: .5rem;
        line-height: 1.25;
    }

    .page_reasons .inner ul.items.f_wrap li:not(:last-child) h4.ttl::after {
        position: absolute;
        content: "";
        background: var(--theme_m_color);
        width: 2px;
        height: 100%;
        bottom: -57%;
        left: 0;
        right: 0;
        margin: 0 auto;
        z-index: -1;
    }

    .page_reasons .inner ul.items.f_wrap li p.txt {
        color: var(--theme_m_color);
        font-size: 3rem;
        text-align: left;
        font-weight: bold;
    }

    .page_reasons .sp_img_area {
        padding-right: 5rem;
    }

    .page_reasons .sp_img_area .main {
        width: 46rem;
        border-radius: 0 2rem 2rem 0;
        overflow: hidden;
    }

    .page_reasons .sp_img_area .sub {
        width: 41rem;
        margin-left: auto;
        border-radius: 2rem;
        overflow: hidden;
        margin-top: -21rem;
    }

    
    /* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
チルドロールの事業
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
    .page_product_cd h2.main_ttl {
        margin-bottom: 5rem;
    }

    .page_product_cd h2.main_ttl span.en {
        font-size: 2.6rem;
    }

    .page_product_cd .inner .grid.box {
        grid-template-columns: 1fr;
        gap: 5rem;
        margin-bottom: 10.5rem;
    }

    .page_product_cd .inner .grid.box .contents_area p {
        font-size: 3rem;
    }

    .page_product_cd .inner .grid.box p.img {
        margin: 0 2.5rem;
    }

    .page_product_cd .inner p.lead {
        font-size: 4rem;
        line-height: 1.5;
    }

    .page_product_cd .inner ul.items {
        grid-template-columns: 1fr;
        padding: 0 0;
        gap: 3rem;
    }

    .page_product_cd .inner ul.items li {
        padding: 6rem 4rem;
    }

    .page_product_cd .inner ul.items li h3.ttl {
        font-size: 4.4rem;
        margin-bottom: 5.5rem;
    }

    .page_product_cd .inner ul.items li p.txt {
        font-size: 2.8rem;
        margin-bottom: 4rem;
    }

    .page_product_cd .inner ul.items li .img_wrap.f_wrap {
        width: 100%;
    }

    .page_product_cd .inner02 .process {
        margin-bottom: 12.5rem;
    }

    .page_product_cd .inner02 .process h2.main_ttl02 {
        font-size: 4.2rem;
        padding: 1rem 4.5rem;
        min-height: 10rem;
        margin-bottom: 6rem;
    }

    .page_product_cd .inner02 .process h2.main_ttl02 .small {
        font-size: 3rem;
    }

    .page_product_cd .inner02 .process ul.items.grid {
        grid-template-columns: 1fr;
        padding: 0 5rem;
        gap: 9rem;
    }

    .page_product_cd .inner02 .process ul.items.grid li p.img {
        margin-bottom: 2.5rem;
    }

    .page_product_cd .inner02 .process ul.items.grid li .contents h3.ttl {
        font-size: 4.8rem;
    }

    .page_product_cd .inner02 .process ul.items.grid li .contents p.txt {
        font-size: 3rem;
        padding: 0;
    }

    .page_product_cd .inner02 .process ul.items02 li.grid {
        grid-template-columns: 1fr;
        padding: 0 2.5rem;
        gap: 5rem;
    }

    .page_product_cd .inner02 .process ul.items02 li.grid .contents {
        padding: 0;
    }

    .page_product_cd .inner02 .process ul.items02 li.grid .contents p {
        font-size: 3rem;
    }

    .page_product_cd .inner02 .process ul.items02 p.img {
        margin: 0 2.5rem;
    }

    .page_product_cd .maintenance {
        margin-top: 11rem;
    }

    .page_product_cd .maintenance ul.items02 {
        margin-bottom: 4rem;
    }

    .page_product_cd .maintenance ul.items02 li.grid {
        grid-template-columns: 1fr;
    }

    .page_product_cd .maintenance ul.items02 li.grid .contents p.txt {
        font-size: 3rem;
        margin-bottom: 4.5rem;
    }

    .page_product_cd .maintenance ul.items02 li.grid .contents ul.list {
        width: 60rem;
        margin: 0 auto;
        padding: 0;
    }

    .page_product_cd .maintenance ul.items02 li.grid .contents ul.list li {
        font-size: 3.3rem;
        padding: .8rem 0;
    }

    .page_product_cd .maintenance ul.items02 li.grid p.img {
        margin: 0 2.5rem;
    }

    .page_product_cd .maintenance ul.maru_list.f_wrap {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 0 2rem;
        justify-items: center;
        width: 70rem;
        margin-left: -2.5rem;
    }

    .page_product_cd .maintenance ul.maru_list.f_wrap li {
        width: 34rem;
        height: 34rem;
    }

    /* 1個目だけ中央にする */
    .page_product_cd .maintenance ul.maru_list.f_wrap li:nth-child(1) {
        grid-column: 1 / 3;
    }

    .page_product_cd .maintenance ul.maru_list.f_wrap li:not(:first-child) {
        margin-top: -2rem;
    }

    .page_product_cd .maintenance ul.maru_list.f_wrap li h3.ttl {
        font-size: 2.2rem;
    }

    .page_product_cd .maintenance ul.maru_list.f_wrap li p.txt {
        font-size: 3.2rem;
    }

    
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
プライバシーポリシー
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
    .page_privacy p.main_lead {
        line-height: 2;
        margin-bottom: 9vw;
    }

    .page_privacy .box {
        margin-bottom: 7vw;
    }

    .page_privacy .box h3.ttl {
        font-size: 4.2rem;
        text-indent: -1em;
        padding-left: 1em;
    }

    .page_privacy .box p {
        margin-bottom: 2vw;
        padding-left: 19px;
    }

    .page_privacy ul.indent {
        padding-left: 19px;
    }

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
404
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
    .page_promo.letter404 {
        padding-top: 90px;
    }

    .page_promo.letter404::after {
        top: 73%;
    }

    .page_promo.letter404 .promo_inner h1 .slug {
        font-size: 10.6666666vw;
        line-height: 1.15;
    }

    .page_404 h2 {
        font-size: 6.6666666vw;
        margin-bottom: 12vw;
        text-align: left;
    }

    .page_404 p.txt {
        text-align: left;
        margin-bottom: 12vw;
        font-size: 3rem;
        line-height: 2;
    }

    .page_404 p.btn a {
        min-width: auto;
        font-size: 3rem;
        border-radius: 9.3333333333vw;
        width: 68vw;
        height: 18.6666666vw;
        padding: 3vw 35px;
        display: flex;
        justify-content: center;
        align-items: center;
    }

}/* owari */