@charset "utf-8";

* {
    -webkit-tap-highlight-color: transparent;
}

*, *::before, *::after {
    box-sizing: border-box;
}

html {
    font-family: sans-serif;
    line-height: 1.15;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
}

html {
    font-size: 16px;
    -ms-overflow-style: scrollbar;
    -webkit-tap-highlight-color: transparent;
}

body {
    /*font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;*/
    font-size: 1rem;
    line-height: 1.5;
    color: #37474F;
    background-color: #fff;
}

body {
    -webkit-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

button, input, optgroup, select, textarea {
    font: inherit;
    margin: 0;
}

button, input {
    overflow: visible;
}

button, select {
    text-transform: none;
}

a, area, button, [role="button"], input, label, select, summary, textarea {
    touch-action: manipulation;
}

input, button, select, textarea {
    line-height: inherit;
}

textarea {
    resize: vertical;
}

[type="checkbox"], [type="radio"] {
    box-sizing: border-box;
    padding: 0;
}

h2 span.tb_icon {
    box-sizing: unset;
}

.mb10 {
    margin-bottom: 10px;
}

.mb15 {
    margin-bottom: 15px;
}

.mb20 {
    margin-bottom: 20px;
}

.mb25 {
    margin-bottom: 25px;
}

.mb30 {
    margin-bottom: 30px;
}

.mb65 {
    margin-bottom: 65px;
}

.mb75 {
    margin-bottom: 75px;
}

.w30 {
    width: 30%;
}

.w50 {
    width: 50%;
}

.w70 {
    width: 70%;
}

.w100 {
    width: 100%;
}

.w570 {
    width: 570px;
}

.ml15 {
    margin-left: 15px;
}

.mr15 {
    margin-right: 15px;
}

.page_info {
    width: 890px;
    margin: 0 auto 50px;
}

#form .bold {
    font-weight: bold;
}

#form .title-blc {
    text-align: center;
}

#form .form-elements {
    margin-bottom: 35px;
}

/*#form .cnt-group {
  border: 5px solid #d2e4f7;
  border-radius: 10px;
  padding: 30px;
  margin-bottom: 15px;
}*/
#form .page_box dd>.form-group {
    margin-bottom: 20px;
}

#form .page_box dd>.form-group:last-of-type {
    margin-bottom: 0px;
}

@media screen and (min-width: 681px) {
    #form .form-group, #form .cnt-blc, #form .other_blc {
        display: flex;
    }
}

#form .form-group, #form .cnt-blc, #form .other_blc {
    align-items: flex-start;
}

#form .form-group>label, #form .cnt-blc>label, #form .other_blc>label {
    padding-top: 7px;
}

#form .other_blc {
    margin-top: 15px;
}

#form dt {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 20px;
}

#form dd {
    padding: 0 30px;
    width: 100%;
}

#form label {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin-right: 1em;
}

#form .row {
    display: flex;
    margin-left: -8px;
    margin-right: -8px;
}

#form .row div[class*='col-'] {
    padding: 0 8px;
}

.form-control {
    display: block;
    width: 100%;
    padding: 0.5rem 0.75rem;
    font-size: 1rem;
    line-height: 1.25;
    color: #546E7A;
    background-color: #fff;
    background-image: none;
    background-clip: padding-box;
    border: 1px solid rgba(0, 0, 0, 0.15);
    overflow: hidden;
    border-radius: 0.25rem;
}

.form-control:focus {
    color: #546E7A;
    background-color: #fff;
    border-color: #66afe9;
    outline: none
}

.form-control::placeholder {
    color: #999;
    opacity: 1
}

#form .address-blc {
    padding-left: 2.3em;
}

#form .address-blc label {
    margin-bottom: 8px;
}

#form h3 {
    font-size: 26px;
    font-weight: bold;
    margin-bottom: 25px;
    text-align: center;
}

#form .subtitle {
    margin-bottom: 30px;
}

#form .alert {
    margin-bottom: 30px;
}

.noflex {
    display: block !important;
}

.noflexib {
    display: inline-block !important;
}

.flex {
    display: flex;
}

.flex.center {
    align-items: center;
}

.postal_code {
    width: 30%;
}

.region {
    width: 70%;
}

.street_address {
    width: 60%;
}

.extended_address {
    width: 40%;
}

.red {
    color: #cc0033;
}

