@import url('https://fonts.googleapis.com/css2?family=BIZ+UDPMincho&family=Barlow+Condensed:wght@400;500&family=Zen+Kaku+Gothic+Antique:wght@300;400;500;700;900&display=swap');


/*  1. Use a more-intuitive box-sizing model.*/
*,
*::before,
*::after {
    box-sizing: border-box;
}

*/ * {
    padding: 0;
    margin: 0;
}

/*    3. Allow percentage-based heights in the application  */
html,
body {
    height: 100%;
    -webkit-text-size-adjust: none;
    text-size-adjust: none;
    padding: 0;
    margin: 0;
    font-family: Zen Kaku Gothic Antique;

}

.dlbox{
    display: none;
}

a {
    color: #000;
    text-decoration: none;
}

/*    Typographic tweaks!    4. Add accessible line-height    5. Improve text rendering  */
body {
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
}

/*    6. Improve media defaults  */
img,
picture,
video,
canvas,
svg {
    display: block;
}

img {
    width: 100%;
}

img.nomal{
    display: inline-block;
    width: auto;
}

/*    7. Remove built-in form typography styles  */
input,
button,
textarea,
select {
    font: inherit;
}

/*    8. Avoid text overflows  */
p,
h1,
h2,
h4,
h4,
h5,
h6 {
    overflow-wrap: break-word;
    font-weight: normal;
}

/*    9. Create a root stacking context  */
#root,
#__next {
    isolation: isolate;
}

li {
    list-style: none;
}

/* add by editor */
* {
    padding-inline-start: 0;
    margin-block-start: 0;
    margin-block-end: 0;
    margin-inline-start: 0;
}


.bld {
    font-weight: bold;
}

.tac{
    text-align: center;
}
.tar{
    text-align: right;
}

.mt30{
    margin-top: 30px;
}
/* only for smart phone */
@media screen and (max-width: 526px) {
    :root {
        --condentes_width: 390px;
    }

    .forpc {
        display: none;
    }

    header nav {
        font-family: BIZ UDPMincho;
        position: fixed;
        width: 100%;
        background-color: #ffffffe1;
        top: 0;
        bottom: 50px;
        left: 100%;
        margin-top: 60px;
        opacity: 0;
        transition: all 0.3s ease;
        z-index: -1;
        overflow-y: scroll;
    }

    header nav.active {
        left: 0;
        opacity: 1;
        display: block;
    }


    header nav>ul>li>a {
        display: block;
        height: 50px;
        line-height: 50px;
        font-size: 18px;
        letter-spacing: 0.2em;
        color: #000;
        position: relative;
        padding-left: 35px;
    }

    body.menu_on {
        overflow-y: hidden;
    }


    div.sub {
        padding-left: 50px;
    }

    nav>ul>li>a {
        margin-top: 10px;
        font-weight: bold;
    }

    nav>ul>li>a::before {
        content: "";
        display: inline-block;
        height: 1em;
        aspect-ratio: 9 / 15;
        background: url(../img/common/linksmbl.svg) no-repeat;
        background-size: contain;
        background-position: center center;
        margin-right: 8px;
    }

    nav>ul>li>a+.sub>a {
        display: block;
        font-size: 16px;
        margin-top: 10px;
    }

    nav>ul>li>a+.sub a::before {

        content: "";
        display: inline-block;

        height: 0.66em;

        aspect-ratio: 6 / 9;
        background-size: contain;
        background-position: center center;

        background: url(../img/common/menu_sub_link.svg) no-repeat;

        margin-right: 8px;
    }

    .mypage_login {
        display: block;
        height: 50px;
        background-color: #b9b9b9;
        background-image: url(../img/common/mypg_icn.svg);

        background-size: 34px 34px;
        background-position: 30px center;

        background-repeat: no-repeat;

        position: fixed;
        bottom: 0;
        width: 100%;

        text-align: center;
        padding-left: 30px;
        font-size: 22px;

        letter-spacing: 6px;
        line-height: 50px;
    }
}


/*for smart phone and pc */

html {
    scroll-padding-top: 60px;
}

div.wrp {
    width: var(--condentes_width);
    margin: 0 auto;
    box-shadow: 5px -1px 10px 8px #3333332e;
    position: relative;
    overflow-x: hidden;
}



header {
    position: fixed;
    width: 100%;
    left: 0;
    height: 60px;
    background-color: transparent;
    transition: background-color ease-in 0.3s;
    background-color: #00000000;
    z-index: 100;
}


header.scrooled,
body.menu_on header {
    background-color: #000000a2;
}

header>a.logo,
header h1.logo {
    text-indent: -9999px;
    display: block;
    width: 120px;
    aspect-ratio: 120 / 31.1232;
    background-image: url(../img/common/logo.svg);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    left: calc(50% - var(--condentes_width) / 2 + 17.8859px);
    top: 13.5385px;
}



#bgmenu {
    position: absolute;
    top: 3px;
    left: calc(50% + var(--condentes_width) / 2 - 50px - 5px);
    z-index: 9999;
}

.openbtn1 {
    position: relative;
    background: transparent;
    cursor: pointer;
    width: 50px;
    height: 50px;
}


.openbtn1 span {
    display: inline-block;
    transition: all .4s;
    position: absolute;
    left: 14px;
    height: 3px;
    border-radius: 2px;
    background: #ffffff;
    width: 65%;
}

.openbtn1 span:nth-of-type(1) {
    top: 15px;
}

.openbtn1 span:nth-of-type(2) {
    top: 23px;
}

.openbtn1 span:nth-of-type(3) {
    top: 31px;
}


.openbtn1.active span:nth-of-type(1) {
    top: 18px;
    left: 18px;
    transform: translateY(6px) rotate(-45deg);
    width: 45%;
    background: #ffffff;
}

.openbtn1.active span:nth-of-type(2) {
    opacity: 0;
}

.openbtn1.active span:nth-of-type(3) {
    top: 30px;
    left: 18px;
    transform: translateY(-6px) rotate(45deg);
    width: 45%;
    background: #ffffff;
}

main>* {
    padding-left: 22px;
    padding-right: 22px;
}


main>h1 {
    padding-top: 220px;
    background-image: url(../img/support/smt/head_bg.jpg);
    background-repeat: no-repeat;
    margin-bottom: 80px;
}

main>h1>span:nth-child(1) {
    display: block;
    font-family: BIZ UDPMincho;
    font-size: 20px;
    letter-spacing: 5px;
    line-height: 1em;
    color: #FFFFFF;
}

main>h1>span:nth-child(2) {
    display: block;
    font-family: Barlow Condensed;
    line-height: 1em;
    font-size: 77px;
    font-weight: 500;
    letter-spacing: 3.85px;
    color: rgb(31, 224, 67);
}



