:root {
    --colorPink: #FAEFF3;
    --colorRed: #B1174B;
    --colorCBeige: #FFFBF5;
    --colorGray: #808080;
    --m40: 40px;
    --m100: 100px;
    --alphabte: "Roboto", sans-serif;
}

* {
    font-family: "Zen Old Mincho", serif;
    font-weight: 500;
    font-style: normal;
    font-size: 17px
}



.button a:hover {
    color: #FFF;
}

a {
    color: inherit;
    font-weight: 500;
}

/* @media (min-width: 781px) {
    a[href*="tel:"] {
        pointer-events: none;
        cursor: default;
    }
} */

h1 {
    font-family: var(--alphabte);
}

h2 {
    font-size: 24px;
    font-weight: bold;
}

h3 {
    font-size: 32px;
    font-weight: bold;
    color: var(--colorRed);
    text-align: center;
    margin-bottom: 40px;
}

h4 {

    border-bottom: solid 3px #B3B3B3;
    position: relative;
}

h4:after {
    position: absolute;
    content: " ";
    display: block;
    border-bottom: solid 3px #1C1182;
    bottom: -3px;
    width: 20%;
}

h5 {
    padding: 1rem 2rem;
    border-left: 6px double #1C1182;
    background: #F2F2F2;
}


h4,
h5 {
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 40px;
}

.mb {
    margin-bottom: 40px;
}

.mb20 {
    margin-bottom: 20px;
}

.bold {
    font-weight: bold;
    font-size: 1.1em;
}

.text-indent {
    padding-left: 1em;
}

.entry-meta a {
    color: #333333;
    pointer-events: none
}

.jumbotron-title {
    font-family: "Zen Old Mincho", serif;
}

@media screen and (min-width: 980px) {
    .jumbotron-content {
        padding-bottom: 150px;
        padding-top: 150px;
    }
}




@media screen and (max-width: 782px) {
    * {
        font-size: 15px
    }

    h1,
    h3 {
        font-size: 2.25rem;
    }

    h2,
    h4,
    h5 {
        font-size: 1.6rem;
    }

    .jumbotron-content {
        padding-bottom: 110px;
        padding-top: 110px;
    }

}


.news-list a {
    color: #000;
}


.home .jumbotron {
    height: 682px;
}

.home .jumbotron-content {
    display: none;
}



.reservations-fees .jumbotron,
.lesson .jumbotron,
.school .jumbotron,
.food-menu .jumbotron,
.about .jumbotron,
.manners .jumbotron,
.rule .jumbotron,
.footgolf .jumbotron,
.blog .jumbotron,
.archive .jumbotron,
.single-post .jumbotron,
.other-members .jumbotron,
.stockholder .jumbotron {
    background-image: url(../img/top-img2.jpg);
    background-size: cover;
    background-position: center;
}

/* グロナビ */
.header-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}



.new-menu .cta-items {
    display: flex;
    justify-content: space-between;
    height: 70px;
}

.new-menu .cta-btn {
    text-align: center;
    border: solid 2px var(--colorRed);
    border-radius: 5px;
    /* width: 23%; */
    padding: 10px 20px;
    margin-right: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.drawer-navigation-content .cta-btn {
    width: 100%;
    margin-bottom: 10px;
    padding: 12px 0;
}

.button:hover,
.new-menu .cta-btn:hover,
.tel-btn:hover,
.img-box:hover {
    opacity: 0.7;
}

.new-menu .cta-btn a {
    color: var(--colorRed);
    font-weight: bold;
}

.new-menu .cta-btn:nth-child(3) {
    background-color: var(--colorRed);

}

.new-menu .cta-btn:nth-child(3) a {
    color: #FFF;

}

.tel-btn {
    position: relative;
    padding-left: 28px;
    /* font-size: 28px; */
    font-weight: bold;
    display: flex;
    align-items: center;
}

.tel-btn a,
.tel-btn a:hover {
    color: #333333;
    font-size: 1.2em;
}

.tel-btn::before {
    content: "";
    width: 28px;
    height: 28px;
    background-image: url(../img/tel-icon.png);
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);

}

.main-header {
    padding: 15px 0;
}

.main-header-content .menu {
    width: 100%;
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    max-width: 1500px;
}

.main-header-content .main-navigation {
    width: 100%;
}

@media screen and (max-width: 1280px) {
    .site-branding {
        padding-right: 0;
    }

    .site-logo {
        width: 110px;
    }
}