.postal_code input, .region input, .street_address input, .extended_address input, .building input {
    width: 100%;
}

/*--- 　セレクト ---*/
@media screen and (min-width: 901px) {
    #form .col-md-60 {
        width: 60%;
    }

    #form .col-md-40 {
        width: 40%;
    }
}

#form .col-xs-50 {
    width: 50%;
}

#form .col-xs-40 {
    width: 40%;
}

#form .col-xs-30 {
    width: 30%;
}

#form .col-xs-33 {
    width: 33%;
}

#form .row.row-select-button-group {
    display: flex;
    flex-direction: none;
    flex-wrap: wrap;
}

#form .sf-select-button {
    border: 1px solid rgba(0, 0, 0, 0.15);
    border-radius: 4px;
    padding: 8px 15px;
    display: flex;
    align-items: center;
    height: 100%;
    box-sizing: border-box;
    margin: 0;
    word-break: break-all;
}

#form .sf-radiobutton {
    display: flex;
    align-items: center;
}

#form .sf-select-button input {
    margin-right: 8px;
    display: inline-block;
}

#form .sf-radiobutton input[type="radio"] {
    visibility: hidden;
    position: absolute;
}

#form .sf-radiobutton input[type="radio"]+.box {
    border-radius: 20px;
    margin-right: 8px;
    position: relative;
    width: 20px;
    height: 20px;
    display: block;
    position: relative;
    transition: all 0.25s ease;
    transform: scale(1);
    border: 1px solid #90A4AE;
    float: left;
}

#form .sf-radiobutton input[type="radio"]+.box:after {
    content: "";
    transform: scale(0);
    transition: all 0.25s ease;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: 90%;
    background-position: 50% 50%;
    background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTAwcHgiIGhlaWdodD0iMTAwcHgiIHZpZXdCb3g9IjAgMCAxMDAgMTAwIiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogICAgPCEtLSBHZW5lcmF0b3I6IFNrZXRjaCA0MC4zICgzMzgzOSkgLSBodHRwOi8vd3d3LmJvaGVtaWFuY29kaW5nLmNvbS9za2V0Y2ggLS0+CiAgICA8dGl0bGU+bWFpbC1zZW5kIGNvcHk8L3RpdGxlPgogICAgPGRlc2M+Q3JlYXRlZCB3aXRoIFNrZXRjaC48L2Rlc2M+CiAgICA8ZGVmcz48L2RlZnM+CiAgICA8ZyBpZD0iSUNPTiIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9Im1haWwtc2VuZC1jb3B5IiBmaWxsPSIjRkZGRkZGIj4KICAgICAgICAgICAgPGNpcmNsZSBpZD0iT3ZhbC0zIiBjeD0iNTAiIGN5PSI1MCIgcj0iMzYiPjwvY2lyY2xlPgogICAgICAgIDwvZz4KICAgIDwvZz4KPC9zdmc+);
}

#form .sf-radiobutton input[type="radio"]:checked+.box {
    border: 1px solid #00BCD4;
    background-color: #00BCD4;
}

#form .sf-radiobutton input[type="radio"]:checked+.box:after {
    transform: scale(1);
}

#form .sf-select-button .option-text {
    word-break: break-all;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

select.form-control:not([size]):not([multiple]) {
    height: calc(2.5rem - 2px);
}

/*--- 個人情報 ---*/
#form .inline-f {
    height: 250px;
    overflow-y: auto;
    border: 1px solid #707780;
    border-radius: 5px;
    padding: 15px 30px;
    margin-bottom: 50px;
}

/*--- ラジオボタン ---*/
#form .sf-checkbox input[type="checkbox"] {
    visibility: hidden;
    position: absolute;
}

#form .sf-checkbox input[type="checkbox"]+.box {
    border-radius: 4px;
    margin-right: 8px;
    position: relative;
    width: 20px;
    height: 20px;
    display: block;
    border: 1px solid #90A4AE;
}

