@charset "UTF-8";

/*------------------------------------*\
    $CONTENTS
\*------------------------------------*/
/**
 * CONTENTS............目次
 * COMMON..............共通パーツ
 * VARIABLE-HIDE.......可変幅による表示非表示
 * HEADER..............ヘッダーパーツ
 * FOOTER..............フッターパーツ
 * WORKS...............実績
 */





/*------------------------------------*\
    $COMMON
\*------------------------------------*/
#wrap {
    position: relative;
    overflow-y: hidden;
}

@media screen and (max-width: 767px) {
    #wrap {
        max-width: 460px;
        margin-inline: auto;
    }
}


@media screen and (max-width: 767px) {
    .reverse {
        display: flex;
        flex-direction: column-reverse;
        width: 100%;
    }
}



/**
 * background
 */
.bg-slash {
    position: relative;
    z-index: 1;
    overflow: hidden;
}

@media screen and (min-width: 768px) {
    .bg-slash {
        padding-bottom: 160px;
    }
}

@media screen and (max-width: 767px) {
    .bg-slash {
        /* padding-bottom: 343px; */
    }
}

.bg-slash::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background-image: radial-gradient(white 30.7873%, #C4D0D9 98.6496%);
}

@media screen and (min-width: 768px) {
    .bg-slash::before {
        clip-path: polygon(0 0,
                min(calc(50% + 500px), calc(100% * (1183 / 1366))) 0,
                min(calc(50% - 117.6619px), calc(100% * (565.3381 / 1366))) 100%,
                0 100%);
    }
}

@media screen and (max-width: 767px) {
    .bg-slash::before {
        clip-path: polygon(0 0,
                calc(100% + 0.728px) 0,
                45.51865px 100%,
                0 100%);
    }
}


.bg-repeat {
    background-position: 50% 0;
    background-repeat: repeat-y;
    background-size: 100%;
}

@media screen and (min-width: 768px) {
    .bg-repeat {
        background-image: url(../../../images/assets_machines/desk/bg-repeat-pc.jpg);
    }
}

@media screen and (max-width: 767px) {
    .bg-repeat {
        background-image: url(../../../images/assets_machines/desk/bg-repeat-sp.jpg);
    }
}




/**
 * Text
 */
.color-red {
    color: var(--accentColor)
}

.color-blue {
    color: var(--primaryColor)
}


.title {
    position: relative;
    text-align: center;
    font-family: var(--font700);
    line-height: 1.25;
}

.title::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    background-image: var(--titleImg);
    background-repeat: no-repeat;
    background-position: 50% 0;
    background-size: contain;
}

.title strong {
    color: var(--titleAccent)
}

@media screen and (min-width: 768px) {
    .title {
        padding-top: 36px;
        font-size: 4.6rem;
    }

    .title::before {
        height: 26px
    }
}

@media screen and (max-width: 767px) {
    .title {
        padding-top: 28px;
        font-size: 2.4rem;
    }

    .title::before {
        height: 18px
    }
}





/**
 * button
 */
.btn-area {
    max-width: 864px;
    margin-inline: auto;
}

@media screen and (min-width: 768px) {
    .btn-area {
        display: flex;
        justify-content: center;
        column-gap: calc(100% * (28 / 864));
    }
}

@media screen and (max-width: 767px) {
    .btn-area {}
}

.btn-area__item {
    display: block
}

.btn-area__item.is-deco {
    position: relative
}

.btn-area__item.is-deco::before {
    content: "";
    aspect-ratio: 211 / 254;
    position: absolute;
    pointer-events: none;
    background-image: url(../../../images/assets_machines/desk/btn-deco.png);
    background-repeat: no-repeat;
    background-size: contain;
}

@media screen and (min-width: 768px) {
    .btn-area__item.is-deco::before {
        top: -40.4598px;
        left: 14.3765px;
        width: 105.12px;
    }
}

@media screen and (max-width: 767px) {
    .btn-area__item+.btn-area__item {
        margin-top: 34px
    }

    .btn-area__item.is-deco::before {
        top: -15px;
        left: 10.86795px;
        width: 79.4659px;
    }
}

.btn-area__item img {
    width: 100%
}

@media screen and (min-width: 768px) {
    .btn-area__item img {}
}

@media screen and (max-width: 767px) {
    .btn-area__item img {
        width: 109%;
        margin-top: calc(-100% * (12 / 335));
        margin-left: calc(-100% * (11 / 335));
        margin-bottom: calc(-100% * (52 / 335));
        max-width: unset;
    }
}



/**
 * Hide contents
 */
/* Hide elements */
.hide {
    content-visibility: auto;
    display: none;
}

/* Hide scrollbar */
.non-scrollbar {
    -ms-overflow-style: none;
    /* Edge */
    scrollbar-width: none;
    /* Firefox */
}

.non-scrollbar::-webkit-scrollbar {
    /* Safari */
    content-visibility: auto;
    display: none;
}





/*------------------------------------*\
    $VARIABLE-HIDE
\*------------------------------------*/
/* Aspect ratio */
@media screen and (orientation: landscape) {
    .portrait {
        display: none
    }
}

@media screen and (orientation: portrait) {
    .landscape {
        display: none
    }
}

/* iPad */
@media screen and (min-width: 768px) {
    .less768 {
        display: none
    }
}

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

/* iPad Pro */
@media screen and (min-width: 1024px) {
    .less1024 {
        display: none
    }
}

@media screen and (max-width: 1023px) {
    .over1024 {
        display: none
    }
}

/* laptop */
@media screen and (min-width: 1280px) {
    .less1280 {
        display: none
    }
}

@media screen and (max-width: 1279px) {
    .over1280 {
        display: none
    }
}





/*------------------------------------*\
    $HEADER
\*------------------------------------*/
/* .header {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
    width: 100%;
    padding-inline: var(--pInline);
    background-color: white;
}
@media screen and (min-width: 768px) {
    .header { height: 100px }
}
@media screen and (max-width: 767px) {
    .header { height: 68px }
}

    .header__inner {
        display: flex;
        align-items: center;
        width: var(--content);
        height: 100%;
        margin-inline: auto;
    }

        @media screen and (min-width: 768px) {
            .header__logo { width: 410px }
        }
        @media screen and (max-width: 767px) {
            .header__logo { width: 222px }
        } */



#header {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;
    width: 100%;
    -moz-transition-duration: 0.7s;
    -o-transition-duration: 0.7s;
    -webkit-transition-duration: 0.7s;
    transition-duration: 0.7s;
    background: #fff;
}

#header * {
    box-sizing: content-box;
}

/* logo */
.header_logo {
    float: left;
    width: 520px;
    margin: 27px 0 0 33px;
}

.header_logo .logo_txt {
    font-size: 10px;
    line-height: 1.2;
    letter-spacing: 0;
    color: #5c5c5c;

    font-family: "秀英丸ゴシック L", "Shuei MaruGo L";
}

.header_logo img {
    width: 100%;
    max-width: 421px;
    margin-top: 5px;
}

.header_logo a:hover {
    text-decoration: none;
}

.header_right {
    float: right;
    width: 140px;
    font-size: 0;
    line-height: 0;
    letter-spacing: 0;
    margin-top: 32px;
    margin-right: 25px;
    margin-left: 40px;
}

.header_inq a {
    font-size: 14px;
    font-family: "ヒラギノ角ゴ W6 JIS2004", "Hiragino Kaku Gothic W6 JIS2004 ";
    background: #DA0048;
    color: #fff;
    line-height: 1;
    display: block;
    text-align: center;
    padding: 19px 20px 17px 10px;
    border-radius: 50px;
    letter-spacing: 0.15em;
    position: relative;
}

.header_inq a:before {
    position: absolute;
    content: "› ";
    display: block;
    width: 12px;
    height: 12px;
    right: 17px;
    top: 50%;
    line-height: 12px;
    font-size: 20px;
    margin-top: -7px;
    text-align: right;
    letter-spacing: 0px;
    font-weight: bold;
}

.header_inq a:hover {
    opacity: 0.7;
}

/* gnav */
#header .header_menu {
    float: right;
}

#header .header_menu .g_nav {
    display: flex;
}



#header .header_menu .g_nav>li>a,
#header .header_menu .g_nav>li>span {
    display: flex;
    align-items: center;
    text-align: center;
    vertical-align: middle;
    color: #464646;
    line-height: 1.2;
    cursor: pointer;
    font-size: 16px;
    letter-spacing: 0.1em;
    height: 115px;
    margin-left: 32px;
    -moz-transition-duration: 0.7s;
    -o-transition-duration: 0.7s;
    -webkit-transition-duration: 0.7s;
    transition-duration: 0.7s;
    position: relative;
    padding-bottom: 0px;
    box-sizing: border-box;
    font-family: "秀英丸ゴシック B", "Shuei MaruGo B";
}

#header .header_menu .g_nav>li>a:hover,
#header .header_menu .g_nav>li>span:hover {
    opacity: 0.7;
}

#header .header_menu .g_nav>li:first-child a {
    margin-left: 0;
}

#header .header_menu .g_nav>li>a>span,
#header .header_menu .g_nav>li>span>span {
    display: block;
    margin: 0 auto;
}

#header .header_menu .g_nav>li>span:hover+dl,
#header .header_menu .g_nav>li>span ul:hover {
    pointer-events: auto;
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
    opacity: 1;
}

#header .header_menu .g_nav>li>span:hover {
    position: relative;
}

#header .header_menu .g_nav>li dl {
    pointer-events: none;
    position: absolute;
    top: 115px;
    left: 0;
    display: block;
    width: 100%;
    padding: 38px 30px 30px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background: #deeaf1;
    -moz-transition-duration: 0.6s;
    -o-transition-duration: 0.6s;
    -webkit-transition-duration: 0.6s;
    transition-duration: 0.6s;
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
    opacity: 0;
    z-index: 99;
    background: #deeaf1;

}

#header .header_menu .g_nav>li dl dt {
    max-width: 1080px;
    margin: 0 auto 10px;
    font-size: 18px;
    line-height: 1.2;
    font-family: "秀英丸ゴシック B", "Shuei MaruGo B";
    color: #464646;
}

#header .header_menu .g_nav>li dl ul {
    max-width: 1080px;
    margin: 0 auto;
}

#header .header_menu .g_nav>li dl li {
    display: inline-block;
    margin-right: 30px;
    line-height: 1.3;
    position: relative;
    font-size: 16px;
}

#header .header_menu .g_nav>li dl li:before {
    color: #007cc6;
    font-size: 14px;
    margin-right: 8px;
    display: inline-block;
    vertical-align: middle;
    margin-top: -4px;
}

#header .header_menu .g_nav>li dl li:last-child {
    margin-right: 0;
}

#header .header_menu .g_nav>li dl li a {
    color: #333;
    vertical-align: top;
}

#header .header_menu .g_nav>li dl a:hover {
    opacity: 1;
    color: #007cc6;
}

#header .header_menu .g_nav>li dl:hover {
    pointer-events: auto;
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
    opacity: 1;
}

