@charset "UTF-8";
/* CSS Document */

.mailform-tbl .mwform-radio-field:has(input[name="sanka"]) {
  width: auto;
  display: inline-block;
}

.mailform-tbl td.kengakuschoolTd .hiddenSpan .error {
    display: none;
}
.hiddenSpan {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}

p.checkArea {
    width: 100%;
    font-weight: bold;
    font-size: 110%;
    margin-bottom: 0 !important;
}
.mw_wp_form_confirm p.checkArea {
    display: none;
}

/* CSS Document */

/* 2025/01/23 追加 */
/* 見学会ページ */
.opHead,
.drHead {
    padding: 30px 0 10px;
}
.btn0 {
    width: 50%;
    margin: auto !important;
    overflow: hidden;
    border-radius: 50px;
}
.kiraBtn a {
    position: relative;
    display: block;
}
.kiraBtn a::before {
    position: absolute;
    content: '';
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    transform: skewX(-45deg);
    animation: nyainy-btn 2.5s cubic-bezier(0.55, 0.085, 0.68, 0.53) infinite;
}
.btn0 a::before {
    background: linear-gradient(90deg, rgba(254, 241, 244, 0) 0%, rgba(254, 241, 244, 0.85) 45%, rgba(254, 241, 244, 0) 100%);
}
@keyframes nyainy-btn {
    0% {
    left: -100%;
    }
    25% {
    left: 100%;
    }
    100% {
    left: 100%;
    }
}
.other.openschool p.ttlForm,
.other.openschool h1.ttlForm {
    width: 50%;
    margin: 10px auto 0 !important;
}
.ttlForm img,
.kiraBtn img {
    margin: 0 !important;
}
@media screen and (max-width: 768px) {
    .opHead {
        padding: 2vw 0 1vw;
    }
    .btn0 {
        width: 100%;
    }
    .other.openschool p.ttlForm,
    .other.openschool h1.ttlForm {
        width: 100%;
        margin: 5px auto 0 !important;
    }
}
@media screen and (min-width: 769px) {
    p.btn0.kiraBtn.sp {
        display: none;
    }
}
/* ご希望の見学日時 */
.fw500 {
  font-weight: bold;
}
.calDateTime div, .calDateTime span, .calDateTime p, .calDateTime a, .calDateTime big, .calDateTime del, .calDateTime img, .calDateTime small, .calDateTime ul, .calDateTime li {
	box-sizing:border-box !important;
	-webkit-box-sizing:border-box !important;
	-moz-box-sizing:border-box !important;
}
.other .calDateTime p {
    line-height: 1.8;
    margin: 0;
    letter-spacing: normal;
}
.calDateTime .f9 {
    font-size: 9px !important;
}
.calDateTime .f10 {
    font-size: 10px !important;
}
.calDateTime .f11 {
    font-size: 11px !important;
}
.calDateTime .f12 {
    font-size: 12px !important;
}
.calDateTime .f13 {
    font-size: 13px !important;
}
.calDateTime .f14 {
    font-size: 14px !important;
}
.calDateTime .f15 {
    font-size: 15px !important;
}
.calDateTime .f16 {
    font-size: 16px !important;
}
.calDateTime .f17 {
    font-size: 17px !important;
}
.calDateTime .f18 {
    font-size: 18px !important;
}
.calDateTime .f19 {
    font-size: 19px !important;
}
.calDateTime .f20 {
    font-size: 20px !important;
}
.calDateTime .f21 {
    font-size: 21px !important;
}
.calDateTime .f22 {
    font-size: 22px !important;
}
@media screen and (max-width: 768px) {
    .calDateTime .f9 {
        font-size: 7px !important;
    }
    .calDateTime .f10 {
        font-size: 8px !important;
    }
    .calDateTime .f11 {
        font-size: 9px !important;
    }
    .calDateTime .f12 {
        font-size: 10px !important;
    }
    .calDateTime .f13 {
        font-size: 11px !important;
    }
    .calDateTime .f14 {
        font-size: 12px !important;
    }
    .calDateTime .f15 {
        font-size: 13px !important;
    }
    .calDateTime .f16 {
        font-size: 14px !important;
    }
    .calDateTime .f17 {
        font-size: 15px !important;
    }
    .calDateTime .f18 {
        font-size: 16px !important;
    }
    .calDateTime .f19 {
        font-size: 17px !important;
    }
    .calDateTime .f20 {
        font-size: 18px !important;
    }
    .calDateTime .f21 {
        font-size: 19px !important;
    }
    .calDateTime .f22 {
        font-size: 20px !important;
    }
}
:root {
	--calPink:#1888D1;
	--calBlue:#0000cd;
	--calPinkLight:#D1E7F6;
    --colorWhite:#fff;
	--border:1px solid var(--calPink);
}
.calPink {
    color: var(--calPink) !important;
}
.calBlue {
    color: var(--calBlue) !important;
}
.bgCalPink {
    background-color: var(--calPink) !important;
}
.calPinkLight {
    color: var(--calPinkLight) !important;
}
.bgCalPinkLight {
    background-color: var(--calPinkLight) !important;
}
.bgWhite {
    background-color: var(--colorWhite) !important;
}
.calDateTime {
    width: 480px;
}
@media screen and (max-width: 768px) {
    .calDateTime {
        width: 100%;
    }
}
.lht {
    line-height: 1.8;
}
span.emphasis {
    text-decoration: underline;
}
.calWrap {
    width: 100%;
    border: var(--border);
    background-color: #fff;
}
.calTop {
    width: 100%;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 2vw;
    padding: 2vw;
}
.calYearMonth {
    margin-right: auto !important;
}
.calPrev,
.calNext {
    width: 9.5vw;
    height: 9.5vw;
    border-radius: 5px;
    flex-shrink: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}
