@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700;900&display=swap");

/* A Modern CSS Reset */
*,
*::before,
*::after {
    box-sizing: border-box;
}

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

ul[role=list],
ol[role=list] {
    list-style: none;
}

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

body {
    min-height: 100vh;
    text-rendering: optimizeSpeed;
    line-height: 1.5;
}

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

img,
picture {
    max-width: 100%;
}

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

@media (prefers-reduced-motion: reduce) {
    html:focus-within {
        scroll-behavior: auto;
    }

    *,
    *::before,
    *::after {
        -webkit-animation-duration: 0.01ms !important;
        animation-duration: 0.01ms !important;
        -webkit-animation-iteration-count: 1 !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }
}

body {
    font-family: "Noto Sans JP", "Hiragino Sans W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    line-height: 1.6;
    font-size: 18px;
    background: url(../images/background.png) no-repeat top;
    background-size: 100%;
}

a {
    color: #006DB2;
    text-decoration: underline;
    transition: 0.25s;
    font-weight: bold;
}

a:hover {
    color: #19a6ff;
    text-decoration: underline;
}

p {
    margin: 10px 20px 20px 20px;
}

.p-small {
    font-size: 16px;
}

@media screen and (min-width: 600px) {
    .p-small {
        font-size: 22px;
    }
}

.wrapper {
    max-width: 800px;
    margin: 0 auto;
}

.section {
    margin-top: 20px;
    margin-bottom: 20px;
    padding: 0 20px;
}

.box {
    border-radius: 20px;
    background: #fff;
    border: 4px solid #000000;
    box-shadow: 4px 4px 0px rgba(0, 0, 0, 0.1);
    position: relative;
    min-height: 50px;
    font-size: 20px;
    margin-top: 30px;
    margin-bottom: 30px;
    padding: 5px 10px;
}

.box__title {
    margin-top: -30px;
    position: relative;
    color: #FFDE65;
    font-size: 32px;
    font-weight: 900;
    text-align: center;
    text-shadow: 0 0 5px #000, 0 0 5px #000, 0 0 5px #000, 0 0 5px #000, 0 0 5px #000, 0 0 5px #000, 0 0 5px #000, 0 0 5px #000, 0 0 5px #000, 0 0 5px #000, 0 0 5px #000, 0 0 5px #000, 0 0 5px #000, 0 0 5px #000;
    margin-bottom: 10px;
}

.flex-box-row {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    flex-direction: row;
}

.flex-box-row__text {
    -webkit-flex: 1;
    flex: 1;
}

.title {
    background: #FFDE65;
    color: #000;
    border-radius: 10px;
    border: 3px solid #000;
    font-size: 24px;
    text-align: center;
    line-height: 1.4;
    padding: 8px 10px;
    margin-top: 20px;
    margin-bottom: 20px;
    font-weight: bold;
}

.title--small {
    font-size: 16px;
}

.sub-title {
    color: #FFDE65;
    font-size: 32px;
    font-weight: 900;
    text-align: center;
    text-shadow: 0 0 5px #000, 0 0 5px #000, 0 0 5px #000, 0 0 5px #000, 0 0 5px #000, 0 0 5px #000, 0 0 5px #000, 0 0 5px #000, 0 0 5px #000, 0 0 5px #000, 0 0 5px #000, 0 0 5px #000, 0 0 5px #000, 0 0 5px #000;
    margin-bottom: 20px;
}

.small-title {
    text-align: center;
    color: #006DB2;
    font-size: 22px;
    font-weight: bold;
    margin-bottom: 10px;
    line-height: 1.4;
}

.box-title {
    background: #006DB2;
    border-radius: 10px;
    color: #fff;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    width: 110px;
    height: 110px;
    font-size: 24px;
    font-weight: 900;
    line-height: 1.3;
}

.button {
    background: #C8250F;
    color: #fff;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    text-align: center;
    padding: 6px 10px;
    border-radius: 10px;
    transition: 0.25s;
    box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
    position: relative;
    font-size: 22px;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    width: 100%;
    min-height: 52px;
    line-height: 1.3;
    padding: 6px 20px 6px 10px;
}

.button:link,
.button:hover,
.button:active,
.button:focus {
    text-decoration: none;
}

.button:hover {
    opacity: 0.8;
}

.button:disabled {
    background: #ccc;
    box-shadow: none;
}

.button:disabled:hover {
    opacity: 1;
}

