@font-face {
    font-family: "Noto Sans JP";
    font-style: normal;
    font-weight: 400;
    src: url("../fonts/NotoSansJP-Regular.woff") format("woff");
    font-display: swap
}

@font-face {
    font-family: "Noto Sans JP";
    font-style: normal;
    font-weight: 700;
    src: url("../fonts/NotoSansJP-Bold.woff") format("woff");
    font-display: swap
}

*,*::before,*::after {
    box-sizing: border-box
}

html {
    height: 100%;
    font-size: 62.5%;
    overflow: auto;
    background-color: #fff
}

html:focus-within {
    scroll-behavior: smooth
}

body {
    overflow-x: hidden;
    font-size: 1.6rem;
    line-height: 1.5;
    font-family: "Noto Sans JP","æ¸¸ã‚´ã‚·ãƒƒã‚¯ Medium","æ¸¸ã‚´ã‚·ãƒƒã‚¯ä½“","Yu Gothic Medium",YuGothic,"ãƒ’ãƒ©ã‚®ãƒŽè§’ã‚´ ProN","Hiragino Kaku Gothic ProN","ãƒ¡ã‚¤ãƒªã‚ª",Meiryo,"ï¼­ï¼³ ï¼°ã‚´ã‚·ãƒƒã‚¯","MS PGothic",sans-serif;
    text-align: justify;
    text-justify: inter-ideograph;
    font-feature-settings: "palt" 1;
    min-height: 100vh;
    text-rendering: optimizeSpeed
}

body,h1,h2,h3,h4,h5,p,figure,blockquote,ul,ol,dl,dd {
    margin: 0
}

ul,ol {
    list-style: none;
    padding-left: 0
}

h1,h2,h3,h4,h5 {
    font-size: 100%
}

a:not([class]) {
    text-decoration-skip-ink: auto
}

input,button,textarea,select {
    font: inherit
}

li {
    list-style: none;
    margin: 0;
    padding: 0
}

a {
    text-decoration: none;
    color: #000
}

a:hover {
    text-decoration: none
}

a img {
    border-style: none
}

img {
    width: 100%;
    vertical-align: bottom;
    line-height: 0 !important
}

button {
    background-color: transparent;
    border: none;
    backface-visibility: hidden
}

button:focus {
    outline: none
}

button:hover {
    cursor: pointer
}

input:focus,select:focus {
    outline: none
}

.c {
    text-align: center !important
}

.cm {
    margin-left: auto;
    margin-right: auto
}

.r {
    text-align: right !important
}

.l {
    text-align: left !important
}

.inline-block {
    display: inline-block
}

.block {
    display: block
}

.vertical-top {
    vertical-align: top
}

.vertical-middle {
    vertical-align: middle
}

.pointer {
    cursor: pointer
}

.br::before {
    content: "\A";
    white-space: pre
}

.margin_b100 {
    margin-bottom: 100px
}

.margin_b90 {
    margin-bottom: 90px
}

.margin_b80 {
    margin-bottom: 80px
}

.margin_b70 {
    margin-bottom: 70px
}

.margin_b60 {
    margin-bottom: 60px
}

.margin_b50 {
    margin-bottom: 50px
}

.margin_b40 {
    margin-bottom: 40px
}

.margin_b30 {
    margin-bottom: 30px
}

.margin_b20 {
    margin-bottom: 20px
}

.margin_b10 {
    margin-bottom: 10px
}

.padding_t100 {
    padding-top: 100px
}

.padding_t90 {
    padding-top: 90px
}

.padding_t80 {
    padding-top: 80px
}

.padding_t70 {
    padding-top: 70px
}

.padding_t60 {
    padding-top: 60px
}

.padding_t50 {
    padding-top: 50px
}

.padding_t40 {
    padding-top: 40px
}

.padding_t30 {
    padding-top: 30px
}

.padding_t20 {
    padding-top: 20px
}

.padding_t10 {
    padding-top: 10px
}

