main>.ttl-fill+.news-list {
    margin-top: min(5vw, 30px)
}

main article iframe {
    max-width: 100%
}

#side {
    order: 2
}

.mt1 {
    margin-top: 1em !important
}

.mt2 {
    margin-top: 2em !important
}

.mt3 {
    margin-top: 3em !important
}

.post {
    margin-bottom: min(7%, 30px)
}

.entry-header>p {
    margin: 0 0 1.5rem;
    font-size: .9375em;
    font-weight: 400
}

.entry-header>p>i {
    color: #988f7c
}

.entry-title {
    margin-bottom: .7em;
    font-size: min(4.2vw, 24px);
    font-family: "fot-tsukuardgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
    letter-spacing: 0
}

.entry-content {
    text-align: justify
}

.entry-content .more {
    margin-block: 1.3em 0;
    text-align: right
}

.entry-content .more>a {
    display: inline-block;
    padding: .5em 3em .6em;
    color: #fff;
    text-decoration: none;
    line-height: 1;
    background-color: #f49c2a;
    border: 2px solid #f49c2a;
    border-radius: 5px
}

.entry-content .more>a:hover {
    color: #f49c2a;
    background-color: hsl(33.8613861386, 90.1785714286%, 86.0784313725%)
}

.entry-content a {
    color: #988f7c;
    text-decoration: underline
}

.entry-content h2 {
    margin-top: 1.3em;
    font-size: 1.5em;
    line-height: 1.4
}

.entry-content h3 {
    margin-top: 1.3em;
    font-size: 1.3em
}

.entry-content h4 {
    margin-top: 1.3em;
    font-size: 1.2em
}

.entry-content h5 {
    margin-top: 1.3em;
    font-size: 1.1em
}

.entry-content h6 {
    margin-top: 1.3em;
    font-size: 1em
}

.entry-content p {
    line-height: 1.6
}

.entry-content ol>li:nth-child(n+2) {
    margin-top: 1em
}

.entry-content strong {
    font-size: 1em
}

.entry-content em {
    font-style: italic;
    font-weight: 400
}

.entry-content hr {
    margin: 2em 0;
    border: none;
    border-top: 1px solid #9e9e9e
}

.entry-content .wp-caption-text {
    margin: .8em 0;
    font-size: .9em
}

.entry-content .wp-block-quote {
    border-left-color: #f49c2a
}

.entry-content .notice-box {
    margin-block: 2em
}

.entry-content .is-style-ttl-deco {
    padding-block: .8em;
    padding-left: 2.75em;
    font-size: min(4.5vw, 20px);
    border-top: 2px solid #f3f3f3;
    border-bottom: 2px solid #f3f3f3
}

.entry-content .is-style-ttl-deco::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 2.05em;
    background: url(/img/common/deco-ttl.png) no-repeat center/contain
}

.entry-content .is-style-ttl-deco2 {
    padding-block: .2em;
    padding-left: 1em;
    font-size: min(4.2vw, 18px)
}

.entry-content .is-style-ttl-deco2::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: .4em;
    background-color: #2aab9f;
    border-radius: 1em
}

.entry-content .is-style-list-kome>li {
    text-indent: -1.1em;
    margin-left: 1.1em
}

.entry-content .is-style-list-kome>li::before {
    content: "※";
    margin-right: .1em
}

.entry-content .articleTtl_main {
    margin: 1em auto .5em;
    padding: .4em 0;
    font-size: clamp(18px, 1.6vw, 24px);
    font-family: "fot-tsukuardgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
    letter-spacing: 0;
    line-height: 1.4;
    border-bottom: 3px solid #f5f0e6;
    position: relative
}

.entry-content .articleTtl_main::before {
    content: "";
    display: block;
    position: absolute;
    bottom: -3px;
    left: 0;
    width: 15%;
    height: 3px;
    background: #d2cab9
}

.entry-content .articleTtl_sub_bg {
    margin-block: 1em .7em;
    padding: .3em .5em;
    font-size: 1.12em;
    font-family: "fot-tsukuardgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
    letter-spacing: 0;
    line-height: 1.3;
    background: #f5f0e6
}

.entry-content .articleTtl_sub_border {
    margin-bottom: .5em;
    padding-left: 1.6em;
    font-size: 1em;
    position: relative
}

