/* 標準 */
h1 {
    font-family: 'Noto Sans JP' !important;
    font-size: 3em !important;
    font-weight: 700 !important;
}

h2 {
    font-family: 'Noto Sans JP' !important;
    font-size: 2.5em;
    font-weight: 700 !important;
}

h3 {
    border: none !important;
    margin-top: 40px;
    font-weight: 700 !important;
}

h4 {
    background-color: white !important;
    border-left: 16px solid #A6DEA1;
    border-bottom: 2px solid #A6DEA1;
    font-size: 2em;
    font-weight: 700 !important;
}

h3::after {
    display: none !important;
}

p {
    font-family: 'Noto Sans JP' !important;
    font-weight: 100;
    font-size: 1.5em;
}

label {
    font-size: 1.5em;
}

/* yuigonsyo共通コンポーネント */
.yuigonsyo-h2 {
    border-top: none;
    border-right: none;
    border-left: none;
    border-bottom: dotted 4px #A6DEA1;
}

#yuigonsyo-main-contents {
    background-color: #EBEBEB;
    padding: 20px 20px 20px 20px;
}

.yuigonsyo-content {
    margin-bottom: 40px;
}

.yuigonsyo-floating-content {
    background-color: white;
    padding: 20px 4% 20px 4%;
    margin-top: 20px;
    border-radius: 24px;
}

.yuigonsyo-component {
    margin-top: 20px;
}

/* p */
.yuigonsyo-p {
    font-weight: 300;
}

.yuigonsyo-p-bold {
    font-weight: 600;
}

.yuigonsyo-p-red {
    color: red;
    font-weight: 500;
}

.yuigonsyo-description {
    margin: 16px 0px;
}

/* inputs関連 */
.yuigonsyo-input-box-half {
    width: 50% !important;
}

.yuigonsyo-name-inputs {
    display: block;
}

.yuigonsyo-name-input {
    margin-top: 8px;
}

/* label関連 */
.yuigonsyo-label-input-box {
    font-weight: 600;
}

/*セレクトボックス関連*/
.yuigonsyo-select {
    width: 50%;
}

/* チェックボックス関連 */
.yuigonsyo-checkboxes {
    display: flex;
}

.yuigonsyo-checkboxes {}

.yuigonsyo-checkbox-input {
    width: 2em;
    height: 2em;
    margin-right: 8px;
}

.yuigonsyo-checkbox {
    display: flex;
    align-items: center;
}

.yuigonsyo-checkbox label {
    /* ラベルの位置 */
    font-size: 1.5em;
    /* ボタンのサイズに合わせる */
    cursor: pointer;
    margin-right: 40px;
}

.yuigonsyo-checkbox-title {
    margin-bottom: 20px;
}

.yuigonsyo-break-page {
    break-after: page;
}

@media (min-width: 768px) {
    #yuigonsyo-main-contents {
        margin: 20px auto 20px auto;
        max-width: 60%;
        background-color: #EBEBEB;
        padding: 0px 40px 40px 40px;
    }

    .yuigonsyo-content {}

    .yuigonsyo-name-inputs {
        display: flex;
    }

    .yuigonsyo-name-input {
        margin-right: 40px;
    }

    .yuigonsyo-floating-content {
        background-color: white;
        padding: 40px 40px 40px 40px;
        margin-top: 40px;
        border-radius: 24px;
    }

}