@media screen and (min-width: 768px) {


    #header .header_menu .g_nav>li dl {
        pointer-events: none;
    }

    #header .header_menu .g_nav>li>a:hover:after,
    #header .header_menu .g_nav>li>span:hover:after， #header .header_menu .g_nav>li.hover>a:after,
    #header .header_menu .g_nav>li.hover>span:after {
        display: block;
        content: "";
        width: 100%;
        height: 3px;
        background: #5e80ae;
        position: absolute;
        left: 0;
        bottom: 0;
        text-decoration: none;
    }
}

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

    .header_right {
        width: 120px;
        margin-top: 32px;
        margin-right: 20px;
        margin-left: 20px;
    }

    .header_inq a {
        padding: 16px 20px 14px 10px;
    }

    #header .header_menu .g_nav>li>a,
    #header .header_menu .g_nav>li>span {
        margin-left: 13px;
    }


}

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

    #header .header_menu .g_nav>li>a,
    #header .header_menu .g_nav>li>span {
        font-size: 14px;
        margin-left: 10px;
        height: 100px;
    }

    .header_right {
        margin-top: 30px;
        margin-right: 10px;
        margin-left: 15px;
    }

    .header_inq a {
        padding: 13px 20px 12px 10px;
        font-size: 13px;
    }

    .header_logo {
        float: left;
        width: 310px;
        margin: 20px 0 0 20px;
    }

    .header_logo img {
        margin-top: 2px;
    }

    .header_logo .logo_txt {
        font-size: 10px;

    }

    .logo_blank {
        height: 10px;
    }

    #header .header_menu .g_nav>li dl {
        top: 100px;
    }
}

@media screen and (max-width: 959px) {
    .header_logo {
        float: left;
        width: 240px;
        margin: 20px 0 0 20px;
    }

    #header .header_menu .g_nav>li>a,
    #header .header_menu .g_nav>li>span {
        font-size: 13px;
        letter-spacing: 0;
    }

    .header_inq a {
        padding: 13px 12px 12px 5px;
        font-size: 12px;
    }

    .header_right {
        width: 100px;
        margin-left: 11px;
    }

    .header_inq a:before {
        right: 10px;
    }
}

/*@media screen and (max-width: 1060px) and (min-width: 768px) {
	#header .header_menu {
		float: none;
		clear: both;
		width: 100%;
	}
	#header .header_menu .g_nav > li {
		width: 20%;
	}
	#header .header_menu .g_nav > li > a,
	#header .header_menu .g_nav > li > span {
		text-align: center;
		margin-right: 0;
		height: 80px;
	}
	#header .header_menu .g_nav > li dl {
		top: 146px;
	}
}
@media screen and (max-width: 1200px) {
	#header h1 {
    width: 290px;
    margin: 24px 0 0px 30px;
}
#header .header_menu .g_nav > li > a, #header .header_menu .g_nav > li > span {
    margin-left: 35px;
    }
	}
@media screen and (max-width: 959px) {
	#header h1 {
    width: 250px;
    margin: 28px 0 0px 20px;
}	
	#header .header_menu .g_nav > li:last-child {
    margin-right: 25px;
}
#header .header_menu .g_nav > li > a, #header .header_menu .g_nav > li > span {
    margin-left: 15px;
    }
}*/


@media screen and (max-width: 767px) {
    #header {
        position: absolute;
        top: 0 !important;
        background: #FFFFFF;
    }

    .header_right {
        display: none;
    }

    /* logo */
    .header_logo {
        margin: 17px 0 0 20px;
        width: 300px;
    }

    .header_logo img {
        margin-top: 0px;
    }

    .logo_blank {
        height: 12px;
    }

    .header_logo img {
        width: 100%;
        max-width: 100%;
    }

    .header_logo a:hover {
        text-decoration: none;
    }

    #header .toggleMenu {
        display: block;
        background: none;
    }

    .toggleMenu {
        float: right;
        width: 40px;
        height: 70px;
        background: none;
        text-align: left;
        color: #fff;
        cursor: pointer;
        padding-right: 15px;
        padding-left: 1px;
        background: none;
        padding-left: 15px;
    }

    .menu-trigger,
    .menu-trigger span {
        display: inline-block;
        transition: all .4s;
        box-sizing: border-box;
    }

    .menu-trigger {
        position: relative;
        width: 40px;
        height: 30px;
        margin: 30px auto 0;
        text-align: center;
    }

    .menu-trigger:after {
        content: " ";
        display: block;
        line-height: 1;
        font-size: 10px;
        letter-spacing: 0.15em;
        font-weight: bold;
        margin-top: 30px;
        color: #fff;
        margin-left: 1px;
    }

    .menu-trigger span {
        position: absolute;
        left: 0;
        width: 100%;
        height: 4px;
        background-color: #464646;
        border-radius: 50px;
    }

    .menu-trigger span:nth-of-type(1) {
        top: 0;
    }

    .menu-trigger span:nth-of-type(2) {
        top: 13px;
    }

    .menu-trigger span:nth-of-type(3) {
        bottom: 0;
    }

    .toggleMenu.active .menu-trigger span:nth-of-type(1) {
        -webkit-transform: translateY(10px) rotate(-45deg);
        transform: translateY(10px) rotate(-45deg);
        top: 4px;
    }

    .toggleMenu.active .menu-trigger span:nth-of-type(2) {
        opacity: 0;
    }

    .toggleMenu.active .menu-trigger span:nth-of-type(3) {
        -webkit-transform: translateY(-10px) rotate(45deg);
        transform: translateY(-10px) rotate(45deg);
        bottom: 2px;
    }

    #header .right_box,
    #header .g_nav {
        display: none;
    }

    #header .header_menu {
        float: none;
        clear: both;
        margin-right: 0;
    }

    #header .header_menu .g_nav {
        display: block;
        text-align: center;
        background: #fff;
    }

    #header .header_menu .g_nav>li {
        position: relative;
        border-bottom: 1px solid #888888;
        border-left: none;
    }

    #header .header_menu .g_nav>li:last-child {
        margin-right: 0;
        border-bottom: 0;
    }

    #header .header_menu .g_nav>li>a,
    #header .header_menu .g_nav>li>span {
        width: 100%;
        padding: 18px 50px 18px 20px;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        display: block;
        text-align: left;
        height: auto;
        background: #fff;
        color: #5D5D5D !important;
        font-size: 15px;
        margin: 0;
    }

    #header .header_menu .g_nav>li>a span,
    #header .header_menu .g_nav>li>span span {
        margin: 0;
    }

    #header .header_menu .g_nav>li>a:hover,
    #header .header_menu .g_nav>li>span:hover {
        background: #A574AF;
        opacity: 1;
    }

    #header .header_menu .g_nav>li>span:after {
        content: "";
        position: absolute;
        top: 50%;
        right: 20px;
        width: 16px;
        height: 16px;
        border-bottom: 2px solid #220201;
        border-left: 2px solid #220201;
        -moz-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
        -moz-transition-duration: 0.2s;
        -o-transition-duration: 0.2s;
        -webkit-transition-duration: 0.2s;
        transition-duration: 0.2s;
        margin-top: -14px;
    }

    #header .header_menu .g_nav>li.hover>span:after {
        -moz-transform: rotate(135deg);
        -ms-transform: rotate(135deg);
        -webkit-transform: rotate(135deg);
        transform: rotate(135deg);
        margin-top: -3px;
    }

    #header .header_menu .g_nav>li:first-child a {
        color: #fff;
        padding: 18px 50px 18px 20px;
        font-size: 15px;
    }


    #header .header_menu .g_nav>li dl {
        position: relative;
        top: 0;
        background: none;
        padding: 0;
    }

    #header .header_menu .g_nav>li dl li:before {
        display: none;
    }

    #header .header_menu .g_nav>li dl li {
        padding-left: 0;
    }

    #header .header_menu .g_nav>li dt {
        display: none;
    }

    #header .header_menu .g_nav>li ul {
        position: inherit;
        display: none;
        top: 0;
        padding: 0;
    }

    #header .header_menu .g_nav>li ul li {
        display: block;
        margin-right: 0;
        border-top: 1px solid #888888;
    }

    #header .header_menu .g_nav>li ul li a {
        position: relative;
        display: block;
        padding: 15px 20px 12px;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        text-align: left;
        background: #e0cee3;
    }

    #header .header_menu .g_nav>li ul li a:hover {
        text-decoration: none;
    }

    #header .header_menu .g_nav>li.hover ul {
        display: block;
        filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
        opacity: 1;
    }

    /*スマホ時サブメニューが消える現象を回避*/
    #header .header_menu .g_nav>li>span {
        position: relative;
    }

    #header .header_menu .g_nav>li.hover>span+dl,
    #header .header_menu .g_nav>li>span:hover+dl {
        pointer-events: auto;
        opacity: 1;
    }
}

@media screen and (max-width: 413px) {
    .header_logo {
        margin: 16px 0 0 12px;
        width: 235px;
    }
}






/*------------------------------------*\
    $FOOTER
\*------------------------------------*/
.footer {
    overflow: hidden;
    background-color: #EDEDED;
}

.footer__intro {
    background-repeat: no-repeat;
    background-size: cover;
    padding-inline: var(--pInline);
}

@media screen and (min-width: 768px) {
    .footer__intro {
        padding-top: 105px;
        padding-bottom: 100px;
        background-image: url(../../../images/assets_machines/desk/bg-footer-pc.jpg);
    }
}

@media screen and (max-width: 767px) {
    .footer__intro {
        padding-top: 51px;
        padding-bottom: 57px;
        background-image: url(../../../images/assets_machines/desk/bg-footer-sp.jpg);
    }
}

.footer__intro__inner {
    width: var(--content);
    margin-inline: auto;
    color: var(--primaryColor);
}

@media screen and (min-width: 768px) {
    .footer__intro__inner {
        display: grid;
        grid-template-columns: 1fr calc(100% * (396 / 960));
    }
}

@media screen and (max-width: 767px) {
    .footer__intro__inner {
        text-align: center;
    }
}

@media screen and (max-width: 767px) {
    .footer__intro__content {
        filter: drop-shadow(0 0 1px white) drop-shadow(0 0 2px white) drop-shadow(0 0 4px white) drop-shadow(0 0 5px white);
    }
}

.footer__intro__description {
    font-family: var(--font600);
    font-weight: 600;
}

@media screen and (min-width: 768px) {
    .footer__intro__description {
        margin-bottom: 16px;
        font-size: 2.3rem;
        line-height: calc(31.333 / 23);
        letter-spacing: .06em;
    }
}

@media screen and (max-width: 767px) {
    .footer__intro__description {
        margin-bottom: 12px;
        font-size: 1.4rem;
        line-height: calc(20 / 14);
        letter-spacing: .04em;
    }
}

.footer__intro__tel {
    background-image: url(../../../images/assets_machines/desk/icon-tel.svg);
    background-repeat: no-repeat;
    background-position: 0 50%;
}

@media screen and (min-width: 768px) {
    .footer__intro__tel {
        padding-left: 88px;
        background-size: 76px;
    }
}

@media screen and (max-width: 767px) {
    .footer__intro__tel {
        width: fit-content;
        margin-inline: auto;
        padding-left: 51px;
        background-size: 43px;
    }
}

.footer__intro__tel a {
    display: block;
    font-family: var(--fontEN2014);
    font-weight: 400;
    line-height: 1;
}

@media screen and (min-width: 768px) {
    .footer__intro__tel a {
        font-size: 7.5rem;
        margin-bottom: 6px;
    }
}

@media screen and (max-width: 767px) {
    .footer__intro__tel a {
        width: fit-content;
        font-size: 4.2rem;
    }
}

.footer__intro__tel p {
    font-family: var(--font500);
    font-weight: 500;
    line-height: 1;
}

@media screen and (min-width: 768px) {
    .footer__intro__tel p {
        font-size: 2.4rem;
    }

    .footer__intro__tel p strong {
        font-size: 2.8rem;
    }
}

@media screen and (max-width: 767px) {
    .footer__intro__tel p {
        width: fit-content;
        font-size: 1.4rem;
    }

    .footer__intro__tel p strong {
        font-size: 1.7rem;
    }
}


.footer__intro__btn {}

.footer__intro__btn .btn-area__item.is-deco::before {
    top: -22px;
    left: 13.6213px;
}