@media screen and (max-width: 980px) {
    .main-header-content .new-menu {
        display: none;
    }

    .drawer-navigation-content .cta-items {
        flex-direction: column;
        width: 100%;
        margin-bottom: 60px;
        align-items: center;
    }

    .tel-btn a,
    .tel-btn a:hover {
        font-size: 2rem;
    }

}




.top-bar-content,
.main-header-content,
.featured-entry-content,
.home-header-content,
.jumbotron-content,
.site-content,
.container-content,
.footer-widget-content,
.site-bottom-content {
    max-width: none;
}

.main-header-content {
    max-width: 1500px;
}

.sec-inner {
    width: min(90%, 1216px);
    margin: 0 auto;
}


.sec-container {
    margin-bottom: var(--m100);
}


.title {
    text-align: center;
}

.common-title h1 {
    margin: 0 0 40px !important;
}

.flex {
    display: flex;
    justify-content: space-between;
}

.events-box .flex {
    flex-wrap: wrap;
}

.events-box .flex::after {
    content: "";
    display: block;
    width: 30%;
}


.events-box article {
    width: 30%;
}


.events-inner article:hover {
    opacity: 0.7;
}

.event-info .blog-img,
.single-events .blog-img {
    text-align: center;
    border: 1px solid #B3B3B3;
    margin: 0 auto;
}

.single-events article {
    margin: 0 auto;
    width: fit-content;
}

/* TOP */
.events-box .blog-img img {
    width: 100%;
    object-fit: cover;
}

@media screen and (max-width: 782px) {
    .events-box .blog-img {
        max-width: 200px;
        flex-shrink: 0;
    }
}


/* お知らせタブ切り替え */
.news-inner {
    margin-bottom: var(--m40);
}

.news-title {
    display: flex;
}

.news-title h1 {
    margin: 0;
}

.full_content {
    width: 100%;
    min-height: 100px;
    /* 追加（100pxは適当） */
    position: relative;
    margin: 10px auto 40px;
    clear: both;
}

.tabmenu {
    background: var(--colorGray) !important;
    float: left;
    list-style: none;
    text-align: center;
    display: block;
    cursor: pointer;
    color: #FFF;
    padding: 5px 20px;
    margin-right: 10px;
    border-radius: 50px;
}

.tabmenu.tabactive {
    background: var(--colorRed) !important;
    float: left;
    list-style: none;
    text-align: center;
    display: block;
    cursor: pointer;
    color: #FFF;
    padding: 5px 20px;
    margin-right: 10px;
    border-radius: 50px;
}

.active,
.hover {
    background: #999;
    color: #000;
    font-weight: bold;
}

.tabmenu img:hover {
    opacity: 0.7;
    filter: alpha(opacity=70);
    -ms-filter: "alpha( opacity=70 )";
}

.mr01 {
    margin-right: 10px;
}

.tabcontent {
    width: 100%;
    margin-top: 60px;
    left: 0;
    position: absolute;
}

.tabcontent dl {
    margin: 20px auto;
}



.blog-box {
    border-bottom: solid 1px #e2e2e2;
    background-color: var(--colorCBeige);
    border-radius: 10px;
    box-shadow: 1px 1px 3px 0px rgba(0, 0, 0, 0.29);
    padding: 40px 5.2vw;
    margin-bottom: 10px;
}

.tab_title {
    margin-top: 10px;
    padding: 5px 20px 5px;
    font-weight: bold;
    border-bottom: 1px #999 solid;
}

.blog-contents {
    text-align: left;
}





.day-time {
    margin-right: 2.08vw;
}

.blog-box {
    display: flex;
}

.blog-txt {
    font-size: 14px;
    color: var(--colorGray);
}

.blog-title {
    color: var(--colorRed);
    font-weight: bold;
}



.wp-block-buttons {
    text-align: center;
}

.news-box .wp-block-buttons {
    text-align: end;
}

/* .button {
    display: inline-block;
    background-color: var(--colorRed);
    border-radius: 10px;
    padding: 10px 70px 10px 50px;
} */
.button {
    display: inline-block;
    text-align: center;
}



.button a {
    align-items: center;
    appearance: none;
    background: var(--colorRed);
    border: 1px solid #0000;
    border-radius: 10px;
    color: #fff;
    cursor: pointer;
    display: inline-flex;
    flex-wrap: wrap;
    font-weight: 700;
    justify-content: center;
    max-width: 100%;
    padding: 10px 70px 10px 50px;
    position: relative;
    text-align: center;
    font-size: 90%;
}