#form .sf-checkbox input[type="checkbox"]+.box:after {
    content: "";
    transform: scale(0);
    transition: all 0.25s ease;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: 90%;
    background-position: 50% 50%;
    background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTAwcHgiIGhlaWdodD0iMTAwcHgiIHZpZXdCb3g9IjAgMCAxMDAgMTAwIiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogICAgPCEtLSBHZW5lcmF0b3I6IFNrZXRjaCA0MC4zICgzMzgzOSkgLSBodHRwOi8vd3d3LmJvaGVtaWFuY29kaW5nLmNvbS9za2V0Y2ggLS0+CiAgICA8dGl0bGU+Y2hlY2ttYXJrPC90aXRsZT4KICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPgogICAgPGRlZnM+PC9kZWZzPgogICAgPGcgaWQ9IklDT04iIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPgogICAgICAgIDxnIGlkPSJjaGVja21hcmsiIGZpbGw9IiNGRkZGRkYiPgogICAgICAgICAgICA8ZyBpZD0iQ2hlY2ttYXJrIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxMS4wMDAwMDAsIDIyLjAwMDAwMCkiPgogICAgICAgICAgICAgICAgPGcgaWQ9IkxheWVyXzEiPgogICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik03MS4yOTY3MDAxLDEuMzM2Njg5NzQgTDIyLjgzNTE2MTYsNTAuNTI1ODc4OSBMMjguMjQxNzYxNCw1MC41MjU4Nzg5IEw2LjcwMzI5OTkxLDI4LjY2NDAxNzEgQzUuMjMyMzk0MjYsMjcuMTcxMDI1OCAyLjgyOTY4MTA1LDI3LjE1MzEyMTggMS4zMzY2ODk3NCwyOC42MjQwMjc0IEMtMC4xNTYzMDE1NzUsMzAuMDk0OTMzMSAtMC4xNzQyMDU1NDksMzIuNDk3NjQ2MyAxLjI5NjcwMDA5LDMzLjk5MDYzNzYgTDIyLjgzNTE2MTYsNTUuODUyNDk5NSBDMjQuMzIxNTkxNiw1Ny4zNjEyNDgyIDI2Ljc1NTMzMTUsNTcuMzYxMjQ4MiAyOC4yNDE3NjE0LDU1Ljg1MjQ5OTUgTDc2LjcwMzI5OTksNi42NjMzMTAyNiBDNzguMTc0MjA1NSw1LjE3MDMxODk1IDc4LjE1NjMwMTYsMi43Njc2MDU3NCA3Ni42NjMzMTAzLDEuMjk2NzAwMDkgQzc1LjE3MDMxOSwtMC4xNzQyMDU1NDkgNzIuNzY3NjA1NywtMC4xNTYzMDE1NzUgNzEuMjk2NzAwMSwxLjMzNjY4OTc0IEw3MS4yOTY3MDAxLDEuMzM2Njg5NzQgWiIgaWQ9IlNoYXBlIj48L3BhdGg+CiAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgIDwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==);
}

#form .sf-checkbox input[type="checkbox"]:checked+.box {
    border: 1px solid #00BCD4;
    background-color: #00BCD4;
}

#form .sf-checkbox input[type="checkbox"]:checked+.box:after {
    transform: scale(1);
}

#form .sf-checkbox input[type="checkbox"].form-control-danger+.box {
    border-color: #d9534f;
}

#form .sf-radiobutton input[type="radio"].form-control-danger+.box {
    border-color: #d9534f;
}

/*--- タグ ---*/
.tag {
    display: inline-block;
    padding: 0.25em 0.4em;
    font-size: 75%;
    /*font-weight: bold;*/
    line-height: 1;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    border-radius: 0.25rem;
    margin-right: 1em;
}

.tag-danger {
    background-color: #cc0033;
}

.tag-default {
    background-color: #78909C;
}

/*--- ボタン ---*/
.sf-btn-group {
    display: flex;
    justify-content: center;
}

.sf-btn-group .sf-btn {
    display: flex;
    flex: 1;
    text-align: center;
    justify-content: center;
    margin-right: 12px;
}

.sf-btn.sf-btn-lg {
    padding: 0.5em 0;
    font-size: 20px;
    line-height: 150%;
    border-radius: 25px;
}

.sf-btn.sf-btn-block {
    display: block;
    width: 100%;
    max-width: 350px;
    box-shadow: 0px 0px 15px -2px rgb(0 0 0 / 30%);
}

.sf-btn {
    background-color: #ddd;
    display: inline-block;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    touch-action: manipulation;
    cursor: pointer;
    user-select: none;
    border: 1px solid transparent;
    padding: 0.25em 0.25em;
    font-size: 14px;
    line-height: 150%;
    border-radius: 4px;
}