body:not(#top_page)  h2,
body:not(#top_page)  h3,
body:not(#top_page)  h4 {

    font-family: Zen Kaku Gothic Antique;
    font-weight: bold;
    color: #000000;
    margin-bottom: 20px;
}

main>article {
    /*基本テキスト*/

    font-family: Zen Kaku Gothic Antique;
    font-size: 14px;
    line-height: 28px;
    color: #000000;

}

body:not(#top_page)  h2 {
    font-size: 22px;
    line-height: 26px;
    letter-spacing: 2.2px;
    padding-left: 55px;
    position: relative;
}

body:not(#top_page)  h2::before {
    display: block;
    position: absolute;
    left: 0;
    top: 7px;
    content: "";
    width: 46px;
    height: 46px;
    background: url(../img/common/h2_point.svg) no-repeat;
    background-size: contain;
}

body:not(#top_page)  h2.oneline {
    line-height: 46px;
}

body:not(#top_page)  h2.oneline::before {

    top: 3px;
}

body:not(#top_page)  h3.oneline{
    line-height: 46px;
}


body:not(#top_page)  h4.oneline{
    line-height: 46px;
}

body:not(#top_page)  h3 {
    font-family: Zen Kaku Gothic Antique;
    font-weight: bold;
    font-size: 18px;
    line-height: 23px;
    letter-spacing: 1.8px;
    color: #000000;
    padding-left: 22px;
    position: relative;
    min-height: 50px;
}

body:not(#top_page)  h3::before {
    display: block;
    content: "";
    position: absolute;
    width: 10px;
    height: 54px;
    background-image: url(../img/common/smt/smt_h3.svg);
    background-size: contain;
    background-repeat: no-repeat;
    left: 0;
    top: 0;
}

body:not(#top_page)  h3::after {
    content: "";
    display: block;
    position: absolute;
    width: 330px;
    height: 4px;
    background-color: #E6E6E6;
    right: 0px;
    top: 50px;
}

body:not(#top_page)  h4 {
    font-family: Zen Kaku Gothic Antique;
    font-weight: bold;
    font-size: 16px;
    line-height: 22px;
    letter-spacing: 1.6px;
    color: #000000;
    padding-left: 22px;
    position: relative;
    min-height: 50px;
}

body:not(#top_page)  h4::before {
    display: block;
    content: "";
    position: absolute;
    width: 10px;
    height: 54px;
    background-image: url(../img/common/smt/smt_h4.svg);
    background-size: contain;
    background-repeat: no-repeat;
    left: 0;
    top: 0;
}

body:not(#top_page)  h4::after {
    content: "";
    display: block;
    position: absolute;
    width: 330px;
    height: 4px;
    background-color: #E6E6E6;
    right: 0px;
    top: 50px;
}

.text_link {
    font-weight: bold;
    font-size: 16px;
    line-height: 4px;
    letter-spacing: 1.6px;
    color: #000000;
}

.text_link::before {
    content: "";
    display: inline-block;
    height: 1em;
    aspect-ratio: 9 / 15;
    background: url(../img/common/linksmbl.svg) no-repeat;
    background-size: contain;
    background-position: center center;
    margin-right: 5px;

}


.tac_btn{
    text-align: center;
    margin: 50px auto;
}

.tac_btn button{
    cursor: pointer;
    font-size: 20px;
    font-weight: bold;
    text-decoration: none;
    padding: 15px 25px;
}
footer {

    margin-top: 100px;
    border-top: 1px solid #333;
    padding: 10px 22px 30px 22px;
}

footer::after {
    display: block;
    clear: both;
    content: "";
}

.comp_name {
    width: 194.89px;
}

.comp_name+div {
    position: relative;
}

.comp_name+div>span:nth-child(1) {
    font-family: Zen Kaku Gothic Antique;
    font-size: 16px;
    line-height: 16px;
    font-weight: 500;
    letter-spacing: 1.6px;
    color: #666666;
    position: absolute;
    right: 0;
    top: -18px;
}


small.copy {
    font-family: Zen Kaku Gothic Antique;
    font-size: 10px;
    font-weight: 300;
    line-height: 13.63px;
    letter-spacing: 0.5px;
    position: relative;
    top: -0.87px;
    color: #333333;
}


#kv {
    background-image: url(../img/top/smt/kv_bg.jpg);
    background-image: image-set(url(../img/top/smt/kv_bg.jpg) 1x, url(../img/top/smt/kv_bg@2.jpg) 2x);
    background-size: contain;
    background-repeat: no-repeat;
    height: 860px;
    position: relative;
}

#kv>div:nth-of-type(1)>h2 {
    width: 310.4714px;
    border-color: rgba(255, 255, 255, 0.3);
    border-width: 4.306px;
    border-style: solid;

    border-top: none;
    border-right: none;
    transform: rotate(-6.818deg);
    position: absolute;
    left: 0.2434px;
    top: 112.2817px;
    transform-origin: 0 0;
}

#kv>div:nth-of-type(1)>h2>span {
    display: block;
}

#kv>div:nth-of-type(1)>h2>span:nth-child(1) {
    position: relative;
    font-weight: bold;
    font-size: 17px;
    line-height: 17.66px;
    text-align: justify;
    text-align-last: justify;
    color: #A2EE32;
    padding-left: 20px;
    padding-bottom: 10px;

}

#kv>div:nth-of-type(1)>h2>span:nth-child(1)::after,
#kv>div:nth-of-type(1)>h2>span:nth-child(2)::after {
    content: "";
    display: block;
    position: relative;
    height: 4.306px;
    width: calc(100%);
    background-color: rgba(255, 255, 255, 0.5);
    bottom: calc(-4.306px / 2 - 10px);
    left: 0px;
}

#kv>div:nth-of-type(1)>h2>span:nth-child(2) {
    position: relative;
    padding-left: 20px;
    padding-top: 10px;
    padding-bottom: 10px;

    font-family: BIZ UDPMincho;
    font-size: 59px;
    line-height: 62.25px;

    text-align: justify;
    text-align-last: justify;
    color: #A2EE32;
}



#kv>div:nth-of-type(1)>h2>span:nth-child(3) {
    display: none;
}

#kv>div:nth-of-type(1)>h2>span:nth-child(4) {
    font-family: BIZ UDPMincho;
    font-size: 132px;
    line-height: 128.55px;

    text-align: justify;
    text-align-last: justify;
    color: #FF5170;
    padding: 5px 10px;
}

#kv>div:nth-of-type(1)>h2+ul>li {
    position: absolute;
    background-repeat: no-repeat;
    background-size: contain;
    text-align: center;
    color: #808080;
    font-weight: 900;
    transform: rotate(-7.199deg);
}

#kv>div:nth-of-type(1)>h2+ul>li:nth-child(1) {
    width: 110px;
    aspect-ratio: 102.1828 / 96.1982;
    padding-top: 32px;
    padding-left: 10px;
    background-image: url(../img/top/kv_p1bg.svg);

    font-size: 17px;
    font-weight: 900;

    line-height: 17.12px;
    letter-spacing: 0.85px;
    top: 144px;
    left: 282px;
}

#kv>div:nth-of-type(1)>h2+ul>li:nth-child(2) {

    width: 86.9349px;
    aspect-ratio: 86.9349 / 87.1403;
    padding-top: 21px;
    padding-left: 0px;
    background-image: url(../img/top/kv_p2bg.svg);

    font-size: 17px;
    line-height: 18.95px;
    letter-spacing: 0.85px;

    top: 232px;
    left: 315px;

}

#kv>div:nth-of-type(1)>h2+ul>li:nth-child(3) {

    width: 130px;
    aspect-ratio: 108.2902 / 100.8805;
    padding-top: 34px;
    padding-left: 0px;
    background-image: url(../img/top/kv_p2bg.svg);
    background-position: 6px 0px;

    font-size: 17px;
    line-height: 18.95px;
    letter-spacing: 0px;

    top: 300px;
    left: 282px;

}

#kv>div:nth-of-type(1)>h2+ul>li:nth-child(3)>span {
    letter-spacing: -2px;
}


#kv>div:nth-of-type(1)>h2+ul>li:nth-child(4) {

    width: 130px;
    aspect-ratio: 92.2206 / 86.9578;
    padding-top: 36px;
    padding-left: 0px;
    background-image: url(../img/top/kv_p2bg.svg);
    background-position: 4px 0px;

    font-size: 17px;
    line-height: 17.12px;
    letter-spacing: -2px;

    top: 400px;
    left: 282px;

}

#kv>div#movieBlk {
    padding-top: 610px;
}

#kv>div#movieBlk>p {
    font-family: Zen Kaku Gothic Antique;
    font-size: 24px;
    line-height: 30.02px;
    color: #FFFFFF;
    font-weight: 900;
    position: absolute;
    left: 40px;
    top: 516px;

    transform: rotate(-7.199deg);

    transform-origin: 0 0;
}