.button a::before {
    bottom: 0;
    content: "";
    height: 20px;
    margin: auto 0;
    position: absolute;
    right: 23px;
    top: 0;
    transition: all .3s;
    width: 12px;
    background-image: url(../img/arrow.png);
    background-repeat: no-repeat;

}



@media screen and (max-width: 480px) {

    .button {
        padding: 10px 0px;
        /* width: 100%; */
    }

    .tabmenu,
    .tabmenu.tabactive {
        font-size: 14px;
        padding: 5px 10px;
    }

    .news-box .wp-block-buttons {
        text-align: center;
    }
}


/* ログイン */
.login-box {
    background-position-x: center;
    background-image: url(../img/login-bg.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    padding: 100px 0;
    margin-bottom: 0;
}

.login-box h1,
.login-box p {
    color: #FFF;
}

.login-box p {
    text-align: center;
    margin-bottom: 40px;
}

.login-box .img-box {
    width: 380px;
    margin: 0 auto;
}

@media screen and (max-width: 782px) {
    .login-box {
        background-image: url(../img/login-bg-sp.jpg)
    }

    .login-box .img-box {
        width: min(300px, 100%);
    }
}

/* イベント */

.events-box {
    background-color: #000;
    padding: 100px 0;
    margin-bottom: 0;
}

.events-inner {
    margin-bottom: var(--m40);
    padding: 0 5vw;
}

.events-inner .title h1,
.events-inner .blog-content p,
.events-inner .blog-txt {
    color: #FFF;
}

@media screen and (max-width: 782px) {
    .events-inner .flex {
        flex-direction: column;
        align-items: center;
    }

    .events-inner article {
        width: 100%;
        margin-bottom: 20px;
    }

    .events-inner article a {
        display: flex;
        align-items: center;
        gap: 1em;
    }


}

@media screen and (max-width: 480px) {

    .blog-box,
    .events-inner article a {
        flex-direction: column;
    }

    /* .blog-img {
        width: 100%;
    } */
}




/* ABOUT */
.about-box {
    background-color: #FAF0F3;
    padding: 100px 0;
}




.wp-block-columns {
    padding: 0 5vw;
    gap: 2em;
    /* margin-bottom: var(--m100); */
    margin-bottom: var(--m40);
}

.wp-block-column {
    margin-bottom: 0;
    align-content: center;
}

.wp-block-column p {
    margin-bottom: var(--m40);
}

.button-2 .button {
    display: block;
    margin-bottom: 20px;
}

.button-2 .button:last-child {
    margin-bottom: 0;
}

.about-box .wp-block-columns:nth-child(4) .button a {
    display: inline-block;
    width: min(370px, 100%);
}



@media screen and (max-width: 782px) {
    .common-box .wp-block-columns:nth-child(odd) {
        flex-direction: column-reverse;
    }

}


.img-box {
    text-align: center;
}



/* お問い合わせボタン */
.contact-box {
    background-image: url(../img/ct-bg.jpg);
    background-size: cover;
    padding: 100px 0;
}

.contact-box .title {
    margin-bottom: var(--m40);
}

.contact-box h1 {
    color: #FFF;
    margin: 0;
}

.sub-t {
    font-size: 1.5em;
    color: #FFF;
}

.cta-button:hover {
    opacity: 0.7;
}


.sns-link {
    display: flex;
    gap: 8px;
    margin-bottom: 20px;
}

@media screen and (max-width: 782px) {
    .contact-box .flex {
        flex-direction: column;
        align-items: center;
    }

    .cta-button {
        width: min(300px, 100%);
    }


}



/* フッター */
.site-footer {
    background: #000;
    padding-top: var(--m100);
}

.ft-top {
    display: flex;
    margin-bottom: var(--m100);
}

.ft-address {
    color: #FFF;
}


.ft-nav {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;

}

.ft-nav>ul {
    margin-left: 2vw;
}

.ft-nav>ul>li>ul {
    padding-left: 1em;
}

.ft-nav ul li,
.ft-nav ul li a {
    color: #FFF;

}

.ft-bottom {
    text-align: center;
    color: #FFF;
}

.ft-bottom .copy {
    font-style: 0.8em;
}

.ft-bnlink {
    display: flex;
    justify-content: center;
    margin-bottom: var(--m40);
}

.ft-bnlink li {
    margin-left: 2vw;
}

.ft-bnlink li:nth-child(1) {
    margin-left: 0;
}

@media screen and (max-width: 980px) {
    .ft-top {
        flex-direction: column;
    }

    .ft-address {
        margin-bottom: 40px;
    }

    .ft-nav>ul {
        margin-left: 0;
    }
}

@media screen and (max-width: 782px) {
    .ft-top {
        text-align: center;
        margin-bottom: 20px;
    }

    .ft-bnlink {
        flex-wrap: wrap;
        gap: 0.8rem;
        margin-bottom: var(--m100);
    }

    .ft-bnlink li {
        margin-left: 0;
    }

    .ft-address {
        width: auto;
        margin: 0 auto;
    }

    .ft-nav {
        display: none;
    }
}


/* その他会員 */

.anchour {
    width: 52.3%;
    margin: 0 auto;
    margin-bottom: 100px;
}

.anchour ul {
    display: flex;
    flex-wrap: wrap;
    width: 100%;

    top: -66px;
    -webkit-box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.16);
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.16);
}