.calPrev span,
.calNext span {
    display: inline-block;
    border: solid var(--calPink);
    padding: 1.5vw;
}
.calPrev span{
    margin-top: 1vw;
    transform: rotate(-135deg);
    border-width: 0 0.75vw 0.75vw 0 !important;
}
.calNext span{
    margin-bottom: 1vw;
    transform: rotate(45deg);
    border-width: 0 0.75vw 0.75vw 0 !important;
}
.calPrev.disable,
.calNext.disable{
    cursor: auto;
}
.calPrev.disable span,
.calNext.disable span {
    pointer-events: none;
    border: solid var(--calPinkLight);
}
@media screen and (min-width: 550px) {
    .calTop {
        gap: 10px;
        padding: 10px 20px;
    }
    .calPrev,
    .calNext {
        width: 38px;
        height: 38px;
    }
    .calPrev span,
    .calNext span {
        padding: 5px;
    }
    .calPrev span{
        margin-top: 5px;
        border-width: 0 4px 4px 0 !important;
    }
    .calNext span{
        margin-bottom: 5px;
        border-width: 0 4px 4px 0 !important;
    }
}
.calBtm {
    padding: 0 4vw 4vw;
}
.calWeek {
    display: flex;
    justify-content: space-between;
}
.calWeek span {
    padding: 1.5vw 2.75vw 0;
}
.calWeek .sunday {
    color: #ff0000;
}
.calWeek .saturday {
    color: #0000ff;
}
.calDays {
    display: flex;
    justify-content: space-between;
    margin-top: 2vw;
}
.calDays span {
    background-color: #d4f5ff;
    border-radius: 5px;
    padding: 1.5vw 2.75vw;
    cursor: pointer;
}
.calDays span.bgDisabled {
    background-color: #f8f8f8;
    cursor: auto;
    pointer-events: none;
}
.calDays span.bgCurrent {
    background-color: var(--calPink) !important;
    color: var(--colorWhite) !important;
}
@media screen and (max-width: 839px) and (min-width: 550px) {
    .calBtm {
        padding: 10px 20px;
    }
    .calWeek span {
        padding: 5px 15px 0;
    }
    .calDays {
        margin-top: 10px;
    }
    .calDays span {
        border-radius: 5px;
        padding: 5px 15px;
    }
}
@media screen and (min-width: 840px) {
    .calBtm {
        padding: 10px 20px;
    }
    .calWeek span {
        padding: 5px 15px 0;
    }
    .calDays {
        margin-top: 10px;
    }
    .calDays span {
        border-radius: 5px;
        padding: 5px 15px;
    }
}
.selectDateTime {
    width: 100%;
    border: 2px solid var(--calPink);
    padding: 3vw 4vw;
    background-color: #fff;
}
.selectDateTimeTxt {
    background-color: #fffe9e;
    padding: 2vw 0;
}
@media screen and (min-width: 840px) {
       .selectDateTime {
        padding: 15px 20px;
    }
    .selectDateTimeTxt {
        padding: 10px 0;
    }
}
.timeSelect {
    width: 100%;
    border: 1px solid var(--calPink);
    padding: 4vw 4vw;
    background-color: #fff;
}
.panelGallery {
    display:none;
    transition: all 0.5s;
}
.panelGallery.isShow {
    display:block;
}
.tabNavi {
    display: flex;
    justify-content: space-between;
}
.other li.btnTab {
    width: 31%;
    border-radius: 50px;
    padding: 4vw 0;
    color: var(--calPink) !important;
    background-color: var(--calPinkLight) !important;
    cursor: pointer;
}
.other li.btnTab.isActive {
    color: var(--calPinkLight) !important;
    background-color: var(--calPink) !important;
}
.panelGallery {
    justify-content: space-between;
    display:none;
}
.panelGallery.isShow {
    display: flex;
    justify-content: space-between;
    flex-flow: wrap;
    gap: 12px 0;
}
.panelGallery.isShow::after {
    width: 31%;
    display: block;
    content:"";
}
.btnTime {
    width: 31%;
    border-radius: 3px;
    padding: 1vw 0;
    border: 1px solid #ccc;
    background-color: #fff;
    cursor: pointer;
}
.btnTime.isSelect {
    color: var(--calPink) !important;
    border: 1px solid var(--calPink);
    background-color: #F6FAFD;
}
@media screen and (min-width: 840px) {
    .timeSelect {
        padding: 20px 20px;
    }
    .btnTab {
        padding: 5px 0 !important;
    }
    .panelGallery.isShow::after {
    }
    .btnTime {
        padding: 5px 0;
    }
}
.weeks-wrapper {
    height: 22vw;
    overflow: hidden;
}
@media screen and (min-width: 550px) {
    .weeks-wrapper {
        height: 100px;
    }
}
.weeks-container {
    transition: transform 0.3s ease-in-out;
}