.entry-content .articleTtl_sub_border::before {
    content: "■";
    position: absolute;
    left: 0;
    width: 3px;
    height: 100%;
    color: #d2cab9
}

.entry-content .txtBox {
    position: relative;
    width: 90%;
    margin: clamp(20px, 3vw, 30px) auto;
    padding: 1em;
    background: #f5f0e6
}

.entry-content .txtBox .txt {
    margin-block: unset
}

.entry-content .txtBox>*:is([class*=Ttl]) {
    margin-top: unset
}

.entry-content .tbl {
    width: 100%;
    margin-bottom: clamp(24px, 3vw, 36px);
    border: 1px solid #d2cab9;
    border-spacing: unset
}

.entry-content .tbl th {
    width: 30%;
    padding: .4em 1em;
    font-weight: normal;
    text-align: start;
    background: #f5f0e6
}

.entry-content .tbl td {
    padding: .4em 1em
}

.entry-content .tbl tbody>* {
    background-color: #fff
}

.entry-content .tbl tbody th {
    border-left: unset
}

.entry-content .tbl tbody td:nth-child(n+2) {
    border-left: none
}

.entry-content .tbl tbody tr:not(:last-child) td {
    border-bottom: 1px solid #d2cab9
}

.entry-content .tbl tbody tr:not(:last-child) th {
    border-bottom: 1px solid #d2cab9
}

.entry-content .dl_tbl {
    border: 1px solid #d2cab9
}

.entry-content .dl_tbl>div {
    width: 50%
}

.entry-content .dl_tbl>div:not(:first-child) {
    border-left: 1px solid #d2cab9
}

.entry-content .dl_tbl dt {
    padding: .4em 1em;
    text-align: center;
    background: #f5f0e6
}

.entry-content .dl_tbl dd {
    padding: .4em 1em
}

.entry-content .dl_tbl dd:not(:last-child) {
    border-bottom: 1px solid #d2cab9
}

.entry-content .btn a {
    position: relative;
    display: block;
    padding: 10px 20px;
    border: 2px solid;
    border-color: #d2cab9;
    color: inherit;
    text-decoration: none;
    text-align: center
}

.entry-content .btn a::before {
    content: "";
    display: block;
    position: absolute;
    top: 4px;
    left: 4px;
    right: -4px;
    bottom: -4px;
    width: 101%;
    height: 102%;
    z-index: -1;
    transition: all .5s;
    background-color: #fff
}

.entry-content .btn.beige a {
    border-color: #d2cab9
}

.entry-content .btn.beige a::before {
    background-color: #f5f0e6
}

.entry-content .btn.mw360 {
    max-width: none
}

.entry-content .btn.mw360>a {
    display: inline-block;
    min-width: 360px !important
}

.entry-content .btn_wrap {
    margin-block: clamp(20px, 3vw, 30px);
    text-align: center
}

.entry-content .btn_wrap a {
    text-decoration: none
}

.entry-content a.txtLink {
    color: #e0dad0;
    text-decoration: underline
}

.entry-content a.txtLink:hover {
    color: #f5f0e6;
    background-color: #e0dad0
}

.entry-content a.txtLink[target=_blank] {
    position: relative
}

.entry-content a.txtLink[target=_blank]::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: -1.5em;
    transform: translateY(-50%);
    width: 1.2em;
    height: 1.2em;
    padding-left: .5em;
    background: url(/assets/img/common/ico-external_link.svg) no-repeat center/contain
}

.entry-content ul.disc li {
    line-height: 1.4
}

.entry-content ul.disc li::marker {
    color: #d2cab9
}

.entry-content ul.disc li:not(:last-child) {
    margin-bottom: .7em
}

.entry-content .conBox {
    column-gap: 1.5em;
    margin-bottom: clamp(24px, 3vw, 36px)
}

.entry-content .conBox figure {
    width: 45%
}

.entry-content .conBox .txtArea {
    flex: 1
}

.entry-content .conBox ul {
    margin-left: .5em
}

.entry-content .conBox *:is([class*=Ttl]) {
    margin-top: unset
}

.entry-content ul.conBox {
    margin-left: unset
}

.entry-content ul.conBox>li {
    gap: 1em
}

.entry-content ul.conBox>li figure {
    width: 30%
}