#movieBlk>div {
    aspect-ratio: 310 / 174.4961;
}

#movieBlk>div >iframe{
    width: 100%;
    height: 100%;
}

#step {
    /*フロー部*/
    padding-top: 30px;
    height: 911px;
    background-image: url(../img/top/smt/buch_bg.jpg);
    background-image: image-set(url(../img/top/smt/buch_bg.jpg) 1x, url(../img/top/smt/buch_bg@2.jpg) 2x);

}

#step>h2 {
    position: relative;
    width: 320px;
    margin: auto;
    color: #808080;
}

#step>h2>span:nth-child(1) {
    display: block;
    position: absolute;
    font-weight: bold;
    font-size: 21px;
    line-height: 24.32px;
    letter-spacing: 3.15px;
    top: 7px;
    left: 4px;
}

#step>h2>span:nth-child(2) {
    display: block;
    padding-left: 105px;


    font-family: BIZ UDPMincho;
    font-size: 54px;
    line-height: 62.77px;
    text-align: justify;
    text-align-last: justify;
    border-bottom: 2.7985px solid #B3B3B3;
}


#step>h2>span:nth-child(3) {
    font-family: BIZ UDPMincho;
    font-size: 75px;
    line-height: 77.98px;

    text-align: justify;
    text-align-last: justify;
    display: block;
    white-space: nowrap;

    padding-right: 22px;
    text-indent: -10px;
}

#step>h2>span:nth-child(3)>span {
    position: absolute;
    right: -28px;

}

#step>dl>dt {
    text-indent: -9999px;
}

#step>dl>dd {
    margin-top: 24px;
    position: relative;
}

#step>dl>dd:nth-of-type(1) {
    margin-top: 0px;
}

#step>dl>dd:nth-of-type(-n+2):after {
    content: "";
    display: block;
    position: absolute;
    width: 35px;
    height: 35px;
    background-image: url(../img/top/smt/next.svg);
    background-repeat: no-repeat;
    background-size: contain;
    left: 50%;
    bottom: -40px;
    transform: translateX(-50%);

}

#step>dl>dd img {
    filter: drop-shadow(1px 1px 10px rgba(0, 0, 0, 0.2));
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 10px;
}

#step>dl>dd>p {
    position: relative;
    font-weight: bold;
    font-size: 17px;
    line-height: 19.38px;
    color: #666666;
    padding-left: 82px;
}

#step>dl>dd>p>span {
    position: absolute;
    right: 275px;
    bottom: 1px;
    text-indent: -9999px;
    display: block;
    background-repeat: no-repeat;
    background-size: contain;
}

#step>dl>dd:nth-of-type(1)>p>span {
    width: 34.08px;
    height: 62.97px;
    background-image: url(../img/top/smt/1.svg);
}

#step>dl>dd:nth-of-type(2)>p>span {
    width: 46.8px;
    height: 63.69px;
    background-image: url(../img/top/smt/2.svg);
}

#step>dl>dd:nth-of-type(3)>p>span {
    width: 45.03px;
    height: 63.69px;
    background-image: url(../img/top/smt/3.svg);
}

#step>dl>dd:nth-of-type(1) img {
    width: 301.5849px;
}

#step>dl>dd:nth-of-type(2) img {
    width: 220px;
}

#step>dl>dd:nth-of-type(3) img {
    width: 220px;
}

#k1>section:nth-of-type(1)>h2 {
    margin-top: 40px;
    text-indent: -9999px;
    background-image: url(../img/top/smt/t1.svg);
    background-repeat: no-repeat;
    background-size: 344.29px 150.21px;
    background-position: 21px 0;
    width: 390px;
    height: 151px;
    position: relative;
    left: -22px;
}

#k1>section:nth-of-type(1)>h2>span:nth-child(1) {
    font-family: Barlow Condensed;
    font-size: 108px;
    font-weight: normal;
}

#k1>section:nth-of-type(1)>h2>span:nth-child(2) {
    font-size: 33px;
    line-height: 36.18px;
    letter-spacing: 1.65px;
}

#k1>section:nth-of-type(1)>h2>span:nth-child(2)::after {
    content: "\A";
    white-space: pre;
}

#k1>section:nth-of-type(1)>h2>span:nth-child(3) {
    font-size: 33px;
    line-height: 36.18px;
    letter-spacing: 1.65px;
}

#k1>section:nth-of-type(1)>h2>span:nth-child(4) {
    font-size: 59px;
    line-height: 32.22px;
    letter-spacing: 5.9px;
}

#k1>section:nth-of-type(1)>h2>span:nth-child(3),
#k1>section:nth-of-type(1)>h2>span:nth-child(4) {

    position: relative;
    top: 15px;
}

#top_page p.stronger {
    font-weight: bold;
    font-size: 24px;
    line-height: 30px;
    color: #000000;
    margin: 40px 0 30px 0;
    letter-spacing: -1px;
}


#k1 .full_width {
    position: relative;
    left: -22px;
    width: 390px;
}

#k1 img {
    margin-top: 10px;
}

#rename_sec>p:nth-last-child(1) {
    margin-top: 20px;
}

#k1>section:nth-of-type(2)>p:nth-child(3) {
    text-align: right;
}

article#k2 {
    margin-top: 100px;
}

#k2 h2 {
    background-image: url(../img/top/smt/t2.svg);
    background-repeat: no-repeat;
    background-size: 358.74px 149.86px;
    background-position: 15px 0;
    text-indent: -9999px;
    position: relative;
    left: -22px;
    width: 390px;
    height: 150px;
}


picture#k2_img>img {
    width: 724px;
    left: -95px;
    position: relative;
}


#k2>section>div:nth-last-child(1) {
    position: relative;
}


#k2>section>div:nth-last-child(1) li {
    display: block;
    position: absolute;
    background-repeat: no-repeat;
    background-size: contain;
    text-indent: -9999px;
}

#k2>section>div:nth-last-child(1) li:nth-child(1) {
    width: 150.74px;
    aspect-ratio: 150.74 / 139.59;
    top: 69px;
    left: -27px;
    background-image: url(../img/top/smt/select_point1.svg);
}

#k2>section>div:nth-last-child(1) li:nth-child(2) {
    width: 150.06px;
    aspect-ratio: 150.06 / 133.44;
    top: 204px;
    left: 219px;
    background-image: url(../img/top/smt/select_point2.svg);
}


#k3 {
    margin-top: 100px;
}


#k3 h2 {
    text-indent: -9999px;
    background-image: url(../img/top/smt/t3.svg);
    background-size: 358.12px 54.11px;
    background-position: 22px 0;
    background-repeat: no-repeat;
    position: relative;
    left: -20px;
    height: 55px;
    width: 390px;
}

#top_page #k3 p.stronger {
    white-space: nowrap;
    letter-spacing: -2.1px;
}

#top_page #k3>section>div:nth-last-child(1) {
    position: relative;
    margin-top: 50px;
}

#top_page #k3 strong {
    position: absolute;
    display: block;
    text-indent: -9999px;
    top: -60px;
    left: 57px;
    width: 132.55px;
    aspect-ratio: 132.55 / 105.72;
    background: url(../img/top/smt/triming_mess.svg) no-repeat;
    background-size: contain;

}

#k4 {
    margin-top: 100px;
}

#k4 h2 {
    text-indent: -9999px;
    background-image: url(../img/top/smt/t4.svg);
    background-size: 348.1px 103.67px;
    background-position: 20px 0;
    background-repeat: no-repeat;
    position: relative;
    left: -22px;
    height: 103.67px;
    width: 390px;
}

#top_page #k4 p.stronger {
    white-space: nowrap;
    letter-spacing: -2.1px;
}

#k4 img {
    width: 443px;
    height: 332px;
    position: relative;
    left: -40px;
}