.button--arrow::after {
    content: "";
    display: inline-block;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%229%22%20height%3D%2215%22%20viewBox%3D%220%200%209%2015%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M1.5%2015C1.16146%2015%200.861979%2014.8828%200.601562%2014.6484C0.367188%2014.388%200.25%2014.0885%200.25%2013.75C0.25%2013.4115%200.367188%2013.112%200.601562%2012.8516L5.99219%207.5L0.601562%202.14844C0.367188%201.88802%200.25%201.58854%200.25%201.25C0.25%200.911458%200.367188%200.611979%200.601562%200.351562C0.861979%200.117188%201.16146%200%201.5%200C1.83854%200%202.13802%200.117188%202.39844%200.351562L8.64844%206.60156C8.88281%206.86198%209%207.16146%209%207.5C9%207.83854%208.88281%208.13802%208.64844%208.39844L2.39844%2014.6484C2.13802%2014.8828%201.83854%2015%201.5%2015Z%22%20fill%3D%22white%22%2F%3E%3C%2Fsvg%3E");
    background-size: cover;
    background-repeat: no-repeat;
    width: 9px;
    height: 15px;
    position: absolute;
    right: 10px;
    top: 0;
    bottom: 0;
    margin-top: auto;
    margin-bottom: auto;
}

.button--disabled {
    background: #ccc;
    box-shadow: none;
}

.radio__button {
    color: #006DB2;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    background: #FFFFFF;
    padding: 6px 10px;
    border: 3px solid #006DB2;
    box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
    border-radius: 10px;
    margin-bottom: 16px;
    font-weight: border;
    text-align: center;
    font-size: 22px;
    transition: 0.25s;
    height: 52px;
    line-height: 1.3;
    padding: 6px 20px 6px 10px;
}

.radio input {
    display: none;
}

.radio input:checked+.radio__button {
    background: #006DB2;
    color: #fff;
}

.radio input:checked+.radio__button::before {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2227%22%20height%3D%2220%22%20viewBox%3D%220%200%2027%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M25.7227%200.902344C26.0742%201.29297%2026.25%201.74219%2026.25%202.25C26.25%202.75781%2026.0742%203.20703%2025.7227%203.59766L10.7227%2018.5977C10.332%2018.9492%209.88281%2019.125%209.375%2019.125C8.86719%2019.125%208.41797%2018.9492%208.02734%2018.5977L0.527344%2011.0977C0.175781%2010.707%200%2010.2578%200%209.75C0%209.24219%200.175781%208.79297%200.527344%208.40234C0.917969%208.05078%201.36719%207.875%201.875%207.875C2.38281%207.875%202.83203%208.05078%203.22266%208.40234L9.31641%2014.6133L23.0273%200.902344C23.418%200.550781%2023.8672%200.375%2024.375%200.375C24.8828%200.375%2025.332%200.550781%2025.7227%200.902344Z%22%20fill%3D%22white%22%2F%3E%3C%2Fsvg%3E");
    background-position: no-repeat;
    background-size: cover;
    display: inline-block;
    content: "";
    width: 26px;
    height: 19px;
    margin-right: 5px;
}

.form-item {
    margin-bottom: 10px;
}

.form-item label {
    color: #006DB2;
    display: block;
    font-weight: bold;
}

.form-item input {
    border-radius: 6px;
    min-height: 52px;
    border: 1px solid #ddd;
    display: block;
    width: 100%;
}

.q-box {
    border-radius: 20px;
    background: #fff;
    border: 4px solid #000000;
    box-shadow: 4px 4px 0px rgba(0, 0, 0, 0.1);
    position: relative;
    min-height: 50px;
    font-size: 20px;
    margin-bottom: 30px;
}

.q-box::before {
    content: "";
    display: block;
    width: 38px;
    height: 53px;
    background: url(../images/q.png) no-repeat;
    background-size: cover;
    position: absolute;
    top: -14px;
    left: 22px;
}

.q-box__title {
    font-weight: 800;
    font-size: 22px;
    text-align: center;
    margin-top: 10px;
    text-indent: 1em;
}

.q-box__content {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    flex-direction: row;
    -webkit-align-items: center;
    align-items: center;
}

.q-box__img {
    padding: 0 0 10px 20px;
}

.q-box__text {
    padding: 10px;
}

.result__img {
    margin-top: -36px;
    margin-left: 30px;
    margin-bottom: 30px;
    text-align: center;
}

.result__text {
    text-align: center;
}

