    @charset 'utf-8';
    /*=================
        common
    ==================*/
    .category-wrap {
        display: flex;
        gap: 40px;
        justify-content: end;
    }
    .category-wrap li {
        border-bottom: 0;
        padding: 0;
    }
    .category-wrap li a {
        font-family: var(--en);
        font-size: 1.6rem;
    }
    .category-wrap li.on a {
        opacity: 0.5;
    }
    .list li {
        padding: 0 16px 32px 16px;
        margin-bottom: 32px;
        border-bottom: 1px solid var(--color1);
    }
    .list li a {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
    .list li a .leftBox {
        width: 20.61%;
    }
    .list li a .leftBox .imgWrap {
        overflow: hidden;
    }
    .list li a .leftBox .imgWrap img {
        width: 100%;
        transition: 0.4s all;
    }
    .list li a:hover .leftBox .imgWrap img {
        -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
        transform: scale(1.1);
    }
    .list li a .rightBox {
        width: 75.86%;
    }
    p.status {
        font-family: var(--jpMin);
        font-size: 1.4rem;
        padding: 6px 10px;
        min-width: 107px;
        text-align: center;
        display: inline-block;
        transition: 0.4s all;
        margin-bottom: 16px;
        color: #fff;
    }
    p.status#pre {
        background: var(--color2);
        opacity: 0.5;
    }
    p.status#end {
        background: var(--color2);
        opacity: 0.5;
    }
    p.status#applied {
        background: var(--color2);
        opacity: 0.5;
    }
    p.status#open {
        background: var(--color1);
    }
    p.tag {
        border: 1px solid var(--color1);
        display: inline-block;
        background: #fff;
        font-family: var(--jpMin);
        font-size: 1.4rem;
        padding: 6px 10px;
        min-width: 107px;
        text-align: center;
        display: inline-block;
        transition: 0.4s all;
        margin-bottom: 16px;
        color: var(--color1);
    }
    .rightBox .meta {
        display: flex;
        align-items: center;
    }
    .rightBox .date {
        color: #b2b2b2;
        font-size: 1.4rem;
        margin: 0 10px 16px 0;
    }
    .rightBox .ttl {
        font-family: var(--jpMin);
        font-size: clamp(1.6rem, 4.26vw, 1.8rem);
        margin-bottom: 16px;
        transition: 0.4s all;
    }
    .rightBox .detail {
        font-size: clamp(1.2rem, 3.2vw, 1.4rem);
        line-height: 1.5;
        transition: 0.4s all;
    }
    .list li a:hover .rightBox .ttl,
    .list li a:hover .rightBox .detail {
        opacity: 0.5;
    }
    @media screen and (max-width: 768px) {
        .list li a .leftBox {
            width: 30.61%;
        }
        .list li a .rightBox {
            width: 65.86%;
        }
        .category-wrap {
            margin-bottom: 32px;
        }
        p.status {
            font-size: 1.2rem;
            min-width: 80px;
            margin-bottom: 10px;
        }
        p.tag {
            font-size: 1.2rem;
            min-width: 80px;
            margin-bottom: 10px;
        }
        .list li a .rightBox .ttl {
            margin-bottom: 10px;
        }
        .list li {
            padding: 0 0 32px 0;
        }
        .category-wrap {
            justify-content: flex-start;
            margin-bottom: 16px;
        }
        .entry-message {
            padding-top: 16px;
        }
    }
    @media screen and (max-width: 500px) {
        .list li a {
            display: block;
        }
        .list li a .leftBox {
            width: 100%;
            margin: 0 auto 24px;
        }
        .list li a .rightBox {
            width: 100%;
        }
    }
    /*==============
    application
    ===============*/
    /*=================
    applicationDetail
    ==================*/
    #applicationDetail .hero {
        max-width: 324px;
        width: 100%;
        margin: 0 auto 40px;
    }
    #applicationDetail h3 {
        padding-bottom: 0;
        border-bottom: none;
        font-size: clamp(1.6rem, 4.26vw, 2.4rem);
        font-family: var(--jpMin);
        font-weight: 500;
        margin-bottom: 40px;
    }
    #applicationDetail .inner {
        display: flex;
        justify-content: space-between;
    }
    #applicationDetail .inner .left {
        width: 60.19%;
    }
    #applicationDetail .inner .left .anchor-link {
        display: flex;
        gap: 32px;
        flex-wrap: wrap;
        margin-bottom: 24px;
    }
    #applicationDetail .inner .left .anchor-link li a {
        position: relative;
        padding-left: 20px;
        transition: 0.4s all;
        font-size: 1.2rem;
    }
    #applicationDetail .inner .left .anchor-link li a::after {
        content: "";
        background-image: url(../img/anchor-link.gif);
        width: 11px;
        height: 11px;
        position: absolute;
        top: 50%;
        left: 0%;
        transform: translateY(-50%);
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
    }
    #applicationDetail .inner .left .anchor-link li a:hover {
        opacity: 0.5;
    }
    #applicationDetail .inner .left table {
        width: 100%;
    }
    #applicationDetail .inner .left th,
    #applicationDetail .inner .left td {
        border: solid 1px #bfbfbf;
        border-collapse: collapse;
        text-align: center;
        padding: 16px 0;
    }
    #applicationDetail .inner .left td span {
        text-align: center;
        display: block;
    }
    #applicationDetail .inner .left thead th {
        padding: 10px 0;
        background-color: #f2f2f2;
        font-size: 1.2rem;
    }
    #applicationDetail .inner .right {
        width: 34.91%;
    }
    #applicationDetail .inner .right .linkBtn li {
        margin-bottom: 16px;
    }
    #applicationDetail .inner .right .linkBtn li a {
        font-size: 1.4rem;
        width: 100%;
        padding: 20px 0;
        background: var(--color1);
        color: #fff;
        display: block;
        text-align: center;
        border-radius: 5px;
        transition: 0.4s all;
    }
    #applicationDetail .inner .right .linkBtn li a.gray {
        background: #fff;
        color: #7b7b7b;
        border: 1px solid #7b7b7b;
        font-weight: bold;
        transition: 0.4s all;
    }
    #applicationDetail .inner .right .linkBtn li a:hover,
    #applicationDetail .inner .right .linkBtn li a.gray:hover {
        opacity: 0.5;
    }
    #applicationDetail .planDetail .ttl {
        margin-bottom: 32px;
        padding-bottom: 32px;
        border-bottom: 1px solid var(--color1);
    }
    #applicationDetail .planDetail .subDetail {
        margin-bottom: 80px;
    }
    #applicationDetail .planDetail .detail {
        font-size: clamp(1.2rem, 3.2vw, 1.4rem);
        line-height: 1.5;
        transition: 0.4s all;
    }
    #applicationDetail .planDetail .status#end {
        background: var(--color2);
        opacity: 0.5;
    }
    #applicationDetail .emphasis {
        color: red;
        font-family: var(--jp);
        font-size: 1.3rem;
        line-height: 1.8;
    }
    #applicationDetail .applyBtn a {
        border: 1px solid var(--color1);
        background: var(--color1);
        color: #fff;
        padding: 15px 0;
        cursor: pointer;
        margin: 56px auto 0;
        display: block;
        border-radius: 5px;
        transition: 0.4s all;
        font-weight: bold;
        text-align: center;
        font-size: 1.6rem;
    }
    .pagination {
        text-align: center;
        margin-top: 56px;
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 6%;
    }
    #applicationDetail .applyBtn a:hover {
        background: #fff;
        color: var(--color1);
    }
    #applicationDetail .applyBtn2 {
        display: flex;
        justify-content: center;
    }
    #applicationDetail .applyBtn2 .change,
    #applicationDetail .applyBtn2 .cancel {
        width: calc(50% - 24px);
    }
    #applicationDetail .applyBtn2 a {
        margin: 56px 12px 0;
    }
    #applicationDetail .applyBtn2 .change a {
        border: 1px solid #9f9f9f;
        background: #9f9f9f;
    }
    #applicationDetail .applyBtn2 .change a:hover {
        opacity: 0.5;
        color: #fff;
    }
    @media screen and (max-width: 900px) {
        #applicationDetail .inner .left .anchor-link {
            gap: 5%;
        }
    }
    @media screen and (max-width: 768px) {
        #applicationDetail .hero {
            margin-bottom: 24px;
        }
        #applicationDetail h3 {
            margin-bottom: 16px;
        }
        #applicationDetail .inner {
            display: block;
        }
        #applicationDetail .inner .left,
        #applicationDetail .inner .right {
            width: 100%;
        }
        #applicationDetail .inner .left table {
            margin-bottom: 40px;
        }
        #applicationDetail .inner .right {
            display: flex;
            flex-wrap: wrap;
        }
        #applicationDetail .inner .right .notice {
            width: 100%;
            order: 1;
        }
        #applicationDetail .inner .right .linkBtn {
            width: 100%;
            order: 2;
            margin-top: 24px;
        }
        #applicationDetail .inner .right .linkBtn li:last-child {
            margin-bottom: 0;
        }
        #applicationDetail .inner .left th,
        #applicationDetail .inner .left td {
            padding: 16px 1%;
        }
        #applicationDetail .planDetail .tag {
            font-size: 1.2rem;
            min-width: 80px;
            margin-bottom: 10px;
        }
        #applicationDetail .planDetail .status {
            font-size: 1.2rem;
            min-width: 80px;
            margin-bottom: 10px;
        }
        #applicationDetail .planDetail .ttl {
            margin-bottom: 16px;
            padding-bottom: 16px;
        }
        #applicationDetail .planDetail .subDetail {
            margin-bottom: 48px;
            font-size: 1.3rem;
        }
        #applicationDetail .notice {
            font-size: 1.3rem;
        }
        #applicationDetail .applyBtn2 {
            display: block;
            margin-top: 64px;
        }
        #applicationDetail .applyBtn2 .change,
        #applicationDetail .applyBtn2 .cancel {
            width: 100%;
        }
        #applicationDetail .applyBtn2 a {
            margin: 20px auto;
        }
    }
    @media screen and (max-width: 500px) {
        #applicationDetail .planDetail {
            width: 100%;
        }
        #applicationDetail .applyBtn a {
            width: 100%;
        }
    }
    /*=================
    applicationForm
    ==================*/
    #applicationForm section.subpage {
        margin: 0;
    }
    #applicationForm .list li {
        padding: 0;
    }
    #applicationForm .list li .rightBox .ttl {
        margin-bottom: 32px;
    }
    #applicationForm form ul.formList {
        margin-bottom: 80px;
    }
    #applicationForm form ul.formList li {
        margin-bottom: 0;
        padding: 16px 8px 16px;
    }
    #applicationForm form ul.formList li .detail li {
        margin-bottom: 0;
        padding: 0;
    }
    #applicationForm .pc {
        display: block;
    }
    #applicationForm .submit-wrap {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
    }
    #applicationForm .submit-wrap input,
    #applicationForm .submit-wrap .back {
        width: calc(50% - 24px);
    }
    #applicationForm #error {
        background: #f6dada;
        padding: 16px 8px 16px;
        margin-bottom: 0 !important;
        border-bottom: 1px solid #ccc;
    }
    #applicationForm form ul li:last-child {
        border-bottom: none !important;
    }
    #applicationForm #error .errorTxt {
        color: red;
        margin-top: 8px;
        font-size: 1.3rem;
    }
    @media screen and (max-width: 768px) {
        #applicationForm .pc {
            display: none;
        }
        #applicationForm .list li .rightBox .tag {
            font-size: 1.2rem;
            min-width: 80px;
            margin-bottom: 10px;
        }
        #applicationForm .list li .rightBox .status {
            font-size: 1.2rem;
            min-width: 80px;
            margin-bottom: 10px;
        }
        #applicationForm .submit-wrap {
            display: block;
        }
        #applicationForm .submit-wrap input,
        #applicationForm .submit-wrap .back {
            width: 100%;
        }
        #applicationForm .submit-wrap .back {
            margin-left: 0;
            margin-top: 24px;
        }
        #applicationForm form ul.formList {
            margin-bottom: 64px;
        }
    }
    @media screen and (max-width: 500px) {
        #applicationForm .list li {
            margin-bottom: 16px;
        }
        #applicationForm .list li .rightBox .ttl {
            margin-bottom: 16px;
        }
        #applicationForm form ul.formList li {
            padding: 10px 8px 10px;
        }
    }
    /*=================
    applicationConfirm
    ==================*/
    #applicationConfirm .list li {
        padding: 0;
    }
    #applicationConfirm .list li a {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
    #applicationConfirm .conf form ul {
        margin-bottom: 80px;
    }
    #applicationConfirm .list li .rightBox .ttl {
        margin-bottom: 32px;
    }
    #applicationConfirm section.subpage {
        margin: 0;
    }
    #applicationConfirm .receptionPeriod {
        margin-bottom: 65px;
    }
    #applicationConfirm .pc {
        display: block;
    }
    @media screen and (max-width: 768px) {
        #applicationConfirm .pc {
            display: none;
        }
        #applicationConfirm .list li .rightBox .tag {
            font-size: 1.2rem;
            min-width: 80px;
            margin-bottom: 10px;
        }
        #applicationConfirm .list li .rightBox .status {
            font-size: 1.2rem;
            min-width: 80px;
            margin-bottom: 10px;
        }
        #applicationConfirm .receptionPeriod {
            margin-bottom: 32px;
        }
    }
    @media screen and (max-width: 500px) {
        #applicationConfirm .list li .rightBox .ttl {
            margin-bottom: 16px;
        }
        #applicationConfirm .list li {
            margin-bottom: 16px;
        }
    }
    /*=================
    applicationComplete
    ==================*/
    #applicationComplete p {
        font-size: 1.8rem;
        text-align: center;
    }
    #applicationComplete .suBmessage {
        font-size: clamp(1.4rem, 3.733vw, 1.9rem);
        text-align: center;
        margin-bottom: 80px;
    }
    #applicationComplete .subpage {
        margin: 0;
        line-height: 1.8;
    }
    #applicationComplete a {
        background: #9F9F9F;
        color: #fff;
        padding: 15px 0;
        width: 47.78%;
        cursor: pointer;
        margin: 16px auto 0;
        display: block;
        border-radius: 5px;
        transition: 0.4s all;
        font-size: 16px;
        font-weight: bold;
        text-align: center;
        margin-top: 65px;
    }
    #applicationComplete a:hover {
        opacity: 0.3;
    }
    @media screen and (max-width: 768px) {
        #applicationComplete a {
            width: 100%;
            padding: 16px 0;
            margin: 0;
        }
    }
    /*=================
    applicationCancel
    ==================*/
    #applicationCancel .message {
        font-size: clamp(2.7rem, 7.2vw, 3rem);
        text-align: center;
        margin-bottom: 65px;
    }
    #applicationCancel .suBmessage {
        font-size: clamp(1.4rem, 3.733vw, 1.9rem);
        text-align: center;
        margin-bottom: 80px;
    }
    #applicationCancel .subpage {
        margin: 0;
        line-height: 1.8;
    }
    #applicationCancel a {
        background: #9F9F9F;
        color: #fff;
        padding: 15px 0;
        width: 47.78%;
        cursor: pointer;
        margin: 16px auto 0;
        display: block;
        border-radius: 5px;
        transition: 0.4s all;
        font-size: 16px;
        font-weight: bold;
        text-align: center;
    }
    #applicationCancel a:hover {
        opacity: 0.3;
    }
    @media screen and (max-width: 768px) {
        #applicationCancel a {
            width: 100%;
            padding: 16px 0;
            margin: 0;
        }
    }
    /* 250723 */
    /*==============
        index
    ===============*/
    .wrap.index {
        margin: 0 auto;
    }
    .subpage.index {
        margin: 0 auto;
    }
    /*==============
        detail
    ===============*/
    .wrap.detail {
        margin: 0 auto;
    }
    .subpage.detail {
        margin: 0;
    }
    @media screen and (max-width: 500px) {
        .wrap.detail {
            margin: 0 auto 80px;
        }
    }
    /*==============
        detail2
    ===============*/
    .wrap.detail2 {
        margin: 160px auto;
    }
    .subpage.detail2 {
        margin: 0;
    }
    @media screen and (max-width: 500px) {
        .wrap.detail2 {
            margin: 110px auto 80px;
        }
    }
    /*==============
        form_1
    ===============*/
    .wrap.form_1 {
        margin: 160px auto;
    }
    .subpage.form_1 {
        margin: 0;
    }
    @media screen and (max-width: 500px) {
        .wrap.form_1 {
            margin: 110px auto 80px;
        }
    }
    /*==============
        form_2
    ===============*/
    .wrap.form_2 {
        margin: 0 auto;
    }
    .subpage.form_2 {
        margin: 0;
    }
    @media screen and (max-width: 500px) {
        .wrap.form_2 {
            margin: 0 auto 80px;
        }
    }
    /*==============
        confirm
    ===============*/
    .wrap.confirm {
        margin: 0 auto;
    }
    .subpage.confirm {
        margin: 0;
    }
    .form-wrap.confirm {
        width: 100%;
    }
    .ums-message.text-center.confirm {
        margin-top: 80px;
    }
    @media screen and (max-width: 500px) {
        .wrap.confirm {
            margin: 0 auto 80px;
        }
    }
    /*==============
    cancel_confirm
    ===============*/
    .wrap.cancel_confirm {
        margin: 0 auto;
    }
    .subpage.cancel_confirm {
        margin: 0;
    }
    @media screen and (max-width: 500px) {
        .wrap.cancel_confirm {
            margin: 0 auto 80px;
        }
    }
    /*==============
        complete
    ===============*/
    .wrap.complete {
        margin: 0 auto;
    }
    .subpage.complete {
        margin: 0;
    }
    @media screen and (max-width: 500px) {
        .wrap.complete {
            margin: 0 auto 80px;
        }
    }
    /*==============
        cancel
    ===============*/
    .wrap.cancel {
        margin: 0 auto;
    }
    .subpage.cancel {
        margin: 0;
    }
    @media screen and (max-width: 500px) {
        .wrap.cancel {
            margin: 0 auto 80px;
        }
    }
    /* 250729 */
    /*==============
        entry
    ===============*/
    .form-wrap.entry {
        width: 100%;
    }
    .ums-message.text-center.entry {
        margin-top: 80px;
    }
    @media screen and (max-width: 768px) {
        .ums-message.text-center.entry {
            margin-top: 24px;
        }
    }
    /*==============
    entry_error
    ===============*/
    .form-wrap.entry_error {
        width: 100%;
    }
    .ums-message.text-center.entry_error {
        margin-top: 40px;
    }
    @media screen and (max-width: 768px) {
        .ums-message.text-center.entry_error {
            margin-top: 24px;
        }
    }
    /*==============
    confirm_cancel
    ===============*/
    .form-wrap.confirm_cancel {
        width: 100%;
    }
    .ums-message.text-center.confirm_cancel {
        margin-top: 80px;
    }
    /*==============
        form_1
    ===============*/
    .form-wrap.form_1 {
        width: 100%;
    }
    .ums-message.text-center.form_1 {
        margin-top: 80px;
    }
    /*==============
    apply_entry
    ===============*/
    form ul li .detail {
        position: relative !important;
    }
    /*form ul li:nth-child(6) .detail::before{
        position: absolute !important;
        content: "歳" !important;
        left: 0 !important;
        top: 0 !important;
        padding-left: 1rem;
    }*/
    form ul li .detail li {
        margin-bottom: 0;
    }
    form ul li .myTitle {
        width: 300px !important;
    }
    /*==============
        form
    ===============*/
    form [type="text"],
    form [type="email"],
    form [type="password"],
    form [type="tel"],
    form [type="date"],
    form textarea {
        size: initial !important;
        width: 100%;
        padding: 1em;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        font-size: 15px;
        border: 1px solid #ccc;
        border-radius: 5px;
    }
    form input[type="submit"] {
        border: 1px solid var(--color1);
        background: var(--color1);
        color: #fff;
        padding: 15px 0;
        width: 80%;
        cursor: pointer;
        margin: 16px auto 0;
        display: block;
        border-radius: 5px;
        transition: 0.4s all;
        font-weight: bold;
    }
    form input[type="submit"]:hover {
        background: #fff;
        color: var(--color1);
    }
    #joinus form .agree-scroll input[type="submit"] {
        background: #fff;
        color: var(--color1);
        pointer-events: none;
    }
    #joinus form .agree-scroll input[type="submit"]:hover {
        background: #fff;
        color: var(--color1);
    }
    #joinus form .agree-scroll input[type="submit"].btn-on {
        background: var(--color1);
        pointer-events: auto;
        color: #fff;
    }
    form select {
        size: initial !important;
        width: 100%;
        padding: 1em;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        font-size: 1.3rem;
        border: 1px solid #ccc;
        border-radius: 5px;
        background: #fff;
        font-weight: initial;
        color: var(--black);
        font-family: var(--jp);
    }
    .wpcf7c-elm-step2.text-center {
        padding-top: 56px;
    }
    ::placeholder {
        color: #aaa;
        font-size: 1.3rem;
    }
    .custom-select {
        font-size: 1.4rem;
        color: #aaa;
    }
    .entry-message {
        text-align: right;
        margin-bottom: 24px;
        font-size: 1.4rem;
    }
    span.reference {
        color: red;
    }
    .cmn-status-msg {
        color: red;
        font-size: 1.2rem;
        line-height: 1.7;
        margin-bottom: 20px;
    }
    form .middle {
        width: 80% !important;
    }
    form .half-width {
        width: 50% !important;
    }
    form .entry-message {
        text-align: right;
        margin-bottom: 24px;
    }
    form .entry-message.text-center {
        text-align: center;
    }
    form button {
        background: #bfbfbf;
        border: none;
        color: #fff;
        padding: 10px;
        display: inline-block;
        border-radius: 4px;
        margin-left: 10px;
        width: 130px;
    }
    form .form-wrap {
        width: 70%;
        margin: 0 auto;
    }
    form ul li {
        display: flex;
        margin-bottom: 24px;
    }
    form ul li.block {
        display: block;
    }
    form ul li .myTitle {
        width: 200px;
        font-weight: bold;
    }
    form ul li .myTitle.wide {
        width: 100%;
    }
    form ul li .detail {
        width: calc(100% - 200px);
    }
    form .detail ul {
        display: flex;
        gap: 24px;
    }
    form ul li .detail.half {
        width: calc(70% - 200px);
    }
    @media screen and (max-width: 1200px) {
        form#entry-form,
        form#ums-form {
            width: 90%;
        }
        form .form-wrap {
            width: 100%;
        }
    }
    @media screen and (max-width: 768px) {
        form#entry-form {
            width: 100%;
        }
        form input[type="submit"] {
            width: 80%;
            padding: 16px 0;
        }
        .form half {
            width: 80% !important;
        }
        form ul li {
            display: block;
        }
        form ul li .myTitle,
        form ul li .detail {
            width: 100%;
        }
        form ul li .myTitle {
            margin-bottom: 8px;
        }
        form ul li .detail.half {
            width: 80%;
        }
        form .detail ul {
            gap: 16px;
        }
    }
    @media screen and (max-width: 420px) {
        form input[type="submit"] {
            width: 100%;
        }
    }
    #applicationForm .submit-wrap .back,
    #applicationConfirm .submit-wrap .back {
        padding: 15px 0;
        border-radius: 5px;
        transition: 0.4s all;
        border: none;
        background: #f2e5e5;
        color: #000;
    }
    #applicationForm .submit-wrap .back:hover,
    #applicationConfirm .submit-wrap .back:hover {
        opacity: 0.4;
        background: #f2e5e5;
        color: #000;
    }