.footer__intro__btn .btn-area__item img {
    width: calc(100% + (100% * (59 / 396)));
    max-width: 100vw;
    min-width: 100%;
    margin-top: calc(-100% * (22 / 396));
    margin-left: calc(-100% * (22 / 396));
    margin-bottom: calc(-100% * (60 / 396));
}

.footer__intro__btn .btn-area__item+.btn-area__item {
    margin-top: calc(100% * (22.47 / 396));
}


.footer__content {
    padding-inline: var(--pInline);
}

@media screen and (min-width: 768px) {
    .footer__content {
        padding-top: 58px;
        padding-bottom: 64px;
    }
}

@media screen and (max-width: 767px) {
    .footer__content {
        padding-top: 32px;
        padding-bottom: 36px;
        color: var(--neutralColor);
    }
}

.footer__content__inner {
    max-width: var(--content);
    margin-inline: auto;
}

.footer__nav {
    border-bottom: 1px solid var(--neutralColor);
}

@media screen and (min-width: 768px) {
    .footer__nav {
        padding-bottom: 38px;
        margin-bottom: 20px;
    }
}

@media screen and (max-width: 767px) {
    .footer__nav {
        padding-bottom: 20px;
        margin-bottom: 22px;
    }
}

.footer__nav__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    row-gap: 8px;
}

@media screen and (max-width: 767px) {
    .footer__nav__list {
        width: 240px;
        margin-inline: auto;
    }
}

.footer__nav__item {
    line-height: 1.2;
    letter-spacing: .1em;
}

@media screen and (min-width: 768px) {
    .footer__nav__item {
        font-size: 1.2rem;
    }

    .footer__nav__item:not(:last-of-type)::after {
        content: "　|　";
    }
}

@media screen and (max-width: 767px) {
    .footer__nav__item {
        font-size: 1.1rem;
    }

    .footer__nav__item:not(:nth-of-type(3n))::after {
        content: "　|　";
    }
}


.footer__details {
    display: grid;
    align-items: center;
}

@media screen and (min-width: 768px) {
    .footer__details {
        max-width: 792px;
        grid-template-areas:
            'logo description name'
            'logo description btn';
        grid-template-columns: calc(100% * (239 / 792)) calc(100% * (288 / 792)) 1fr;
        grid-column-gap: calc(100% * (26 / 792));
        margin-inline: auto;
    }
}

@media screen and (max-width: 767px) {
    .footer__details {
        justify-content: space-between;
        max-width: 310px;
        margin-inline: auto;
        grid-template-areas:
            'description description'
            'logo btn'
            'name btn';
        grid-template-columns: calc(100% * (120 / 310)) calc(100% * (145 / 310));
    }
}

.footer__logo {
    grid-area: logo
}

.footer__description {
    grid-area: description
}

.footer__name {
    grid-area: name
}

.footer__btn {
    grid-area: btn
}

@media screen and (max-width: 767px) {
    .footer__logo {
        margin-bottom: 2px
    }
}

@media screen and (min-width: 768px) {
    .footer__description {
        font-size: 1.4rem;
        line-height: calc(24 / 14);
    }
}

@media screen and (max-width: 767px) {
    .footer__description {
        margin-bottom: 11px;
        font-size: 1.1rem;
        line-height: calc(15 / 11);
    }
}

.footer__name {
    white-space: nowrap
}

@media screen and (min-width: 768px) {
    .footer__name {
        width: calc(100% * (203 / 213));
        margin-left: auto;
        margin-bottom: 12px;
        font-size: 1.5rem;
    }
}

@media screen and (max-width: 767px) {
    .footer__name {
        transform: scale(.75);
        transform-origin: 0 50%;
        font-size: 1.0rem;
    }
}

.footer__btn {
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 99px;
    background-color: var(--btnColor);
    color: white;
}

@media screen and (min-width: 768px) {
    .footer__btn {
        width: calc(100% * (203 / 213));
        height: 55px;
        margin-left: auto;
        font-size: 1.2rem;
    }
}

@media screen and (max-width: 767px) {
    .footer__btn {
        height: 32px;
        font-size: 0.9rem;
    }
}





/*------------------------------------*\
    $CONTENT
\*------------------------------------*/
.kv {
    padding-inline: var(--pInline);
    color: var(--neutralColor);
    overflow: hidden;
}
.less864{
        display: none;
    }
@media screen and (min-width: 768px) {
    .kv {
        margin-top: 45px;
        padding-bottom: 350px;
    }
	.desk-form02{
        display: none;
    }
	.desk-form01{
        position: absolute;
    top: 10%;
    right: -20%;
    width: 400px;
		border-radius: 5px;
	border: 2px solid #118acc;
    background-color: #f4f4f4;
    }
	.desk-form01 h2{
   text-align: center;
	background-color: #118acc;
	color: #fff;
	font-size: 18px;
	font-weight: 500;
		padding: 5px 0;
}
}

@media screen and (min-width: 1201px) {
    .kv {
        margin-top: 45px;
    }
}
@media screen and (max-width: 1023px) {
        .desk-form01 {
        position: absolute;
        top: 6%;
        right: -2%;
        width: 350px;
    }
	 .kv {
padding: 0 40px 400px;
    }
	.less1023{
        display: block;
    }
}
	
@media screen and (max-width: 767px) {
    .kv {
        margin-top: 68px;
        padding-bottom: 270px;
    }
	.desk-form02{
        display: block;
		border-radius: 5px;
	border: 2px solid #118acc;
    background-color: #f4f4f4;
		max-width: 350px;
		width: 100%;
		margin: 0 auto;
    }
	.desk-form02 h2{
   text-align: center;
	background-color: #118acc;
	color: #fff;
	font-size: 18px;
	font-weight: 500;
padding: 5px 0;
}
	.desk-form01{
        display: none;
    }
}

.kv__inner {
    position: relative;
    z-index: 1;
    width: var(--content);
    margin-inline: auto;
}

.kv__inner::before {
    content: "";
    position: absolute;
    z-index: -1;
    background-repeat: no-repeat;
    background-size: contain;
}

@media screen and (min-width: 768px) {
    .kv__inner {
        padding-top: 70px;
    }

    .kv__inner::before {
        aspect-ratio: 1897 / 1514;
        top: 56%;
        right: calc(-100% * (-100 / 960));
        width: calc(70% * (947 / 960));
        background-image: url(../../../images/assets_machines/desk/kv-img-pc.png);
    }
}
@media screen and (max-width: 1023px) {
  .kv__inner::before {
        top: 94%;
        right: calc(-380% * (-100 / 960));
        width: calc(70% * (947 / 960)); 
	  }
	    .kv__inner {
        padding-top: 30px;
    }
}
@media screen and (max-width: 767px) {
    .kv__inner {
        padding-top: 36px;
    }

    .kv__inner::before {
        aspect-ratio: 1159 / 1070;
        top: 0;
        right: 0;
        max-width: 1000px;
        width: 130%;
        background-image: url(../../../images/assets_machines/desk/kv-img-pc.png);
        left: 0;
        margin: auto 0 auto -50px;
        bottom: -770px;
    }
	.kv {
        padding-left: 20px;
		padding-right: 20px;
		overflow: hidden;
    }
}

.kv__title {
    width: fit-content
}

@media screen and (min-width: 768px) {
    .kv__title {
        margin-bottom: 46px;
    }
}

@media screen and (max-width: 767px) {
    .kv__title {
        margin-bottom: 28px;
    }
}

.kv__title span {
    display: block;
    font-family: var(--font500);
    font-weight: 500;
}

@media screen and (min-width: 768px) {
    .kv__title span {
        font-size: 2.8rem;
    }
}
@media screen and (max-width: 1023px) {
	    .kv__title span{
        font-size: 2.2rem;
    }
	.kv__title {
        margin-bottom: 28px;
    }
}
@media screen and (max-width: 767px) {
    .kv__title span {
        font-size: 1.8rem;
    }
}

.kv__title strong {
    position: relative;
    display: block;
    width: max-content;
    color: var(--primaryColor);
    font-family: var(--font600);
    font-weight: 600;
    line-height: 1;
}

.kv__title strong::before,
.kv__title strong::after {
    content: "";
    position: absolute;
    top: 50%;
    border-radius: 99px;
    background-color: var(--primaryColor);
}

.kv__title strong::before {
    left: 0;
    transform: translate(-100%, -50%);
}

.kv__title strong::after {
    right: 0;
    transform: translate(100%, -50%);
}

@media screen and (min-width: 768px) {
    .kv__title strong {
        margin-inline: auto;
        font-size: 3.6rem;
    }

    .kv__title strong::before,
    .kv__title strong::after {
        width: 30px;
        height: 2px;
    }
}

@media screen and (max-width: 1023px) {
.kv__title strong {
        font-size: 3rem;
    }
}
@media screen and (max-width: 767px) {
    .kv__title strong {
        margin-left: 16px;
        font-size: 2.2rem;
    }

    .kv__title strong::before,
    .kv__title strong::after {
        width: 16px;
        height: 1px;
    }
}

.kv__catchphrase {
    white-space: nowrap;
    -webkit-font-feature-settings: normal;
}

@media screen and (min-width: 768px) {
    .kv__catchphrase {
        margin-bottom: 34px;
        font-size: 4.1rem;
        letter-spacing: -0.1em;
    }

    .kv__catchphrase strong {
        font-size: 5.445rem;
		letter-spacing: 0;
    }
}
@media screen and (max-width: 1023px) {
.kv__catchphrase {
        font-size: 3rem;
	margin-bottom: 24px;
    }
	.kv__catchphrase strong {
        font-size: 4.545rem;
    }
	}
@media screen and (max-width: 767px) {
    .kv__catchphrase {
        margin-bottom: 16px;
        font-size: 2.35rem;
    }

    .kv__catchphrase strong {
        font-size: 3.05rem;
    }
}

.kv__catchphrase__wrap {
    position: relative;
    display: inline-block;
    letter-spacing: -0.15em;
    padding-right: 0.15em;
}

.kv__catchphrase__wrap::before,
.kv__catchphrase__wrap::after {
    content: "";
    aspect-ratio: 20.61 / 16.27;
    position: absolute;
    top: 8px;
    width: 21px;
    background-repeat: no-repeat;
    background-size: contain;
}

.kv__catchphrase__wrap::before {
    right: 100%;
    background-image: url(../../../images/assets_machines/desk/icon-quote-before.svg);
}

.kv__catchphrase__wrap::after {
    left: 100%;
    background-image: url(../../../images/assets_machines/desk/icon-quote-after.svg);
}

@media screen and (min-width: 768px) {

    .kv__catchphrase__wrap::before,
    .kv__catchphrase__wrap::after {
        width: 20px;
    }
}
@media screen and (max-width: 1023px) {
	.kv__catchphrase__wrap::before,
    .kv__catchphrase__wrap::after {
        width: 15px;
    }
}
@media screen and (max-width: 767px) {

    .kv__catchphrase__wrap::before,
    .kv__catchphrase__wrap::after {
        width: 11px;
    }
}



.kv__text {
    font-family: var(--font600);
    font-weight: 600;
}

.kv__text span {
    font-family: var(--font700);
    font-weight: 700;
}

.kv__text strong {
    background-image: linear-gradient(var(--primaryColor), var(--primaryColor));
    background-repeat: no-repeat;
    background-position: 0 98%;
    background-size: 100% 1px;
}

@media screen and (min-width: 768px) {
    .kv__text {
        font-size: 1.8rem;
        line-height: 1.9;
    }
}
@media screen and (max-width: 1023px) {
	.kv__text {
        font-size: 1.6rem;
    }
}	
@media screen and (max-width: 767px) {
    .kv__text {
        font-size: 1.3rem;
        line-height: calc(26 / 14);
    }
}