@media screen and (max-width: 900px) {
    .margin_b100 {
        margin-bottom:11%
    }

    .margin_b90 {
        margin-bottom: 10%
    }

    .margin_b80 {
        margin-bottom: 9%
    }

    .margin_b70 {
        margin-bottom: 8%
    }

    .margin_b60 {
        margin-bottom: 7%
    }

    .margin_b50 {
        margin-bottom: 6%
    }

    .margin_b40 {
        margin-bottom: 5%
    }

    .margin_b30 {
        margin-bottom: 4%
    }

    .margin_b20 {
        margin-bottom: 3%
    }

    .margin_b10 {
        margin-bottom: 2%
    }

    .padding_t100 {
        padding-top: 11%
    }

    .padding_t90 {
        padding-top: 10%
    }

    .padding_t80 {
        padding-top: 9%
    }

    .padding_t70 {
        padding-top: 8%
    }

    .padding_t60 {
        padding-top: 7%
    }

    .padding_t50 {
        padding-top: 6%
    }

    .padding_t40 {
        padding-top: 5%
    }

    .padding_t30 {
        padding-top: 4%
    }

    .padding_t20 {
        padding-top: 3%
    }

    .padding_t10 {
        padding-top: 2%
    }
}

.visible1800,.visible1000,.visible900,.visible750,.visible600,.visible500,.visible400,.visible320 {
    display: none
}

.clearfix:after {
    content: "";
    clear: both;
    display: block
}

.relative {
    position: relative
}

.absolute {
    position: absolute
}

.fixed {
    position: fixed;
    z-index: 999
}

.z0 {
    z-index: 0
}

.z1 {
    z-index: 1
}

.z2 {
    z-index: 2
}

.z3 {
    z-index: 3
}

.z4 {
    z-index: 4
}

.z5 {
    z-index: 5
}

.z6 {
    z-index: 6
}

.z7 {
    z-index: 7
}

.z8 {
    z-index: 8
}

.z9 {
    z-index: 9
}

.z10 {
    z-index: 10
}

.w100 {
    width: 100%
}

.w90 {
    width: 90%
}

.w80 {
    width: 80%
}

.w70 {
    width: 70%
}

.w60 {
    width: 60%
}

.w50 {
    width: 50%
}

.w40 {
    width: 40%
}

.w30 {
    width: 30%
}

.w20 {
    width: 20%
}

.w10 {
    width: 10%
}

.disabled {
    pointer-events: none
}

.cp {
    font-family: Verdana,"Droid Sans","ãƒ¡ã‚¤ãƒªã‚ª",sans-serif
}

.vh100 {
    height: 100%;
    min-height: 100vh
}

.fullscreen {
    width: 100%;
    margin-left: auto;
    margin-right: auto
}

.contents {
    width: 750px;
    max-width: 750px;
    margin-left: auto;
    margin-right: auto
}

.contents-top {
    width: 750px;
    max-width: 750px;
    margin-left: auto;
    margin-right: auto
}

.contents1800 {
    width: 100%;
    max-width: 1800px;
    margin-left: auto;
    margin-right: auto
}

.contents1000 {
    width: 100%;
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto
}

.img_center {
    margin-left: -450px
}

.white {
    color: #fff
}

.black {
    color: #333
}

.red {
    color: red
}

.gray {
    color: #555
}

.orange {
    color: #ffa229
}

.blue {
    color: #4FB5FC
}

.bold {header
    font-weight: bold
}

.bg_black {
    background-color: #333
}

.bg_white {
    background-color: #fff
}

.bg_red {
    background-color: red
}

.bg_clear {
    background-color: transparent
}

.bg_yellow {
    background-color: #FFE782
}

header {
    width: 100%;
    top: 0;
    margin: 0 auto;
    line-height: 0
}



footer {
    z-index: 2;
    text-align: center;
    color: #333;
    bottom: 0;
    left: 0;
    right: 0
}

.footer_border {
    border: 3px solid #333
}

.wrapper {
    min-height: 100vh;
    position: relative;
    box-sizing: border-box
}

.footer {
    position: absolute;
    bottom: 0;
    z-index: -1
}

.copyright {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 7px 3%
}

.copyright,.copyright a {
    color: #333
}

.copyright a:hover {
    text-decoration: underline
}


.sec-btn01-01 img {
    width: 750px;
    height: 354px
}

.sec-btn01-01 {
    top: 0%
}

.sec-btn img {
    width: 750px;
    height: 193px
}

.sec-btn {
    top: 38%
}

.sec-logo01 img {
    width: 285px;
    height: 50px
}


.sec01-01 img {
    width: 750px;
    height: 1300px
}

.sec01-01 {
    top: 0%
}

.sec01-02 img {
    width: 750px;
    height: 1300px
}

.sec01-02 {
    top: 0%
}