.entry-content ul.conBox>li .txtArea {
    flex: 1
}

.entry-content ul.conBox>li:not(:last-child) {
    margin-bottom: 1.7em
}

.entry-content .caption_list {
    justify-content: space-between;
    margin-left: unset;
    margin-bottom: clamp(24px, 3vw, 36px);
    list-style: none
}

.entry-content .caption_list>li {
    width: calc((100% - 2em)/3)
}

.entry-content .caption_list figcaption {
    padding-top: .3em;
    font-size: .9em;
    text-align: center
}

.entry-content .voice_list {
    margin-left: unset;
    margin-bottom: clamp(24px, 3vw, 36px);
    list-style: none
}

.entry-content .voice_list .item {
    padding: 1.8em 1.2em;
    background: #f5f0e6
}

.entry-content .voice_list :is(.customer, .tekuteku) {
    display: flex;
    column-gap: 1.5em
}

.entry-content .voice_list :is(.customer, .tekuteku) .icon {
    align-self: flex-start;
    width: 3.8em;
    margin-top: .5em;
    padding: .3em
}

.entry-content .voice_list .customer {
    margin-bottom: 1.5em
}

.entry-content .voice_list .customer .icon {
    padding: .7em;
    background: #fff;
    border-radius: 50%
}

.entry-content .voice_list .tekuteku {
    flex-direction: row-reverse
}

.entry-content .voice_list .tekuteku .comment::before {
    right: -0.9em;
    left: unset;
    transform: rotate(180deg)
}

.entry-content .voice_list .txtArea {
    flex: 1
}

.entry-content .voice_list .comment {
    display: flex;
    align-items: center;
    min-height: 5em;
    margin-bottom: .4em;
    padding: .9em 1em .8em 1.1em;
    line-height: 1.5;
    background: #fff;
    border-radius: .8em;
    position: relative
}

.entry-content .voice_list .comment::before {
    content: "";
    position: absolute;
    top: 2em;
    left: -0.9em;
    width: 1em;
    height: 1em;
    clip-path: polygon(100% 0, 100% 100%, 18% 50%);
    background: #fff
}

.entry-content .voice_list .name {
    margin-bottom: unset;
    padding-left: .5em;
    font-size: .9em;
    font-weight: bold
}

@media screen and (max-width: 599px) {
    .entry-content .btn_wrap a {
        width: 100%;
        padding-inline: 20px 35px
    }

    .entry-content .btn_wrap .btn_wrap.btn.mw360 a {
        min-width: 100%
    }

    .entry-content .entry-content .txtBox {
        width: 100%
    }

    .entry-content .conBox {
        row-gap: 1em
    }

    .entry-content .conBox figure {
        width: 100%
    }

    .entry-content ul.conBox>li figure {
        width: 100%
    }

    .entry-content .caption_list {
        row-gap: 1em
    }

    .entry-content .caption_list li {
        width: 100%
    }

    .entry-content .tbl tbody th {
        display: block;
        width: 100%
    }

    .entry-content .tbl td {
        display: block
    }

    .entry-content .tbl tr:not(:last-child) th {
        border-bottom: none
    }

    .entry-content .dl_tbl>div {
        width: 100%
    }

    .entry-content .dl_tbl>div:not(:first-child) {
        border-left: unset
    }

    .entry-content .dl_tbl>div:not(:first-child) dt {
        border-top: 1px solid #d2cab9
    }

    .entry-content .voice_list .comment::before {
        top: 1.3em
    }

    .entry-content .voice_list :is(.customer, .tekuteku) .icon {
        width: 2.5em;
        height: 2.5em;
        padding: .5em
    }
}

.has-normal-font-size,
.has-regular-font-size {
    font-size: inherit !important
}

.wp_rp_wrap {
    display: none
}

.news-list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: min(5.2vw, 20px)
}

.news-list>li>a {
    display: block;
    height: 100%;
    padding-bottom: 1.2em;
    background-color: #fff
}

.news-list>li>a .img {
    aspect-ratio: 4/3;
    position: relative
}

.news-list>li>a .info {
    margin: 1em 5% .5em;
    align-items: center
}

.news-list>li>a .date {
    display: block;
    color: #9e9e9e;
    font-size: .875em;
    font-family: "Nunito", sans-serif;
    font-weight: 700;
    letter-spacing: .06em
}