.anchour li {
    width: 33.3%;
    background: #ffffff;
    text-align: center;
}

.anchour2 li {
    width: 50%;
}

.anchour li+li {
    position: relative;
}

.anchour li+li:after {
    content: '';
    position: absolute;
    left: 0;
    top: 24px;
    width: 1px;
    height: calc(100% - 48px);
    background: #dddddd;
}

.anchour li a {
    display: block;
    padding: 20px 0 35px 0;
    position: relative;
    color: #333333;
    font-weight: bold;
}


.anchour li a:after {
    content: '';
    position: absolute;
    bottom: 24px;
    left: 50%;
    width: 8px;
    height: 8px;
    margin-left: -7px;
    border-right: 1px solid #333333;
    border-bottom: 1px solid #333333;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transition: all .3s ease-out;
    transition: all .3s ease-out;
}

.anchour li a:hover {
    text-decoration: none;
}

.anchour li a:hover:after {
    bottom: 15px;
}

.anchour li span {
    display: block;
    width: 100%;
}

@media screen and (max-width: 782px) {
    .anchour {
        width: 100%;
    }
}


.member-items {
    margin-bottom: var(--m100);
}

.inner,
.club-inner {
    width: min(900px, 90%);
    margin: 0 auto;
}

.club-inner h3 {
    margin: 40px 0 0;
}

.club-inner .content:nth-of-type(1) {
    border-bottom: dotted 6px #B3B3B3;
    text-align: center;
    word-break: keep-all;
}


.content {
    padding: 40px 0;
    margin-bottom: 40px;
}

.member-container .content li {
    margin-bottom: 1em;
}



@media screen and (max-width: 782px) {

    .inner,
    .club-inner {
        width: 100%;

    }
}

.bk {
    text-align: center;

}

.pink-line {
    color: var(--colorRed);
    font-size: 24px;
    font-weight: bold;
    position: relative;
    display: inline-block;
    padding: 0 55px;
    border: none;
    margin-bottom: 20px;

}

.pink-line::before {
    content: "";
    position: absolute;
    left: 0;
}

.pink-line::before,
.pink-line::after {
    content: "";
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 36px;
    height: 3px;
    background-color: var(--colorRed);
    bottom: unset;
}



.pink-line::after {
    right: 0;
}

@media screen and (max-width: 782px) {
    .pink-line {
        font-size: 2.25rem;
    }
}


.benefits {
    background-color: var(--colorPink);
    border: solid 4px var(--colorRed);
    border-radius: 10px;
    padding: 32px 3.6vw;
}

.benefits .content {
    padding: 0;

}



/* お知らせページ */
.blog-container {
    display: flex;
    justify-content: space-between;
}

.left-items {
    width: 75%;
}


.right-items {
    width: 20%;
}

.widget {

    margin-bottom: 20px;
}

.widget:last-child {
    margin: 0;
}

.widget h5 {
    font-size: 90%;
    margin: 0 0 20px;
}

.widget ul {
    margin-left: 1em;
}

.widget li a {
    color: #333333;
}

.widget li a:hover {
    color: #333333;
    opacity: 0.7;
}

.author-profile {
    display: none;
}

.has-sidebar .content-area,
.has-sidebar .sidebar-area {
    width: auto
}