.kv__btn {
    position: relative;
    display: none;
}

.kv__btn::before {
    content: "";
    position: absolute;
    background-repeat: no-repeat;
    background-size: contain;
    pointer-events: none;
}

@media screen and (min-width: 768px) {
    .kv__btn {
        width: 442px;
        margin-inline: auto;
        margin-top: 44px;
    }

    .kv__btn::before {
        aspect-ratio: 339 / 267;
        top: 50%;
        left: -108px;
        transform: translateY(-50%);
        width: 169px;
        background-image: url(../../../images/assets_machines/desk/kv-btn-pc-decoration.png);
    }
}

@media screen and (max-width: 767px) {
    .kv__btn {
        margin-top: 230px;
		display: block;
    }

    .kv__btn::before {
        aspect-ratio: 382 / 452;
        top: -15.58575px;
        left: -10.86795px;
        width: 79.4659px;
        background-image: url(../../../images/assets_machines/desk/kv-btn-sp-decoration.png);
    }

    .kv__btn::after {
        content: "";
        aspect-ratio: 382 / 452;
        position: absolute;
        top: -128px;
        left: 0px;
        z-index: -10;
        width: 84px;
        background-image: url(../../../images/assets_machines/desk/kv-img-sp-decoration.png);
        background-repeat: no-repeat;
        background-size: contain;
        pointer-events: none;
    }
}




/* Introduction */
.intro {
    max-width: 940px;
    margin-inline: auto;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
}

@media screen and (min-width: 768px) {
    .intro {
        transform: translateZ(0);
        padding-bottom: 44px;
        border-radius: 30px;
        background-image: url(../../../images/assets_machines/desk/bg-introduction-pc.png);
        filter: drop-shadow(10px 10px 10px rgb(13 38 56 / .18));
    }
}

@media screen and (max-width: 767px) {
    .intro {
        background-image: url(../../../images/assets_machines/desk/bg-introduction-sp.png);
		padding-top: 40px;
		padding-left: 15px;
        padding-right: 15px;
    }
}

.intro__title {
    margin-inline: auto;
	margin-top: 40px;
}

@media screen and (min-width: 768px) {
    .intro__title {
        width: 100%;
        margin-bottom: -20px;
    }

    .intro__title img {
        width: 100%;
        margin-top: -20px;
    }
}

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

.intro__content {}

@media screen and (min-width: 768px) {
    .intro__content {
        display: flex;
        justify-content: center;
        column-gap: calc(100% * (24 / 804));
        padding-inline: calc(100% * (68 / 940));
    }
}

@media screen and (max-width: 767px) {
    .intro__content {
        padding-inline: calc(100% * (42 / 375));
        padding-bottom: 31px;
    }
}

.intro__block {
    display: grid;
}

@media screen and (max-width: 767px) {
    .intro__block+.intro__block {
        margin-top: 13px
    }
}

.intro__block picture,
.intro__block p {
    grid-area: 1 / -1;
}

.intro__block p {
    width: fit-content;
    padding-top: 70%;
    margin-inline: auto;
    font-family: var(--font500);
    font-weight: 500;
}

@media screen and (min-width: 768px) {
    .intro__block p {
        font-size: 2.0rem;
        line-height: 1.4;
    }
}

@media screen and (max-width: 767px) {
    .intro__block p {
        font-size: 1.5rem;
        line-height: 1.5;
    }
}




/* Worries */
.worry {
    position: relative;
    z-index: 1;
}

.worry__head {
    position: relative;
    z-index: 1;
    padding-inline: var(--pInline);
    background-image: linear-gradient(rgb(0 0 0 / .38), rgb(0 0 0 / .38));
    background-repeat: no-repeat;
    background-position: 0 0;
}

.worry__head::before {
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    background-repeat: no-repeat;
    background-size: 100% 100%;
}

@media screen and (min-width: 768px) {
    .worry__head {
        min-height: 468px;
        padding-top: 63px;
        padding-bottom: 45px;
        margin-top: -278px;
        background-size: 100% 278px;
    }

    .worry__head::before {
        top: 278px;
        height: 190px;
        background-image: url(../../../images/assets_machines/desk/bg-worry-deco-pc.png);
    }
}

@media screen and (max-width: 767px) {
    .worry__head {
        min-height: 442px;
        padding-top: 44px;
        margin-top: -342px;
        background-size: 100% 342px;
    }

    .worry__head::before {
        top: 342px;
        height: 100px;
        background-image: url(../../../images/assets_machines/desk/bg-worry-deco-sp.png);
    }
}

.worry__title {
    color: white;
    --titleImg: url(../../../images/assets_machines/desk/title-worries.svg);
    --titleAccent: #E0A3BB;
}

@media screen and (min-width: 768px) {
    .worry__title {
        margin-bottom: 32px
    }

    .worry__title::before {
        width: 100%;
        height: 26px;
    }

    .worry__title strong {
        font-size: 5.4rem;
        line-height: calc(57.5 / 54);
    }
}

@media screen and (max-width: 767px) {
    .worry__title {
        margin-bottom: 30px
    }

    .worry__title strong {
        font-size: 3.0rem;
        line-height: 1;
    }
}

.worry__list {
    position: relative;
    margin-inline: auto;
    font-family: var(--font600);
    font-weight: 600;
    text-align: center;
}

@media screen and (min-width: 768px) {
    .worry__list {
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
        column-gap: 33px;
        max-width: 756px;
        font-size: 2.2rem;
        line-height: calc(29 / 22);
    }
}

@media screen and (max-width: 767px) {
    .worry__list {
        display: grid;
        grid-template-columns: 160px 160px;
        grid-template-rows: -25px;
        justify-content: space-between;
        max-width: 330px;
        font-size: 1.6rem;
        line-height: 1.25;
    }
}

.worry__item {
    aspect-ratio: 1 / 1;
    border-radius: 100%;
    background-color: var(--neutralColor);
    background-repeat: no-repeat;
    background-position-x: 50%;
    color: white;
}

.worry__item:nth-of-type(1) {
    background-image: url(../../../images/assets_machines/desk/icon-worry-01.svg)
}

.worry__item:nth-of-type(2) {
    background-image: url(../../../images/assets_machines/desk/icon-worry-02.svg)
}

.worry__item:nth-of-type(3) {
    background-image: url(../../../images/assets_machines/desk/icon-worry-03.svg)
}

@media screen and (min-width: 768px) {
    .worry__item {
        padding-top: 128px;
        width: 230px;
        height: 230px;
    }

    .worry__item:nth-of-type(1) {
        background-position-y: 47px;
        background-size: 75.3px;
    }

    .worry__item:nth-of-type(2) {
        background-position-y: 38.5px;
        background-size: 71.3px;
    }

    .worry__item:nth-of-type(3) {
        background-position-y: 54px;
        background-size: 96px;
    }
}

@media screen and (max-width: 767px) {
    .worry__item {
        width: 160px;
        height: 160px;
        margin-inline: auto;
        margin-bottom: -13px;
        padding-top: 93px;
    }

    .worry__item:nth-of-type(1) {
        grid-column: 2 span;
        background-position-y: 33px;
        background-size: 52px;
    }

    .worry__item:nth-of-type(2) {
        background-position-y: 27px;
        background-size: 49.6px;
    }

    .worry__item:nth-of-type(3) {
        background-position-y: 37.5px;
        background-size: 67px;
    }
}


.worry__content {
    background-repeat: no-repeat;
    background-size: cover;
    padding-inline: var(--pInline);
}

@media screen and (min-width: 768px) {
    .worry__content {
        margin-top: -190px;
        padding-top: 304px;
        padding-bottom: 110px;
        background-image: url(../../../images/assets_machines/desk/bg-worry-pc.jpg);
        background-position: 50% 100%;
    }
}

@media screen and (max-width: 767px) {
    .worry__content {
        margin-top: -100px;
        padding-top: 160px;
        padding-bottom: 80px;
        background-image: url(../../../images/assets_machines/desk/bg-worry-sp.jpg);
    }
}

.worry__catchphrase {
    max-width: 760px;
    margin-inline: auto;
    font-family: var(--font600);
    font-weight: 600;
    line-height: 1.25;
}

.worry__catchphrase strong {
    color: var(--primaryColor);
}

@media screen and (min-width: 768px) {
    .worry__catchphrase {
        margin-bottom: 118px;
        font-size: 4.6rem;
    }

    .worry__catchphrase strong {
        font-size: 5.3rem;
    }

    .worry__catchphrase span {
        font-size: 3.4rem;
    }
}

@media screen and (max-width: 767px) {
    .worry__catchphrase {
        padding-inline: 20px;
        margin-bottom: 237px;
        font-size: 2.8rem;
    }
}



/* Birth */
.birth {}

.birth__head {
    padding-top: 88px;
    padding-bottom: 70px;
}

@media screen and (min-width: 768px) {
    .birth__head {
        padding-top: 88px;
        padding-bottom: 70px;
    }
}

@media screen and (max-width: 767px) {
    .birth__head {
        padding-top: 41px;
        padding-bottom: 40px;
    }
}

.birth__title {
    --titleImg: url(../../../images/assets_machines/desk/title-birth.svg);
    --titleAccent: var(--primaryColor);
}

@media screen and (min-width: 768px) {
    .birth__title strong {
        font-size: 4.7rem;
        line-height: calc(57.5 / 47);
    }
}

@media screen and (max-width: 767px) {
    .birth__title strong {
        font-size: 2.9rem;
    }
}


.birth__content {
    padding-inline: var(--pInline)
}

@media screen and (min-width: 768px) {
    .birth__content {
        padding-top: 60px;
        padding-bottom: 40px;
        background-image: url(../../../images/assets_machines/desk/bg-birth-pc.jpg);
        background-repeat: no-repeat;
        background-size: cover;
    }
}

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

.birth__list {
    margin-inline: auto;
}

@media screen and (min-width: 768px) {
    .birth__list {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        grid-column-gap: 3.125%;
        max-width: var(--content);
    }
}

@media screen and (max-width: 767px) {
    .birth__list {
        margin-inline: calc(-100% * (20 / 335));
    }
}

.birth__item {}

@media screen and (max-width: 767px) {
    .birth__item {
        padding-top: 12px;
        padding-inline: calc(100% * (76 / 375));
        padding-bottom: 19px;
        background-repeat: no-repeat;
        background-size: cover;
    }

    .birth__item:nth-of-type(1) {
        background-image: url(../../../images/assets_machines/desk/bg-birth-sp-01.jpg);
    }

    .birth__item:nth-of-type(2) {
        background-image: url(../../../images/assets_machines/desk/bg-birth-sp-02.jpg);
    }

    .birth__item:nth-of-type(3) {
        background-image: url(../../../images/assets_machines/desk/bg-birth-sp-03.jpg);
    }
}

@media screen and (min-width: 768px) {
    .birth__column {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        height: 100%;
    }
}

.birth__column dt {
    aspect-ratio: 297 / 285;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    background-repeat: no-repeat;
    background-position: 50% 0;
    background-size: contain;
    color: white;
    font-family: var(--font700);
    font-weight: 700;
    text-align: center;
}

.birth__item:nth-of-type(1) .birth__column dt {
    background-image: url(../../../images/assets_machines/desk/frame-birth-01.svg);
}

.birth__item:nth-of-type(2) .birth__column dt {
    background-image: url(../../../images/assets_machines/desk/frame-birth-02.svg);
}

.birth__item:nth-of-type(3) .birth__column dt {
    background-image: url(../../../images/assets_machines/desk/frame-birth-03.svg);
}