.news-list>li>a .cat {
    margin: 0 0 0 .5em;
    padding: 0 .8em;
    font-size: .8em;
    background-color: #fff;
    border: 1px solid #d2cab9;
    border-radius: 3em
}

.news-list>li>a .ttl {
    padding-inline: 5%;
    font-family: "fot-tsukuardgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
    letter-spacing: 0;
    line-height: 1.4
}

.news-list>li>a .tag {
    padding: .9em 5% 1.2em;
    font-size: .875em;
    font-weight: 700;
    letter-spacing: 0
}

.news-list>li>a .tag>li+li {
    margin-right: 1em
}

@media screen and (max-width: 599px) {
    .news-list {
        grid-template-columns: repeat(2, 1fr)
    }
}

.search .post:before {
    content: ""
}

.search .entry-header p {
    text-align: left
}

.search .entry-header span {
    margin-left: 0;
    margin-right: 1em
}

.search .entry-summary p {
    margin: 10px 0 0 12px
}

.navigation {
    display: flex;
    justify-content: space-between;
    margin-block: 3em;
    padding-top: 1em
}

.navigation>span {
    display: block;
    width: 48%;
    max-width: 300px
}

.navigation>span a {
    min-width: auto;
    padding-inline: 1em
}

img.size-auto,
img.size-full,
img.size-large,
img.size-medium,
.attachment img {
    max-width: 100%;
    height: auto
}

.aligncenter,
img.aligncenter {
    clear: both;
    display: block;
    margin-left: auto;
    margin-right: auto
}

.wp-block-embed-youtube {
    max-width: 640px;
    margin-left: auto !important;
    margin-right: auto !important
}

.wp-block-embed-youtube .wp-block-embed__wrapper {
    width: 100%;
    padding-top: 56.25%;
    position: relative
}

.wp-block-embed-youtube iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important
}

.wp-block-search .wp-block-search__label {
    display: none
}

.wp-block-search__inside-wrapper {
    padding: .5em 1em;
    border: 1px solid #6f6f6f;
    border-radius: 3px
}

.wp-block-search__input {
    padding: 0 !important;
    border: none !important
}

.wp-block-search__input:focus {
    outline: none
}

.wp-block-search__button {
    min-width: auto;
    height: 1.8em;
    margin-left: 0 !important;
    padding: 0 .75em !important;
    text-indent: -9999em;
    border: none !important;
    background: #fff url(../img/common/ico-search.svg) no-repeat center/contain !important
}

#side>div:not(:first-child) {
    margin-top: 2em
}

#side .widget {
    margin-bottom: 20px;
    font-weight: 400
}

#side .widgettitle {
    padding: .5em;
    font-size: min(3.6vw, 20px);
    font-family: "fot-tsukuardgothic-std", sans-serif;
    font-weight: 700;
    font-style: normal;
    letter-spacing: 0;
    text-align: center;
    background-color: #f5f0e6;
    border-top: 2px solid #e0dad0
}

#side .widget .list-square {
    margin-left: .5em
}

#side .widget .list-square>li {
    margin-block: .3em
}

#side .widget select {
    width: 100%
}

#side .widget>ul>li>a,
#side .widget .wp-block-group__inner-container>ul>li>a {
    display: block;
    padding-block: .8em;
    padding-inline: 1em 0;
    line-height: 1.5;
    border-bottom: 1px solid #e0dad0;
    position: relative
}

#side .widget>ul>li>a::before,
#side .widget .wp-block-group__inner-container>ul>li>a::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    width: 7px;
    height: 7px;
    background-color: #f7e19b;
    border-radius: 50%;
    transform: translateY(-50%)
}

#side .widget_archive select,
#side .widget #wp-block-archives-1 {
    margin-top: 1em
}

#side .widget_categories ul .cat-item.cat-item-54>a {
    padding-block: .8em .5em;
    border-bottom: none
}

#side .widget_categories ul .cat-item .children {
    padding: 0 1em 1em 2em;
    border-bottom: 1px solid #e0dad0
}

#side .widget_categories ul .cat-item .children>li>a {
    padding-left: 1.2em;
    color: #6f6f6f;
    font-size: .9em;
    position: relative
}