.has-sidebar .sidebar-area {

    border: none;
    padding: 0 0 40px;
}

.cat-links {
    margin-bottom: 0;
}

.cat-links li {
    display: inline-block;
    padding: 0 0.5em;
}

.cat-links li a {
    color: #FFF;
}

.topics li {
    background-color: var(--colorRed);
}

.report li {
    background-color: #074AB0;
}

.combination li {
    background-color: #4ab017;
}

.entry-title {
    font-family: inherit;
}

.post-list .entry-title {
    font-size: 1em;

}

.post-list .entry-header {
    margin: 0;
}

.single-post .entry-header {
    margin-bottom: 20px;
}

.entry-header .low-ct {
    display: flex;
    /* width: 230px; */
}

.entry-header .low-ct,
.entry-header .flex {
    justify-content: flex-start;
    align-items: center;
    gap: 1em;
}

.single .entry-header .low-ct {
    margin-bottom: 1em;
}

.entry-meta {
    margin-top: 0;
    width: 11rem;
}

.hentry {
    border-bottom: 1px solid rgba(0, 0, 0, .05);
    padding: 0 0 20px;
    margin: 0 0 20px;
}


.pagination {
    color: var(--colorRed);
    font-size: 90%;
    margin-bottom: 40px;
    text-align: center;
}

.pagination a.page-numbers {
    border: solid 1px var(--colorRed)
}

.pagination a.page-numbers:hover {
    border: solid 1px var(--colorRed);
    color: var(--colorRed);
    opacity: 0.5;
}

.pagination .current {
    background-color: var(--colorRed) !important;
    color: #FFF;
}

.wp-block-gallery::after {
    content: "";
    width: calc(33.33% - var(--wp--style--unstable-gallery-gap, 16px)*0.66667);
}

.single .size-full img{
	width:auto;
}

@media screen and (max-width: 980px) {
    .blog-container {
        flex-direction: column;

    }

    .left-items,
    .right-items {
        width: 100%;
    }


    .entry-header .flex {
        flex-direction: column;
        align-items: flex-start;
        gap: initial;
    }

    .entry-header .low-ct {
        margin-bottom: 1em;
    }
}

@media screen and (max-width: 782px) {
    .wp-block-gallery::after {
        content: "";
        width: calc(50% - var(--wp--style--unstable-gallery-gap, 16px)*0.5);
    }
}

/* お問い合わせ */

.contact-top p {
    margin-bottom: var(--m40);
    text-align: center;
}

.contact-bottom {
    margin-top: var(--m40);
    text-align: center;

}

.accent {
    color: var(--colorRed);
    font-weight: bold;
    font-size: 32px;
}

.privacy,
.note {
    padding: 32px;
    background-color: #F2F2F2;
    border-radius: 10px;
    margin-bottom: var(--m100);
}

.note {
    margin-top: 40px;
}

.contact-form {
    background-color: #FFFBF5;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.16);
    margin-bottom: var(--m40);
    border-radius: 10px;
    padding: 40px 0;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
textarea,
select {
    background-color: #FFF;
    margin-top: 0;
    width: 100%;
    font-size: 16px;
}

input[type="radio"] {
    appearance: auto;
}

input[type="file"] {
    width: 100%;
}

#mw_wp_form_preview th {
    width: 50%;
}

.mw_wp_form_preview input[type="text"] {
    background-color: #FFF;
    margin-top: 0;
}

select {
    padding: 0.6em;
}

input {
    color: #333333;
}

.mw_wp_form table th,
.mw_wp_form table td {
    border: none;
}

.mw_wp_form table th {
    background-color: unset;
    font-size: 16px;
}

.font-s {
    font-size: small;
}

.must {
    background-color: var(--colorRed);
    color: #FFF;
    border-radius: 5px;
    margin-left: 1em;
    padding: 5px 10px;
}

.submit {
    display: flex;
    align-items: center;
    justify-content: center;

}

.mw_wp_form_preview .submit {
    gap: 40px;
}



@media screen and (max-width: 980px) {
    .mw_wp_form table tr {
        display: flex;
        flex-direction: column;
        width: 100%;
    }

    .mw_wp_form table th {
        padding-bottom: 0;
    }

    .accent {
        font-size: 1.65rem;
    }
	.privacy{
margin-bottom:40px;}
}



/* ご予約料金 */
.mb100 {
    margin-bottom: 100px;
}

.flex {
    display: flex;
    justify-content: space-between;
    gap: 1em;
}