.sf-btn--blue {
    background-color: #00C0FF;
    color: #fff;
    font-weight: bold;
}

.sf-btn--blue span {
    position: relative;
    padding-left: 1.4em;
}

.sf-btn--blue span:before {
    content: "";
    display: inline-block;
    width: 20px;
    height: 20px;
    background: url(../../../shared/img/parts/w_arrow_r.png) no-repeat;
    background-size: 100% auto;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}

.btn {
    display: inline-block;
    font-weight: normal;
    line-height: 1.25;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    cursor: pointer;
    user-select: none;
    border: 1px solid transparent;
    padding: 0.5rem 1rem;
    font-size: 1rem;
    border-radius: 0.25rem;
}

.sf-btn-group .sf-btn:last-child {
    margin-right: 0;
}

.disabled:disabled {
    background-color: #efefef;
}

.radio_dis {
    background-color: #efefef;
}

/*--- 成功 ---*/
.has-success .form-control-success {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%235cb85c' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3E%3C/svg%3E");
}

.has-success .form-control {
    border-color: #5cb85c;
}

.form-control-success, .form-control-warning, .form-control-danger {
    padding-right: 2.25rem;
    background-repeat: no-repeat;
    background-position: center right 0.625rem;
    background-size: 1.25rem 1.25rem;
}

#form .has-success .form-radio-field, #form .has-success .form-checkbox-field {
    border-color: #5cb85c;
}

/*--- エラー ---*/
.alert {
    padding: 0.75rem 1.25rem;
    margin-bottom: 1rem;
    border: 1px solid transparent;
    border-radius: 0.25rem;
}

.alert-danger {
    background-color: #f2dede;
    border-color: #ebcccc;
    color: #a94442;
}

.has-danger .form-control-danger {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23d9534f' viewBox='-2 -2 7 7'%3E%3Cpath stroke='%23d9534f' d='M0 0l3 3m0-3L0 3'/%3E%3Ccircle r='.5'/%3E%3Ccircle cx='3' r='.5'/%3E%3Ccircle cy='3' r='.5'/%3E%3Ccircle cx='3' cy='3' r='.5'/%3E%3C/svg%3E");
}

.has-danger .form-control {
    border-color: #d9534f;
}

.has-danger .form-control-feedback, .has-danger .form-control-label, .has-danger .form-check-label, .has-danger .form-check-inline, .has-danger .custom-control, .form-control-danger+.form-control-feedback {
    color: #d9534f;
}

.form-control-feedback {
    margin-top: 0.25rem;
}

#form .has-danger .form-radio-field, #form .has-danger .form-checkbox-field {
    border-color: #d9534f;
}

#form .has-success .form-radio-field, #form .has-success .form-checkbox-field {
    border-color: #5cb85c;
}

/*--- 確認時 ---*/
#form .conf_area .form-group {
    align-items: center;
}

dl.page_box__child_second {
    padding-top: 30px;
}

#form .conf_area .form-group>label, #form .conf_area .cnt-blc>label {
    padding-top: 0px;
}

.conf_c {
    color: #6a3908;
    overflow-wrap: anywhere;
}

.form header {
    padding: 0;
}

.form header .head_logo {
    margin-bottom: 10px;
}

.blue_btn {
    color: #ffffff;
    background-color: #0084cb;
    border-radius: 5px;
    text-align: center;
    line-height: 1.3em;
    padding: 15px 20px;
}

.blue_btn:before {
    font-family: 'Font Awesome 5 Free';
    font-size: 16px;
    font-weight: 900;
    content: "\f0a9";
    margin-right: 5px;
}

.blue_btn {
    display: inline-flex;
    justify-content: center;
    align-items: center;
}

.blue_btn:hover {
    color: #ffffff;
    opacity: 0.5;
}

.padt7 {
    padding-top: 7px;
}

.hover:hover {
    opacity: 0.5;
}

.head_contents {
    border-bottom: 5px solid #363b43;
}

.head_contents .cont {
    display: flex;
    justify-content: flex-start;
    align-items: flex-end;
}

.head_contents .logo img {
    height: 50px;
}

#form .page_box {
    border: 5px solid #c7f1ff;
    border-radius: 20px;
    box-shadow: none;
    padding: 35px 40px;
    margin-bottom: 16px;
}

h1.h1_title {
    padding: 0.9em 0 0.6em;
}