/* フォームボタン変更 */
div#submit-button {
    display: flex;
    justify-content: center;
    gap: 0 4%;
}
div#submit-button input {
    background: linear-gradient(#8fc31f, #00732e);
    border-radius: 10vw;
    border: 3px solid #fff;
    padding: 20px;
    color: #FFF;
    width: 100%;
    margin: 0 auto;
    display: block;
    font-weight: 700;
    font-size:18px;
}
div#submit-button input.btn-back {
    background: #CCCCCC !important;
    color: #333333 !important;
}
div#submit-button span.toBack {
    display: none;
}
.mw_wp_form_confirm div#submit-button span.toBack {
    display: block;
}
div#submit-button span {
     width: 46%;
}
div#submit-button span.toSubmit {
    display: block;
    position: relative;
    overflow: hidden;
}
div#submit-button span.toSubmit::after {
    position: absolute;
    content: '';
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    transform: skewX(-45deg);
    animation: nyainy-btn 2.5s cubic-bezier(0.55, 0.085, 0.68, 0.53) infinite;
    background: linear-gradient(90deg, rgba(248, 244, 236, 0) 0%, rgba(248, 244, 236, 0.85) 45%, rgba(248, 244, 236, 0) 100%);
}
.privacy-check label {
    display: flex;
    align-items: center;
    justify-content: center;
}
.privacy-check input[type="checkbox"] {
    inline-size: 27px;
    block-size: 27px;
}
.privacy-check .mwform-checkbox-field-text {
    font-size: 20px;
}
@media screen and (max-width: 768px) {
    /*.mw_wp_form_confirm div#submit-button {
        gap: 0;
        justify-content: space-between;
    }*/
    div#submit-button {
        flex-direction: column;
        gap: 2vw;
    }
    div#submit-button span {
         width: 100%;
    }
}
.mailform-tbl th {
    display: flex;
    align-items: flex-start;
}
.mailform-tbl th .attention {
	color: #fff;
    background-color: #F06060;
    padding: 1px 7px;
    border-radius: 5px;
}
.groupSchool {
    font-size: 85%;
}
@media screen and (max-width: 768px) {
    .page-section .schoool-area.chekboxSchool {
        padding:0 5px 5px;
    }
    .kengakuschoolTd .mwform-checkbox-field input {
      margin-right: 0px;
    }
}