@media screen and (min-width: 768px) {
    .birth__column dt {
        padding-top: 36px;
        margin-bottom: 26px;
        font-size: 2.2rem;
        line-height: 1.5;
    }
}

@media screen and (max-width: 767px) {
    .birth__column dt {
        padding-top: 18px;
        font-size: 1.5rem;
        line-height: 1.75;
    }
}

.birth__column dd {
    background-repeat: no-repeat;
    background-position: 50% 0;
    background-size: 100%;
}

.birth__column dd a {
    aspect-ratio: 595 / 598;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    color: var(--primaryColor);
    font-family: var(--font700);
    font-weight: 700;
    text-align: center;
}

@media screen and (min-width: 768px) {
    .birth__column dd a {
        padding-bottom: 24px;
        font-size: 2.7rem;
    }
}

@media screen and (max-width: 767px) {
    .birth__column dd a {
        margin-top: -22px;
        padding-bottom: 20px;
        font-size: 2.0rem;
    }
}



/* Select */
.select {
    background-repeat: no-repeat;
    background-position: 50% 0;
    background-size: 100%;
}

@media screen and (min-width: 768px) {
    .select {
        padding-top: 117px;
        padding-bottom: 84px;
        background-image: url(../../../images/assets_machines/desk/bg-select-pc.jpg);
    }
}

@media screen and (max-width: 767px) {
    .select {
        padding-bottom: 75px;
        background-image: url(../../../images/assets_machines/desk/bg-select-sp.jpg);
    }
}

.select__head {
    --titleImg: url(../../../images/assets_machines/desk/title-select.svg);
    --titleAccent: var(--primaryColor);
    margin-bottom: 42px;
    padding-inline: var(--pInline);
}

@media screen and (max-width: 767px) {
    .select__head {
        padding-top: 52px
    }
}

@media screen and (min-width: 768px) {
    .select__title strong {
        font-size: 4.7rem;
        line-height: calc(57.5 / 47);
    }
}

@media screen and (max-width: 767px) {
    .select__title {
        margin-top: 0px;
        margin-bottom: 0px;
    }

    .select__title strong {
        font-size: 2.9rem;
    }
}


.select__content {
    max-width: 1366px;
    margin-inline: auto;
}

.select__item {
    padding-inline: var(--pInline);
    background-repeat: no-repeat;
    background-size: contain;
}

.select__item:nth-of-type(odd) {
    background-position-x: 100%;
}

.select__item:nth-of-type(even) {
    background-position-x: 0;
}

@media screen and (min-width: 768px) {
    .select__item+.select__item {
        margin-top: 52px
    }

    .select__item:nth-of-type(even) {
        padding-left: calc(100% * (398 / 960));
    }

    .select__item:nth-of-type(1) {
        padding-top: calc(100% * (92 / 1366));
        padding-bottom: calc(100% * (40 / 1366));
        background-image: url(../../../images/assets_machines/desk/image-select-01-pc.png);
        background-position-y: 0;
    }

    .select__item:nth-of-type(2) {
        padding-top: calc(100% * (50 / 1366));
        padding-bottom: calc(100% * (40 / 1366));
        background-image: url(../../../images/assets_machines/desk/image-select-02-pc.png);
        background-position-x: calc(100% * (120 / 1366));
        background-position-y: 0;
    }

    .select__item:nth-of-type(n + 3) {
        min-height: 300px;
        padding-top: calc(100% * (32 / 1366));
        background-position-y: 50%;
    }

    .select__item:nth-of-type(3) {
        background-image: url(../../../images/assets_machines/desk/image-select-03-pc.png);
    }

    .select__item:nth-of-type(4) {
        background-image: url(../../../images/assets_machines/desk/image-select-04-pc.png);
    }

    .select__item:nth-of-type(5) {
        background-image: url(../../../images/assets_machines/desk/image-select-05-pc.png);
    }
}

@media screen and (max-width: 767px) {
    .select__item+.select__item {
        margin-top: 39px
    }
}

.select__column {
    max-width: var(--content);
    margin-inline: auto;
}

.select__column dt {
    display: flex;
    align-items: center;
    font-family: var(--font700);
    font-weight: 700;
    color: var(--primaryColor);
    line-height: 1.2;
}

.select__column dt strong {
    color: var(--neutralColor);
}

.select__column dt::before {
    content: "";
    aspect-ratio: 1 / 1;
    display: block;
    border-right: 2px solid var(--primaryColor);
    background-repeat: no-repeat;
}

.select__item:nth-of-type(1) .select__column dt::before {
    background-image: url(../../../images/assets_machines/desk/icon-select-01.svg);
}

.select__item:nth-of-type(2) .select__column dt::before {
    background-image: url(../../../images/assets_machines/desk/icon-select-02.svg);
}

.select__item:nth-of-type(3) .select__column dt::before {
    background-image: url(../../../images/assets_machines/desk/icon-select-03.svg);
}

.select__item:nth-of-type(4) .select__column dt::before {
    background-image: url(../../../images/assets_machines/desk/icon-select-04.svg);
}

.select__item:nth-of-type(5) .select__column dt::before {
    background-image: url(../../../images/assets_machines/desk/icon-select-05.svg);
}

@media screen and (min-width: 768px) {
    .select__column dt {
        margin-bottom: 30px;
        font-size: 3.5rem;
    }

    .select__column dt strong {
        font-size: 4.4rem;
    }

    .select__column dt::before {
        width: 108px;
        padding-right: 20px;
        padding-block: 5px;
        margin-right: 38px;
        background-size: auto calc(100% - 10px);
    }
}

@media screen and (max-width: 767px) {
    .select__column dt {
        margin-bottom: 22px;
        font-size: 1.6rem;
    }

    .select__column dt strong {
        font-size: 2.1rem;
    }

    .select__column dt::before {
        width: 44px;
        margin-block: .75px;
        margin-right: 12px;
        background-size: auto 41.5px;
    }

    .select__item:nth-of-type(n + 3) .select__column dt {
        margin-bottom: 0
    }
}

.select__column dd {}

.select__column dd span {
    color: var(--primaryColor);
}

@media screen and (min-width: 768px) {
    .select__column dd {
        font-family: var(--font500);
        font-size: 2.0rem;
        font-weight: 500;
    }

    .select__column dd span {
        font-family: var(--font700);
        font-weight: 700;
    }
}

@media screen and (max-width: 767px) {
    .select__column dd {
        display: flex;
        align-items: center;
        padding-top: 26px;
        padding-inline: calc(100% * (20 / 335));
        margin-inline: calc(-100% * (20 / 335));
        background-repeat: no-repeat;
        background-size: contain;
        font-family: var(--font400);
        font-size: 1.4rem;
        font-weight: 400;
        line-height: calc(25 / 14);
    }

    .select__column dd span {
        font-family: var(--font600);
        font-weight: 600;
    }

    .select__item:nth-of-type(odd) .select__column dd {
        padding-right: calc(100% * (174 / 335));
        background-position-x: 100%;
    }

    .select__item:nth-of-type(even) .select__column dd {
        padding-left: calc(100% * (174 / 335));
        background-position-x: 0;
    }

    .select__item:nth-of-type(1) .select__column dd {
        background-image: url(../../../images/assets_machines/desk/image-select-01-sp.png);
        background-position-y: 100%;
    }

    .select__item:nth-of-type(2) .select__column dd {
        padding-bottom: 8px;
        background-image: url(../../../images/assets_machines/desk/image-select-02-sp.png);
        background-position-x: var(--pInline);
        background-position-y: 100%;
    }

    .select__item:nth-of-type(n + 3) .select__column dd {
        min-height: 300px;
        padding-block: 58px;
        background-position-y: 50%;
    }

    .select__item:nth-of-type(3) .select__column dd {
        padding-right: calc(100% * (132 / 335));
        background-image: url(../../../images/assets_machines/desk/image-select-03-sp.png);
    }

    .select__item:nth-of-type(4) .select__column dd {
        padding-left: calc(100% * (132 / 335));
        background-image: url(../../../images/assets_machines/desk/image-select-04-sp.png);
    }

    .select__item:nth-of-type(5) .select__column dd {
        padding-right: calc(100% * (132 / 335));
        background-image: url(../../../images/assets_machines/desk/image-select-05-sp.png);
    }
}






.effect {
    background-repeat: repeat-y;
    background-size: 100%;
    padding-inline: var(--pInline);
}

@media screen and (min-width: 768px) {
    .effect {
        padding-top: 122px;
        padding-bottom: 80px;
        background-image: url(../../../images/assets_machines/desk/bg-effect-pc.jpg);
    }
}

@media screen and (max-width: 767px) {
    .effect {
        padding-top: 50px;
        background-image: url(../../../images/assets_machines/desk/bg-effect-sp.jpg);
    }
}

.effect__head {
    --titleImg: url(../../../images/assets_machines/desk/title-effectiveness.svg);
    --titleAccent: var(--primaryColor);
    margin-bottom: 42px;
    padding-inline: var(--pInline);
}

@media screen and (max-width: 767px) {
    .effect__head {
        padding-top: 52px
    }
}

@media screen and (min-width: 768px) {
    .effect__title strong {
        margin-top: 120px;
        margin-bottom: 78px;
        font-size: 4.7rem;
        line-height: calc(57.5 / 47);
    }
}

@media screen and (max-width: 767px) {
    .effect__title strong {
        font-size: 2.9rem;
    }
}


.effect__content {
    width: var(--content);
    margin-inline: auto;
}

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

.effect__list {}

@media screen and (min-width: 768px) {
    .effect__list {
        margin-inline: -10px;
    }
}

.effect__item {}

@media screen and (min-width: 768px) {
    .effect__item {
        display: flex;
        align-items: center;
        column-gap: calc(100% * (40 / 960));
    }

    .effect__item:nth-of-type(odd) {
        flex-direction: row-reverse
    }

    .effect__item+.effect__item {
        margin-top: 42px
    }
}

@media screen and (max-width: 767px) {
    .effect__item {
        aspect-ratio: 710 / 517;
        display: grid;
    }

    .effect__item+.effect__item {
        margin-top: 8px
    }
}

.effect__image {}

@media screen and (min-width: 768px) {
    .effect__image {
        width: calc(100% * (310 / 960));
    }
}

@media screen and (max-width: 767px) {
    .effect__image {
        grid-area: 1 / -1;
    }
}

.effect__column {}

@media screen and (min-width: 768px) {
    .effect__column {
        flex-grow: 1;
        width: 1px;
    }

    .effect__item:nth-of-type(odd) .effect__column {
        padding-left: calc(100% * (38 / 960));
    }

    .effect__item:nth-of-type(even) .effect__column {
        padding-right: calc(100% * (38 / 960));
    }
}

@media screen and (max-width: 767px) {
    .effect__column {
        display: flex;
        flex-direction: column;
        justify-content: center;
        grid-area: 1 / -1;
        padding-top: 8px;
        padding-inline: 28px;
    }
}

.effect__column dt {
    display: flex;
    align-items: center;
    color: var(--primaryColor);
    font-family: var(--font600);
    font-weight: 600;
}

.effect__column dt::before {
    content: "";
    display: block;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: 0 50%;
}

.effect__item:nth-of-type(1) .effect__column dt::before {
    background-image: url(../../../images/assets_machines/desk/icon-effect-01.svg);
}

.effect__item:nth-of-type(2) .effect__column dt::before {
    background-image: url(../../../images/assets_machines/desk/icon-effect-02.svg);
}

.effect__item:nth-of-type(3) .effect__column dt::before {
    background-image: url(../../../images/assets_machines/desk/icon-effect-03.svg);
}

.effect__item:nth-of-type(4) .effect__column dt::before {
    background-image: url(../../../images/assets_machines/desk/icon-effect-04.svg);
}