.sec01-03 img {
    width: 750px;
    height: 1300px
}

.sec01-03 {
    top: 0%
}

.sec01-04 img {
    width: 750px;
    height: 1300px
}

.sec01-04 {
    top: 0%
}

.sec01-05 img {
    width: 750px;
    height: 1300px
}

.sec01-05 {
    top: 0%
}

.sec01-06 img {
    width: 750px;
    height: 1300px
}

.sec01-06 {
    top: 0%
}

.sec02-01 img {
    width: 750px;
    height: 800px
}

.sec02-02 img {
    width: 750px;
    height: 800px
}

.sec02-02 {
    top: 0%
}

.sec02-03 img {
    width: 750px;
    height: 800px
}

.sec02-03 {
    top: 0%
}

.sec02-04 img {
    width: 750px;
    height: 800px
}

.sec02-04 {
    top: 0%
}

.sec02-05 img {
    width: 750px;
    height: 800px
}

.sec02-05 {
    top: 0%
}

.sec03-01 img {
    width: 750px;
    height: 1797px
}

.sec03-01 {
    top: 0%
}

.sec03-02 img {
    width: 750px;
    height: 257px
}

.sec03-02 {
    top: 17.5%
}

.sec03-03 img {
    width: 750px;
    height: 257px
}

.sec03-03 {
    top: 17.5%
}

.sec03-04 img {
    width: 750px;
    height: 263px
}

.sec03-04 {
    top: 39%
}

.sec03-05 img {
    width: 750px;
    height: 263px
}

.sec03-05 {
    top: 39%
}

.sec03-06 img {
    width: 750px;
    height: 267px
}

.sec03-06 {
    top: 60%
}

.sec03-07 img {
    width: 750px;
    height: 267px
}

.sec03-07 {
    top: 60%
}

.sec03-08 img {
    width: 750px;
    height: 298px
}

.sec03-08 {
    top: 83%
}

.sec03-09 img {
    width: 750px;
    height: 298px
}

.sec03-09 {
    top: 83%
}

.sec04-01 img {
    width: 750px;
    height: 1458px
}

.sec04-01 {
    top: 0%
}

.sec04-02 img {
    width: 750px;
    height: 206px
}

.sec04-02 {
    top: 32%
}

.sec04-03 img {
    width: 750px;
    height: 534px
}

.sec04-03 {
    top: 58%
}

.sec05-01 img {
    width: 750px;
    height: 1299px
}

.sec05-01 {
    top: 0%
}

.sec05-02 img {
    width: 750px;
    height: 165px
}

.sec05-02 {
    top: 20%
}

.sec05-03 img {
    width: 750px;
    height: 420px
}

.sec05-03 {
    top: 55%
}

.sec06-01 img {
    width: 750px;
    height: 1017px
}

.sec06-01 {
    top: 0%
}

.sec06-02 img {
    width: 750px;
    height: 165px
}

.sec06-02 {
    top: 23%
}

.sec06-03 img {
    width: 750px;
    height: 214px
}

.sec06-03 {
    top: 60%
}

.sec07-01 img {
    width: 750px;
    height: 1266px
}

.sec07-01 {
    top: 0%
}

.sec07-02 img {
    width: 750px;
    height: 159px
}

.sec07-02 {
    top: 21%
}

.sec07-03 img {
    width: 750px;
    height: 438px
}

.sec07-03 {
    top: 51.5%
}

.sec08-01 img {
    width: 750px;
    height: 2306px
}

.sec08-01 {
    top: 0%
}

.sec08-02 img {
    width: 750px;
    height: 328px
}

.sec08-02 {
    top: 7%
}

.sec08-03 img {
    width: 750px;
    height: 268px
}

.sec08-03 {
    top: 26.5%
}

.sec08-04 img {
    width: 750px;
    height: 178px
}

.sec08-04 {
    top: 44%
}

.sec08-05 img {
    width: 750px;
    height: 115px
}

.sec08-05 {
    top: 57.5%
}

.sec08-06 img {
    width: 750px;
    height: 172px
}

.sec08-06 {
    top: 69%
}

.sec08-07 img {
    width: 750px;
    height: 364px
}

.sec08-07 {
    top: 82%
}

.privacy01-01 img {
    width: 750px;
    height: 186px
}

.privacy01-01 {
    top: 0%
}

.privacy01-02 img {
    width: 750px;
    height: 198px
}