div.download>a {
    position: absolute;
    display: block;
    left: 0;
    top: 812px;
    width: 390px;
    display: block;
    text-indent: -9999px;
    height: 48px;
    padding: 0;
    background: url(../img/top/smt/download.svg?wm) no-repeat;
}



#p1 {
    margin-top: 100px;
    height: 800px;
    background: url(../img/top/price_bg.jpg) no-repeat;
    background-position: -173px 0;
    position: relative;
}


#p1 h2,
#s1 h2 {
    font-family: Barlow Condensed;
    font-weight: bold;
    font-size: 36px;
    line-height: 94px;
    letter-spacing: 7.2px;
    color: #FFFFFF;
    text-align: center;
    padding-top: 25px;
}

#p1 strong {
    display: block;
    position: absolute;
    width: 148.4066px;
    aspect-ratio: 148.4066 / 150.1804;
    text-indent: -9999px;
    background: url(../img/top/price_mess.svg) no-repeat;
    background-size: contain;

    top: 125px;
    left: 9px;
}

#p1 .price {
    color: #fff;
    text-align: center;
    margin-top: 130px;
    border-bottom: 0.8286px solid #fff;
    padding-bottom: 10px;
}

#p1 .price>div:nth-of-type(1) {
    font-weight: 500;
    font-size: 20px;
    line-height: 20px;
    letter-spacing: 4px;
}

#p1 .price>div:nth-of-type(2) {
    margin-top: 15px;
}

#p1 .price>div:nth-of-type(2)>span:nth-child(1) {
    font-family: Barlow Condensed;
    font-size: 60px;
    letter-spacing: 12px;
    font-weight: 500;
}

#p1 .price>div:nth-of-type(2)>span:nth-child(2) {
    position: relative;
    font-weight: bold;
    font-size: 33px;
    top: -14px;
}

#p1 .price>div:nth-of-type(2)>span:nth-child(2)>span {
    position: absolute;
    display: inline-block;
    white-space: nowrap;
    font-weight: bold;
    font-size: 14px;
    letter-spacing: -1.4px;
    left: 50%;
    transform: translateX(-50%);
    bottom: -15px;
}

#p1 .price+ul {
    margin-top: 20px;
}

#p1 .price+ul>li {
    font-size: 14px;
    line-height: 28px;
    color: #FFFFFF;
    text-indent: -1em;
    padding-left: 1em;
}

.btn {
    position: relative;
    font-weight: bold;
    font-size: 19px;
    line-height: 40px;
    letter-spacing: 5px;
    height: 40px;
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.3);

    border-color: rgba(255, 255, 255, 1);
    border-width: 0.8685px;
    border-style: solid;
    display: block;
    text-align: center;

    color: #FFFFFF;
}

.btn.green {
    background-color: rgba(26, 220, 29, 0.3);
    border-color: #00CC04;
}

.btn::after {
    content: "";
    display: block;
    position: absolute;
    width: 15.65px;
    height: 26.09px;
    background: url(../img/common/btn_bg.svg) no-repeat;

    background-size: contain;
    top: 50%;
    transform: translateY(-50%);
    right: 10px;
}

.btn:nth-of-type(n+2) {
    margin-top: 50px;
}

#p1>section>div:nth-last-of-type(1) {
    margin-top: 55px;
}


#s1 {
    height: 800px;
    background: url(../img/top/support_bg.jpg) no-repeat;
    background-size: 1360px 800px;
    background-position: -575px 0;
    color: #fff;
}

#s1 a {
    color: #fff;
    text-decoration: underline;
}

#s1 a.btn {
    text-decoration: none;
}

#s1 dl {
    margin-top: 5px;
}

#s1 dt:nth-of-type(1) {
    font-weight: bold;
    font-size: 18px;
    padding-bottom: 5px;
    letter-spacing: 5.4px;
    border-bottom: 1px solid #fff
}

#s1 dd {
    font-size: 14px;
    line-height: 24px;
    letter-spacing: 0.35px;
}

#s1 dt:nth-of-type(n+2) {
    margin-top: 30px;
    margin-bottom: 10px;
}


#top_page footer {
    margin-top: -128px;
    color: #fff;
    border-color: #fff
}

#top_page .comp_name+div>span:nth-child(1) {
    color: #fff
}

#top_page small.copy {
    color: #fff;
}

#top_page footer img {
    filter: brightness(0) invert(1);
}

div.tbl {
    font-size: 16px;
    margin-top: 40px;
}


div.tbl>dl>dt {
    border-radius: 5px;
    background-color: rgba(128, 128, 128, 0.388);
    padding: 5px 20px;
    margin-top: 15px;
}

div.tbl>dl>dt:nth-child(1) {
    margin-top: 0;
}

div.tbl>dl>dd {
    padding: 5px 10px;
}

#tokutei {
    margin-top: 50px;
}

#form_block .required {
    padding-left: 77px;
    position: relative;
}

#form_block .required::before {
    content: "\5FC5\9808";
    background-color: rgb(20, 146, 43);
    height: 26px;
    width: 72px;
    line-height: 26px;
    text-align: center;
    color: rgb(255, 255, 255);
    display: inline-block;
    position: absolute;
    left: 0;
    top: 1px;
}

#form_block .not_required::before{
    content: "\25A0";

    color: rgb(20, 146, 43);
    display: inline;
}

#form_block .not_required + dd{
    margin-top: 0;
    padding-top: 0;
}

.fmbox {
    margin: 50px 0;
}

.fmbox dt {
    margin-top: 20px;
    font-weight: bold;
}

.fmbox dd {
    margin-top: 5px;
    padding: 5px 0px;
}

.fmbox.confirm dd{
    font-size: 18px;
}

#form_block input:not([type=radio],[type=checkbox]),
#form_block textarea,
#form_block select {
    height: 40px;
    line-height: 40px;
    border: 1px solid rgb(20, 146, 43);
    width: 100%;
    padding: 0 20px;
    font-size: 18px;
}

#form_block select{
    width: auto;
}

#form_block input:not([type=radio],[type=checkbox]):focus,
#form_block textarea:focus {
    border: 1px solid rgb(20, 146, 43);
    background-color: rgba(20, 146, 43, 0.13);
}

#form_block .payment input[type=radio]{
    display: none;
}
#form_block .payment input[type=radio] + label{
    padding: 6px 16px;
    border:2px solid #000;
    border-radius: 50px;
}

#form_block .payment input[type=radio]:checked + label{
    background-color: #00CC04;
}
#form_block .payment input[type=radio] + label:nth-last-of-type(n+2){
    margin-right: 10px;
}

#form_block textarea {
    height: 100px;
    line-height: 1.6em;
}

#form_block p.btn_line {
    text-align: center;
    margin: 20px 0;
}

#form_block button.btn {
    padding: 0 50px;
    display: inline-block;
    background-color: rgb(20, 146, 43);
    cursor: pointer;
}

#form_block button.btn:active,
#form_block button.btn:hover {
    background-color: rgba(20, 146, 43, 0.7);
    filter: grayscale(0) brightness(1);
}

.err {
    color: red;
    position: relative;
}

#form_block .err::before {
    content: "\26D4";
    display: inline;
}
#form_block button[name=back]{
    filter: grayscale(0.80) brightness(1.2);
}
#form_block button[name=back].btn::after {
    transform: translateY(-50%) rotate(-180deg);
    right: auto;
    left:10px;
}

.bigmess{
    margin-top: 60px;
    font-size: 22px;
    text-align: center;
}

.pv{
    text-align: center;
    margin: 20px;
}

.pv > a{
    position: relative;
}

a.mini_link::before {
    content: "";
    display: inline-block;
    height: 0.66em;
    aspect-ratio: 6 / 9;
    background-size: contain;
    background-position: center center;
    background: url(../img/common/menu_sub_link.svg) no-repeat;
    margin-right: 8px;
}


