figure {
    width: 100%
}
figure img {
    width: 100%
}
.page-lead .fukidashi-copy {
    text-align: center
}
.page-lead .fukidashi-copy span {
    font-size: 1.6rem;
    font-weight: 600;
    position: relative;
    padding: 0 30px;
    margin-bottom: 1vh;
    color: #fff
}
.page-lead .fukidashi-copy span::before {
    content: "";
    position: absolute;
    background: #fff;
    width: 20px;
    height: 2px;
    top: 50%;
    left: 0;
    transform: rotate(45deg)
}
.page-lead .fukidashi-copy span::after {
    content: "";
    position: absolute;
    background: #fff;
    width: 20px;
    height: 2px;
    top: 50%;
    right: 0;
    transform: rotate(315deg)
}
.page-lead .lead-copy {
    font-size: 6rem;
    color: #fff;
    font-weight: 700;
    line-height: 1;
    letter-spacing: .2em;
    padding-bottom: 2vh;
    text-align: center
}
.page-lead .lead-copy.en {
    padding-bottom: 5px;
    font-weight: 500;
    font-size: 1.2rem;
    font-family: "Josefin Sans", sans-serif
}
.page-lead .lead-copy.en span {
    font-size: 1.6rem;
    font-weight: 900
}
.page-lead .lead-copy.middle {
    font-size: 4rem
}
h4.bar-title.point {
    color: orange
}
h4.bar-title.point::before {
    background: orange
}
h4.bar-title.online {
    color: #e6803d
}
h4.bar-title.online::before {
    background: #e6803d
}
h3.oc-section-title {
    font-size: 2rem;
    font-weight: 700;
    letter-spacing: .15em;
    padding-bottom: 1vh;
    margin-bottom: 2vh;
    color: #007d85;
    border-bottom: solid 3px #007d85
}
h3.oc-section-title.nurse {
    color: #b9575e;
    border-bottom: solid 3px #b9575e
}
h3.oc-section-title.online {
    color: #e6803d;
    border-bottom: solid 3px #e6803d
}
h3.oc-section-title.point {
    color: orange;
    border-bottom: solid 3px orange
}
h4.oc-sub-title {
    display: inline-block;
    background: #007d85;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1;
    padding: 7px 10px;
    margin-bottom: 1vh;
    color: #fff
}
h4.oc-sub-title.nurse {
    background: #b9575e
}
h4.oc-sub-title.online {
    background: #e6803d
}
h4.oc-sub-title.point {
    background: orange
}
.paragraph.pt {
    color: #007d85;
    font-weight: 500;
    padding-left: 1.5vw;
    position: relative
}
.paragraph.pt::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 0 5px 10px;
    border-color: transparent transparent transparent #007d85
}
.paragraph.nurse {
    color: #b9575e;
    font-weight: 500;
    padding-left: 1.5vw;
    position: relative
}
.paragraph.nurse::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 0 5px 10px;
    border-color: transparent transparent transparent #b9575e
}
.paragraph.online {
    color: #e6803d;
    font-weight: 500;
    padding-left: 1.5vw;
    position: relative
}
.paragraph.online::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 0 5px 10px;
    border-color: transparent transparent transparent #e6803d
}
.paragraph.point {
    color: orange;
    font-weight: 500;
    padding-left: 1.5vw;
    position: relative
}
.paragraph.point::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 0 5px 10px;
    border-color: transparent transparent transparent orange
}
.oc-content {
    width: 100%;
    padding-bottom: 6vh;
    opacity: 0
}
.oc-content dt {
    background: #007d85;
    color: #fff;
    font-size: 4rem;
    font-weight: 500;
    padding: 5vh 3vw;
    border-radius: 2vw 2vw 0 0
}
.oc-content dd {
    display: flex;
    justify-content: space-between;
    background: #85b8cc;
    padding: 6vh 3vw;
    border-radius: 0 0 2vw 2vw
}
.oc-content dd .oc-textbox {
    width: 45%
}
.oc-content dd .oc-textbox p.oc-point-title {
    font-size: 3.6rem;
    font-family: "Josefin Sans", sans-serif;
    font-weight: 600;
    line-height: .7;
    color: #fff;
    padding-bottom: 4vh
}
.oc-content dd .oc-textbox p.oc-point-title span {
    font-size: 1.8rem;
    letter-spacing: .1em;
    font-weight: 500
}
.oc-content dd .oc-textbox .oc-point-content {
    background: #fff;
    border-radius: 1vw;
    padding: 2vh 1.5vw;
    margin-bottom: 2vh
}
.oc-content dd .oc-textbox .oc-point-content p.oc-point {
    color: #007d85;
    font-size: 2rem;
    line-height: 1.4em;
    font-weight: 600;
    padding-bottom: 2vh
}
.oc-content dd .oc-textbox .oc-point-content p.oc-point span {
    font-size: 1.6rem;
    font-family: "Josefin Sans", sans-serif;
    font-weight: 600
}
.oc-content dd .oc-textbox .oc-point-content p.oc-point-text {
    font-size: 1rem;
    line-height: 1.9;
    color: #007d85
}
.oc-content dd .oc-photo-link {
    width: 55%
}
.oc-content dd .oc-photo-link .oc-photo {
    position: relative;
    height: 60vh;
    margin-bottom: 4vh
}
.oc-content dd .oc-photo-link .oc-photo::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 60vh;
    background: url(../open-campus/images/oc-point-img01_2026.jpg) no-repeat center center;
    background-size: cover;
    border-radius: 2vw 0 0 2vw;
    top: 0;
    right: -3vw
}
.oc-content dd .oc-photo-link a.oc-linkbtn {
    display: flex;
    justify-content: end
}
.oc-content dd .oc-photo-link a.oc-linkbtn p {
    color: #fff;
    font-size: 2.2rem;
    letter-spacing: .1em;
    font-weight: 500;
    text-align: right;
    padding-right: 3vw;
    position: relative
}
.oc-content dd .oc-photo-link a.oc-linkbtn p::before {
    content: "";
    position: absolute;
    background: url(../open-campus/images/oc-link-img01.png) no-repeat center center;
    background-size: cover;
    width: 2.5vw;
    height: 2.5vw;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    transition: all .4s ease
}
.oc-content dd .oc-photo-link a.oc-linkbtn p:hover {
    opacity: 1
}
.oc-content dd .oc-photo-link a.oc-linkbtn p:hover::before {
    right: -10px
}
.oc-content dd .oc-photo-link a.oc-linkbtn:hover {
    opacity: 1
}
.oc-content.nurse dt {
    background: #b9575e
}
.oc-content.nurse dd {
    flex-direction: row-reverse;
    background: #ef959a
}
.oc-content.nurse dd .oc-textbox .oc-point-content p.oc-point {
    color: #b9575e
}
.oc-content.nurse dd .oc-textbox .oc-point-content p.oc-point-text {
    color: #b9575e
}
.oc-content.nurse dd .oc-photo-link .oc-photo::before {
    background: url(../open-campus/images/oc-point-img02_2026.jpg) no-repeat center center;
    background-size: cover;
    right: unset;
    left: -3vw;
    border-radius: 0 2vw 2vw 0
}
.oc-content.nurse dd .oc-photo-link a.oc-linkbtn {
    justify-content: start
}
.oc-content.nurse dd .oc-photo-link a.oc-linkbtn p {
    text-align: left
}
.oc-content.nurse dd .oc-photo-link a.oc-linkbtn p::before {
    background: url(../open-campus/images/oc-link-img02.png) no-repeat center center;
    background-size: cover
}
.oc-content.online dt {
    background: #e6803d
}
.oc-content.online dd {
    background: #ef9a6a
}
.oc-content.online dd .oc-textbox .oc-point-content p.oc-point {
    color: #e6803d
}
.oc-content.online dd .oc-textbox .oc-point-content p.oc-point-text {
    color: #e6803d
}
.oc-content.online dd .oc-photo-link .oc-photo::before {
    background: url(../open-campus/images/oc-point-img03_2025.jpg) no-repeat center center;
    background-size: cover
}
.oc-content.online dd .oc-photo-link a.oc-linkbtn p::before {
    background: url(../open-campus/images/oc-link-img03.png) no-repeat center center;
    background-size: cover
}
.oc-content.point dt {
    background: orange
}
.oc-content.point dd {
    flex-direction: row-reverse;
    background: #f7bf66
}
.oc-content.point dd .oc-textbox .oc-point-content p.oc-point {
    color: orange
}
.oc-content.point dd .oc-textbox .oc-point-content p.oc-point-text {
    color: orange
}
.oc-content.point dd .oc-photo-link .oc-photo::before {
    background: url(../open-campus/images/oc-point-img04.jpg) no-repeat center center;
    background-size: cover;
    right: unset;
    left: -3vw;
    border-radius: 0 2vw 2vw 0
}
.oc-content.point dd .oc-photo-link a.oc-linkbtn {
    justify-content: start
}
.oc-content.point dd .oc-photo-link a.oc-linkbtn p {
    text-align: left
}
.oc-content.point dd .oc-photo-link a.oc-linkbtn p::before {
    background: url(../open-campus/images/oc-link-img04.png) no-repeat center center;
    background-size: cover
}
.oc-content.is-show {
    animation-name: fadeUpAnime02;
    animation-duration: .5s;
    animation-fill-mode: forwards;
    opacity: 0
}
.oc-feature {
    display: flex;
    flex-wrap: wrap;
    padding-bottom: 4vh
}
.oc-feature li {
    width: 32%;
    margin-right: 2%;
    height: 30vh;
    margin-bottom: 3vh;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative
}
.oc-feature li:nth-of-type(3n) {
    margin-right: 0
}
.oc-feature li .oc-feature-text {
    background: rgba(255, 255, 255, .8);
    width: 100%;
    height: 90%;
    font-size: 2.2rem;
    font-weight: 500;
    letter-spacing: .1em;
    line-height: 1.5;
    color: #424e54;
    display: flex;
    text-align: center;
    justify-content: center;
    align-items: center;
    z-index: 1
}
.oc-feature li::before {
    content: "";
    position: absolute;
    background: linear-gradient(90deg, #007d85 0, #007d85 50%, #b9575e 50%, #b9575e 100%);
    width: 100%;
    height: 50%;
    top: 0;
    left: 0;
    z-index: 0
}
.oc-feature li::after {
    content: "";
    position: absolute;
    background: linear-gradient(90deg, #b9575e 0, #b9575e 50%, #007d85 50%, #007d85 100%);
    width: 100%;
    height: 50%;
    bottom: 0;
    left: 0;
    z-index: 0
}
.oc-feature-slider li {
    margin-right: 1vw;
    margin-left: 1vw
}
.oc-feature-slider li figure img {
    width: 100%
}
.oc-schedule-content {
    background: #007d85;
    padding: 2vh 3vw;
    margin-bottom: 1vh;
    border-radius: 2vw;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap
}
.oc-schedule-content p.oc-schedule {
    width: 100%;
    font-size: 2rem;
    font-weight: 500;
    color: #fff;
    display: block
}
.oc-schedule-content p.oc-schedule span {
    font-size: 5rem;
    font-weight: 600;
    line-height: 1
}
.oc-schedule-content .oc-schedule-textbox {
    width: 100%
}
.oc-schedule-content .oc-schedule-textbox dd, .oc-schedule-content .oc-schedule-textbox dt {
    color: #fff
}
.oc-schedule-content .oc-schedule-textbox dt {
    font-size: 2.5rem;
    font-weight: 500;
    line-height: 1.2
}
.oc-schedule-content .oc-schedule-textbox dd {
    font-size: 1.6rem
}
.oc-schedule-content.nurse {
    background: #b9575e
}
.oc-schedule-content.online {
    background: #e6803d
}
.oc-schedule-content.point {
    background: orange
}
.oc-schedule-content.mb2 {
    margin-bottom: 2vh
}
a.oc-other-date {
    padding: 5px 10px;
    color: #007d85;
    border: 2px solid #007d85;
    margin-left: auto;
    margin-bottom: 10px;
    display: block;
    width: fit-content;
    border-radius: 10px;
    background-color: #fff;
    font-weight: 700
}
a.oc-other-date:visited {
    color: #007d85 !important
}
a.oc-other-date:visited.nurse {
    color: #b9575e !important
}
a.oc-other-date.nurse {
    border: 2px solid #b9575e;
    color: #b9575e
}
.oc-benefit {
    background: #b98c57;
    border-radius: 10px;
    padding: 10vh 5vw
}
.oc-benefit h3.oc-benefit-title {
    color: #fff;
    font-size: 3rem;
    line-height: 1.5;
    text-align: center;
    font-weight: 500;
    text-decoration: underline;
    padding-bottom: 6vh
}
.oc-benefit .oc-benefit-content {
    display: flex;
    justify-content: space-between;
    padding-bottom: 6vh;
    opacity: 0
}
.oc-benefit .oc-benefit-content .oc-benefit-textbox {
    width: 48%
}
.oc-benefit .oc-benefit-content .oc-benefit-textbox p {
    color: #fff
}
.oc-benefit .oc-benefit-content .oc-benefit-textbox p.oc-benefit-number {
    font-size: 2.4rem;
    font-weight: 500;
    letter-spacing: .2em;
    padding-bottom: 4vh;
    display: flex;
    align-items: center;
}
.oc-benefit .oc-benefit-content .oc-benefit-textbox p.oc-benefit-number span {
    font-size: 6rem;
    line-height: 1;
    transform: translateY(-5%)
}
.oc-benefit .oc-benefit-content .oc-benefit-textbox p.oc-benefit-copy {
    font-size: 2.4vw;
    font-weight: 700;
    letter-spacing: .2em;
    line-height: 1.5;
    padding-bottom: 3vh
}
.oc-benefit .oc-benefit-content .oc-benefit-textbox p.oc-benefit-text {
    font-size: clamp(1.4rem, 1.3vw, 2.2rem);
    line-height: 1.6
}
.oc-benefit .oc-benefit-content figure {
    width: 48%
}
.oc-benefit .oc-benefit-content figure img {
    border-radius: 2vw;
    width: 100%
}
.oc-benefit .oc-benefit-content:nth-of-type(2n) {
    flex-direction: row-reverse
}
.oc-benefit .oc-benefit-content.is-show {
    animation-name: fadeUpAnime02;
    animation-duration: .5s;
    animation-fill-mode: forwards;
    opacity: 0
}
h4.other-benefit-title {
    color: #fff;
    font-size: 2.4vw;
    font-weight: 500;
    letter-spacing: .2em;
    text-align: center;
    padding-bottom: 3vh
}
.other-benefit-content {
    padding-bottom: 3vh
}
.other-benefit-content dl.other-benefit {
    width: 100%;
    border: dashed 2px #fff;
    border-radius: 2vw;
    padding: 3vh 2vw
}
.other-benefit-content dl.other-benefit dd, .other-benefit-content dl.other-benefit dt {
    color: #fff
}
.other-benefit-content dl.other-benefit dt {
    font-size: 2.4rem;
    letter-spacing: .15em;
    font-weight: 700;
    text-align: center;
    padding-bottom: 2vh
}
.other-benefit-content dl.other-benefit dd {
    font-size: clamp(1.4rem, 1.3vw, 2.2rem);
    line-height: 1.9
}
.oc-anchor-link {
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    width: 80%;
    margin: 0 auto 9vh
}
.oc-anchor-link li {
    width: 18%;
    border-radius: 30px;
    background: #b98c57
}
.oc-anchor-link li:nth-of-type(1) {
    background: #007d85
}
.oc-anchor-link li:nth-of-type(2) {
    background: #b9575e
}
.oc-anchor-link li:nth-of-type(3) {
    background: #e6803d
}
.oc-anchor-link li:nth-of-type(4) {
    background: orange
}
.oc-anchor-link li a {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: .6em 1em 1.2em;
    cursor: pointer;
    line-height: 1.7em
}
.oc-anchor-link li a span {
    color: #fff;
    font-weight: 700;
    font-size: 1.5rem;
    letter-spacing: .1em;
    text-align: center;
    position: relative;
    line-height: 1.3em
}
.oc-anchor-link li a span::before {
    content: "";
    width: 10px;
    height: 10px;
    position: absolute;
    bottom: -8px;
    right: 50%;
    transform: translateX(50%) rotate(45deg);
    border-bottom: 2px solid #fff;
    border-right: 2px solid #fff
}
.wide-inner {
    width: 100%;
    margin: 0 auto 8vh
}
.oc-main-content {
    padding: 0 10% 6vh;
    background: linear-gradient(180deg, #fff 0, #fff 35%, #007d85 35%, #007d85 100%)
}
.oc-main-content .oc-main-photo {
    background: url(../open-campus/images/oc-main-img01_2026.jpg) no-repeat center center;
    background-size: cover;
    width: 100%;
    height: 50vh;
    border-radius: 2vw;
    margin-bottom: 4vh;
    opacity: 0
}
.oc-main-content .oc-main-photo.is-show {
    animation-name: fadeUpAnime02;
    animation-duration: .5s;
    animation-fill-mode: forwards;
    opacity: 0
}
.oc-main-content .oc-main-title {
    color: #fff;
    font-size: 5rem;
    text-align: center;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .1em;
    padding-bottom: 2vh
}
.oc-main-content .oc-main-text {
    font-size: 1.5rem;
    line-height: 1.9;
    color: #fff;
    padding-bottom: 3vh
}
.oc-main-content .oc-main-point-list {
    display: flex;
    justify-content: space-between
}
.oc-main-content .oc-main-point-list .oc-main-point {
    width: 32%;
    border: solid 2px #fff;
    border-radius: 1vw;
    padding: 3vh 2vw
}
.oc-main-content .oc-main-point-list .oc-main-point p {
    color: #fff;
    line-height: 1.5
}
.oc-main-content .oc-main-point-list .oc-main-point p.oc-main-en {
    font-size: 2rem;
    text-align: center;
    font-weight: 500;
    font-family: "Josefin Sans", sans-serif;
    padding-bottom: 1vh;
    line-height: 1
}
.oc-main-content .oc-main-point-list .oc-main-point p.oc-main-copy {
    font-size: 2rem;
    font-weight: 500;
    text-align: center;
    padding-bottom: 1vh
}
.oc-main-content .oc-main-point-list .oc-main-point p.oc-main-point-text {
    font-size: 1.5rem;
    line-height: 1.9
}
.oc-main-content.nurse {
    background: linear-gradient(180deg, #fff 0, #fff 35%, #b9575e 35%, #b9575e 100%)
}
.oc-main-content.nurse .oc-main-photo {
    background: url(../open-campus/images/oc-main-img02_2026b.jpg) no-repeat center center;
    background-size: cover
}
.oc-main-content.online {
    background: linear-gradient(180deg, #fff 0, #fff 35%, #e6803d 35%, #e6803d 100%)
}
.oc-main-content.online .oc-main-photo {
    background: url(../open-campus/images/oc-main-img03.jpg) no-repeat center center;
    background-size: cover
}
.oc-main-content.point {
    background: linear-gradient(180deg, #fff 0, #fff 35%, orange 35%, orange 100%)
}
.oc-main-content.point .oc-main-photo {
    background: url(../open-campus/images/oc-main-img04_2026.jpg) no-repeat center center;
    background-size: cover
}
.oc-form-content {
    background: #007d85;
    padding: 10vh 0
}
.oc-form-content .bg-white {
    background: #fff;
    width: 80%;
    margin: 0 auto;
    border-radius: 2vw;
    padding: 6vh 5vw;
    margin-bottom: 4vh
}
.oc-form-content .bg-white .mw_wp_form ul {
    display: flex;
    align-items: center;
    padding-bottom: 3vh
}
.oc-form-content .bg-white .mw_wp_form ul li:nth-of-type(1) {
    width: 20%;
    font-size: 1.6rem;
    font-weight: 500;
    color: #007d85;
    margin-bottom: 10px
}
.oc-form-content .bg-white .mw_wp_form ul li:nth-of-type(1) .must {
    font-size: 1.2rem;
    font-weight: 500;
    color: #fff;
    background: #007d85;
    padding: .2em .5em;
    border-radius: 5px;
    margin-left: 15px
}
.oc-form-content .bg-white .mw_wp_form ul li:nth-of-type(2) {
    display: flex;
    width: 80%;
    font-size: 2rem;
    font-weight: 500;
    color: #007d85
}
.oc-form-content .bg-white .mw_wp_form ul li:nth-of-type(2) input {
    width: 48%;
    padding: 1.5vh 1vw;
    border-radius: 5px;
    border: solid 2px #007d85;
    font-size: 1.8rem
}
.oc-form-content .bg-white .mw_wp_form ul li:nth-of-type(2) input.full {
    width: 100%
}
.oc-form-content .bg-white .mw_wp_form ul li:nth-of-type(2) input::placeholder {
    font-size: 1.8rem
}
.oc-form-content .bg-white .mw_wp_form ul li:nth-of-type(2) input[type=radio] {
    width: unset;
    margin: 0 5px
}
.oc-form-content .bg-white .mw_wp_form ul li:nth-of-type(2) select {
    width: 100%;
    padding: 1.5vh 1vw;
    border: solid 2px #007d85;
    border-radius: 5px;
    font-size: 1.8rem;
    color: #424e54
}
.oc-form-content .bg-white .mw_wp_form ul li:nth-of-type(2) textarea {
    width: 100%;
    border: solid 2px #007d85;
    border-radius: 5px
}
.oc-form-content .bg-white .mw_wp_form ul li.name {
    justify-content: space-between
}
.oc-form-content .bg-white .mw_wp_form ul li.full input {
    width: 100%
}
.oc-form-content .bg-white .mw_wp_form ul li.flex {
    display: flex;
    justify-content: space-between
}
.oc-form-content .bg-white .mw_wp_form ul li.flex input {
    width: 48%
}
.oc-form-content .bg-white .mw_wp_form ul li.form-column:nth-of-type(2) input:nth-of-type(1) {
    margin: 0 1em
}
.oc-form-content .bg-white .mw_wp_form ul li.form-column:nth-of-type(2) input:nth-of-type(2) {
    margin-left: 1em
}
.oc-form-content .bg-white .mw_wp_form ul.address li:nth-of-type(2) {
    display: block
}
.oc-form-content .bg-white .mw_wp_form ul.address li:nth-of-type(2) input {
    margin-bottom: 1vh
}
.oc-form-content .bg-white .oc-form {
    display: flex;
    align-items: center;
    padding-bottom: 3vh
}
.oc-form-content .bg-white .oc-form li:nth-of-type(1) {
    width: 20%;
    font-size: 2rem;
    color: #424e54
}
.oc-form-content .bg-white .oc-form li:nth-of-type(2) {
    display: flex;
    width: 80%;
    font-size: 2rem;
    font-weight: 500;
    color: #007d85
}
.oc-form-content .bg-white .oc-form li:nth-of-type(2) input {
    width: 48%;
    padding: 1.5vh 1vw;
    border-radius: 5px;
    border: solid 2px #007d85;
    font-size: 1.8rem
}
.oc-form-content .bg-white .oc-form li:nth-of-type(2) input.full {
    width: 100%
}
.oc-form-content .bg-white .oc-form li:nth-of-type(2) input::placeholder {
    font-size: 1.8rem
}
.oc-form-content .bg-white .oc-form li:nth-of-type(2) input[type=radio] {
    width: unset;
    margin: 0 5px
}
.oc-form-content .bg-white .oc-form li:nth-of-type(2) select {
    width: 100%;
    padding: 1.5vh 1vw;
    border: solid 2px #007d85;
    border-radius: 5px;
    font-size: 1.8rem;
    color: #424e54
}
.oc-form-content .bg-white .oc-form li:nth-of-type(2) textarea {
    width: 100%;
    border: solid 2px #007d85;
    border-radius: 5px
}
.oc-form-content .bg-white .oc-form li.name {
    justify-content: space-between
}
.oc-form-content .bg-white .oc-form.address li:nth-of-type(2) {
    display: block
}
.oc-form-content .bg-white .oc-form.address li:nth-of-type(2) input {
    margin-bottom: 1vh
}
.oc-form-content.nurse {
    background: #b9575e
}
.oc-form-content.nurse .bg-white ul li:nth-of-type(1) {
    color: #b9575e
}
.oc-form-content.nurse .bg-white ul li:nth-of-type(1) .must {
    background: #b9575e
}
.oc-form-content.nurse .bg-white ul li:nth-of-type(2) {
    color: #b9575e
}
.oc-form-content.nurse .bg-white ul li:nth-of-type(2) input {
    border: solid 2px #b9575e
}
.oc-form-content.nurse .bg-white ul li:nth-of-type(2) select {
    border: solid 2px #b9575e
}
.oc-form-content.nurse .bg-white ul li:nth-of-type(2) textarea {
    border: solid 2px #b9575e
}
.oc-form-content.online {
    background: #e6803d
}
.oc-form-content.online .bg-white ul li:nth-of-type(1) {
    color: #e6803d
}
.oc-form-content.online .bg-white ul li:nth-of-type(1) .must {
    background: #e6803d
}
.oc-form-content.online .bg-white ul li:nth-of-type(2) {
    color: #e6803d
}
.oc-form-content.online .bg-white ul li:nth-of-type(2) input {
    border: solid 2px #e6803d
}
.oc-form-content.online .bg-white ul li:nth-of-type(2) select {
    border: solid 2px #e6803d
}
.oc-form-content.online .bg-white ul li:nth-of-type(2) textarea {
    border: solid 2px #e6803d
}
.oc-form-content.point {
    background: orange
}
.oc-form-content.point .bg-white ul li:nth-of-type(1) {
    color: orange
}
.oc-form-content.point .bg-white ul li:nth-of-type(1) .must {
    background: orange
}
.oc-form-content.point .bg-white ul li:nth-of-type(2) {
    color: orange
}
.oc-form-content.point .bg-white ul li:nth-of-type(2) input {
    border: solid 2px orange
}
.oc-form-content.point .bg-white ul li:nth-of-type(2) select {
    border: solid 2px orange
}
.oc-form-content.point .bg-white ul li:nth-of-type(2) textarea {
    border: solid 2px orange
}
.oc-schedule-scroll .oc-schedule-content {
    margin: 0 2vw 4vh 0
}
h3.section-title.online span::before {
    background: #e6803d
}
h3.section-title.online span::after {
    background: #e6803d
}
h3.section-title.point span::before {
    background: orange
}
h3.section-title.point span::after {
    background: orange
}
.page-lead.online {
    background: #e6803d
}
.page-lead.point {
    background: orange
}
.oc-form-nextbtn {
    display: block;
    color: #007d85;
    background: #fff;
    width: 40%;
    margin: 0 auto;
    border-radius: 10px;
    padding: 2vh 0;
    text-align: center;
    font-size: 2rem;
    font-weight: 500;
    color: #424e54
}
@keyframes fadeUpAnime02 {
    from {
        opacity: 0;
        transform: translateY(150px)
    }
    to {
        opacity: 1;
        transform: translateY(0)
    }
}
.resultbox {
    display: block;
    width: 100%
}
.resultbox input {
    width: 100%;
    color: #fff;
    background: #b9575e;
    padding: 25px;
    text-align: center;
    font-size: 2rem;
    font-weight: 600;
    border-radius: 20px;
    border: 0
}
.resultbox.pt input {
    background: #007d85
}
.resultbox.online input {
    background: #e6803d
}
.resultbox.point input {
    background: orange
}
.separate {
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap
}
.separate .sepabox {
    width: 48%;
    cursor: pointer
}
.separate .sepabox:hover {
    opacity: .8
}
.oc-schedule-content {
    cursor: pointer
}
.oc-schedule-content:hover {
    opacity: .7
}
.hidden {
    display: none !important
}


.oc-physical-therapy .page-head .mainvisual {
    background: url(../images/mainvisual/mainvisual_oc02.jpg) no-repeat center center;
    background-size: cover
}
.oc-nurse .page-head .mainvisual {
    background: url(../images/mainvisual/mainvisual_oc03.jpg) no-repeat center center;
    background-size: cover
}
.oc-online .page-head .mainvisual {
    background: url(../images/mainvisual/mainvisual_oc04.jpg) no-repeat center center;
    background-size: cover
}
.oc-point .page-head .mainvisual {
    background: url(../images/mainvisual/mainvisual_oc05.jpg) no-repeat center center;
    background-size: cover
}


@media screen and (max-width:768px) {
    .page-lead .lead-copy {
        font-size: 3rem;
        line-height: 1.4;
        letter-spacing: .1em;
        padding-bottom: 20px
    }
    .page-lead .lead-copy.en {
        font-size: 1.1rem;
        line-height: 1.4
    }
    .page-lead .lead-copy.en span {
        font-size: 1.5rem;
        line-height: 1.4
    }
    .page-lead .lead-copy.middle {
        font-size: 6vw
    }
    h3.oc-section-title {
        font-size: 1.8rem;
        line-height: 1.4;
        letter-spacing: .1em;
        padding-bottom: 10px;
        margin-bottom: 20px;
        border-bottom: solid 2px #007d85
    }
    h3.oc-section-title.nurse {
        border-bottom: solid 2px #b9575e
    }
    h3.oc-section-title.online {
        border-bottom: solid 2px #e6803d
    }
    h3.oc-section-title.point {
        border-bottom: solid 2px orange
    }
    .oc-content {
        padding-bottom: 60px
    }
    .oc-content dt {
        font-size: 2.4rem;
        line-height: 1.4;
        padding: 20px;
        border-radius: 15px 15px 0 0
    }
    .oc-content dd {
        flex-direction: column;
        justify-content: unset;
        padding: 20px;
        border-radius: 0 0 15px 15px
    }
    .oc-content dd .oc-textbox {
        width: 100%
    }
    .oc-content dd .oc-textbox p.oc-point-title {
        font-size: 2.4rem;
        line-height: 1;
        padding-bottom: 20px
    }
    .oc-content dd .oc-textbox p.oc-point-title span {
        font-size: 1.5rem;
        letter-spacing: .05em
    }
    .oc-content dd .oc-textbox .oc-point-content {
        border-radius: 10px;
        padding: 15px;
        margin-bottom: 20px
    }
    .oc-content dd .oc-textbox .oc-point-content p.oc-point {
        font-size: 1.6rem;
        line-height: 1.4;
        padding-bottom: 15px
    }
    .oc-content dd .oc-textbox .oc-point-content p.oc-point span {
        font-size: 1.5rem;
        line-height: 1.4
    }
    .oc-content dd .oc-textbox .oc-point-content p.oc-point-text {
        font-size: 1.2rem;
        line-height: 1.7
    }
    .oc-content dd .oc-photo-link {
        width: 100%
    }
    .oc-content dd .oc-photo-link .oc-photo {
        height: 40vh;
        margin-bottom: 20px
    }
    .oc-content dd .oc-photo-link .oc-photo::before {
        height: 40vh;
        border-radius: 15px;
        right: 0
    }
    .oc-content dd .oc-photo-link a.oc-linkbtn p {
        font-size: 1.8rem;
        letter-spacing: 0;
        padding-right: 30px
    }
    .oc-content dd .oc-photo-link a.oc-linkbtn p::before {
        width: 20px;
        height: 20px
    }
    .oc-content.nurse dd {
        flex-direction: column
    }
    .oc-content.nurse dd .oc-photo-link .oc-photo::before {
        left: 0;
        border-radius: 15px
    }
    .oc-content.nurse dd .oc-photo-link a.oc-linkbtn {
        justify-content: end
    }
    .oc-content.point dd {
        flex-direction: column
    }
    .oc-content.point dd .oc-photo-link .oc-photo::before {
        left: 0;
        border-radius: 15px
    }
    .oc-content.point dd .oc-photo-link a.oc-linkbtn {
        justify-content: end
    }
    .oc-feature {
        padding-bottom: 4vh
    }
    .oc-feature li {
        width: calc(50% - 10px);
        margin-right: 20px;
        height: 100px;
        margin-bottom: 20px
    }
    .oc-feature li:nth-of-type(3n) {
        margin-right: 20px
    }
    .oc-feature li:nth-of-type(2n) {
        margin-right: 0
    }
    .oc-feature li .oc-feature-text {
        height: 90px;
        font-size: 1.6rem
    }
    .oc-feature li::after {
        height: 100%
    }
    .oc-schedule-content {
        padding: 20px;
        margin-bottom: 10px;
        border-radius: 15px;
        flex-direction: column;
        justify-content: unset;
        align-items: unset
    }
    .oc-schedule-content p.oc-schedule {
        width: 100%;
        font-size: 1.8rem
    }
    .oc-schedule-content p.oc-schedule span {
        font-size: 3.5rem;
        line-height: 1.2
    }
    .oc-schedule-content .oc-schedule-textbox {
        width: 100%
    }
    .oc-schedule-content .oc-schedule-textbox dt {
        font-size: 1.8rem
    }
    .oc-schedule-content .oc-schedule-textbox dd {
        font-size: 1.5rem
    }
    .oc-schedule-content.mb2 {
        margin-bottom: 20px
    }
    .oc-benefit {
        border-radius: 15px;
        padding: 20px
    }
    .oc-benefit h3.oc-benefit-title {
        font-size: 2rem;
        text-align: left;
        padding-bottom: 30px
    }
    .oc-benefit .oc-benefit-content {
        flex-direction: column;
        justify-content: unset;
        padding-bottom: 30px
    }
    .oc-benefit .oc-benefit-content .oc-benefit-textbox {
        width: 100%
    }
    .oc-benefit .oc-benefit-content .oc-benefit-textbox p.oc-benefit-number {
        font-size: 1.8rem;
        letter-spacing: .1em;
        padding-bottom: 20px
    }
    .oc-benefit .oc-benefit-content .oc-benefit-textbox p.oc-benefit-number span {
        font-size: 3.6rem
    }
    .oc-benefit .oc-benefit-content .oc-benefit-textbox p.oc-benefit-copy {
        font-size: 1.6rem;
        letter-spacing: .1em;
        padding-bottom: 15px
    }
    .oc-benefit .oc-benefit-content .oc-benefit-textbox p.oc-benefit-text {
        line-height: 1.7;
        margin-bottom: 20px
    }
    .oc-benefit .oc-benefit-content figure {
        width: 100%
    }
    .oc-benefit .oc-benefit-content figure img {
        border-radius: 15px
    }
    .oc-benefit .oc-benefit-content:nth-of-type(2n) {
        flex-direction: column
    }
    h4.other-benefit-title {
        font-size: 1.8rem;
        letter-spacing: .1em;
        padding-bottom: 15px
    }
    .other-benefit-content {
        flex-direction: column;
        justify-content: unset;
        padding-bottom: 15px
    }
    .other-benefit-content dl.other-benefit {
        width: 100%;
        padding: 20px
    }
    .other-benefit-content dl.other-benefit dt {
        font-size: 1.8rem;
        letter-spacing: .1em;
        padding-bottom: 10px
    }
    .other-benefit-content dl.other-benefit dd {
        line-height: 1.7
    }
    .other-benefit-content dl.other-benefit+dl.other-benefit {
        margin-top: 20px
    }
    .oc-anchor-link {
        -webkit-justify-content: center;
        justify-content: center;
        width: 90%;
        flex-wrap: wrap
    }
    .oc-anchor-link li {
        width: 31%;
        margin-right: 3.5%;
        margin-bottom: 3vh
    }
    .oc-anchor-link li:nth-of-type(3), .oc-anchor-link li:nth-of-type(5) {
        margin-right: 0
    }
    .oc-anchor-link li a span::before {
        width: 8px;
        height: 8px
    }
    .oc-main-content {
        padding: 0 5% 20px;
        background: linear-gradient(180deg, #fff 0, #fff 10%, #007d85 10%, #007d85 100%)
    }
    .oc-main-content .oc-main-photo {
        height: 40vw;
        border-radius: 15px;
        margin-bottom: 20px
    }
    .oc-main-content .oc-main-title {
        font-size: 2.6rem;
        padding-bottom: 10px
    }
    .oc-main-content .oc-main-text {
        line-height: 1.7;
        padding-bottom: 20px
    }
    .oc-main-content .oc-main-point-list {
        flex-direction: column;
        justify-content: unset
    }
    .oc-main-content .oc-main-point-list .oc-main-point {
        width: 100%;
        border-radius: 15px;
        padding: 20px
    }
    .oc-main-content .oc-main-point-list .oc-main-point p.oc-main-en {
        font-size: 1.6rem;
        padding-bottom: 10px
    }
    .oc-main-content .oc-main-point-list .oc-main-point p.oc-main-copy {
        font-size: 1.6rem;
        padding-bottom: 10px
    }
    .oc-main-content .oc-main-point-list .oc-main-point p.oc-main-point-text {
        line-height: 1.7
    }
    .oc-main-content .oc-main-point-list .oc-main-point+.oc-main-point {
        margin-top: 20px
    }
    .oc-main-content.nurse {
        background: linear-gradient(180deg, #fff 0, #fff 10%, #b9575e 10%, #b9575e 100%)
    }
    .oc-main-content.online {
        background: linear-gradient(180deg, #fff 0, #fff 10%, #e6803d 10%, #e6803d 100%)
    }
    .oc-main-content.point {
        background: linear-gradient(180deg, #fff 0, #fff 10%, orange 10%, orange 100%)
    }
    .oc-form-content {
        padding: 20px 0
    }
    .oc-form-content .bg-white {
        width: 90%;
        border-radius: 15px;
        padding: 20px;
        margin-bottom: 20px
    }
    .oc-form-content .bg-white .mw_wp_form ul {
        flex-direction: column
    }
    .oc-form-content .bg-white .mw_wp_form ul li:nth-of-type(1) {
        width: 100%
    }
    .oc-form-content .bg-white .mw_wp_form ul li:nth-of-type(2) {
        width: 100%
    }
    .oc-form-content .bg-white .oc-form {
        flex-direction: column;
        align-items: unset;
        padding-bottom: 20px
    }
    .oc-form-content .bg-white .oc-form li:nth-of-type(1) {
        width: 100%;
        font-size: 1.6rem
    }
    .oc-form-content .bg-white .oc-form li:nth-of-type(2) {
        width: 100%;
        font-size: 1.6rem
    }
    .oc-form-content .bg-white .oc-form li:nth-of-type(2) input {
        width: 100%;
        padding: 10px;
        font-size: 1.4rem
    }
    .oc-form-content .bg-white .oc-form li:nth-of-type(2) input::placeholder {
        font-size: 1.4rem
    }
    .oc-form-content .bg-white .oc-form li:nth-of-type(2) select {
        width: 100%;
        padding: 10px;
        font-size: 1.4rem
    }
    .oc-form-content .bg-white .oc-form li:nth-of-type(2) textarea {
        width: 100%;
        border: solid 2px #007d85;
        border-radius: 5px
    }
    .oc-form-content .bg-white .oc-form li.name input {
        width: 48%
    }
    .oc-form-content .bg-white .oc-form.address li:nth-of-type(2) {
        display: block
    }
    .oc-form-content .bg-white .oc-form.address li:nth-of-type(2) input {
        margin-bottom: 1vh
    }
    .oc-form-content.nurse {
        background: #b9575e
    }
    .oc-form-content.nurse .bg-white .oc-form li:nth-of-type(2) {
        color: #b9575e
    }
    .oc-form-content.nurse .bg-white .oc-form li:nth-of-type(2) input {
        border: solid 2px #b9575e
    }
    .oc-form-content.nurse .bg-white .oc-form li:nth-of-type(2) select {
        border: solid 2px #b9575e
    }
    .oc-form-content.nurse .bg-white .oc-form li:nth-of-type(2) textarea {
        border: solid 2px #b9575e
    }
    .oc-form-content.online {
        background: #e6803d
    }
    .oc-form-content.online .bg-white .oc-form li:nth-of-type(2) {
        color: #e6803d
    }
    .oc-form-content.online .bg-white .oc-form li:nth-of-type(2) input {
        border: solid 2px #e6803d
    }
    .oc-form-content.online .bg-white .oc-form li:nth-of-type(2) select {
        border: solid 2px #e6803d
    }
    .oc-form-content.online .bg-white .oc-form li:nth-of-type(2) textarea {
        border: solid 2px #e6803d
    }
    .oc-form-content.point {
        background: orange
    }
    .oc-form-content.point .bg-white .oc-form li:nth-of-type(2) {
        color: orange
    }
    .oc-form-content.point .bg-white .oc-form li:nth-of-type(2) input {
        border: solid 2px orange
    }
    .oc-form-content.point .bg-white .oc-form li:nth-of-type(2) select {
        border: solid 2px orange
    }
    .oc-form-content.point .bg-white .oc-form li:nth-of-type(2) textarea {
        border: solid 2px orange
    }
    .oc-schedule-scroll {
        height: unset;
        overflow-y: visible
    }
    .oc-schedule-scroll .oc-schedule-content {
        margin: 0 0 20px
    }
    .oc-form-nextbtn {
        width: 50%;
        padding: 15px 0;
        font-size: 1.6rem
    }
    .separate {
        width: 100%;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap
    }
    .separate .sepabox {
        width: 100%;
        margin-bottom: 40px
    }
}