.privacy01-02 {
    top: 0%
}

.privacy01-03 img {
    width: 750px;
    height: 186px
}

.privacy01-03 {
    top: 0%
}

.usdr_btn_1 {
    bottom: 2%
}

.usdr_btn_1 img {
    width: 900px;
    height: 239px
}


.usdr_btn_2 {
    top: 74%
}

.usdr_btn_2 img {
    width: 900px;
    height: 239px
}

.privacy_wrap {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    line-height: 1.8
}

.privacy_wrap_border {
    border: 5px solid #333
}

.privacy_border {
    border: 5px solid #4FB5FC;
    border-radius: 20px
}

.privacy_title {
    font-size: 4rem
}

.privacy_head {
    padding: 10px 20px;
    text-align: center
}

.privacy_contents {
    border-radius: 20px;
    padding: 10px 20px;
    font-size: 1.6rem
}

.privacy_contents p {
    margin-bottom: 2rem
}

.privacy_subtitle {
    font-size: 1.25em
}

.icon {
    position: relative;
    line-height: 1.5em;
    margin: 3em auto 0.5em;
    padding-left: 2em
}

.icon::before {
    content: "";
    position: absolute;
    left: 0;
    background: url("../img/usdr_10_3.png") no-repeat;
    background-size: contain;
    display: inline-block;
    width: 1.5em;
    height: 1.5em
}

.back_btn {
    display: inline-block;
    padding: 2rem 5rem;
    border-radius: 5rem
}

#law {
    height: 100vh
}

#law .privacy_contents>.icon {
    margin-top: 3%
}

#law .privacy_contents>p:last-of-type {
    margin-bottom: 0
}

label {
    -webkit-tap-highlight-color: rgba(0,0,0,0)
}

::placeholder {
    color: #555
}

.form_title {
    font-size: 2.5em
}

.form_frame {
    width: 68%;
    margin-bottom: 5rem
}

.form_field {
    font-size: 2.5rem
}

.form_field input[type="text"],.form_field input[type="email"],.form_field input[type="password"],.form_field select,.form_field textarea {
    -webkit-appearance: none;
    width: 100%;
    padding: 1% 2% 1% 2%;
    border: 1px solid #333
}

.form_field label,.form_field input[type="radio"] {
    cursor: pointer
}

.form_field p:first-child {
    padding-top: 2rem;
    padding-bottom: 0.5rem
}

.radio_wrap {
    display: flex;
    justify-content: space-between
}

.err_msg {
    color: red;
    font-size: 0.8em
}

.include_text_wrap {
    width: 80%;
    padding: 1% 1% 1% 2%;
    border: 2px solid #333;
    border-radius: 5px
}

.include_text {
    height: 15rem;
    padding-right: 1%;
    overflow-y: scroll
}

.scroll::-webkit-scrollbar {
    width: 15px;
    -webkit-appearance: none
}

.scroll::-webkit-scrollbar-thumb {
    background: red
}

.radio-input {
    -webkit-appearance: none;
    position: absolute
}

.radio-parts {
    position: relative;
    display: flex;
    align-items: center
}

.radio-parts::before {
    content: '';
    display: block;
    margin-right: 5px;
    border-radius: 50%;
    border: 1px solid #333;
    width: 16px;
    height: 16px
}

.radio-input:checked+.radio-parts::after {
    content: '';
    position: absolute;
    left: 4px;
    display: block;
    border-radius: 50%;
    width: 8px;
    height: 8px;
    background-color: #333
}

.checkbox {
    margin-left: 10%
}

.checkbox span {
    font-size: 2.5rem;
    font-weight: bold;
    cursor: pointer
}

.checkbox-input {
    display: none
}

.checkbox-input:checked+.checkbox-parts::after {
    content: "";
    position: absolute;
    top: -4px;
    left: 7px;
    width: 14px;
    height: 28px;
    transform: rotate(40deg);
    border-bottom: 5px solid red;
    border-right: 5px solid red
}

.checkbox-input:checked ~ span {
    color: red
}

.checkbox-parts {
    position: relative;
    padding-left: 40px
}

.checkbox-parts::before {
    content: "";
    display: block;
    position: absolute;
    top: 55%;
    transform: translateY(-50%);
    left: 0;
    width: 25px;
    height: 25px;
    border: 2px solid #333;
    border-radius: 4px
}