.result__graph {
    width: 90%;
    margin: 20px auto 30px auto;
}

@media screen and (min-width: 600px) {
    .sp-only {
        display: none;
    }
}

.pc-only {
    display: none;
}

@media screen and (min-width: 600px) {
    .pc-only {
        display: inherit;
    }
}

.u-clearfix {
    *zoom: 1;
}

.u-clearfix:after {
    content: "";
    display: table;
    clear: both;
}

.u-text-align-left {
    text-align: left !important;
}

.u-text-align-right {
    text-align: right !important;
}

.u-text-align-center {
    text-align: center !important;
}

.u-float-left {
    float: left !important;
}

.u-float-right {
    float: right !important;
}

.u-float-none {
    float: none !important;
}

.u-margin-top-0 {
    margin-top: 0px !important;
}

.u-margin-top-5 {
    margin-top: 5px !important;
}

.u-margin-top-10 {
    margin-top: 10px !important;
}

.u-margin-top-15 {
    margin-top: 15px !important;
}

.u-margin-top-20 {
    margin-top: 20px !important;
}

.u-margin-top-25 {
    margin-top: 25px !important;
}

.u-margin-top-30 {
    margin-top: 30px !important;
}

.u-margin-top-35 {
    margin-top: 35px !important;
}

.u-margin-top-40 {
    margin-top: 40px !important;
}

.u-margin-top-45 {
    margin-top: 45px !important;
}

.u-margin-top-50 {
    margin-top: 50px !important;
}

.u-margin-top-55 {
    margin-top: 55px !important;
}

.u-margin-top-60 {
    margin-top: 60px !important;
}

.u-margin-top-65 {
    margin-top: 65px !important;
}

.u-margin-top-70 {
    margin-top: 70px !important;
}

.u-margin-top-75 {
    margin-top: 75px !important;
}

.u-margin-top-80 {
    margin-top: 80px !important;
}

.u-margin-top-85 {
    margin-top: 85px !important;
}

.u-margin-top-90 {
    margin-top: 90px !important;
}

.u-margin-top-95 {
    margin-top: 95px !important;
}

.u-margin-top-100 {
    margin-top: 100px !important;
}

.u-margin-bottom-0 {
    margin-bottom: 0px !important;
}

.u-margin-bottom-5 {
    margin-bottom: 5px !important;
}

.u-margin-bottom-10 {
    margin-bottom: 10px !important;
}

.u-margin-bottom-15 {
    margin-bottom: 15px !important;
}

.u-margin-bottom-20 {
    margin-bottom: 20px !important;
}

.u-margin-bottom-25 {
    margin-bottom: 25px !important;
}

.u-margin-bottom-30 {
    margin-bottom: 30px !important;
}

.u-margin-bottom-35 {
    margin-bottom: 35px !important;
}

.u-margin-bottom-40 {
    margin-bottom: 40px !important;
}

.u-margin-bottom-45 {
    margin-bottom: 45px !important;
}

.u-margin-bottom-50 {
    margin-bottom: 50px !important;
}

.u-margin-bottom-55 {
    margin-bottom: 55px !important;
}

.u-margin-bottom-60 {
    margin-bottom: 60px !important;
}

.u-margin-bottom-65 {
    margin-bottom: 65px !important;
}

.u-margin-bottom-70 {
    margin-bottom: 70px !important;
}

.u-margin-bottom-75 {
    margin-bottom: 75px !important;
}

.u-margin-bottom-80 {
    margin-bottom: 80px !important;
}

.u-margin-bottom-85 {
    margin-bottom: 85px !important;
}

.u-margin-bottom-90 {
    margin-bottom: 90px !important;
}

.u-margin-bottom-95 {
    margin-bottom: 95px !important;
}

.u-margin-bottom-100 {
    margin-bottom: 100px !important;
}

.u-margin-right-0 {
    margin-right: 0px !important;
}

.u-margin-right-5 {
    margin-right: 5px !important;
}

.u-margin-right-10 {
    margin-right: 10px !important;
}

.u-margin-right-15 {
    margin-right: 15px !important;
}

.u-margin-right-20 {
    margin-right: 20px !important;
}

.u-margin-right-25 {
    margin-right: 25px !important;
}

.u-margin-right-30 {
    margin-right: 30px !important;
}

.u-margin-right-35 {
    margin-right: 35px !important;
}

.u-margin-right-40 {
    margin-right: 40px !important;
}

.u-margin-right-45 {
    margin-right: 45px !important;
}