@media screen and (min-width: 768px) {
    .effect__column dt {
        column-gap: 9px;
        margin-bottom: 22px;
        font-size: 3.0rem;
    }

    .effect__column dt::before {
        width: 62px;
        height: 62px;
    }
}

@media screen and (max-width: 767px) {
    .effect__column dt {
        column-gap: 3px;
        margin-bottom: 13px;
        font-size: 2.3rem;
    }

    .effect__column dt::before {
        width: 37px;
        height: 37px;
    }
}

.effect__column dd {}

@media screen and (min-width: 768px) {
    .effect__column dd {
        font-family: var(--font500);
        font-weight: 500;
        font-size: 1.8rem;
        line-height: calc(35 / 18);
    }
}

@media screen and (max-width: 767px) {
    .effect__column dd {
        font-family: var(--font400);
        font-weight: 400;
        font-size: 1.4rem;
        line-height: calc(25 / 18);
    }
}





/*function*/
.func {
    padding-inline: var(--pInline);
}

@media screen and (min-width: 768px) {
    .func {
        padding-top: 100px;
        padding-bottom: 88px;
    }
}

@media screen and (max-width: 767px) {
    .func {
        padding-top: 60px;
        padding-bottom: 45px;
    }
}

.func__head {
    --titleImg: url(../../../images/assets_machines/desk/title-function.svg);
    --titleAccent: var(--primaryColor);
    margin-bottom: 42px;
    padding-inline: var(--pInline);
}

@media screen and (min-width: 768px) {
    .func__title strong {
        font-size: 4.2rem;
        line-height: calc(57.5 / 42);
    }
}

@media screen and (max-width: 767px) {
    .func__title strong {
        font-size: 2.4rem;
    }
}


.func__list {
    margin-inline: auto;
}

@media screen and (min-width: 768px) {
    .func__list {
        display: flex;
        justify-content: center;
        column-gap: 5%;
        max-width: 698px;
        margin-top: 60px;
        margin-bottom: 64px;
    }
}

@media screen and (max-width: 767px) {
    .func__list {
        display: grid;
        grid-template-columns: repeat(2, 142px);
        justify-content: space-between;
        max-width: 300px;
        margin-top: 40px;
        margin-bottom: 48px;
    }
}

.func__item {
    position: relative;
    aspect-ratio: 43.6 / 48;
    background-repeat: no-repeat;
    background-position: 50% 100%;
    background-size: contain;
}

.func__item:nth-of-type(1) {
    background-image: url(../../../images/assets_machines/desk/icon-func-03.svg)
}

.func__item:nth-of-type(2) {
    background-image: url(../../../images/assets_machines/desk/icon-func-02.svg)
}

.func__item:nth-of-type(3) {
    background-image: url(../../../images/assets_machines/desk/icon-func-01.svg)
}

@media screen and (min-width: 768px) {
    .func__item {
        width: 30%;
    }
}

@media screen and (max-width: 767px) {
    .func__item:first-child {
        grid-column: 2 span;
        width: 142px;
        margin-inline: auto;
        margin-bottom: -6px;
    }
}

.func__item p {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    color: var(--primaryColor);
    font-family: var(--font700);
    font-weight: 700;
    white-space: nowrap;
    text-align: center;
}

@media screen and (min-width: 768px) {
    .func__item p {
        padding-bottom: 6%;
        font-size: 2.4rem;
        line-height: calc(34 / 24);
    }
}

@media screen and (max-width: 767px) {
    .func__item p {
        padding-bottom: 12%;
        font-size: 1.5rem;
        line-height: calc(19 / 15);
    }
}



/*utilization*/
.utilization {
    padding-inline: var(--pInline);
    background-repeat: no-repeat;
    background-position: 50% 0;
    background-size: cover;
}

@media screen and (min-width: 768px) {
    .utilization {
        padding-top: 100px;
        padding-bottom: 100px;
        background-image: url(../../../images/assets_machines/desk/bg-utilization-pc.jpg);
    }
}

@media screen and (max-width: 767px) {
    .utilization {
        padding-top: 50px;
        padding-bottom: 31px;
        background-image: url(../../../images/assets_machines/desk/bg-utilization-sp.jpg);
    }
}

.utilization__head {
    --titleImg: url(../../../images/assets_machines/desk/title-utilization.svg);
    --titleAccent: white;
}

@media screen and (min-width: 768px) {
    .utilization__title strong {
        font-size: 4.2rem;
        line-height: calc(57.5 / 42);
    }
}

@media screen and (max-width: 767px) {
    .utilization__title strong {
        font-size: 2.4rem;
    }
}

@media screen and (min-width: 768px) {
    .utilization__content {
        margin-top: 52px;
    }
}

@media screen and (max-width: 767px) {
    .utilization__content {
        margin-top: 42px;
    }
}

.utilization__list {
    display: grid;
    margin-inline: auto;
}

@media screen and (min-width: 768px) {
    .utilization__list {
        grid-template-columns: repeat(5, 1fr);
        grid-column-gap: 16px;
        grid-row-gap: 22px;
        max-width: 834px;
    }
}

@media screen and (max-width: 767px) {
    .utilization__list {
        grid-template-columns: repeat(2, 1fr);
        grid-gap: 12px;
        max-width: 250px;
    }
}



/*support*/
.support {
    padding-inline: var(--pInline);
}

@media screen and (min-width: 768px) {
    .support {
        padding-top: 100px;
    }
}

@media screen and (max-width: 767px) {
    .support {
        padding-top: 24px;
    }
}

.support__head {
    --titleImg: url(../../../images/assets_machines/desk/title-support.svg);
    --titleAccent: var(--primaryColor);
}

@media screen and (min-width: 768px) {
    .support__title strong {
        font-size: 4.2rem;
        line-height: calc(57.5 / 42);
    }
}

@media screen and (max-width: 767px) {
    .support__title strong {
        font-size: 2.4rem;
    }
}

.support__content {
    position: relative;
    margin-inline: auto;
}

@media screen and (min-width: 768px) {
    .support__content {
        max-width: 980px;
        margin-top: 36px;
    }
}

@media screen and (max-width: 767px) {
    .support__content {
        max-width: 280px;
        margin-top: 24px;
    }
}

@media screen and (min-width: 768px) {
    .support__list {
        display: grid;
        grid-template-columns: repeat(5, 1fr);
        grid-column-gap: 11px;
    }
}

.support__btn {
    aspect-ratio: 65.91 / 101.07;
    position: absolute;
    top: 50%;
    width: 33px;
    background-repeat: no-repeat;
    background-size: contain;
}

.support__btn.is-prev {
    left: 0;
    transform: translate(-50%, -50%);
    background-image: url(../../../images/assets_machines/desk/btn-prev.svg);
}

.support__btn.is-next {
    right: 0;
    transform: translate(50%, -50%);
    background-image: url(../../../images/assets_machines/desk/btn-next.svg);
}

@media screen and (min-width: 768px) {
    .support__btn {
        display: none
    }
}





/*blog*/
.blog {
    padding-inline: var(--pInline);
}

@media screen and (min-width: 768px) {
    .blog {
        padding-top: 100px;
    }
}

@media screen and (max-width: 767px) {
    .blog {
        padding-top: 24px;
    }
}

.blog__head {
    --titleImg: url(../../../images/assets_machines/desk/title-information.svg);
    --titleAccent: var(--primaryColor);
}

@media screen and (min-width: 768px) {
    .blog__title strong {
        font-size: 4.2rem;
        line-height: calc(57.5 / 42);
    }
}

@media screen and (max-width: 767px) {
    .blog__title strong {
        font-size: 2.4rem;
    }
}

.blog__content {
    margin-inline: auto
}

@media screen and (min-width: 768px) {
    .blog__content {
        /* max-width: 980px; */
        max-width: 1000px;
        margin-top: 36px;
    }
}

@media screen and (max-width: 767px) {
    .blog__content {
        position: relative;
        max-width: 280px;
        margin-top: 24px;
        /* padding-inline: 4px; */
    }
}

@media screen and (min-width: 768px) {
    .blog__list {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        column-gap: 10px;
        margin-bottom: 60px;
    }
}

@media screen and (max-width: 767px) {
    .blog__list {
        margin-bottom: 32px;
    }
}

.blog__item {}

@media screen and (max-width: 767px) {
    .blog__item a {
        display: grid;
        grid-template-columns: calc(100% * (135 / 327)) 1fr;
        grid-column-gap: 18px;
    }

    .blog__item+.blog__item {
        margin-top: 30px
    }
}

.blog__thumb {
    aspect-ratio: 237 / 182;
    width: 100%;
    background-color: var(--secondaryColor);
}

.blog__thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@media screen and (min-width: 768px) {
    .blog__thumb {
        margin-bottom: 18px;
    }
}

.blog__text {
    line-height: 1.2;
}

@media screen and (min-width: 768px) {
    .blog__text {
        font-size: 1.4rem;
    }
}

@media screen and (max-width: 767px) {
    .blog__text {
        font-size: 1.3rem;
    }
}


.blog__btn {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-inline: auto;
    border: 1px solid var(--primaryColor);
    border-radius: 99px;
    background-color: white;
    color: var(--primaryColor);
    font-family: var(--font600);
    font-weight: 600;
}

.blog__btn::before,
.blog__btn::after {
    content: "";
    position: absolute;
    transform-origin: 100% 100%;
    height: 2px;
    border-radius: 99px;
    background-color: var(--primaryColor);
}

.blog__btn::after {
    transform: rotate(41deg);
}

@media screen and (min-width: 768px) {
    .blog__btn {
        width: 280px;
        height: 45px;
        font-size: 2.0rem;
    }

    .blog__btn::before,
    .blog__btn::after {
        top: 24px;
        right: 45px;
    }

    .blog__btn::before {
        width: 26px;
    }

    .blog__btn::after {
        width: 11px;
    }
}

@media screen and (max-width: 767px) {
    .blog__btn {
        width: 218px;
        height: 34px;
        font-size: 1.6rem;
    }

    .blog__btn::before,
    .blog__btn::after {
        top: 20px;
        right: 32px;
    }

    .blog__btn::before {
        width: 21px;
    }

    .blog__btn::after {
        width: 8.5px;
    }
}



.nuevo_info {
    font-family: kozuka-gothic-pr6n, sans-serif;
    font-size: 1.4rem;
    line-height: 2;
}

@media screen and (min-width: 768px) {
    .nuevo_info {
        display: flex;
    }
}

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

@media screen and (max-width:767px) {
    .nuevo_wrapper {
        width: 230px;
        margin-inline: auto;
    }
}

.info_box {
    width: 230px;
    text-align: center;
    justify-content: space-between;
}

@media screen and (min-width: 768px) {
    .info_box {
        margin-left: 10px;
        margin-right: 10px;
    }
}

.info_box img {
    max-width: 100%;
    height: auto;
    object-fit: fill;
    width: 100%;
}

.info_date {
    margin-top: 30px;
    width: 90px;
    margin-bottom: 20px;
}

@media screen and (min-width: 768px) {
    .info_date {
        margin-left: 25px;
        margin-right: 25px;
    }
}

@media screen and (max-width:767px) {
    .info_date {
        margin-top: 10px;
    }
}

.info_date p {
    background: #118acc;
    color: #ffffff;
    text-align: center;
    ;
}

.info_url {
    width: 200px;
    height: 200px;
}

@media screen and (min-width: 768px) {
    .info_url {
        margin-left: 25px;
        margin-right: 25px;
    }
}

@media screen and (max-width:767px) {
    .info_url {
        margin-inline: auto;
    }
}




/*movie*/
.movie {
    padding-inline: var(--pInline);
}