/*
24547 OS入力ページ（確認用 本番時差し替え）
515   OS入力ページ
27710 OS確認ページ
2801  OS完了ページ
562   DR入力ページ
27833 DR確認ページ
503   DR完了ページ
15242 DP入力ページ
27844 DP確認ページ
25113 DP完了ページ
*/
.page-section .schoool-area {
    margin: 0 0 0;
}
.contents01 .opHead .container,
.contents01 .drHead .container {
   padding-bottom: 0;
}
.page-id-27710 .head,/* ここまでOS */
.page-id-27833 .head,/* ここまでDR */
.page-id-27844 .head/* ここまでD P */
{
    display: none; /* 入力確認ページのヘッダ */
}
.page-id-515 .h1txtHead,.page-id-515 .head-tel,.page-id-515 #js-toggle,.page-id-2801 .h1txtHead,.page-id-2801 .head-tel,.page-id-2801 #js-toggle,/* ここまでOS */
.page-id-562 .h1txtHead,.page-id-562 .head-tel,.page-id-562 #js-toggle,.page-id-503 .h1txtHead,.page-id-503 .head-tel,.page-id-503 #js-toggle,/* ここまでDR */
.page-id-15242 .h1txtHead,.page-id-15242 .head-tel,.page-id-15242 #js-toggle/* ここまでDP */
{
    display: none; /* 入力ページと完了ページのTELとメニューボタン */
}
.page-id-515 .contents-head,
.page-id-515 div#breadcrumb,
.page-id-515 .thanksConfirm,
.page-id-515 .cta a,
.page-id-27710 .contents-head,
.page-id-27710 div#breadcrumb,
.page-id-27710 .thanksConfirm,
.page-id-27710 .cta a,
.page-id-2801 .contents-head,
.page-id-2801 div#breadcrumb,
.page-id-2801 .thanksConfirm,
/* ここまでOS */
.page-id-562 .contents-head,
.page-id-562 div#breadcrumb,
.page-id-562 .thanksConfirm,
.page-id-562 .cta a,
.page-id-27833 .contents-head,
.page-id-27833 div#breadcrumb,
.page-id-27833 .thanksConfirm,
.page-id-27833 .cta a,
.page-id-503 .contents-head,
.page-id-503 div#breadcrumb,
.page-id-503 .thanksConfirm,
.page-id-503 .cta a,
/* ここまでDR */
.page-id-15242 .contents-head,
.page-id-15242 div#breadcrumb,
.page-id-15242 .thanksConfirm,
.page-id-15242 .cta a,
.page-id-27844 .contents-head,
.page-id-27844 div#breadcrumb,
.page-id-27844 .thanksConfirm,
.page-id-27844 .cta a,
.page-id-25113 .contents-head,
.page-id-25113 div#breadcrumb,
.page-id-25113 .thanksConfirm
/* ここまでDP */
{
    display: none; /* パンくずなど */
}
.page-id-27710 .contents01,.page-id-2801 .contents01,/* ここまでOS */
.page-id-27833 .contents01,.page-id-503 .contents01,/* ここまでDR */
.page-id-27844 .contents01,.page-id-25113 .contents01/* ここまでDP */
{
    padding-top: 5vw; /* 入力確認ページと完了ページの上部スペース */
}
.page-id-2801 .school8-flex {
    justify-content: center;
}
.page-id-2801 .school8-flex a {
  width: 70%;
}
@media screen and (min-width: 769px) {
    .page-id-27710 .head,
    .page-id-27833 .head
    {
        display: block; /* 入力確認ページ */
    }
    .page-id-515 .contents-head,
    .page-id-515 div#breadcrumb,
    .page-id-515 .thanksConfirm,
    .page-id-27710 .contents-head,
    .page-id-27710 div#breadcrumb,
    .page-id-27710 .thanksConfirm,
    .page-id-2801 .contents-head,
    .page-id-2801 div#breadcrumb,
    .page-id-2801 .thanksConfirm,
    /* ここまでOS */
    .page-id-562 .contents-head,
    .page-id-562 div#breadcrumb,
    .page-id-562 .thanksConfirm,
    .page-id-27833 .contents-head,
    .page-id-27833 div#breadcrumb,
    .page-id-27833 .thanksConfirm,
    .page-id-503 .contents-head,
    .page-id-503 div#breadcrumb,
    .page-id-503 .thanksConfirm,
    /* ここまでDR */
    .page-id-15242 .contents-head,
    .page-id-15242 div#breadcrumb,
    .page-id-15242 .thanksConfirm,
    .page-id-27844 .contents-head,
    .page-id-27844 div#breadcrumb,
    .page-id-27844 .thanksConfirm,
    .page-id-25113 .contents-head,
    .page-id-25113 div#breadcrumb,
    .page-id-25113 .thanksConfirm
    /* ここまでDP */
    {
        display: block; /* パンくずなど */
    }
    .page-id-27710 .contents01,.page-id-2801 .contents01,/* ここまでOS */
    .page-id-27833 .contents01,.page-id-503 .contents01,/* ここまでDR */
    .page-id-27844 .contents01,.page-id-25113 .contents01/* ここまでDP */
    {
        padding-top: 0; /* 入力確認ページと完了ページの上部スペース */
    }
}

.invisible_form{
    width: 0;
    padding: 0 !important;
    opacity: 0;
    height: 0;
    margin: 0 !important;
}

.mw_wp_form_preview .calDateTimeInner{
    display: none;
}

.mw_wp_form_confirm .mw_wp_form_confirmNone {
	display: none;
}

.lpCW {
    background: #FEEDF1;
}

.lpCW > .container {
    text-align: left;
    padding: 20px 15px 60px;
    min-height: 100vh;
    box-sizing: border-box;
}