.big_notice{
    position: relative;
    display: block;
    background : rgba(255, 0, 0, 0.1);
    border-style : Solid;
    border-color : #FF0000;
    border-width : 6px;
    border-radius : 20px;
    padding: 20px 20px 20px 55px;



    font-weight : bold;
    font-size : 23px;
    line-height : 28.17px;
    margin: 20px auto;
} .big_notice::before{
    content: "";
    display: block;
    position: absolute;
    width: 30px;
    aspect-ratio:9 / 15;
    left:15px;
    top:50%;
    transform: translateY(-50%);
    background-image: url(../img/common/linksmbl.svg);
    background-size: contain;
}


.flow{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: -20px;
    margin-bottom: 30px;
}
.flow > li{
    aspect-ratio:202.23 / 90.93;
    width:155px;
    background: url(../img/form/form_next.svg) no-repeat;
    background-size: contain;
    position: relative;
    font-size: 14px;
    line-height: 16px;
    padding-left: 10px;
    margin-top: 20px;
    font-weight: bold;
}

.flow > li.current{
    background-image: url(../img/form/form_current.svg);
}

.flow > li > span{
    position: absolute;
    top:50%;
    transform: translateY(-50%);
}

form[name=regform]{
    margin: 50px 0;
}

#form_block form input[name=shop_post]{
    width:8em ;
    text-align: center;
}
#companyinfo{
    margin-top: 50px;
}

#form_block input[name=shop_addr]{
    margin-top: 10px;
}
#form_block button.btn.backbtn{
    background-color:rgba(20, 146, 43, 0.7) ;
}
.btn.backbtn::after {
    transform: rotate(-180deg) translateY(50%);
    right: auto;
    left:10px;
}


body.kiyaku h3{
    margin-top: 50px;
}

body.kiyaku dt{
    margin-top: 20px;
    font-weight: bold;
}
body.kiyaku dd ul{
    margin-top: 10px;
}

body.kiyaku li{
    list-style-type: disc;
    margin-left: 2em;
}


#download_mess > span:nth-child(2){
    display: none;
}

.wrp.istab #download_mess > span:nth-child(2){
    display: inline;
}.wrp.istab #download_mess > span:nth-child(1){
    display: none;
}


.forget{
    text-align: center;
}
body.mypage header{
    position: relative;
    background-color: rgba(0, 0, 0, 0.726);
}

body.manual header{
    position: fixed;
    background-color: rgba(0, 0, 0, 0.726);
}
body.manual main{
    padding-top: 60px;
}

body.mypage .right_box{
    padding: 20px;
}


body.mypage table{
    border-collapse: collapse;
    
}
body.mypage table th ,body.mypage table td{
    border: 1px solid #333;
    padding: 5px ;
}

body.mypage .right_box > *:nth-child(n+2){
    margin-top: 30px;
}

body.manual .right_box dl{
    margin: 50px 0;
}


body.manual .right_box{
    padding-top: 20px;
}
body.manual .mbox:nth-of-type(n+2){
    margin-top: 40px;
}

body.manual .right_box dt:nth-of-type(n+2){
    margin-top: 40px;
}
body.manual .right_box img{
    display: inline-block;
}

.library main img{
    display: inline-block;
    width: auto;
    margin-bottom:20px;
}

body.library main dl {
    padding-left: 50px;
}
body.library main .lib1{
    text-align: center;
    font-size: 30px;
    font-weight: bold;
    margin: 40px 0;
    line-height: 1.6em;
}
.w100{
    width: 100px;
}
.w200{
    width: 200px;
}
.w300{
    width: 300px;
}

.f24{
    font-size: 24px;
}

.manual_tbl{
    
    overflow-x: scroll;
}

.manual_tbl table{
    width: 500px;
    border-collapse: collapse;
}

.manual_tbl table td,
.manual_tbl table th{
    border: 1px solid #333;
    padding: 10px 15px;
}

.manual_tbl table > * > *>*:nth-last-child(3){
    text-align: center;
    width: 128px;
}


.manual_tbl table > * > *:hover >td:nth-last-child(-n+2){
    background-color: #e6e6e6;
}

.manual .plat_ptn:nth-of-type(2n+1){
    background-color: rgb(241, 241, 241);
    border:1px solid #bdbdbd;
}


.manual .plat_ptn:nth-of-type(2n){
    background-color: rgb(213, 230, 252);
    border:1px solid #e1ffed;
}
li.excel img{
    display: inline-block;
    height: 1em;
    width: auto;
    aspect-ratio:382.05 / 381.99;
}

.manual video{
    width: 600px;
}
/*******************************************/
/*******************************************/
/*******************************************/
/*******************************************/
/*******************************************/
/*******************************************/
/*******************************************/
/*******************************************/
/*******************************************/
/*******************************************/
/*******************************************/
/*******************************************/
/*******************************************/
/*******************************************/
/*******************************************/
/*******************************************/