@media screen and (min-width: 768px) {
    .movie {
        padding-top: 100px;
    }
}

@media screen and (max-width: 767px) {
    .movie {
        padding-top: 50px;
    }
}

.movie__head {
    --titleImg: url(../../../images/assets_machines/desk/title-movie.svg);
    --titleAccent: var(--primaryColor);
}

@media screen and (min-width: 768px) {
    .movie__title strong {
        font-size: 4.2rem;
        line-height: calc(57.5 / 42);
    }
}

@media screen and (max-width: 767px) {
    .movie__title strong {
        font-size: 2.4rem;
    }
}


.movie__content {
    max-width: 620px;
    margin-inline: auto;
}

@media screen and (min-width: 768px) {
    .movie__content {
        margin-top: 48px;
    }
}

@media screen and (max-width: 767px) {
    .movie__content {
        margin-top: 32px;
    }
}

.movie__main {
    aspect-ratio: 16 / 9;
    width: 100%;
    /* border-radius: 10px; */
    background-color: var(--secondaryColor);
    overflow: hidden;
}

.movie__main :is(iframe, video) {
    width: 100%;
    height: 100%;
}



/*lineup*/
.lineup {
    padding-inline: var(--pInline);
}

@media screen and (min-width: 768px) {
    .lineup {
        padding-top: 100px;
        padding-bottom: 51px;
    }
}

@media screen and (max-width: 767px) {
    .lineup {
        padding-top: 50px;
        padding-bottom: 50px;
    }
}

.lineup__head {
    --titleImg: url(../../../images/assets_machines/desk/title-lineup.svg);
    --titleAccent: var(--primaryColor);
}

@media screen and (min-width: 768px) {
    .lineup__title strong {
        font-size: 4.2rem;
        line-height: calc(57.5 / 42);
    }
}

@media screen and (max-width: 767px) {
    .lineup__title strong {
        font-size: 2.4rem;
    }
}


.lineup__content {
    max-width: var(--content);
    margin-inline: auto;
}

@media screen and (min-width: 768px) {
    .lineup__content {
        margin-top: 48px;
    }
}

@media screen and (max-width: 767px) {
    .lineup__content {
        margin-top: 32px;
    }
}

.lineup__list {}

@media screen and (min-width: 768px) {
    .lineup__list {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        grid-column-gap: calc(100% * (18 / 960));
        row-gap: 24px;
    }
}

@media screen and (min-width: 1024px) {
    .lineup__list {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media screen and (max-width: 767px) {
    .lineup__list {
        margin-bottom: 0px
    }
}

.lineup__item {}

@media screen and (min-width: 768px) {
    .lineup__item {}
}

@media screen and (max-width: 767px) {
    .lineup__item+.lineup__item {
        margin-top: 21px
    }
}

.lineup__accordion {
    aspect-ratio: 651 / 201;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 10px;
    color: white;
    transition: margin-bottom .3s var(--easeOutQuart);
}

.lineup__accordion.is-open {
    margin-bottom: 24px
}

.lineup__item:nth-of-type(1) .lineup__accordion {
    background-image: url(../../../images/assets_machines/desk/btn-accordion-01.png)
}

.lineup__item:nth-of-type(2) .lineup__accordion {
    background-image: url(../../../images/assets_machines/desk/btn-accordion-02.png)
}

.lineup__item:nth-of-type(3) .lineup__accordion {
    background-image: url(../../../images/assets_machines/desk/btn-accordion-03.png)
}

.lineup__accordion::before,
.lineup__accordion::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 17px;
    width: 20px;
    height: 2px;
    background-color: white;
}

.lineup__accordion::before {
    transform: translateY(-50%);
}

.lineup__accordion::after {
    transform: translateY(-50%) rotate(90deg);
}

.lineup__accordion.is-open::after {
    display: none
}

@media screen and (min-width: 768px) {
    .lineup__accordion {
        display: none
    }
}


.lineup__inner {
    background-color: white;
    color: var(--neutralColor);
}

@media screen and (min-width: 768px) {
    .lineup__inner {
        padding-top: 44px;
        padding-inline: calc(100% * (28 / 308));
        padding-bottom: 46px;
        border-radius: 20px;
    }
}

@media screen and (max-width: 767px) {
    .lineup__inner {
        max-width: 275px;
        height: 0;
        margin-inline: auto;
        padding-block: 0;
        padding-inline: 14px;
        border-radius: 10px;
        overflow: hidden;
        transition: all .6s var(--easeOutQuart);
    }

    .lineup__accordion.is-open+.lineup__inner {
        height: 493px;
        padding-block: 40px;
    }
}

.lineup__name {
    font-family: var(--font600);
    font-weight: 600;
    text-align: center;
}

@media screen and (min-width: 768px) {
    .lineup__name {
        margin-bottom: 22px
    }
}

@media screen and (max-width: 767px) {
    .lineup__name {
        margin-bottom: 26px
    }

    .lineup__accordion .lineup__name {
        margin-bottom: 0
    }
}

.lineup__name p {
    line-height: 1;
}

@media screen and (min-width: 768px) {
    .lineup__name p {
        margin-bottom: 7px;
        font-size: 2.0rem;
    }
}

@media screen and (max-width: 767px) {
    .lineup__name p {
        margin-bottom: 6px;
        font-size: 1.7rem;
    }
}

.lineup__name h3 {
    color: var(--primaryColor);
    line-height: 1;
}

.lineup__accordion .lineup__name h3 {
    color: white
}

@media screen and (min-width: 768px) {
    .lineup__name h3 {
        font-size: 2.4rem;
    }
}

@media screen and (max-width: 767px) {
    .lineup__name h3 {
        font-size: 2.1rem;
    }
}


.lineup__image {
    aspect-ratio: 1 / 1;
    margin-inline: auto;
}

.lineup__image img {
    width: 100%
}

@media screen and (min-width: 768px) {
    .lineup__image {
        margin-bottom: 24px;
        width: 195px;
    }
}

@media screen and (max-width: 767px) {
    .lineup__image {
        margin-bottom: 20px;
        width: 166px;
    }
}


@media screen and (min-width: 768px) {
    .lineup__check-list {
        padding-left: 8px;
        margin-bottom: 30px;
    }
}

@media screen and (max-width: 767px) {
    .lineup__check-list {
        margin-bottom: 24px;
    }
}

.lineup__check-item {
    background-image: url(../../../images/assets_machines/desk/icon-check.svg);
    background-repeat: no-repeat;
    background-position: 0 50%;
    font-family: var(--font600);
    font-weight: 600;
    line-height: 1;
    white-space: nowrap;
}

@media screen and (min-width: 768px) {
    .lineup__check-item {
        padding-left: 30px;
        background-size: 21px;
        font-size: 1.6rem;
        line-height: 1.25;
    }

    .lineup__check-item+.lineup__check-item {
        margin-top: 12px
    }
}

@media screen and (max-width: 767px) {
    .lineup__check-item {
        padding-left: 25px;
        background-size: 16px;
        font-size: 1.7rem;
    }

    .lineup__check-item+.lineup__check-item {
        margin-top: 10px
    }

    .lineup__item:not(:nth-of-type(3)) {
        letter-spacing: .06em
    }
}

.lineup__btn {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-inline: auto;
    border: 1px solid var(--primaryColor);
    border-radius: 99px;
    background-color: white;
    color: var(--primaryColor);
    font-family: var(--font600);
    font-weight: 600;
}

.lineup__btn::before,
.lineup__btn::after {
    content: "";
    position: absolute;
    transform-origin: 100% 100%;
    height: 2px;
    border-radius: 99px;
    background-color: var(--primaryColor);
}

.lineup__btn::after {
    transform: rotate(41deg);
}

@media screen and (min-width: 768px) {
    .lineup__btn {
        width: min(252px, 100%);
        height: 42px;
        padding-right: 12px;
        font-size: 1.8rem;
    }

    .lineup__btn::before,
    .lineup__btn::after {
        top: 22px;
        right: calc(100% * (34 / 250));
    }

    .lineup__btn::before {
        width: 21px;
    }

    .lineup__btn::after {
        width: 8.5px;
    }
}

@media screen and (max-width: 767px) {
    .lineup__btn {
        width: 215px;
        height: 35px;
        padding-right: 6px;
        font-size: 1.7rem;
    }

    .lineup__btn::before,
    .lineup__btn::after {
        top: 18px;
        right: 22px;
    }

    .lineup__btn::before {
        width: 17.5px;
    }

    .lineup__btn::after {
        width: 7px;
    }
}





/* modal */
.modal {
    display: none;
    height: 100vh;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 1000;
    color: #fff;
    overflow-y: scroll;
    box-sizing: content-box;
    font-family: kozuka-gothic-pr6n, sans-serif;
}

.modal * {
    box-sizing: content-box;
    line-height: 2;
}

.modal img {
    display: inline;
    vertical-align: bottom;
}

.modal__bg {
    background: rgba(0, 0, 0, 0.6);
    height: 100vh;
    position: fixed !important;
    width: 100%;
    z-index: 990;
}

.modal__content {
    left: 50%;
    padding: 40px 40px 50px 40px;
    position: absolute;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 60%;
    max-width: 900px;
    z-index: 1010;
    border-radius: 10px;
    background: url(../../../images/assets_machines/stand/modal-bg.png) no-repeat center center/cover;
}

@media screen and (max-width: 767px) {
    .modal__content {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        width: 90%;
        max-width: 500px;
        margin-top: 0px;
    }
}

.close-add {
    position: absolute;
    top: 0px;
    right: 16px;
    display: flex;
    align-items: flex-end;
    width: 15px;
    height: 28px;
}

.section-title3 {
    font-size: 2.3rem;
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: 5px;
    text-align: center;
    margin-bottom: 25px;
}

@media screen and (max-width: 767px) {
    .section-title3 {
        font-size: 1.4rem
    }
}

.modal ul {
    margin: 0 auto 40px
}

.modal .ul1 {
    position: relative;
    max-width: 500px;
}

.modal .ul2 {
    position: relative;
    max-width: 550px;
}

.modal li {
    font-size: 1.8rem;
    font-weight: 500;
    text-align: center;
}

@media screen and (max-width: 767px) {
    .modal li {
        font-size: 1.2rem;
        white-space: nowrap;
    }
}

.modal .ul2 li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.modal .ul2 li span {
    width: 20px;
    min-width: 20px;
    margin-right: 10px;
}

@media screen and (max-width: 767px) {
    .modal .ul2 li span {
        margin-right: 4px;
    }
}

.modal .ul2 li span img {
    vertical-align: baseline;
}


.modal .leftIcon {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    left: -60px;
    width: 80px;
}

@media screen and (max-width: 767px) {
    .modal .leftIcon {
        position: absolute;
        top: -45%;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        left: -7%;
        width: 30px;
    }
}

@media screen and (max-width: 1000px) {
    .modal .leftIcon {
        width: 30px;
        left: 0;
    }
}

@media screen and (max-width: 400px) {
    .modal .leftIcon {
        left: -10%;
        width: 25px;
    }
}

.modal .rightIcon {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    right: -60px;
    width: 80px;
}

@media screen and (max-width: 767px) {
    .modal .rightIcon {
        position: absolute;
        top: -45%;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        right: -7%;
        width: 30px;
    }
}

@media screen and (max-width: 1000px) {
    .modal .rightIcon {
        width: 30px;
        right: 0;
    }
}

@media screen and (max-width: 400px) {
    .modal .rightIcon {
        right: -10%;
        width: 25px;
    }
}


.section-btn-modal a {
    font-size: 1.6rem;
    color: #fff;
    font-weight: 500;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    max-width: 250px;
    margin: 0 auto;
    background: #118acc;
    border-radius: 20px;
    position: relative;
    padding: 5px;
    -webkit-transition: .3s;
    transition: .3s;
}

@media screen and (max-width: 767px) {
    .section-btn-modal a {
        font-size: 1.4rem
    }
}

.section-btn-modal a .img {
    max-width: 30px;
    margin-left: 20px;
    position: absolute;
    top: 44%;
    right: 15%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.section-btn-modal a .img img {
    vertical-align: baseline
}

/*0603tuika*/

=====================================*/

/*--------------------------------------
Mainimage
--------------------------------------*/
.home #mainimage {
    padding: 0 4% 4%;
    box-sizing: border-box;
    font-size: 0;
    letter-spacing: 0;
    line-height: 0;
}

.page-id-19326 #mainimage {
    padding: 0 4% 4%;
}