#form .subtitle span {
    display: inline-block;
    padding: 0.25em 0.4em;
    line-height: 1;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    border-radius: 0.25rem;
    margin-right: 1em;
}

.foot_contents {
    padding: 35px 0 20px;
}

.foot_contents .cont {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    max-width: 950px;
}

.foot_contents img {
    height: 40px;
}

footer .copyright {
    margin-left: 20px;
}

#form .send_chk {
    padding: 3px 10px;
    border: 1px solid #707780;
    border-radius: 5px;
}

#form .whp2, #form .whp3 {
    display: none;
}

/* 20221118 追加tomita */
.page_caution::before {
    position: absolute;
    content: "※";
    top: 0;
    left: 0;
}

.page_caution {
    position: relative;
    padding-left: 1.3em;
}

/* sf-trainees */
.sf-trainees {
    max-width: 348px;
    /* background-color: #ffdaa9; */
    border: 3px solid #D3DEE6;
    margin-bottom: 2em;
    padding: 1em;
}

.space-between {
    justify-content: space-between;
}


#form .page_box--2 {
    padding: 90px 80px 80px 90px;
}

.dlsec {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin-bottom: 120px;
}

.dlsec__text {
    font-size: 22px;
}

.dlsec__text2 {
    font-size: 16px;
}

.dlsec__btn {
    max-width: 350px;
    width: 100%;
    margin-top: 24px;
}

dd.nopd {
    padding-left: 0 !important;
}

.blnum {}

.blnum>li {
    position: relative;
    padding-left: 40px;
}

.blnum>li::before {
    content: "";
    display: block;
    width: 30px;
    height: 30px;
    background-image: url(../img/icon/num1.svg);
    background-size: 100%;
    background-repeat: no-repeat;
    position: absolute;
    left: 0;
    top: 0;
}

.blnum>li:nth-child(2):before {
    background-image: url(../img/icon/num2.svg);
}

.blnum>li:nth-child(3):before {
    background-image: url(../img/icon/num3.svg);
}

.blnum>li:nth-child(4):before {
    background-image: url(../img/icon/num4.svg);
}

.blnum__link {
    display: block;
    margin-bottom: 30px;
}

.blnum>li p {
    font-size: 16px;
}

.blnum>li+li {
    margin-top: 40px;
}

.blnum>li ul {}

.blnum>li ul li {
    font-size: 16px;
    position: relative;
    padding-left: 1em;
}

.blnum>li ul li+li {
    margin-top: 10px;
}

.blnum>li ul li::before {
    content: "・";
    position: absolute;
    left: 0;
    top: 0;
}

.notes {
    position: relative;
    padding-left: 1.1em;
}

.notes::before {
    content: "※";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
}

.notes2 {
    position: relative;
    padding-left: 1.1em;
    margin-bottom: 0;
    margin-left: 1.1em;
}

ul+.notes2 {
    margin-top: 10px;
}

.notes2+.notes2 {
    margin-top: 6px;
}

.notes2::before {
    content: "※";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
}

.notes3 {
    position: relative;
    padding-left: 1.1em;
    font-size: 16px;
    margin-top: 50px;
}

.notes3::before {
    content: "※";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
}

.caution {
    padding-top: 0.5em;
    margin-bottom: 1em;
}

p.caution-child {
    font-size: 15px;
    margin-bottom: 0;
}

p.asterisk {
    text-indent: -1em;
    padding-left: 1em;
}

button.sf-btn.sf-btn-block.sf-btn-lg {
    text-wrap: balance;
}

@media screen and (min-width:601px) {
    .row.row-select-button-group {
        padding-left: 52px;
    }

}

@media screen and (max-width: 600px) {
    button.sf-btn.sf-btn-block.sf-btn-lg {
        margin: 10px;
    }
}

.multiple_items {
    border-top: dotted 0.5px #333;
    padding-top: 20px;
}

.top_message {
    display: flex;
    justify-content: space-between;
}

@media screen and (max-width: 990px) {
    .top_message {
        margin: auto;
    }
}

@media screen and (min-width: 601px) {
    p.page_cont-top_text {
        font-size: 15px;
    }
}

@media screen and (max-width: 600px) {
    .top_message {
        flex-direction: column;
    }

    p.page_cont-top_text {
        font-size: 14px;
    }
}