.u-margin-right-50 {
    margin-right: 50px !important;
}

.u-margin-right-55 {
    margin-right: 55px !important;
}

.u-margin-right-60 {
    margin-right: 60px !important;
}

.u-margin-right-65 {
    margin-right: 65px !important;
}

.u-margin-right-70 {
    margin-right: 70px !important;
}

.u-margin-right-75 {
    margin-right: 75px !important;
}

.u-margin-right-80 {
    margin-right: 80px !important;
}

.u-margin-right-85 {
    margin-right: 85px !important;
}

.u-margin-right-90 {
    margin-right: 90px !important;
}

.u-margin-right-95 {
    margin-right: 95px !important;
}

.u-margin-right-100 {
    margin-right: 100px !important;
}

.u-margin-left-0 {
    margin-left: 0px !important;
}

.u-margin-left-5 {
    margin-left: 5px !important;
}

.u-margin-left-10 {
    margin-left: 10px !important;
}

.u-margin-left-15 {
    margin-left: 15px !important;
}

.u-margin-left-20 {
    margin-left: 20px !important;
}

.u-margin-left-25 {
    margin-left: 25px !important;
}

.u-margin-left-30 {
    margin-left: 30px !important;
}

.u-margin-left-35 {
    margin-left: 35px !important;
}

.u-margin-left-40 {
    margin-left: 40px !important;
}

.u-margin-left-45 {
    margin-left: 45px !important;
}

.u-margin-left-50 {
    margin-left: 50px !important;
}

.u-margin-left-55 {
    margin-left: 55px !important;
}

.u-margin-left-60 {
    margin-left: 60px !important;
}

.u-margin-left-65 {
    margin-left: 65px !important;
}

.u-margin-left-70 {
    margin-left: 70px !important;
}

.u-margin-left-75 {
    margin-left: 75px !important;
}

.u-margin-left-80 {
    margin-left: 80px !important;
}

.u-margin-left-85 {
    margin-left: 85px !important;
}

.u-margin-left-90 {
    margin-left: 90px !important;
}

.u-margin-left-95 {
    margin-left: 95px !important;
}

.u-margin-left-100 {
    margin-left: 100px !important;
}

.u-padding-top-0 {
    padding-top: 0px !important;
}

.u-padding-top-5 {
    padding-top: 5px !important;
}

.u-padding-top-10 {
    padding-top: 10px !important;
}

.u-padding-top-15 {
    padding-top: 15px !important;
}

.u-padding-top-20 {
    padding-top: 20px !important;
}

.u-padding-top-25 {
    padding-top: 25px !important;
}

.u-padding-top-30 {
    padding-top: 30px !important;
}

.u-padding-top-35 {
    padding-top: 35px !important;
}

.u-padding-top-40 {
    padding-top: 40px !important;
}

.u-padding-top-45 {
    padding-top: 45px !important;
}

.u-padding-top-50 {
    padding-top: 50px !important;
}

.u-padding-top-55 {
    padding-top: 55px !important;
}

.u-padding-top-60 {
    padding-top: 60px !important;
}

.u-padding-top-65 {
    padding-top: 65px !important;
}

.u-padding-top-70 {
    padding-top: 70px !important;
}

.u-padding-top-75 {
    padding-top: 75px !important;
}

.u-padding-top-80 {
    padding-top: 80px !important;
}

.u-padding-top-85 {
    padding-top: 85px !important;
}

.u-padding-top-90 {
    padding-top: 90px !important;
}

.u-padding-top-95 {
    padding-top: 95px !important;
}

.u-padding-top-100 {
    padding-top: 100px !important;
}

.u-padding-bottom-0 {
    padding-bottom: 0px !important;
}

.u-padding-bottom-5 {
    padding-bottom: 5px !important;
}

.u-padding-bottom-10 {
    padding-bottom: 10px !important;
}

.u-padding-bottom-15 {
    padding-bottom: 15px !important;
}

.u-padding-bottom-20 {
    padding-bottom: 20px !important;
}

.u-padding-bottom-25 {
    padding-bottom: 25px !important;
}

.u-padding-bottom-30 {
    padding-bottom: 30px !important;
}

.u-padding-bottom-35 {
    padding-bottom: 35px !important;
}

.u-padding-bottom-40 {
    padding-bottom: 40px !important;
}

.u-padding-bottom-45 {
    padding-bottom: 45px !important;
}