#mainimage img {
    width: 100%;
}

.main_img {
    position: relative;
}

.main_img .btn_txt01 {
    position: absolute;
    width: 24.2%;
    left: 4.9%;
    bottom: 6%;
}

.main_img .btn_txt02 {
    position: absolute;
    width: 24.2%;
    left: 30.2%;
    bottom: 6%;
}

@media screen and (max-width: 767px) {
    .home #mainimage {
        padding: 0;
    }

    .page-id-19326 #mainimage {
        padding: 0;
    }

    .main_img .btn_txt01 {
        position: fixed;
        width: 42%;
        left: 8%;
        bottom: 2%;
        z-index: 999;
    }

    .main_img .btn_txt02 {
        position: fixed;
        width: 42%;
        right: 8%;
        bottom: 2%;
        z-index: 999;
        left: auto;
    }
}

@media screen and (min-width:767px) {
    .main_img .btn_txt01 {
        display: none;
    }

    .main_img .btn_txt02 {
        display: none;
    }

    .is-sp {
        display: none !important;
    }
}

@media screen and (max-width:768px) {
    .is-pc {
        display: none !important;
    }

    .slick-prev:hover:before,
    .slick-prev:focus:before,
    .slick-next:hover:before,
    .slick-next:focus:before {
        opacity: 0;
    }

    /* .effect__image {
        
        grid-area: initial;
    }

    .effect__item+.effect__item {
        position: relative;
    }

    .effect__image {
        width: 100%;
        padding-top: 70%;
        position: relative;
        margin-bottom: 0px;
    } */

    .effect__image img {
        /* position: absolute;
       top: 0;
       left: 0;
       width: 100%;
       height: 100%;
       object-fit: cover; */
    }

    /* .birth__item {
        padding-top: 12px;
        padding-inline: initial;
        padding-bottom: 19px;
        background-repeat: initial;
        background-size: initial;
    } */
    .birth__content {
        padding: 0;
    }

    .slick-next {
        right: 10px;
        background: url(/wp-content/themes/nomoca/assets/images/assets_machines/desk/btn-next.svg) no-repeat center center / cover !important;
        width: 33px;
        height: 50px;
    }

    .slick-next:before {
        opacity: 0;
    }

    .slick-next:hover {
        opacity: 1;
    }

    .slick-prev:hover {
        opacity: 1;
    }

    .slick-prev {
        left: 10px;
        z-index: 1;
        background: url(/wp-content/themes/nomoca/assets/images/assets_machines/desk/btn-prev.svg) no-repeat center center / cover !important;
        width: 33px;
        height: 50px;
    }

    .slick-prev:before {
        opacity: 0;
    }
    .effect {
        padding-left: 0;
        padding-right: 0;
    }
    .effect__column {
        grid-area:initial;
    }
    .effect__item {
        position: relative;
    }
    .effect__column {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        left: 0;
        width: 100%;
    }
    .effect__item {

        aspect-ratio:initial !important;
    }
    .effect__image {
        height: 180px;
        aspect-ratio:initial !important;
    }
    .effect {
        overflow: hidden;
    }
    .effect__column dd p {
        line-height: 1.7;
    }
    .select__column dd {
        min-height: initial !important;
        padding-top: 15px !important;
        padding-bottom: 15px !important;
    }
    .select {
        padding-bottom: 0px;
        background: url(../../../images/assets_machines/desk/bg-select-sp.jpg) no-repeat center center / cover !important;
    } 
    .select__column dt {
        margin-bottom: 10px;
    }
    .select__item+.select__item {
        margin-top: 20px;
    }
}



/*------------------------------------*\
    $FOOTER
\*------------------------------------*/
@media screen and (max-width:767px){
	.nmc-footer__buttons{
display:none;
}
}

@media screen and (max-width: 767px){
.nmc-footer__inner {
    padding-top: 0px;
    padding-inline: 10px;
    margin-bottom: 50px;
	}}





/*------------------------------------*\
    $WORKS
\*------------------------------------*/
:root {
    --neutralColor100: #ebeff3;
    --neutralColor200: #a3a3a3;
    --neutralColor300: #8a8a8a;
    --neutralColor400: #4d4d4d;
    --neutralColor500: #333333;
    --primaryColor100: #3aacc3;
    --primaryColor200: #1180a4;
    --primaryColor300: #3994c8;
    --primaryColor400: #007cc6;
}

@media screen and (min-width: 768px) {
    .nmc-section--dots {
        padding-bottom: 390px;
    }
}
@media screen and (max-width: 767px) {
    .nmc-section--dots {
        padding-bottom: 343px;
    }
}


@media screen and (max-width: 1023px) {
    .nmc-works .nmc-section__inner { max-width: 325px }
}
@media screen and (max-width: 768px) {
    .nmc-works .nmc-section__inner {
        max-width: unset;
        margin-inline: -5px;
    }
}

    @media screen and (min-width: 1024px) {
        .nmc-works__list {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            grid-column-gap: 24px;
            grid-row-gap: 30px;
            max-width: 100%;
        }
    }

        @media screen and (min-width: 1024px) {
            .nmc-works__item { filter: drop-shadow(3px 3px 5px rgb(0 0 0 / 0.08)) }
        }
        @media screen and (max-width: 1023px) {
            .nmc-works__item { filter: drop-shadow(1.5px 1.5px 2px rgb(32 93 127 / 0.18)) }
        }
        @media screen and (max-width: 768px) {
            .nmc-works__item { padding: 5px }
        }

            .nmc-works__link {
                display: block;
                height: 100%;
                background-color: white;
            }

                .nmc-works__category {
                    padding-left: .04em;
                    font-weight: 600;
                    line-height: 1.2;
                    letter-spacing: .04em;
                    text-align: center;
                }
                @media screen and (min-width: 1024px) {
                    .nmc-works__category {
                        padding-block: 25px;
                        color: var(--primaryColor200);
                        font-size: 2.2rem;
                    }
                }
                @media screen and (max-width: 1023px) {
                    .nmc-works__category {
                        padding-block: 8.7px;
                        background-color: var(--primaryColor200);
                        color: white;
                        font-size: 1.65rem;
                    }
                }

                .nmc-works__image { width: 100% }
                .nmc-works__image:not(:has(> img)) {
                    background-image: url(../../../images/common/no-image.png);
                    background-repeat: no-repeat;
                    background-position: 50% 50%;
                    background-size: cover;
                }
                @media screen and (min-width: 1024px) {
                    .nmc-works__image { aspect-ratio: 297.0862 / 175.6546 }
                }
                @media screen and (max-width: 1023px) {
                    .nmc-works__image { aspect-ratio: 650 / 303.3333 }
                }

                    .nmc-works__image img {
                        width: 100%;
                        height: 100%;
                        object-fit: cover;
                    }


                @media screen and (min-width: 1024px) {
                    .nmc-works__content {
                        padding-top: 14px;
                        padding-inline: 15px;
                        padding-bottom: 32px;
                    }
                }
                @media screen and (max-width: 1023px) {
                    .nmc-works__content {
                        padding-top: 19px;
                        padding-inline: 22px;
                        padding-bottom: 18px;
                    }
                }

                    .nmc-works__title {
                    }
                    @media screen and (min-width: 1024px) {
                        .nmc-works__title { margin-bottom: 18px }
                    }
                    @media screen and (max-width: 1023px) {
                        .nmc-works__title { margin-bottom: 14px }
                    }

                        .nmc-works__title h3 {
                            color: var(--primaryColor200);
                            font-weight: 600;
                            line-height: 1.2;
                            letter-spacing: .04em;
                        }
                        @media screen and (min-width: 1024px) {
                            .nmc-works__title h3 {
                                margin-bottom: 4px;
                                font-size: 1.8rem;
                            }
                        }
                        @media screen and (max-width: 1023px) {
                            .nmc-works__title h3 {
                                margin-bottom: 2px;
                                font-size: 1.5rem;
                            }
                        }

                        .nmc-works__title p {
                            font-weight: 600;
                            line-height: 1.2;
                            letter-spacing: .04em;
                        }
                        .nmc-works__title p > span {
                            margin-left: 0.2em;
                            font-weight: 500;
                        }
                        @media screen and (min-width: 1024px) {
                            .nmc-works__title p { font-size: 1.6rem }
                            .nmc-works__title p > span { font-size: 1.4rem }
                        }
                        @media screen and (max-width: 1023px) {
                            .nmc-works__title p { font-size: 1.3rem }
                            .nmc-works__title p > span { font-size: 1.15rem }
                        }


                    .nmc-works__catchphrase {
                        position: relative;
                        display: flex;
                        justify-content: center;
                        align-items: center;
                        margin-bottom: 16px;
                        border-radius: 1px;
                        background-color: var(--neutralColor100);
                        color: var(--primaryColor200);
                        font-weight: 600;
                        text-align: center;
                    }
                    @media screen and (min-width: 1024px) {
                        .nmc-works__catchphrase {
                            min-height: 69px;
                            font-size: 1.6rem;
                            line-height: 1.199375;
                        }
                    }
                    @media screen and (max-width: 1023px) {
                        .nmc-works__catchphrase {
                            min-height: 52px;
                            font-size: 1.3rem;
                            line-height: 1.267;
                        }
                    }

                        .nmc-works__catchphrase::before {
                            content: url(../../../images/common/icon-works-w-quote.svg);
                            aspect-ratio: 48 / 37.9;
                            position: absolute;
                            display: block;
                            object-fit: contain;
                        }
                        @media screen and (min-width: 1024px) {
                            .nmc-works__catchphrase::before {
                                top: -7px;
                                left: 14px;
                                width: 14.5px;
                            }
                        }
                        @media screen and (max-width: 1023px) {
                            .nmc-works__catchphrase::before {
                                top: -6px;
                                left: 32px;
                                width: 12px;
                            }
                        }

                        /* .nmc-works__catchphrase::after {
                            content: url(assets/images/common/icon-works-arrow.svg);
                            position: absolute;
                            left: 50%;
                            transform: translateX(-50%);
                        }
                        @media screen and (min-width: 1024px) {
                            .nmc-works__catchphrase::after {
                                bottom: -11px;
                                width: 22px;
                            }
                        }
                        @media screen and (max-width: 1023px) {
                            .nmc-works__catchphrase::after {
                                bottom: -8px;
                                width: 18px;
                            }
                        } */


                    .nmc-works__text {
                        color: var(--primaryColor200);
                        letter-spacing: .02em;
                    }
                    @media screen and (min-width: 1024px) {
                        .nmc-works__text {
                            font-size: 1.8rem;
                            font-weight: 600;
                            line-height: 1.34667;
                        }
                    }
                    @media screen and (max-width: 1023px) {
                        .nmc-works__text {
                            font-size: 1.5rem;
                            font-weight: 500;
                            line-height: 1.4;
                        }
                    }


@media screen and (min-width: 1024px) {
    .nmc-works .tns-ovh { overflow: visible }
}