/* only for pc*/
@media screen and (min-width: 525px) {
    html {
        scroll-padding-top: 78px;
    }

    body::-webkit-scrollbar {
        height: 6px;
        width: 8px;

    }

    body::-webkit-scrollbar-thumb {
        background-color: #c5c5c5;
        border: 1px solid rgba(146, 146, 146, 0);
        border-radius: 4px;
    }

    body::-webkit-scrollbar-corner {
        background-color: #c9c9c9;
    }

    body::-webkit-scrollbar-track {
        background-color: #ebeaea;
    }

    .forsmt {
        display: none;
    }

    main>* {
        padding-left: 80px;
        padding-right: 80px;
    }

    header {
        width: 1360px;
        left: auto;
        top: 0;
        height: 78px;
    }

    header.scrooled {
        background-color: rgba(0, 0, 0, 0.726);
    }

    body>.wrp {
        width: 1360px;
        margin: auto;
        box-shadow: none;
        overflow-x: visible;
    }

    div.wrp.istab {
        overflow-x: hidden;
    }

    main>h1 {
        background-image: url(../img/common/head_bg.svg);
        background-repeat: no-repeat;
        background-size: contain;
        padding-top: 134px;
        margin-bottom: 0px;
    }

    header>a.logo,
    header h1.logo {
        width: 156.15px;
        left: 50px;
        top: 20.5px;
    }

    header>nav {
        position: absolute;
        right: 50px;
        height: 37px;
        top: 21px;
    }

    header>nav>ul {
        display: flex;
        justify-content: space-around;
        font-family: BIZ UDPMincho;
        font-size: 14px;
        line-height: 20px;
        letter-spacing: 2.1px;
        color: #FFFFFF;
        border-bottom: 0.48px solid #FFF;
        height: 20px;
        width: 500px;

    }

    header>nav>ul a {
        color: #fff;
        position: relative;
        display: block;
        height: 37px;
        padding: 0px 5px;
        border-radius: 3px;
    }

    header>nav>ul a:hover {
        background-color: #646464;
        color: #49E666;
    }

    header>nav>ul a::after {
        content: attr(s);
        position: absolute;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
        font-family: Barlow Condensed;
        font-size: 10px;
        letter-spacing: 0.5px;
        color: #FFFFFF;
    }

    header>nav>a.mypage_login {
        display: block;
        width: 200px;
        height: 37px;
        background-size: 26.6852px 26.6852px;
        background-position: 6px 50%;
        background-repeat: no-repeat;
        border-radius: 3px;
        box-shadow: 1px 1px 0px rgba(0, 0, 0, 0.6);

        font-family: BIZ UDPMincho;
        font-size: 14px;
        line-height: 20px;
        text-align: center;
        position: relative;
        padding-left: 40px;

        background-color: #ffffff;
        background-image: url(../img/common/mypg_icn.svg);
    }

    header>nav>a.mypage_login:hover {
        background-color: #49E666;

    }

    header>nav>a.mypage_login::before {
        display: block;
        content: "";
        width: 140px;
        height: 0.48px;
        background-color: #000000;
        position: absolute;
        left: calc(50% + 10px);
        top: 50%;
        transform: translateX(-50%);
    }

    header>nav>a.mypage_login::after {
        content: attr(s);
        position: absolute;
        bottom: 0;

        left: calc(50% + 10px);
        transform: translateX(-50%);
        font-family: Barlow Condensed;
        font-size: 10px;
        letter-spacing: 0.5px;
    }



    main>h1>span:nth-child(1) {
        font-size: 24px;
        line-height: 31.59px;
        letter-spacing: 6px;
    }

    main>h1>span:nth-child(2) {
        font-size: 130px;
        letter-spacing: 6.5px;
        margin-top: -20px;
    }

    .pkz {
        font-size: 12px;
        line-height: 28px;
        color: #333333;
        text-align: right;
    }

    .pkz>* {
        position: relative;
    }

    .pkz>*:nth-child(n+2)::before {
        content: "\FF1E";
        margin: 0px 3px;
    }

    .pkz>.to_top::before {
        content: url(../img/common/pnkz_home.svg);
        width: 12px;
        height: 12px;
        display: block;
        position: absolute;
        left: -17px;
        top: -3.5px;
    }

    body:not(#top_page)  h2 {
        font-weight: bold;
        font-size: 26px;
        line-height: 46px;
        letter-spacing: 2.6px;
    }

    body:not(#top_page)  h2::before {
        top: 2px;
    }

  

    body:not(#top_page)  h3 {
        line-height: 33px;
        font-weight: bold;
        font-size: 22px;
        letter-spacing: 2.2px;
        padding-left: 42px;
        min-height: auto;
    }

    body:not(#top_page)  h3::before {
        content: "";
        width: 33px;
        height: 33px;
        background-image: url(../img/common/h3_point.svg);
    }

    body:not(#top_page)  h3.oneline{
        line-height:33px;
    }



    body:not(#top_page)  h3::after,
    body:not(#top_page)  h4::after {
        display: none;
    }

    body:not(#top_page)  h4 {
        line-height: 28px;
        font-weight: bold;
        font-size: 20px;
        letter-spacing: 2px;
        padding-left: 37px;
        min-height: auto;
    }

    body:not(#top_page)  h4::before {
        width: 28px;
        height: 28px;
        background-image: url(../img/common/h4_point.svg);
    }

    footer {
        padding: 15px 0;
        margin-left: 50px;
        margin-right: 50px;
    }

    footer::after {
        content: "";
        display: block;
        clear: both;
    }

    footer>.comp_name {
        float: left;
    }

    footer>.comp_name+div {
        float: left;
        position: static;
        margin-left: 15px;
        padding-top: 8px;
    }

    .comp_name+div>span {
        display: block;
    }

    .comp_name+div>span:nth-child(1) {
        position: static;
        font-size: 18px;
        line-height: 18px;
        letter-spacing: 1.8px;
        color: #666666;
    }




    small.copy {

        font-size: 10px;
        line-height: 13.63px;
        letter-spacing: 0.5px;
        position: relative;
        top: -5px;
        color: #333333;
    }

    footer>div:nth-child(3) {
        float: right;
        font-family: BIZ UDPMincho;
        font-size: 12px;
        line-height: 31.59px;
        letter-spacing: 2.1px;
        color: #333333;
        width: 580px;
        padding-top: 20px;
    }

    footer>div:nth-child(3)>nav {
        display: flex;
        justify-content: space-between;
    }

    footer>div:nth-child(3)>nav a {
        padding: 0 10px;
        border-radius: 3px;
    }

    footer>div:nth-child(3)>nav a::before {
        content: "";
        display: inline-block;
        height: 0.66em;
        aspect-ratio: 6 / 9;
        background-size: contain;
        background-position: center center;
        background: url(../img/common/menu_sub_link.svg) no-repeat;
        margin-right: 8px;
    }

    footer>div:nth-child(3)>nav a:hover::before {
        filter: brightness(100);
    }

    footer>div:nth-child(3)>nav a:hover {
        background-color: rgba(128, 128, 128, 0.388);
    }

    #top_page footer>div:nth-child(3)>nav a::before {
        filter: brightness(100);
    }

    #top_page footer>div:nth-child(3)>nav a:hover::before {
        filter: none;
    }

    #top_page footer>div:nth-child(3)>nav a:hover {
        background-color: rgba(0, 0, 0, 0.726);
    }

    #kv {
        background-image: url(../img/top/kv_bg.jpg);
        height: 1030px;
    }

    #kv>div:nth-of-type(1)>h2 {
        width: 436.64px;
        border-width: 6.0559px;
        left: 137px;
        top: 145px;
        transform: rotate(-10.282deg);
    }

    #kv>div:nth-of-type(1)>h2>span:nth-child(1) {
        font-weight: bold;
        font-size: 24px;
        line-height: 24.83px;
    }

    #kv>div:nth-of-type(1)>h2>span:nth-child(2) {
        font-size: 83px;
        line-height: 87.54px;
    }

    #kv>div:nth-of-type(1)>h2>span:nth-child(4) {
        font-size: 186px;
        line-height: 180.79px;
        padding: 10px 15px;
    }

    #kv>div:nth-of-type(1)>h2+ul>li {
        transform: rotate(-10.663deg);
    }

    #kv>div:nth-of-type(1)>h2+ul>li:nth-child(1) {
        font-size: 24px;
        line-height: 24.08px;
        letter-spacing: 1.2px;
        width: 140px;
        padding-top: 35px;
        padding-left: 10px;
        left: 72px;
        top: 238px;
    }

    #kv>div:nth-of-type(1)>h2+ul>li>span.kana {
        letter-spacing: -4px;
    }

    #kv>div:nth-of-type(1)>h2+ul>li:nth-child(2) {
        font-size: 24px;
        line-height: 26.65px;
        letter-spacing: 1.2px;
        width: 142.2632px;
        padding-top: 33px;
        left: 106px;
        top: 333px;
    }


    #kv>div:nth-of-type(1)>h2+ul>li:nth-child(3) {
        width: 167px;
        font-size: 24px;
        line-height: 24.08px;
        padding-left: 0;
        padding-top: 43px;
        top: 429px;
        left: 104px;
        background-position-x: 10px;
    }


    #kv>div:nth-of-type(1)>h2+ul>li:nth-child(4) {
        width: 152px;
        font-size: 24px;
        line-height: 24.08px;
        letter-spacing: -2.4px;
        padding-top: 40px;
        left: 136px;
        top: 542px;
    }

    #kv>div#movieBlk {
        padding-top: 216px;
        padding-left: 640px;
    }

    #kv>div#movieBlk>p {
        position: static;
        transform: none;
        font-weight: bold;
        font-size: 29px;
        line-height: 34.39px;
        letter-spacing: 2.9px;
        margin-bottom: 20px;
    }

    #kv>div#movieBlk>p>span.kana {
        letter-spacing: 0px;
    }



    #step {
        background-image: none;
        background-color: rgba(255, 255, 255, 0.4);
        height: 254px;
        position: absolute;
        width: 100%;
        top: 686px;
        z-index: 10;
        padding-top: 0;
    }

    #step>h2 {
        position: absolute;
        width: auto;
        color: #FFFFFF;
        z-index: 10;
        top: 50%;
        transform: translateY(-50%);
    }

    #step>h2>span:nth-child(1) {
        position: static;
        font-weight: bold;

        font-size: 18px;
        line-height: 21.96px;
        letter-spacing: 2.7px;
        text-indent: 3px;
    }

    #step>h2>span:nth-child(2) {
        padding-left: 0;

        font-size: 44px;
        line-height: 46.27px;
        text-align: start;
        text-align-last: auto;
        letter-spacing: 4.4px;
        border-bottom: none;
    }


    #step>h2>span:nth-child(3) {

        text-align: start;
        text-align-last: auto;
        white-space: nowrap;
        text-indent: -5px;
        font-size: 48px;
        line-height: 51.1px;
        letter-spacing: 3.6px;
    }

    #step>h2>span:nth-child(3)>span {
        right: -10px;
    }

    #step>dl>dd {
        position: static;
    }

    #step>dl>dd>p {
        position: absolute;
        white-space: nowrap;
        font-weight: bold;
        font-size: 17px;
        line-height: 19.38px;
        color: #333;
        padding-left: 45px;
        z-index: 15;
    }

    #step>dl>dd:nth-of-type(1)>p {
        bottom: 20px;
        left: 440px;
    }

    #step>dl>dd:nth-of-type(1)>p>span {
        background-image: url(../img/top/1.svg);
        right: auto;
        left: 0px;
    }

    #step>dl>dd:nth-of-type(1) img {
        z-index: 5;
        width: auto;
        filter: drop-shadow(0.5px 0.5px 1px rgba(0, 0, 0, 0.05));
        position: absolute;
        left: 285px;
        top: -32px;
    }

    #step>dl>dd:nth-of-type(-n+2):after {
        background-image: url(../img/top/next.svg);
        bottom: 50%;
        transform: translateY(50%);
    }

    #step>dl>dd:nth-of-type(1):after {
        left: 727px;
    }

    #step>dl>dd:nth-of-type(2)>p {
        padding-left: 50px;
        left: 745px;
        bottom: 20px;
    }

    #step>dl>dd:nth-of-type(2)>p>span {
        background-image: url(../img/top/2.svg);
        right: auto;
        left: 0px;
    }

    #step>dl>dd:nth-of-type(2) img {
        width: auto;
        position: absolute;
        left: 777px;
        top: 30px;
        filter: drop-shadow(0.5px 0.5px 1px rgba(0, 0, 0, 0.05));
    }

    #step>dl>dd:nth-of-type(2):after {
        left: 1020px;
    }



    #step>dl>dd:nth-of-type(3)>p {
        padding-left: 50px;
        left: 1077px;
        bottom: 20px;
    }


    #step>dl>dd:nth-of-type(3)>p>span {
        background-image: url(../img/top/3.svg);
        right: auto;
        left: 0px;
    }


    #step>dl>dd:nth-of-type(3) img {
        width: auto;

        position: absolute;
        left: auto;
        right: 80px;
        top: 30px;
        filter: drop-shadow(0.5px 0.5px 1px rgba(0, 0, 0, 0.05));
    }

    div.download {
        position: relative;
    }

    div.download>a {
        position: absolute;
        left: 0;
        top: -90px;
        width: 1360px;
        height: 90px;
        padding: 0;
        background: url(../img/top/download.svg?wm) no-repeat;
    }

    #k1>section:nth-of-type(1)>h2 {
        background-image: url(../img/top/t1.svg);
        background-size: 718.49px 266.23px;
        width: auto;
        height: 266.23px;
        background-position: 0;
    }

    #top_page p.stronger {
        font-size: 30px;
        line-height: 40.03px;
    }

    #k1 {
        position: relative;
    }

    #k1>section:nth-of-type(1) img {
        width: 584px;
    }

    #k1>section:nth-of-type(1) {
        position: relative;
        z-index: 10;
    }

    #k1>section:nth-of-type(1)>strong {
        text-indent: -9999px;
        width: 220.58px;
        aspect-ratio: 220.58 / 188.1;
        display: block;
        background-image: url(../img/top/qr_block_st.svg);
        background-size: contain;
        position: absolute;

        top: 520px;
        left: 403px;
    }

    #k1 .full_width {
        position: static;
    }


    #k1>section:nth-of-type(2) img {
        position: absolute;
        top: 300px;
        left: 667px;
        aspect-ratio: 1218 /610;
        width: 1218px;
    }

    #k1>section:nth-of-type(2)>p.stronger {
        position: absolute;
        right: 80px;
        top: 758px;
        z-index: 10;
    }

    #k1>section:nth-of-type(2)>strong {
        text-indent: -9999px;
        display: block;
        position: absolute;
        width: 214px;
        aspect-ratio: 213.57 / 162.16;
        background-size: contain;
        background-repeat: no-repeat;
        background-image: url(../img/top/qr_block_st2.svg);
        top: 600px;
        left: 700px;
        z-index: 10;
    }

    #k1>section:nth-of-type(3) {
        position: relative;
    }

    #k1>section:nth-of-type(3) img {
        position: absolute;
        width: 496px;
        right: 0;
        top: 0;
    }

    #k1>section:nth-of-type(3)>p:nth-last-child(1) {

        width: 670px;
    }

    #k2>section {
        position: relative;
        margin-top: 200px;
    }

    #k2 h2 {
        position: relative;
        z-index: 10;
        background-image: url(../img/top/t2.svg);
        background-size: 559.36px 334.09px;
        background-position: 0 0;
        left: 0;
        width: auto;
        height: 335px;
    }

    #k2>section:nth-of-type(1)>p {
        position: relative;
        z-index: 10;
    }

    picture#k2_img>img {
        width: 948px;
        top: -50px;
        left: 515px;
        position: absolute;
    }

    #k2>section:nth-of-type(1)>div {
        padding-top: 60px;
    }

    #k2>section:nth-of-type(1)>div img {
        width: 300px;
        height: 300px;
    }

    #k2>section>div:nth-last-child(1) li:nth-child(1) {
        width: 196px;
        top: 70px;
        left: 242px;
    }

    #k2>section>div:nth-last-child(1) li:nth-child(2) {
        width: 192px;
        top: 231px;
        left: 223px;
    }

    #k3>section {
        position: relative;
    }

    #k3>section>h2 {
        text-indent: -9999px;
        background-image: url(../img/top/smt/t3.svg);
        background-size: 597.751px;
        background-position: 0 0;
        left: 0px;
        height: 84px;
        width: auto;
        position: relative;
        z-index: 5;
    }



    #k3>section>p {
        width: 500px;
        position: relative;
    }

    #top_page #k3>section>div:nth-last-child(1) {
        margin-top: 0;
        position: absolute;
        top: 40px;
        right: 0;
        background-color: red;
    }

    #k3 img {
        width: 644px;
    }

    #top_page #k3 strong {
        width: 168px;
        top: 274px;
        left: -74px;
    }

    #top_page #k3 strong.forpc {
        background-image: url(../img/top/triming_mess2.svg);
        width: 292px;
        height: 149px;
        left: 344px;
    }

    #k4 {
        margin-top: 160px;
    }

    #k4>section {
        position: relative;
    }

    #k4 h2 {
        background-image: url(../img/top/t4.svg);
        background-size: 642.95px 169.91px;
        background-position: 0 0;
        left: 0;
        height: 170px;
        width: auto;
    }

    #k4>section>*:nth-child(-n + 3) {
        position: relative;
        z-index: 10;
    }

    #k4>section>p {

        width: 500px;
    }

    #k4>section img {
        width: 586px;
        height: auto;
        position: absolute;
        left: auto;
        right: 0;
        top: -20px;
    }

    #p1 {
        margin-top: 100px;
        background: url(../img/top/price_bg.jpg) no-repeat;
        background-position: 0 0;
    }

    #p1 h2,
    #s1 h2 {

        font-size: 44px;
        line-height: 94px;
        letter-spacing: 8.8px;
        padding-top: 45px;
    }

    #p1 strong {
        width: 198px;
        top: 124px;
        left: 293px;
    }

    #p1 .price>div:nth-of-type(1) {
        font-size: 30px;

        padding-top: 31px;
        letter-spacing: 6px;
    }

    #p1 .price {
        color: #fff;
        text-align: start;
        border-bottom: 1px solid #fff;
        padding-bottom: 10px;
        width: 510px;
        margin-left: auto;
        margin-right: auto;
        display: flex;
        justify-content: space-between;
    }

    #p1 .price+ul {
        width: 510px;
        margin-left: auto;
        margin-right: auto;
    }

    #p1 .btn {

        width: 510px;
        margin-left: auto;
        margin-right: auto;
    }

    #s1 {
        background-position: 0 0;
    }

    #s1>section>* {
        width: 510px;
        margin-left: auto;
        margin-right: auto;
    }

    #top_page footer {
        margin-top: -82px;
    }

    #top_page footer a {
        color: #fff;
    }

    header nav>ul>li>.sub {
        display: block;
        position: absolute;
        max-height: 0;
        overflow: hidden;
        transition: all .3s;
        left: 50%;
        transform: translateX(-50%);
        z-index: 1000;
        border-radius: 5px;
    }

    header nav>ul>li:hover>.sub {
        max-height: 600px;
        background-color: rgba(0, 0, 0, 0.726);
        border: 2px solid #49E666;
    }

    header nav>ul>li>.sub>a {
        font-size: 13px;
        display: block;
        white-space: nowrap;
        height: 30px;
        padding: 0px 20px;
        line-height: 30px;
    }

    header nav>ul>li {
        transition: all .3s;
        position: relative;
    }

    div.tbl {
        padding: 0 30px;
    }

    div.tbl>dl {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: start;
    }

    div.tbl>dl>dt {
        width: 160px;
        text-align: justify;
        text-align-last: justify;
        word-break: break-all;
        margin-top: 35px;
    }

    div.tbl>dl>dd:nth-of-type(1) {
        margin-top: 0;
    }

    div.tbl>dl>dd {
        width: calc(100% - 160px - 20px);
        margin-top: 35px;
    }

    #tokutei div.tbl>dl>dt {
        white-space: nowrap;
        width: 340px;
    }

    #tokutei div.tbl>dl>dd {
        width: calc(100% - 340px - 20px);
    }

    .fmbox {
        padding: 0px 30px;
    }
    .fmbox dd{
        padding: 10px 0;
    }
    #form_block button[name=send]{
        margin-left: 20px;
    }
    .bigmess{
        font-size: 24px;
        text-align: center;
    }

    .notice_flow .flow{
        width: 900px;
        margin:  20px auto;
    }

    .notice_flow .big_notice{
        width: 1050px;
        margin: auto;
        text-align: center;
    }
    .err.big{
        font-size: 24px;
        font-weight: bold;
    }
    form[name=regform]{
        width: 900px;
        margin-left: auto;
        margin-right: auto;
    }


    body.mypage header .logout{
        position: absolute;
        right: 50px;
        height: 78px;
        line-height: 78px;
        padding-right: 50px;
        color:#fff;
        font-size: 20px;
    }

    body.mypage header .logout::before{
        content: "";
        position: absolute;
        display: block;
        aspect-ratio:41.71 / 50;
        width: 44px;
        background-image: url(../img/mypage/logout.svg);
        background-size: contain;
        background-repeat: no-repeat;

        top: 50%;
        transform: translateY(-50%);
        right: 0;
    }

    body.mypage header .logout:hover{
        opacity: 0.8;
    }body.mypage header .logout:hover::before{

        background-color: rgba(255, 255, 255, 0.3);
    }

    body.mypage .mypage_main,
    body.manual article{
        display: flex;
        justify-content: space-between;
        padding: 0 50px;
    }

    body.mypage{
        --menu-width: 200px;
    }

    
    body.manual{
        --menu-width: 250px;
    }
    .left_box{
        width: var(--menu-width);
        padding: 20px 0;
    }

    .right_box{
        padding: 20px 0 50px 30px;
        width: calc( 100% - var(--menu-width) );
        border-left:1px dotted #c4c4c4
    }

    .left_box .menu{
        line-height: 2.5em;
        position: fixed;
    }
    .left_box .menu a{
        position: relative;
    }
    .left_box .menu a.current::after{
        position: absolute;
        display: block;
        content: "";
        width: 100%;
        height: 8px;
        background-color: #ff00008f;
        bottom: -3px;
    }

    body.mypage .compname{
        font-weight: bold;
    }

    body.mypage .big_notice{
        font-size: 18px;
        text-align: center;
        width: 80%;
        margin-left: auto;
        margin-right: auto;
    }

    body.mypage .btn.green{
        background-color: rgb(20, 146, 43);
        display: inline-block;
        padding: 0px 40px;
    }
    body.mypage .btn_line{
        text-align: center;
        margin: 25px 0;
    }
    body.mypage footer {
        margin-top: 0px;
    }

    body:not(#top_page) h4.oneline{
        line-height: 28px;
    }

    body.manual .right_box dl{
        padding-left: 50px;
    }
    body.manual main{
        padding-top: 78px;
    }

    body.manual main .f24{
        font-size: 24px;
        line-height: 1.4em;
    }

    .flexbox{
        display: flex;
        justify-content: space-around;
    }

    .manual_tbl{
    
        overflow-x: visible;
    }.manual_tbl table{
        width: 750px;
    }
    .manual_tbl table > * > * >td:nth-last-child(1)>a{
        margin-right: 20px;
    }
    .qrfr{
        float: right;
    }

    body.manual .right_box dd.ml40{
        margin-left: 40px;
    }

    body.manual img.border{
        border: 1px solid #f7f7f7;
    }.manual .plat_ptn{
        padding: 30px 10px 30px 0;
        
        border-radius: 10px;
    }

    .vlist li{
        line-height: 2em;
        font-size: 16px;
        display: flex;
        margin-top: 1.5em;
    }



    .vlist li > span:nth-child(n+2){
        margin-left: 20px;
    }

    .tac_btn button{
        cursor: pointer;
        font-size: 26px;
    }

    .os_title{
        position: relative;
        font-size: 27.12px;
        font-weight: bold;
        padding-left: 1.2em;
        margin-top: 5px;
        margin-bottom: 10px;
    }

    .win::before{
        content: "";
        position: absolute;
        width: 24px;
        height: 24px;
        background-image: url(../img/top/win_icon.svg);
        background-size: contain;
        left:0;
        top:2px;
    }


    .mac::before{
        content: "";
        position: absolute;
        width: 26.2669px;
        height: 32.2618px;
        background-image: url(../img/top/apple_icon.svg);
        background-size: contain;
        left:0;
        top:-2px;
    }

    .dlbox{
        display: flex;
        justify-content: space-around;
        margin: 30px auto;
        width: 65%;
    }

    .dlbox > a{
        display: block;
        width: 300px;
        border: 1px solid #026404;
        border-radius: 5px;
        padding: 20px;
        background-color: #92f3944d;
    }

    .dlbox > a > h3{
        height: 3em;;
    }
    .dlbox img.icn{
        display: block;
        width: auto;
        height: 100px;
        margin: 10px auto;
    }

    .dlbox > a:hover{

        background-color: #92f393;
    }
    .dlbox button.btn.btn.green{
        width: 100%;
        margin-top: 20px;
        cursor: pointer;
        background-color: #026404;
    }

    div.download.scrooled{
        position: fixed;
        bottom: 0;
        z-index: 10000;
    }
    div.download.scrooled > a{

        background-color: #000;
    }

    body.verup .vlist .text_link{
        margin-left: 30px;
        font-size: 24px;
    }

    .vlist li:hover{
        background-color: #e9e9e9;
    }

    .vlist li{
        font-size: 24px;
    }

    span.kaigyo{
        margin-left: 9em;
    }
}