.page_cont-top_inner {
    max-width: 380px;
    border: 3px solid #D3DEE6;
    margin-bottom: 2em;
    padding: 1em;
}

p.margin-bottom-0 {
    margin-bottom: 0;
}

.radio_blc_option_p {
    margin-top:1.5em;
    margin-bottom:0.5em;
}

@media screen and (min-width: 601px) {
    .radio_blc_option {
        padding-left: 52px;
    }
}

@media screen and (max-width: 600px) {
    .radio_blc_option {
        padding-left: 0px;
    }
}

/****** 求人お申込み（06_求人） 1ページ目 > ■ その他情報 > 加入保険 ******/
.div_insurance_other {
    width: 100%;
    box-sizing: border-box;
}

@media screen and (min-width: 601px) {
    .div_insurance_other {
        margin-left: -8px;
        padding-left: 52px;
    }
}

/****** 求人お申込み（06_求人） 1ページ目 > ■ その他情報 > 休憩時間 ******/
.div_break_time {
    width: 200px !important;
    display:flex;
    align-items: baseline;
    gap:6px;
}

.div_break_time_unit {
    white-space:nowrap;
    margin: 0 !important;
}

@media screen and (max-width: 768px) {
    .break-time-row {
        flex-direction: column;
    }
    .break-time-row .col-xs-33 {
        width: 100%;
        margin-bottom: 12px;
    }
}
/****************************************************/

/****** 求人お申込み（06_求人） 1ページ目 > ■ その他情報 > 時間外労働時間 ******/
/* 横並びにするための設定 */
.flex-container-row {
    display: flex;
    align-items: center; /* 垂直方向の中央揃え */
    gap: 15px;           /* 要素間の余白 */
    margin-top: 10px;
}

/* ラベルが折り返されないように固定幅を持たせる（調整可） */
.label-nowrap {
    white-space: nowrap; /* 改行禁止 */
    flex-shrink: 0;      /* 圧縮禁止 */
    margin-bottom: 0 !important; /* 既存スタイルの余白をリセット */
}

/* 入力欄と単位の親要素 */
.input-unit-wrap {
    flex-grow: 1;        /* 残りの幅を占有 */
}

/* 入力欄自体の幅（お好みで調整） */
.input-unit-wrap input.form-control {
    width: 120px !important;
    display: inline-block;
}

/* 単位テキスト */
.unit-text {
    white-space: nowrap;
}

/* スマホ表示の際は、入力欄とラベル「単位」をブロック要素にして改行させる */
@media screen and (max-width: 600px) {
    .u-db-sp {
        display: block;
        width: 100%;
        margin-bottom: 10px; /* テキストボックスとの間に少し余白を作る */
    }

    /* 親要素のflex解除（もし横並びが固定されている場合） */
    .flex-container-row {
        display: block !important;
    }

    /* 入力欄の配置調整 */
    .input-unit-wrap {
        display: block;
        width: 100%;
    }
}

.overtime_work_hours_confirm_flex {
    display: inline-flex !important;
    align-items: center;
    flex-wrap: nowrap; /* 絶対に折り返さない */
}

/* labelタグが原因で改行されるのを防ぐ（単位部分） */
.overtime_work_hours_unit_label {
    display: inline !important;
    margin: 0 !important;
    padding: 0 !important;
}
/****************************************************/

/****** 求人お申込み（06_求人） 1ページ目 > ■ その他情報 > 加入保険、週休二日制 ******/
.div__padding {
    padding: 0 8px;
}
/****************************************************/

/****** 求人お申込み（06_求人） 2ページ目 > ■ 処遇待遇条件等 ******/

/* 契約期間 */
@media screen and (max-width: 501px) {
    /* ラジオと年月グループを縦並びに */
    .contract-period-row {
        flex-direction: column;
        align-items: flex-start !important;
    }
    /* 年・月は横1行のままキープ */
    .contract-period-inputs {
        flex-direction: row;
    }
}

/****************************************************/

.input-unit {
    width: 120px !important;
}

@media screen and (max-width: 788px) {
    .div_business_content_change_sp {
        width: 100%;
        align-items: center !important;
        display: flex;        
    }
}

.p__text {
    font-size: 1rem;
}

.confirm-multiline {
    display: inline-block;
    white-space: pre-wrap;
    word-break: break-word;
    overflow-wrap: anywhere;
}

.p__text__large {
    font-size: 1.14rem;
}