.u-padding-bottom-50 {
    padding-bottom: 50px !important;
}

.u-padding-bottom-55 {
    padding-bottom: 55px !important;
}

.u-padding-bottom-60 {
    padding-bottom: 60px !important;
}

.u-padding-bottom-65 {
    padding-bottom: 65px !important;
}

.u-padding-bottom-70 {
    padding-bottom: 70px !important;
}

.u-padding-bottom-75 {
    padding-bottom: 75px !important;
}

.u-padding-bottom-80 {
    padding-bottom: 80px !important;
}

.u-padding-bottom-85 {
    padding-bottom: 85px !important;
}

.u-padding-bottom-90 {
    padding-bottom: 90px !important;
}

.u-padding-bottom-95 {
    padding-bottom: 95px !important;
}

.u-padding-bottom-100 {
    padding-bottom: 100px !important;
}

.u-padding-right-0 {
    padding-right: 0px !important;
}

.u-padding-right-5 {
    padding-right: 5px !important;
}

.u-padding-right-10 {
    padding-right: 10px !important;
}

.u-padding-right-15 {
    padding-right: 15px !important;
}

.u-padding-right-20 {
    padding-right: 20px !important;
}

.u-padding-right-25 {
    padding-right: 25px !important;
}

.u-padding-right-30 {
    padding-right: 30px !important;
}

.u-padding-right-35 {
    padding-right: 35px !important;
}

.u-padding-right-40 {
    padding-right: 40px !important;
}

.u-padding-right-45 {
    padding-right: 45px !important;
}

.u-padding-right-50 {
    padding-right: 50px !important;
}

.u-padding-right-55 {
    padding-right: 55px !important;
}

.u-padding-right-60 {
    padding-right: 60px !important;
}

.u-padding-right-65 {
    padding-right: 65px !important;
}

.u-padding-right-70 {
    padding-right: 70px !important;
}

.u-padding-right-75 {
    padding-right: 75px !important;
}

.u-padding-right-80 {
    padding-right: 80px !important;
}

.u-padding-right-85 {
    padding-right: 85px !important;
}

.u-padding-right-90 {
    padding-right: 90px !important;
}

.u-padding-right-95 {
    padding-right: 95px !important;
}

.u-padding-right-100 {
    padding-right: 100px !important;
}

.u-padding-left-0 {
    padding-left: 0px !important;
}

.u-padding-left-5 {
    padding-left: 5px !important;
}

.u-padding-left-10 {
    padding-left: 10px !important;
}

.u-padding-left-15 {
    padding-left: 15px !important;
}

.u-padding-left-20 {
    padding-left: 20px !important;
}

.u-padding-left-25 {
    padding-left: 25px !important;
}

.u-padding-left-30 {
    padding-left: 30px !important;
}

.u-padding-left-35 {
    padding-left: 35px !important;
}

.u-padding-left-40 {
    padding-left: 40px !important;
}

.u-padding-left-45 {
    padding-left: 45px !important;
}

.u-padding-left-50 {
    padding-left: 50px !important;
}

.u-padding-left-55 {
    padding-left: 55px !important;
}

.u-padding-left-60 {
    padding-left: 60px !important;
}

.u-padding-left-65 {
    padding-left: 65px !important;
}

.u-padding-left-70 {
    padding-left: 70px !important;
}

.u-padding-left-75 {
    padding-left: 75px !important;
}

.u-padding-left-80 {
    padding-left: 80px !important;
}

.u-padding-left-85 {
    padding-left: 85px !important;
}

.u-padding-left-90 {
    padding-left: 90px !important;
}

.u-padding-left-95 {
    padding-left: 95px !important;
}

.u-padding-left-100 {
    padding-left: 100px !important;
}

.u-font-size-10 {
    font-size: 10px !important;
}

.u-font-size-11 {
    font-size: 11px !important;
}

.u-font-size-12 {
    font-size: 12px !important;
}

.u-font-size-13 {
    font-size: 13px !important;
}

.u-font-size-14 {
    font-size: 14px !important;
}

.u-font-size-15 {
    font-size: 15px !important;
}

.u-font-size-16 {
    font-size: 16px !important;
}

.u-font-size-17 {
    font-size: 17px !important;
}

.u-font-size-18 {
    font-size: 18px !important;
}

.u-font-size-19 {
    font-size: 19px !important;
}

.u-font-size-20 {
    font-size: 20px !important;
}

/* add */
.kaizen {
    margin-bottom: 50px;
}