.detail-item {
    margin-bottom: 40px;
}

.detail-item table:nth-child(1) {
    width: 49%;
}

.detail-box {
    width: 100%;
}


.detail-box .detail-item {
    width: 49%;
}


.detail-box .detail-item:nth-child(2) table:nth-of-type(1) {
    margin-bottom: 20px;
}

.common-table {
    margin-bottom: 40px;
}

.common-table th,
.common-table td {
    border: solid 1px #999999;
    text-align: center;
}

.common-table th {
    background-color: #FFFDE1;
}

.ft-golf-container table tr:nth-child(1) th {
    background-color: #E7F6FC;
}

.ft-golf-container .detail-box .detail-item:nth-child(2) tr:nth-child(1) th {
    background-color: #FFFDE1;
}

/* .detail-box .detail-item:nth-child(2) table:nth-of-type(2) th {
    background-color: #FFFDE1;
} */



@media screen and (max-width: 782px) {
    .flex {
        flex-direction: column;
    }

    .reservations-fees .content {
        padding: 0 0 40px;
    }

    /* .mb100 {
        margin-bottom: 40px;
    } */
}

/* フットゴルフ */

.table-container .content p {
    margin-bottom: 40px;
}

.ft-golf-container .ft-golf-detail:nth-child(1) {
    margin-bottom: 100px;
}


.ft-golf-course {
    margin-bottom: 100px;
}

.ft-golf-course .content img {
    width: 100%;
    border: solid 1px #B3B3B3;
}

@media screen and (max-width: 782px) {
    .ft-golf-container .flex {
        flex-direction: column;
        align-items: center;
    }

    .ft-golf-detail .detail-item table:nth-child(1),
    .ft-golf-detail .detail-box .detail-item {
        width: 100%;
    }

    .competition-box {
        padding: 40px 0;
    }
}



/* ご予約、レッスン*/
.competition-box,
.reservation-box {
    -webkit-box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.16);
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.16);
    background-color: var(--colorCBeige);
    padding: 40px;
    margin-bottom: 100px;
}

.competition-box .wp-block-columns {
    margin-bottom: 0;
}

.reservation-box p {
    text-align: center;
    margin-bottom: 40px;
}

.reservation-box .content {
    margin-bottom: 0;
}

.reservation-box .button a {
    display: inline-block;
    width: min(370px, 100%);

}

.reservation-box .button:nth-child(1) a {
    padding-right: 50px;
    background-color: #FFF;
    color: var(--colorRed);
    border: solid 2px var(--colorRed);

}

.reservation-box .button:nth-child(1) a:before {
    display: none;
}

.reservation-box .button:nth-child(1),
.reservation-box .button:nth-child(2) {
    margin-bottom: 20px;
}



@media screen and (max-width: 782px) {

    .competition-box {
        padding: 40px 0;
    }

    .reservation-box {
        padding: 40px 20px;

    }

    .reservation-box .content {
        padding: 0;
    }

    .table-container .reservation-box p {
        margin-bottom: 20px;
    }

    .reservation-box .button {
        padding: 0;
    }
}






/* pdfマーク */
a.pdf-link {
    display: inline-block;
    padding: 10px 50px 10px 70px;

}

a.pdf-link::after {
    display: none;
}

a.pdf-link::before {
    width: 26px;
    height: 26px;
    position: absolute;
    top: 0;
    left: 26px;
    background: url(../img/icon04.png) no-repeat left top;
    content: "";
    background-size: contain;
}


.button-2.flex {
    justify-content: center;
}




@media screen and (max-width: 1280px) {
    .button-2.flex {
        flex-direction: column;
        gap: 0;
    }

    .button-2 a.pdf-link {
        width: min(340px, 100%);
    }
}


.red {
    color: var(--colorRed);

}

.lesson .red {
    padding-left: 1em;
}

.emphasis {
    font-weight: bold;
    font-size: 1.5rem;
}

.wp-block-image img {
    width: 100%;
}

@media screen and (max-width: 980px) {
    .wp-block-image img {
        width: unset;
    }
}


.sp-only {
    display: none;
}

@media screen and (max-width: 782px) {
    .pc-only {
        display: none;
    }
}

@media screen and (max-width: 480px) {
    .sp-only {
        display: block;
    }

}



/* お問い合わせ確認画面で、ティーチングプロの部分を非表示にする */
div.contact_msg_hidden {
    display: none;
}