#side .widget_categories ul .cat-item .children>li>a::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    width: 10px;
    height: 1px;
    background-color: #9e9e9e
}

#side .wp-block-latest-posts__post-title {
    font-size: .95em;
    line-height: 1.5
}

#side #searchform #s {
    width: 70%;
    margin: 0;
    padding: 5px;
    display: block;
    border: 2px solid #ddd;
    border-radius: 0
}

#side #searchform #searchsubmit {
    width: 30%;
    min-width: auto;
    padding: 0 10px;
    display: block;
    text-align: center;
    transition: all .3s;
    background-color: #d2cab9;
    border: 2px solid #d2cab9;
    border-radius: 0;
    color: #fff
}

.tagcloud {
    margin: 10px 0px 10px 0px
}

.wp-pagenavi {
    width: 100%;
    margin-block: min(7%, 50px);
    text-align: center
}

.wp-pagenavi>.pages {
    display: none
}

.wp-pagenavi>a,
.wp-pagenavi>.current {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.5em;
    height: 2.5em;
    margin: 0 .2em;
    padding: .1em .65em .2em !important;
    font-family: "Nunito", sans-serif;
    font-weight: 700;
    letter-spacing: .06em;
    border: 1px solid #e0dad0 !important;
    border-radius: 50%
}

.wp-pagenavi .extend {
    border: none
}

.wp-pagenavi .last,
.wp-pagenavi .first {
    width: auto;
    height: auto;
    border: none !important;
    border-radius: inherit !important
}

.wp-pagenavi>a:hover {
    background: #f5f0e6;
    color: inherit;
    border: none
}

.wp-pagenavi>.current {
    color: #282828;
    background: #f7e19b;
    border: 1px solid #e0dad0 !important
}

#member .member-form p.flex {
    align-items: center
}

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

    #member .member-form input[type=text],
    #member .member-form input[type=email],
    #member .member-form input[type=tel],
    #member .member-form input[type=number],
    #member .member-form input[type=password],
    #member .member-form input textarea {
        flex: 1;
        width: 100%;
        padding: .4em .8em
    }

    #member .member-form input[type=submit],
    #member .member-form input[type=button],
    #member .member-form form button {
        min-width: 200px
    }
}

.wp-block-file a[href$=".pdf"]:not(.wp-block-file__button) {
    padding-left: 2em
}

.wp-block-file a[href$=".pdf"]:not(.wp-block-file__button)::before {
    left: 0
}

.wp-block-file__button {
    position: relative;
    margin-bottom: 4px;
    padding: .3em 2em .3em 5em;
    color: #988f7c !important;
    font-weight: 500;
    text-decoration: none !important;
    background-color: #fff !important;
    border: 1px solid #988f7c;
    border-radius: 3em;
    box-shadow: 0 4px 0 #988f7c
}

.wp-block-file__button::before {
    position: absolute;
    content: "PDFを";
    left: 1.9em
}

.wp-block-file__button:hover {
    transform: translateY(4px);
    box-shadow: none !important
}

@media screen and (max-width: 599px) {
    .wp-block-file__button {
        display: block;
        max-width: 152px;
        margin: .5em auto 0 !important
    }
}

.wp_rp_content {
    margin-top: min(5vw, 30px)
}

.wp_rp_content .related_post {
    margin-top: 1em;
    display: grid;
    gap: 1em
}

.wp_rp_content .related_post>li>a {
    display: grid;
    grid-template-columns: 100px 1fr;
    align-items: center;
    gap: 1em
}

@media screen and (min-width: 600px) {
    .wp-pagenavi {
        display: flex;
        align-items: center;
        justify-content: center
    }
}

@media screen and (min-width: 960px) {
    .contents>main {
        width: 75%
    }

    .contents>aside {
        width: 22%
    }
}

@media screen and (max-width: 959px) {
    .contents>main {
        margin-top: 0
    }

    .contents>aside {
        padding-top: 2em;
        border-top: 2px solid #9e9e9e
    }
}

@media screen and (max-width: 599px) {
    #pan>li:last-child {
        display: none
    }

    .max-half {
        max-width: 50%
    }

    .wp-pagenavi>a,
    .wp-pagenavi>.current {
        display: inline-block;
        font-size: .85em
    }
}