@charset "UTF-8";

*,
*:before,
*:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

body {
    font-family: 'M PLUS 1p', 'Noto Sans JP', sans-serif, "ヒラギノ角ゴ Pro W3", 'Noto Serif JP', serif;
    font-size: 16px;
    line-height: 1.5;
    color: #4d4d4d;
}

p {
    margin: 0;
    margin-bottom: 10px;
    color: #4d4d4d;
}

img {
    max-width: 100%;
    height: auto;
    vertical-align: bottom;
}

a.hover:hover {
    opacity: 0.8;
}

.container {
    width: 990px;
    margin: 0 auto;
}

@media screen and (max-width: 896px) {
    .container {
        width: 100%;
        margin: 0 auto;
        padding: 0 10px;
        text-align: center;
    }
}

/*
@media screen and (min-width: 560px) {…}
@media screen and (min-width: 960px) {…}
*/

/*----------------------------------------------------
header
----------------------------------------------------*/

#header {
    margin: 0;
    padding: 0;
}

#mainimge {
    max-width: 100%;
    position: relative;
}

#head {
    width: 100%;
    display: flex;
    margin: 0;
    padding: 0 50px;
    justify-content: space-between;
    position: absolute;
    top: 0;
}

#title {
    padding-top: 0px;
    font-size: 12px;
    font-family: "ヒラギノ角ゴ Pro W3";
}


.r-head {
    display: flex;
    flex-wrap: nowrap;
    margin-left: 30px;
}

.r-head img {
    margin-top: -1px;
    padding-left: 5px;
    align-self: baseline;
}

.r-head .web {
    margin-top: -3px;
}

.r-head-sm {
    display: none;
}

@media screen and (max-width: 896px) {
    .r-head {
        display: none;
    }

    #head {
        padding: 0 0 15px 0;
        background-color: rgba(255, 255, 255, 0.8);
        position: fixed;
        left: 0;
        z-index: 1000;
    }

    .r-head-sm {
        display: block;
        align-self: flex-start;
        padding-right: 5px;
    }

    #title {
        padding-top: 0px;
        font-size: 9px;
        font-family: "ヒラギノ角ゴ Pro W3";
        padding-bottom: 5px;
        padding-left: 5px;
        margin-bottom: 0;
    }

    .l-head {
        padding-top: 3px;
        margin-left: 10px;
    }

    .l-head .logo,
        {
        padding-top: 0;
        padding-left: 10px;
        margin-left: 10px;
    }

    .l-head {
        padding: 0;
    }

}

@media screen and (max-width: 560px) {
    #mainimge {
        margin-top: 71px;
    }
}

/*----------------------------------------------------
newsbox
----------------------------------------------------*/

.container.nbox {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 40px;
}

.newsbox {
    margin: 0 auto;
    display: flex;
    align-items: center;
}

.newsbox-title {
    margin: 0;
    padding: 36px 45px;
    line-height: 2;
    font-weight: bold;
    font-size: 18px;
    letter-spacing: 1.5px;
    color: #fff;
    background-color: #ef806e;
    flex-grow: 0;
}

.news-summary {
    background-color: #fff;
    opacity: 0.8;
    margin: 0;
    padding: 12px;
    flex-grow: 2;
}

.news-summary li {
    padding: 0 40px;
    list-style: none;
    line-height: 1.75;
}

.news-summary li a {
    text-decoration: none;
    font-size: 14px;
}

.newMark {
    margin-top: 3px;
    display: inline-block;
    background-color: #e55d4e;
    border-radius: 3px;
    color: #fff;
    font-weight: bold;
    font-size: 11px;
    vertical-align: top;
    margin-left: 5px;
    padding: 0 3px;
}

.date {
    color: #ef806e;
    letter-spacing: .8px;

}

.summary {
    padding-left: 40px;
    color: #333;
}

.news-summary .summary:hover {
    text-decoration: underline;
}

.fa.arrow {
    width: 100px;
    font-size: 30px;
    background-color: #ef806e;
    color: #fff;
    padding: 39px 0;
    text-align: center;
}

.fa.arrow:hover {
    background-color: #f39080;
}

#news-sm {
    padding: 0 30px;
    display: none;
}

#news-sm .news-summary {
    padding: 0;
    flex: none;
    display: block;
}

#news-sm .news-summary .date {
    font-size: 12px;
}

#news-sm .news-summary .summary {
    padding-left: 10px;
    font-size: 13px;
}

#news-sm .news-summary li {
    border-bottom: 1.5px dotted #fedfd8;
    padding: 5px 10px;
}


@media screen and (max-width: 896px) {
    .newsbox {
        display: none;
    }

    #news-sm {
        display: block;
        margin-bottom: 30px;
    }
}




/*----------------------------------------------------
gnav
----------------------------------------------------*/

#gnav {
    background-color: rgba(255, 255, 255, 0.8);
    border-bottom: 2px solid #439855;
    width: 100%;

}

.gnav-cont.container {
    padding: 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 65px;
}

.home-logo {
    width: 45px;
    height: auto;
}

.gnav-cont li {
    list-style: none;
    align-self: center;
    position: relative;
}

.gnav-cont li:hover ul {
    display: block;
}


.gnav-cont li a {
    text-decoration: none;
    color: #333;
    display: block;
}

.gnav-cont li a:hover {
    font-weight: bold;
    color: #439855;
    background-image: url(../images/reaf.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

/*ーーーーーーーーサブメニューーーーーーーーーー*/

.gnav-cont ul {
    display: none;
    margin: 0;
    padding: 0;
    position: absolute;
}

.gnav-cont ul li {
    /* ※A */
    width: 135px;
    /* サブメニュー1項目の横幅(135px) */
    border: 2px solid #6bac75;
    /* 項目上側の枠線(ピンク色で1pxの実線) */
    margin-top: 18px;
    margin-left: -15px;
    background-color: rgba(255, 255, 255, 0.8);
}

.gnav-cont ul li a {
    /* ※B */
    line-height: 35px;
    /* サブメニュー1項目の高さ(35px) */
    text-align: center;
    /* 文字列の配置(左寄せ) */
    padding: 5px 0;
    /* 文字列前方の余白(5px) */
}

.gnav-cont ul li a:hover {
    background-size: auto;
}

/*ーーーーーーーーーーーーーーーーーーーーーーーーー*/


.gnav-cont .home-logo a:first-child:hover {
    background: none;
    opacity: 0.8;
}

.fixed {
    position: fixed;
    top: 0;
    padding: 0;
    width: 100%;
    z-index: 1000;
}

@media screen and (max-width: 896px) {
    #gnav {
        display: none;
    }
}

#gnav-toggle {
    display: none;
    position: absolute;
    top: 60px;
    width: 100%;
}

/*
@media screen and (max-width: 896px) {
    #gnav-toggle {
        display: block;
    }
}
*/
#gnav-toggle .active {
    transform: translateY(0%);
}

.gnav-sm {
    background-color: rgba(227, 239, 227, 0.9);
    display: flex;
}

.gnav-cont-sm {
    width: 50%;
    padding: 0;
    margin: 0;
}


.gnav-cont-sm.right {
    border-left: 1px solid #aec6a2;
}

.gnav-cont-sm li label {
    display: block;
    padding: 2px 0;
    cursor: pointer;
    transition: all 0.6s;
}

.gnav-cont-sm input {
    display: none;
}

.gnav-cont-sm .accshow {
    height: 0;
    padding: 0;
    overflow: hidden;
    opacity: 0;
    transition: 0.6s;
}

.cssacc:checked + .accshow {
    height: auto;
    opacity: 1;

}

.gnav-cont-sm li {
    list-style: none;
    border-bottom: 1px solid #aec6a2;
    padding: 15px 15px;
}

.gnav-cont-sm li:last-child {
    border-bottom: none;
}

.gnav-cont-sm li a {
    text-decoration: none;
    font-size: 13px;
    color: #4e4d4d;
}

.gnav-cont-sm .fa {
    font-size: 20px;
    margin-left: 15px;
    padding: 0;
    vertical-align: bottom;
}

.gnav-cont-sm .accshow ul {
    padding-left: 0;
}

.gnav-cont-sm .nav05-1 {
    padding-bottom: 0;
}

.fgnav-sm {
    background-color: rgba(67, 152, 85, 0.95);
    padding: 15px 0;
    text-align: center;
}

.fgnav-sm .active {
    transform: translateY(0%);
}

.btn.close {
    border: 1px solid #fff;
    background-color: transparent;
    text-align: center;
    border-radius: 0px;
    padding: 16px 16px 16px 75px;
    font-size: 14px;
}

.btn.close span {
    padding-left: 50px;
    font-size: 20px;
    vertical-align: baseline;
}

.r-head-sm {
    display: none;
}

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

    .r-head-sm {
        display: block;
        position: fixed;
        /* bodyに対しての絶対位置指定 */
        right: 13px;
        top: 5px;
        width: 42px;
        height: 51px;
        cursor: pointer;
        z-index: 3;
        background: #439855;
        text-align: center;
    }

    .r-head-sm span {
        display: block;
        position: absolute;
        /* .r-head-smに対して */
        width: 30px;
        border-bottom: solid 3px #eee;
        -webkit-transition: .35s ease-in-out;
        -moz-transition: .35s ease-in-out;
        transition: .35s ease-in-out;
        left: 6px;
    }

    .r-head-sm span:nth-child(1) {
        top: 9px;
    }

    .r-head-sm span:nth-child(2) {
        top: 18px;
    }

    .r-head-sm span:nth-child(3) {
        top: 27px;
    }

    .r-head-sm span:nth-child(4) {
        border: none;
        color: #eee;
        font-size: 9px;
        font-weight: bold;
        top: 32px;
    }

    /* 最初のspanをマイナス45度に */
    .r-head-sm.active span:nth-child(1) {
        top: 18px;
        left: 6px;
        -webkit-transform: rotate(-45deg);
        -moz-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }

    /* 2番目と3番目のspanを45度に */
    .r-head-sm.active span:nth-child(2),
    .r-head-sm.active span:nth-child(3) {
        top: 18px;
        -webkit-transform: rotate(45deg);
        -moz-transform: rotate(45deg);
        transform: rotate(45deg);
    }
}

/*----------------------------------------------------
concept
----------------------------------------------------*/

#concept .cont-head {
    width: 100%;
    height: auto;
    background-image: url(../images/top-01.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

#concept .img-fluid {
    display: none;
}

.cont-read {
    font-family: 'Noto Serif JP';
    font-weight: bold;
    font-size: 38px;
    letter-spacing: 0.5px;
    margin-bottom: 50px;
    line-height: 1.6;
}

.cont-read .text-green {
    color: #439855;
}

.cont-read .text-red {
    color: #e55d4e;
}

.cont-inner {
    padding: 60px 0 50px;
    width: 50%;
}

.letter-body {
    font-weight: 300;
    font-size: 18px;
    line-height: 1.75;
    letter-spacing: 1.5px;
    text-align: center;
    margin-bottom: 70px;
}

#concept .letter-body,
#first .letter-body {
    text-align: left;
}

.img-fluid {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}




/*----------------------------------------------------
first
----------------------------------------------------*/

#first .cont-head {
    background-image: url(../images/top-02.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

#first .img-fluid {
    display: none;
}

#first .cont-inner {
    margin-left: 50%;
}

.letter-body strong {
    background: linear-gradient(transparent 70%, #faafa2 0%);
}

.letter-body.post-writing {
    padding: 0 30px;
    font-weight: normal;
}

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

    #concept,
    #first {
        position: relative;
    }

    #concept .img-fluid {
        display: block;
    }

    #concept .cont-inner {
        background-image: none;
        top: 300px;
        left: 50%;
        transform: translate(-50%, 0);
        position: absolute;
    }

    .cont-read {
        font-size: 25px;
        margin-bottom: 30px;
        line-height: 1.7;
    }

    .cont-inner {
        text-align: center;
        padding: 0;
        width: 100%;
    }

    .letter-body {
        font-size: 15px;
        line-height: 1.7;
        margin-bottom: 50px;
        padding: 0 60px;
    }

    .letter-body.post-writing {
        padding: 0;
    }

    #concept .letter-body,
    #first .letter-body {
        text-align: center;
    }

    #first .img-fluid {
        display: block;
    }

    #first .cont-inner {
        background-image: none;
        top: 250px;
        left: 50%;
        transform: translate(-50%, 0);
        position: absolute;
    }

    #first .cont-inner {
        margin-left: 0;
    }

}

@media screen and (max-width: 560px) {
    #concept .img-fluid {
        margin-bottom: 230px;
    }

    #concept .cont-inner {
        top: 200px;
    }

    #first .img-fluid {
        margin-top: 80px;
        margin-bottom: 80px;
    }

    #first .cont-inner {
        top: 100px;
    }

    .cont-read {
        font-size: 18px;
        margin-bottom: 30px;
        line-height: 1.7;
    }

    .letter-body {
        font-size: 13px;
        line-height: 1.75;
        margin-bottom: 50px;
        padding: 0 30px;
        letter-spacing: normal;
    }
}

/*----------------------------------------------------
btn
----------------------------------------------------*/

.btn {
    cursor: pointer;
    text-decoration: none;
    color: #fff;
    background-color: #439855;
    border-color: #439855;
    display: inline-block;
    text-align: center;
    vertical-align: middle;
    padding: 15px 43px;
    font-size: 17px;
    line-height: 1.5;
    border-radius: .25rem;
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out
}

.btn:hover {
    background-color: #6bac75;
    border-color: #6bac75;
}

.btn2 {
    width: 230px;
    margin-top: 30px;
    cursor: pointer;
    text-decoration: none;
    color: #fff;
    background-color: #439855;
    border: 2px solid #439855;
    display: inline-block;
    text-align: center;
    vertical-align: middle;
    padding: 10px 20px;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.5;
    border-radius: .1rem;
}

.btn2:hover {
    background-color: #fff;
    border-color: #439855;
    color: #439855;
}


.btn2.colorred {
    background-color: #ef806e;
    color: #fff;
    border: 2px solid #ef806e;
}

.btn2.colorred:hover {
    background-color: #fff;
    border-color: #ef806e;
    color: #ef806e;
}


@media screen and (max-width: 560px) {
    .btn2 {
        margin-top: 0;
    }
}

/*----------------------------------------------------
h2
----------------------------------------------------*/

.heading2 {
    margin-bottom: 30px;
    text-align: center;
    font-family: 'Noto Serif JP';
    font-size: 30px;
    background-image: url(../images/reaf-back.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

.heading2.red {
    margin: 30px auto;
    background-image: url(../images/reaf-red.png);
    color: #ef806e;
    font-size: 18px;
}

.heading2-2 {
    border: 1px solid #439855;
    border-radius: 5px;
    color: #439855;
    font-size: 20px;
    font-weight: normal;
    line-height: 1;
    padding: 15px 80px;
    display: inline-block;
    margin-top: 30px;
    text-align: center;
}

@media screen and (max-width: 560px) {
    .heading2 {
        margin-bottom: 20px;
        font-size: 18px;
    }

    .heading2-2 {
        border-radius: 3px;
        font-size: 16px;
        padding: 15px;
        margin-top: 10px;
        font-weight: 500;
        display: block;
    }
}

/*----------------------------------------------------
intro
----------------------------------------------------*/
.mt_100 {
    margin-top: 100px;
}

.col-text br {
    display: none;
}

@media screen and (max-width: 560px) {
    .mt_100 {
        margin-top: 0;
    }

    #intro .letter-body br {
        display: none;
    }

    .col-text br {
        display: block;
    }
}

/*----------------------------------------------------
col
----------------------------------------------------*/

.row {
    flex-wrap: wrap;
    display: flex;
    justify-content: center;
    margin-top: 45px;
}


.circle {
    margin: 0 auto;
    width: 146px;
    height: 146px;
    background-color: #e3f0e5;
    border-radius: 50%;
    text-align: center;
    box-shadow: 5px 3px 8px rgba(0, 0, 0, 0.2);
}

.col-5 {
    flex: 0 0 20%;
    max-width: 20%;
}

.col-icon {
    margin-top: 25px;
    align-self: center;
}

.col-text {
    color: #439855;
    font-size: 14px;
    font-weight: bold;
    line-height: 1;
    padding: 10px 0 0;
    margin: 0;
    align-self: flex-end;
}


#subject > .container > .row {
    margin-top: 10px;
    margin-left: 5px;
    margin-right: -5px;
}

#subject > .row .col {
    padding: 0 5px;
    margin-bottom: 10px;
}

.item .col-text {
    font-size: 20px;
    font-weight: normal;
}

.col a {
    text-decoration: none;
    text-align: center;
    align-items: baseline;
}

.col-4 {
    flex: 0 0 25%;
    max-width: 25%;
}

.col-2 {
    flex: 0 0 50%;
    max-width: 50%;
}

.col-sm {
    display: none;
}

@media screen and (max-width: 896px) {
    .circle {
        width: 120px;
        height: 120px;
    }

    #intro .col-icon {
        margin-top: 20px;
        width: 45%;
    }

    .col-text {
        font-size: 13px;
        padding: 10px 0 0;
    }
}

@media screen and (max-width: 560px) {
    .row {
        justify-content: flex-start;
    }

    .col {
        margin-bottom: 10px;
    }

    .col-3 {
        flex: 0 0 33.333%;
        max-width: 33.333%;
    }

    .col-sm {
        display: block;
    }

    .circle {
        width: 80px;
        height: 80px;
    }

    #intro .col-icon {
        margin-top: 12px;
        width: 42%;
    }

    .col-text {
        font-size: 10px;
        padding-top: 3px;
        line-height: 1.1;
    }
}

/*----------------------------------------------------
item
----------------------------------------------------*/

.item {
    width: 240px;
    height: 173px;
    margin-bottom: 15px;
    padding: 20px 40px 30px;
    border-right: 3px dotted #d9e9da;
    border-bottom: 3px dotted #d9e9da;
    text-align: center;
    position: relative;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.item:hover {
    background-color: #d9e9da;
}

.item .col-icon {
    margin: 0;
}

.item .col-text {
    letter-spacing: 1px;
}

.mark {
    position: absolute;
    right: 0;
    bottom: 0;
}

.col-btn {
    padding: 55px 151px;
}

@media screen and (max-width: 560px) {
    .item {
        width: 110px;
        height: 80px;
        padding: 5px 0;
        margin-bottom: 0;
    }

    .mark {
        width: 10%;
        height: auto;
    }

    .item .col-text {
        font-size: 11px;
    }

    .col-btn {
        display: none;
    }

    .col-text-sm {
        font-size: 12px;
        padding: 23px 0;
        margin-bottom: 0;
        color: #439855;
        align-content: center;
    }

    #subject .col-icon {
        height: 40px;
    }
}

/*----------------------------------------------------
bnr
----------------------------------------------------*/

#bnr {
    display: flex;
    justify-content: space-around;
    margin-top: 30px;
    margin-bottom: 50px;
}

@media screen and (max-width: 560px) {
    #bnr {
        display: block;
        margin: 20px 0;
        ;
    }

    #bnr img {
        margin-bottom: 10px;
    }
}

/*----------------------------------------------------
top-access
----------------------------------------------------*/

#top-access {
    background-color: #e3f0e5;
    margin-bottom: 90px;
}

.access-head .fa.mapicon {
    color: #439855;
    padding-right: 15px;
    font-size: 35px;
    vertical-align: -.1em;
}

.access-head {
    font-size: 25px;
    letter-spacing: 1px;
    font-weight: 500;
    line-height: 1;
    padding-left: 10px;
    padding-top: 50px;
    padding-bottom: 20px;
    margin: 0;
}

.ggmap {
    padding-bottom: 80px;
}

@media screen and (max-width: 560px) {
    #top-access {
        margin-bottom: 30px;
    }

    .ggmap {
        padding-bottom: 30px;
    }

    .access-head {
        font-size: 18px;
        text-align: left;
    }
}


#access .ggmap {
    border: 2px solid #439855;
    padding: 5px;
    margin-bottom: 30px;
}


/*----------------------------------------------------
table
----------------------------------------------------*/

.timeSchedule {
    border: 2px solid #439855;
    border-collapse: collapse;
}

.timeSchedule th,
.timeSchedule td {
    border: solid 1px #c7dfc9;
    font-weight: normal;
    text-align: center;
    padding: 8px 15px;
}

.timeSchedule .time {
    padding: 15px 25px;
}

.timeSchedule th {
    color: #fff;
    background: #439855;
    font-size: 16px;
    letter-spacing: 1px;

}

.timeSchedule td {
    color: #439855;
    background: #fff;
    font-size: 18px;
}

@media screen and (max-width: 560px) {
    .timeSchedule {
        margin: 0 auto;
    }

    .timeSchedule th,
    .timeSchedule td {
        padding: 8px 10px;
    }

    .timeSchedule .time {
        padding: 10px 15px;
    }

    .timeSchedule th {
        font-size: 12px;
    }

    .timeSchedule td {
        font-size: 13px;
    }
}

.post .table {
    border: 2px solid #439855;
    border-collapse: collapse;
}

.post table th,
.post table td {
    border: solid 1px #666;
    font-weight: normal;
    text-align: left;
    padding: 15px;
    color: #4d4d4d;
    background: #fff;
    font-size: 16px;
}

.post table td p {
    padding: 0;
    margin: 0;
}

@media screen and (max-width: 560px) {
    .timeSchedule {
        margin: 0 auto;
    }

    .post table th,
    .post table td {
        padding: 8px;
    }

    .post table .time {
        padding: 10px 15px;
    }

    .post table th {
        font-size: 15px;
    }

    .post table td {
        font-size: 14px;
    }
}


/*----------------------------------------------------
info
----------------------------------------------------*/
.info-cont {
    display: flex;
}

.info-l {
    width: 495px;
}

.table-footer {
    margin: 10px 0 30px 5px;
}

.info-box {
    display: flex;
}

.info-box.sm {
    display: none;
}

.box {
    border: 2px solid #439855;
    background-color: #fff;
    padding: 22px 20px;
    display: flex;
    align-items: center;
    margin-right: 20px;
}

.box p {
    margin: 0;
    line-height: 1.4;
    letter-spacing: 1px;
    padding-left: 15px;
}

.info-r {
    margin-left: 40px;
}

.telbox {
    border: 1.5px solid #439855;
    padding: 45px 48px;
    margin-bottom: 30px;
}

.telbox p {
    font-size: 20px;
    letter-spacing: 1px;
    text-align: center;
}

.telphonen {
    font-size: 40px;
    font-weight: bold;
    color: #439855;
}

.info-r .logoname {
    margin: 0 10px;
}

.address {
    margin: 0;
    padding-top: 10px;
    text-align: center;
    letter-spacing: 1px;
}

.info-r .aname {
    font-size: 15px;
}

.info-r .jname {
    font-size: 26px;
}

@media screen and (max-width: 560px) {
    .info-l {
        width: 100%;
    }

    .info-cont {
        flex-direction: column-reverse;
    }

    .info-box.sm {
        display: flex;
        margin-right: 0;
        justify-content: space-between;
        padding-bottom: 30px;
    }

    .info-box p {
        font-size: 11px;
    }

    .info-box {
        display: none;
    }

    .box {
        padding: 10px;
        display: flex;
        align-items: center;
        margin-right: 0;
    }

    .table-footer {
        font-size: 13px;
        margin: 10px 0;
        text-align: left;
    }

    .info-r {
        margin-left: 0;
        margin-bottom: 20px;
    }

    .telbox {
        display: none;
    }

    .logoname {
        padding: 0 20px;
        text-align: center;
    }

    .address {
        padding: 5px;
        font-size: 12px;
    }
}

.info-cont.post {
    justify-content: center;
}

.info-box.post {
    display: block;
    margin-top: 20px;
    margin-left: 30px;
}


.box.post {
    padding: 20px;
    margin-right: 0;
    margin-bottom: 25px;
}

.box.post p {
    padding-bottom: 0;
}

.box.post .box-text {
    font-size: 20px;
    color: #439855;
}

.box.post .box-inner {
    padding-left: 20px;
}

@media screen and (max-width: 560px) {
    .info-cont.post {
        flex-direction: column;
    }

    .info-box.post {
        padding-top: 20px;
        margin: 0 auto;
    }

    .box.post {
        padding: 15px;
        margin-bottom: 20px;
    }

    .box.post p {
        margin: 0;
        font-size: 14px;
    }

    .box.post .box-text {
        font-size: 16px;
        margin-top: 0;
    }

    .box.post .box-inner {
        padding-left: 15px;
    }

}

/*----------------------------------------------------
banner
----------------------------------------------------*/
#banner {
    display: none;
    margin-top: 30px;
    border-radius: 40px;
    background: -moz-linear-gradient(top, #6BAC75, #439855);
    background: -webkit-linear-gradient(top, #6BAC75, #439855);
    background: linear-gradient(to bottom, #6BAC75, #439855);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
    align-content: center;
}

#banner a {
    text-decoration: none;
    cursor: default;
}

.banner-inner {
    padding: 15px 50px;
    text-align: center;
}

.banner-copy {
    margin: 0;
    padding: 0 0 5px 15px;
    font-size: 15px;
    letter-spacing: .1em;
    color: #fff;
    text-align: center;
    line-height: 1.2;
}

.telephone {
    margin: 0;
    font-size: 23px;
    color: #fff;
    line-height: 1;
    font-family: "ヒラギノ角ゴ Pro W3";
}

.telephone .fa {
    padding-right: 10px;
}

@media screen and (max-width: 560px) {
    #banner {
        display: inline-block;
    }

}

/*----------------------------------------------------
pagetop
----------------------------------------------------*/
#pagetop {
    position: fixed;
    bottom: 100px;
    right: 50px;
}

@media screen and (max-width: 560px) {
    #pagetop {
        width: 60px;
        bottom: 65px;
        right: 15px;
    }
}

/*----------------------------------------------------
booking
----------------------------------------------------*/
#booking {
    position: fixed;
    bottom: 200px;
    right: 50px;
}

#booking:hover {
    opacity: 0.8;
}


/*----------------------------------------------------
footer
----------------------------------------------------*/
#footer {
    margin-top: 60px;
}

#footer .gnav-sm {
    display: none;
}

.upper-footer {
    background-color: #c7dfc9;
}

.fnav {
    margin: 0;
    display: flex;
    padding: 50px 0;
    justify-content: center;
}

.fnav li {
    border-left: 1px solid #333;
    list-style: none;
}

.fnav li:last-child {
    border-right: 1px solid #333;
}

.fnav li a {
    padding: 0 22px;
    text-decoration: none;

    color: #333;
    font-size: 14px;
    text-align: center;
}

.fnav li a:hover {
    opacity: 0.8;
}

.under-footer {
    background-color: #439855;
}

#copyright {
    margin: 0;
    padding: 40px 0;
    color: #fff;
    font-size: 12px;
    text-align: center;
}

@media screen and (max-width: 896px) {
    .upper-footer {
        display: none;
    }

    #footer .gnav-sm {
        display: flex;
    }
}

@media screen and (max-width: 560px) {
    .under-footer {
        padding-bottom: 50px;
    }
}

/*----------------------------------------------------
footer-btn
----------------------------------------------------*/
#footer-btn {
    display: none;
}

#footer-btn a {
    margin: 0;
    padding: 0;
}

@media screen and (max-width: 560px) {
    #footer-btn {
        margin: 0 auto;

        display: block;
        position: fixed;
        bottom: 0;
        box-shadow: 2px 0px 8px 1px #333;

    }

    #footer-btn ul > li {
        list-style-type: none;

    }

    #footer-btn ul {
        width: 100%;
        display: flex;
        margin: 0;
        padding: 0;
        text-decoration: none;

    }

}


/*----------------------------------------------------
loader
----------------------------------------------------*/

#loader-inner {
    position: absolute;
    left: 50%;
    top: 50%;
    margin-top: -25px;
    margin-left: -25px;
}

#loader-bg {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
    background: #fff;
    z-index: 1;
}

#loader-inner p {
    width: 600px;
    text-align: center;
    top: 50%;
    left: 50%;
    margin-top: 10px;
    margin-left: -250px;
}

@media screen and (max-width: 560px) {
    #loader-inner {
        left: 45%;
        margin-left: -30px;
    }

    #loader-inner p {
        margin-left: -250px;
    }

}

/*----------------------------------------------------
------------------------------------------------------
index.html
------------------------------------------------------
----------------------------------------------------*/

.heading2.page {
    position: absolute;
    top: 35%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit- transform: translateY(-50%) translateX(-50%);
    margin: auto;
    color: #333;
}

.post h2 {
    padding: 15px 0;
    margin-bottom: 20px;
    text-align: center;
    font-family: 'Noto Serif JP';
    font-size: 28px;
    background-color: #d9e9da;
    border-top: 3px solid #439855;
    line-height: 1;
}

.post h3:before {
    content: url(../images/reaf.png);
    position: relative;
    bottom: -0.18em;
    margin-right: 0.1em;
    padding-right: 5px;
}

.post h3 {
    margin: 15px 0;
    padding-left: 5px;
    font-family: 'M PLUS 1p';
    font-weight: normal;
    font-size: 20px;
    border-bottom: 2px solid #439855;
    line-height: 2;
}

.post h4 {
    margin: 15px 0;
    font-family: 'M PLUS 1p';
    font-weight: normal;
    color: #439855;
    font-size: 20px;
    border-bottom: 2px dotted #439855;
    line-height: 2;
}

.post h5 {
    margin: 10px 0;
    font-family: 'Noto Serif JP';
    font-weight: bold;
    font-size: 20px;
    line-height: 2;
}

.post p {
    font-size: 14px;
    line-height: 1.75;
    padding: 0 10px 10px 10px;
    margin-bottom: 0;
}

.article {
    display: flex;
    justify-content: space-between;
    margin-bottom: 30px;
}

.colortext {
    color: #e55d4e;
}

.article-body {
    margin-left: 15px;

}

@media screen and (max-width: 896px) {
    .heading2.page {
        top: 40%;
    }

    .post p {
        text-align: left;
        margin-top: 10px;
        font-size: 14px;
    }

    .post h2 {
        margin-bottom: 15px;
        font-size: 18px;
        padding: 10px 10px;
        line-height: 1.5;
    }

    .post h3,
    .post h4,
    .post h5 {
        margin-bottom: 15px;
        font-size: 16px;
        padding: 10px 10px;
        line-height: 1.5;
    }

    .post h3,
    .post h4,
    .post h5 {
        padding: 5px 0;
        text-align: left;
        line-height: 1.5;
        margin: 10px 0;
    }

    .article {
        display: block;
        margin-bottom: 30px;
    }
}

/*----------------------------------------------------
cms
----------------------------------------------------*/
.cms p {
    font-size: 14px;
    line-height: 1.75;
    margin-bottom: 15px;
    /*    padding-top: 10px;*/
}

.cms h2 {
    padding: 0.2em 0.5em;
    font-family: 'M PLUS 1p';
    font-weight: bold;
    font-size: 22px;
    line-height: 1;
    border-left: 5px solid #439855;
}

.cms h3:before {
    content: url(../images/reaf.png);
    position: relative;
    bottom: -0.18em;
    margin-right: 0.1em;
    padding-right: 5px;
}

.cms h3 {
    padding-left: 5px;
    font-family: 'M PLUS 1p';
    font-weight: normal;
    font-size: 20px;
    border-bottom: 2px solid #439855;
    line-height: 2;
}

.cms h4 {
    font-family: 'M PLUS 1p';
    font-weight: normal;
    color: #439855;
    font-size: 20px;
    border-bottom: 2px dotted #439855;
    line-height: 2;
}

.cms h5 {
    margin: 20px 0;
    font-family: 'Noto Serif JP';
    font-weight: bold;
    font-size: 20px;
    line-height: 2;
}

@media screen and (max-width: 896px) {
    /*
    .heading2.page {
        top: 10%;
    }
*/

    .cms h2,
    .cms h3,
    .cms h4,
    .cms h5 {
        margin-bottom: 20px;
        font-size: 18px;
        padding: 10px 0;
        text-align: left;
        line-height: 1.5;
        margin: 15px 0;
    }

    .cms h2 {
        padding: 5px 8px;
    }

    .cms p {
        text-align: left;
        margin-top: 10px;
    }

    .article {
        display: block;
        margin-bottom: 30px;
    }
}

/*----------------------------------------------------
Grid
----------------------------------------------------*/

.row.page {
    display: flex;
    justify-content: space-between;
    margin-left: -10px;
    margin-right: -10px;
    margin-top: 0;
}

.row.page > .col-4 {
    padding: 0 10px;
}

@media screen and (max-width: 560px) {
    .row.page {
        display: block;
    }

    .row.page > .col-4 {
        max-width: 100%;
    }
}

/*----------------------------------------------------
contents
----------------------------------------------------*/

#layout {
    display: flex;
    margin-top: 50px;
    margin-bottom: 50px;
    justify-content: space-between;
}

#main {
    margin: 30px 0;
}

#wrap {
    margin: 0;
    flex: 1;
}

@media screen and (max-width: 896px) {
    #layout {
        margin-top: 20px;
        margin-bottom: 50px;
        flex-direction: column-reverse;
    }
}

/*----------------------------------------------------
sidebar
----------------------------------------------------*/

#sidebar {
    width: 240px;
    margin-right: 40px;
}

@media screen and (max-width: 560px) {
    #sidebar {
        margin: 0 auto;
        width: 100%;
    }
}

.side_category {
    border: 1px solid #DDDDDD;
}

.side_category a {
    text-decoration: none;
}

.sidebar_title {
    margin: 0;
    padding: 15px;
    font-size: 15px;
    font-weight: bold;
    line-height: 1.3;
    color: #333333;
    border-bottom: 1px solid #DDDDDD;

}

.sidenav {
    margin: 0;
    padding: 20px 15px;
}

.sidenav li {
    padding: 0;
    padding-bottom: 15px;
    line-height: 1.3;
    list-style: none;
}

.sidenav li:last-child {
    padding-bottom: 0;
}

.sidenav li a:hover {
    text-decoration: underline;
}


.list_title a {
    margin: 0;
    color: #666666;
    font-size: 14px;
}

.list_title a:hover {
    text-decoration: underline;
}

.list_title .archives_date {
    padding-top: 5px;
    padding-bottom: 0;
}

.cat-item {
    font-size: 14px;
}

@media screen and (max-width: 896px) {
    #sidebar {
        margin-top: 20px;
        width: 100%;
        text-align: left;
    }

    #sidebar img {
        display: none;
    }

}


/*----------------------------------------------------
form
----------------------------------------------------*/
input {
    margin: 30px 0;
    width: 100%;
    border-radius: 2px;
    border: 1px solid #DDDDDD;
    background-color: #FFFFFF;
    text-align: left;
    color: #999999;
    font-size: 15px;
    padding: 10px;
}


/*----------------------------------------------------
heading
----------------------------------------------------*/
.heading {
    border-left: 5px solid #439855;
    margin-bottom: 30px;
}

.caption {
    margin: 0;
    padding: 20px 0 10px 20px;
    color: #439855;
    font-size: 24px;
    font-weight: 500;
    line-height: 1.2;
}

.heading p {
    margin: 0;
    padding-left: 20px;
    padding-bottom: 22px;
    color: #666666;
    font-size: 12px;
    font-weight: normal;
    line-height: 1.2;
}

@media screen and (max-width: 560px) {
    .heading {
        text-align: left;
    }

    .caption {
        padding: 10px 0 5px 10px;
        font-size: 18px;
    }

    .heading p {
        margin: 0;
        padding: 0 0 10px 10px;
    }

}



/*----------------------------------------------------
archives_list
----------------------------------------------------*/
.archives_list {
    border-top: 1px solid #DDDDDD;
}

.archives {
    padding: 30px 0;
    border-bottom: 1px solid #DDDDDD;
}

.archives p {
    margin: 0;
}

.archives a {
    text-decoration: none;
}

.archives.shop {
    display: flex;
    padding: 30px 0;
    border-bottom: 1px solid #DDDDDD;
}

.shop_list {
    flex: 1;
    padding-left: 20px;
}

.shop_list p {
    margin: 0;
}

.shop_details {
    font-size: 12px;
    line-height: 1.5;
}

.shop_details.address {
    padding: 15px 0;
    line-height: 1.5;
}

.archives_date {
    margin: 0;
    padding-bottom: 10px;
    font-size: 12px;
    color: #666666;
    line-height: 1.2;
}

.archives_date a {
    text-decoration: none;
}

.archives_title {
    margin: 0;
    padding-bottom: 15px;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.1;

}

.archives_title a {
    text-decoration: none;
    color: #333;
}

.archives_title a:hover {
    text-decoration: underline;
}


.archives_link a {
    margin: 0;
    font-size: 15px;
    font-weight: normal;
    line-height: 2;
    color: #333333;
}

.archives_link a:hover {
    text-decoration: underline;
}

.page-text {
    font-size: 15px;
}

@media screen and (max-width: 560px) {
    .archives_title {
        padding-bottom: 10px;
        font-size: 16px;
    }

    .archives_list {
        text-align: left;
    }

    .archives_date {
        padding-bottom: 10px;
    }

    .page-text {
        font-size: 14px;
    }
}

/*----------------------------------------------------
page-header
----------------------------------------------------*/
@media screen and (max-width: 896px) {
    .page-header {
        margin-top: 85px;
        width: 100%;
    }
}

@media screen and (max-width: 560px) {
    .page-header {
        margin-top: 71px;
        width: 100%;
        object-fit: cover;
        /* この一行を追加するだけ！ */
    }

    .heading2.page {
        top: 21%;
    }
}

.post_header {
    border-top: 5px solid #439855;
    border-bottom: 1px solid #439855;
    margin-bottom: 10px;
}

.post_title a {
    text-decoration: none;
    color: #439855;
}

.post_title a:hover {
    text-decoration: underline;
}

.post_title {
    color: #439855;
    font-size: 24px;
    line-height: 1;
    font-family: 'M PLUS 1p';
    font-weight: 500;
    padding-top: 30px;
    padding-bottom: 15px;
    margin: 0;
}

.post_date {
    color: #666;
    font-size: 13px;
    font-family: 'M PLUS 1p';
    font-weight: bold;
    line-height: 1;
    padding-bottom: 20px;
    border-bottom: 1px dashed #439855;
    margin: 0;
}

.post_category {
    color: #666666;
    font-size: 12px;
    line-height: 1;
    padding: 10px 0;
    margin: 0;
}

.post_category a {
    color: #666666;
    text-decoration: none;
}

@media screen and (max-width: 560px) {
    .post_header {
        margin-bottom: 20px;
    }

    .post_title {
        color: #439855;
        font-size: 16px;
        padding-top: 18px;
        padding-bottom: 10px;
    }

    .post_date {
        font-size: 12px;
        padding-bottom: 10px;
    }
}

@media screen and (max-width: 896px) {
    .post_header {
        text-align: left;
    }
}

/*----------------------------------------------------
pagination
----------------------------------------------------*/

.pagination .screen-reader-text {
    display: none;
}

.navigation.pagination {
    text-align: center;
    margin-top: 50px;
}

.pagination .nav-links a {
    padding: 5px 11px;
    text-decoration: none;
    border: 1px solid #666;
    background-color: #fff;
    color: #666;
}

.pagination .nav-links span {
    padding: 5px 11px;
    border: 1px solid #439855;
    background-color: #439855;
    color: #fff;
}




/*----------------------------------------------------
wp-block-column
----------------------------------------------------*/

.wp-block-column figure {
    margin: 0;
}


/*----------------------------------------------------
Timeline
----------------------------------------------------*/

#conference-timeline .conference-center-line {
    margin-right: 60px;
    width: 3px;
    height: 100%;
    background: #439855;

}

#conference-timeline .conference-timeline-content {
    padding: 0;
}

.timeline-article {
    display: flex;
}

.timeline-article .meta-date {
    position: relative;
    width: 80px;
    height: 80px;
    color: #fff;
    border-radius: 100%;
    background: #439855;
    margin-right: 20px;
}

.timeline-article .meta-date.line::after {
    content: '';
    position: absolute;
    left: 35px;
    right: 0;
    bottom: -240px;
    height: 230px;
    margin: auto;
    border-left: dotted 10px #aec6a2;
}


.timeline-article .meta-date .date {
    display: block;
    padding: 18px 28px;
    text-align: center;
    font-family: 'Noto Serif JP';
    font-weight: bold;
    color: #fff;
    font-size: 38px;
    line-height: 1;
}

.timeline-article .content-right {
    flex: 1;
    padding: 27px 25px;
}

.timeline-article p {
    padding: 0;
    font-weight: 400;
    font-size: 14px;
    line-height: 24px;

}

.content-right .timeline-title {
    font-family: 'Noto Serif JP';
    font-weight: bold;
    font-size: 30px;
    margin-bottom: 35px;
}

.content-right-article {
    display: flex;

}

.content-right-article .content-text {
    margin-left: 20px;
    width: 60%;
}

.content-right-article p img {
    border-radius: 10px;
}

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

    .content-left-container {
        margin-left: 10px;
    }

    .timeline-article .meta-date {
        width: 40px;
        height: 40px;
        border-radius: 100%;
        margin-right: 10px;
    }

    .timeline-article .meta-date .date {
        padding: 8px 12px;
        font-size: 22px;
    }

    .content-right .timeline-title {
        font-size: 20px;
    }

    .timeline-article .content-right {
        margin-right: 20px;
        padding: 0;
    }


    .timeline-article .meta-date.line::after {
        display: none;
    }

    .content-right-article {
        display: block;
    }

    .content-right-article .content-text {
        margin: 0;
        width: 100%;
    }
}

/*----------------------------------------------------
post-cont
----------------------------------------------------*/

.post-cont {
    margin-top: 30px;
    padding: 20px 10px;
    display: flex;
    align-items: center;
}

.post-cont-inner {
    margin-left: 30px;
}

.post-cont .cont-title {
    font-size: 22px;
    color: #439855;
    font-family: 'Noto Serif JP';
    line-height: 2;
}

.post-cont .cont-title br {
    display: none;
}

.post-cont .post-cont-inner p {
    padding-bottom: 30px;
    line-height: 1.85;
}

.post-cont .post-cont-inner p span {
    color: #e55d4e;
}

.post-cont p {
    font-size: 14px;
    line-height: 1.85;
}

.post-cont .post-cont-inner-r .post-cont-text {
    margin-left: 30px;
    margin-bottom: -40px;
}

.post-cont-inner-r .post-cont-img {
    margin-left: 10vw;
    margin-bottom: -10px;
    position: relative;
    z-index: -1;
}

.post-cont .post-cont-img.left {
    margin-top: 0;

}

.post-cont-inner-r .post-cont-text.left {
    padding-left: 40px;
    margin-top: -40px;
    margin-bottom: 30px;
}

.post-cont .post-cont-inner-r.third-cont {
    margin-left: 40px;
}



@media screen and (max-width: 896px) {
    .post-cont {
        padding: 10px;
        flex-direction: column;
        text-align: left;
        margin-top: 0;
    }

    .post-cont img {
        margin-bottom: 30px;
    }

    .post-cont:nth-of-type(3n) {
        flex-direction: column-reverse;
    }

    .post-cont .post-cont-inner {
        margin-left: 0;
    }

    .post-cont .post-cont-img-main {
        width: 70%
    }

    .post-cont .post-cont-inner p {
        font-size: 15px;
        padding-bottom: 10px;
        line-height: 1.6;
    }

    .post-cont .post-cont-inner .cont-title {
        font-size: 18px;
        text-align: center;
    }

    .post-cont .cont-title br {
        display: inline-block;
    }

    .post-cont p {
        padding-top: 0;
        margin-top: 0;
        line-height: 1.6;
    }

    .post-cont-inner-r .post-cont-img {
        margin-left: 8vw;
    }

    .post-cont .post-cont-inner-r .post-cont-img.right {
        margin-left: 0;
        margin-bottom: 30px;
    }

    .post-cont .post-cont-text {
        margin-left: 20px;
        margin-top: 0;
    }

    .post-cont .post-cont-inner-r .post-cont-text.left {
        padding-left: 10%;
        margin-bottom: 10px;
        margin-top: -50px;
    }

    .post-cont .post-cont-inner-r .post-cont-img.left-2 {
        width: 60%;
        margin-left: 100px;
    }

    .post-cont .post-cont-inner-r.third-cont {
        margin-left: 0;
    }

}

/*----------------------------------------------------
post-cont-wrap
----------------------------------------------------*/

.post-cont-wrap {
    margin-bottom: 50px;
}

.post-cont-wrap .cont-title {
    font-size: 22px;
    color: #439855;
    font-family: 'Noto Serif JP';
    line-height: 2;
    text-align: center;
}

.post-cont-wrap .cont-title br {
    display: none;
}

.post-cont-wrap-inner {
    margin: 30px 40px;
    display: flex;
    justify-content: center;
}

.post-cont-wrap-inner .post-cont-text {
    font-size: 16px;
}

.post-cont-wrap-inner .post-cont-inner {
    padding-top: 30px;
}

.post-cont-wrap-inner img {
    margin-right: 20px;
}

.post-cont-wrap-inner img:last-child {
    margin-right: 0;
}

@media screen and (max-width: 560px) {
    .post-cont-wrap .cont-title {
        font-size: 18px;
    }

    .post-cont-wrap .cont-title br {
        display: inline-block;
    }

    .post-cont-wrap-inner {
        margin: 0;
        display: block;
    }

    .post-cont-wrap-inner .post-cont-inner {
        padding-top: 0;
    }

    .post-cont-wrap .post-cont-wrap-inner .post-cont-inner {
        margin-left: 0;
    }

    .post-cont-wrap .post-cont-wrap-inner .post-cont-inner p {
        font-size: 14px;
    }

    .post-cont-wrap-inner img {
        margin-right: 0;
        margin-bottom: 20px;
    }

    .post-cont-text {
        font-size: 15px;
    }
}


/*----------------------------------------------------
post-cont-box
----------------------------------------------------*/

.post-cont-box {
    margin: 0 auto;
    width: 600px;
    padding: 40px 50px;
    background-color: #d9e9da;
}

.post-cont-box ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    display: flex;
    padding-bottom: 35px;
}

.post-cont-box ul:last-child {
    padding-bottom: 0;
}


.post-cont-box ul li {
    font-size: 22px;
    font-weight: bold;
    line-height: 1.2;
    color: #666;
}

.post-cont-box ul .post-cont-box-title {
    font-size: 18px;
    font-weight: bold;
}

.post-cont-box .post-cont-box-title {
    margin-right: 4em;
}

.post-cont-box ul .post-cont-box-title.secondary {
    margin-right: 8em;
}


.post-cont-box .post-cont-box-inner li .hours {
    font-size: 18px;
    font-weight: bold;
}

.post-cont-box .post-cont-box-inner li .notes {
    font-size: 14px;
    font-weight: normal;
}



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

    .post-cont-box {
        width: 90%;
        padding: 25px;
        text-align: left;
    }

    .post-cont-box ul {
        margin: 0;
        padding: 0;
        display: block;
        padding-bottom: 35px;
    }

    .post-cont-box .post-cont-box-title,
    .post-cont-box ul .post-cont-box-title.secondary {
        margin-right: 0;
    }

    .post-cont-box ul li br {
        display: inline-block;
    }

    .post-cont-box ul li {
        font-size: 15px;
        text-align: center;
    }

    .post-cont-box ul li:first-child {
        padding-bottom: 75px;
    }

    .post-cont-box .post-cont-box-inner li {
        font-size: 16px;
    }

    .post-cont-box .post-cont-box-inner li .hours {
        font-size: 15px;
    }

    .post-cont-box .post-cont-box-inner li .notes {
        font-size: 13px;
    }

    .post-cont-box .post-cont-box-inner li:first-child {
        line-height: 1.2;
        padding-bottom: 10px;
    }
}

/*----------------------------------------------------
lead
----------------------------------------------------*/

.lead {
    border: 1px solid #e55d4e;
    color: #ef806e;
    font-size: 20px;
    padding: 10px 30px;
    margin-top: 40px;
}

.lead-cont {
    display: flex;
    align-items: flex-start;
    justify-content: space-around;
    padding: 0 40px;
}

.lead-cont-inner {
    padding: 0;
}

.lead-cont img {
    align-self: center;
}

.lead-cont li {
    list-style: none;
    padding-bottom: 15px;
    font-size: 14px;
}

.lead-cont li .bold-text {
    color: #ef806e;
    font-weight: bold;
}

@media screen and (max-width: 896px) {
    .lead {
        text-align: left;
        font-size: 16px;
        padding: 8px 20px;
    }

    .lead-cont {
        display: block;
        padding: 0 20px;
    }

    .lead-cont-inner {
        text-align: left;
    }
}


@media screen and (max-width: 560px) {
    .lead-cont {
        display: block;
        padding: 0 10px;
    }
}


/*----------------------------------------------------
fblock
----------------------------------------------------*/

.fblock {
    border: 1px solid #333;
    padding: 30px;
}

.fblock p {
    text-align: center;
    margin: 0;
}

.fblock .fblock-text {
    font-family: 'Noto Serif JP';
    font-size: 20px;
    line-height: 1.75;
    padding-bottom: 20px;
}

.fblock p .red {
    color: #ef806e;
}

.left-telephone {
    font-size: 24px;
}

.fblock .contact {
    display: flex;
    justify-content: center;
    align-items: baseline;
}

.fblock .telphonen {
    font-size: 36px;
}

.fblock .contact .left-telephone {
    padding-right: 20px;
    font-size: 18px;
}

@media screen and (max-width: 896px) {
    .fblock {
        padding: 15px;
    }

    .fblock .fblock-text {
        font-size: 16px;
        line-height: 1.6;
        padding-bottom: 15px;
    }

    .fblock .telphonen {
        font-size: 35px;
    }

    .left-telephone {
        font-size: 18px;
        padding-right: 20px;
    }
}

@media screen and (max-width: 560px) {
    .fblock {
        padding: 20px;
        margin: 0 10px;
    }

    .fblock .fblock-text {
        font-size: 15px;
        line-height: 1.5;
        padding: 0 0 20px;
        text-align: left;
    }

    .fblock .contact {
        display: block;
    }

    .fblock .telphonen {
        font-size: 30px;
    }

    .fblock .contact .left-telephone {
        font-size: 16px;
        line-height: 1;
        padding: 0;
    }

    .fblock .telphonen {
        padding: 0;
    }
}



/*----------------------------------------------------
Contact Form 7
----------------------------------------------------*/

/*スマホContact Form 7カスタマイズ*/
@media(max-width:560px) {

    .inquiry tr:first-child th {
        border-top: 1px solid #999 !important;
    }

    /* 必須・任意のサイズ調整 */
    .inquiry .haveto,
    .inquiry .any {
        font-size: 10px;
    }

    .inquiry th,
    .inquiry td {
        display: block !important;
        width: 100% !important;
        border-top: none !important;
        -webkit-box-sizing: border-box !important;
        -moz-box-sizing: border-box !important;
        box-sizing: border-box !important;
    }
}

/*見出し欄*/
.post .inquiry {
    border-collapse: collapse;
    margin: 0 auto;
}

.post .inquiry input {
    border: 1px solid #999;
}

.post .inquiry input::placeholder {
    color: #d7d7d7;
}

.post .inquiry th {
    text-align: left;
    font-size: 14px;
    padding-right: 5px;
    width: 30%;
    background: #f7f7f7;
    border: solid 1px #999;
}

/*通常欄*/
.post .inquiry td {
    font-size: 14px;
    border: solid 1px #999;
}

.post .inquiry td input {
    margin: 0;
    color: #4d4d4d;
}

.wpcf7-form-control-wrap.number-1 {
    display: inline-block;
}

.wpcf7-form-control-wrap.dpmenu {
    padding: 8px;
    border: solid 1px #999;
}

select.wpcf7-form-control.wpcf7-select {
    height: 30px;
    border: solid 1px #d9e9da;
    background-color: #d9e9da;
}


.wpcf7-form-control-wrap.your-message textarea {
    padding: 5px;
    border: solid 1px #999;
}

.age {
    margin-left: 5px;
}

/*必須の調整*/
.haveto {
    font-size: 7px;
    padding: 5px;
    color: #e55d4e;
    position: relative;
    bottom: 1px;
}

/*任意の調整*/
.any {
    font-size: 7px;
    padding: 5px;
    background: #999;
    color: #fff;
    border-radius: 2px;
    margin-left: 5px;
    position: relative;
    bottom: 1px;
}

/*送信ボタンのデザイン変更*/
#formbtn {
    display: block;
    padding: 15px;
    width: 300px;
    background: #439855;
    border: 1px solid #439855;
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    border-radius: 3px;
    margin: 25px auto;
    text-align: center;
}

/*送信ボタンマウスホバー時*/
#formbtn:hover {
    background: #fff;
    color: #439855;
    border: 1px solid #439855;
}

@media(max-width:560px) {
    .post .wp-block-image {
        margin-bottom: 0;
    }

    .post .wp-block-preformatted {
        padding-left: 10px;
    }
}


/*----------------------------------------------------
slide
----------------------------------------------------*/


#slider-wrap .slide-inner .slide-inner-title {
    font-size: 28px;
    letter-spacing: .2em;
    font-family: 'Noto Serif JP';
    font-weight: bold;
    color: #fff;
    padding: 18px 0;
    text-align: center;
    margin: 0;
    background-color: #439855;
}

#slider-wrap .slide-inner {
    margin-bottom: 100px;
}

.slide-inner-box {
    background-color: #d9e9da;
    padding: 50px;
}

.slider-cont .slide-cont-caption {
    font-size: 22px;
    font-weight: bold;
}

.slider-cont {
    max-width: 670px;
    margin: 0 auto;
}

.slider-cont p {
    margin: 0 30px;
    line-height: 1.75;
}

.slider-cont .slider-cont-img {
    border: 10px solid #fff;
    margin: 0 auto 20px;
}

#slider-wrap .slide-cont-head {
    font-size: 20px;
    font-family: 'Noto Serif JP';
    font-weight: bold;
    text-align: center;
    margin-bottom: 30px;
}



/*slick setting*/


/*
.slick-arrow {
    position: absolute;
    top: 20%;
    margin-top: -15px;
}

.slick-arrow button{
    font-size: 40px;
    height: auto;
    z-index: 100;
}
*/



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

    .slide-inner {
        margin: 0 10px 30px;
    }

    #slider-wrap .slide-inner .slide-inner-title {
        font-size: 18px;
        padding: 10px 0;
    }

    #slider-wrap .slide-cont-head {
        font-size: 15px;
        margin-bottom: 20px;
    }

    .slide-inner-box {
        padding: 30px;
    }


    .slider-cont .slide-cont-caption {
        font-size: 16px;
    }

    .slider-cont p {
        margin: 0 10px;
        font-size: 15px;
        line-height: 1.5;
        text-align: left;
    }

    .slider-cont .slider-cont-img {
        border: 8px solid #fff;
        margin: 0 auto 15px;
        object-fit: cover;
        height: 50vw;
    }

    .slide-arrow {
        position: absolute;
        top: 20%;
        margin-top: -15px;
    }

    .slide-cont-head {
        font-size: 16px;
    }

}

/*----------------------------------------------------
post-column
----------------------------------------------------*/

.wp-block-column .post-column-head {
    padding-top: 30px;
    font-size: 19px;
    font-family: 'Noto Serif JP';
}

.wp-block-column .post-column-head-text {
    font-size: 15px;
}

@media screen and (max-width: 560px) {
    .wp-block-column .post-column-head {
        padding-top: 0;
        font-size: 18px;
        text-align: center;
    }

    .wp-block-column .post-column-head-text {
        font-size: 14px;
    }

    .wp-block-column .post-column-head br,
    .wp-block-column .post-column-head-text br {
        display: none;
    }
}

/*----------------------------------------------------
cont-block
----------------------------------------------------*/

.cont-block {
    border: 1px solid #4d4d4d;
    padding: 40px 23px;
    text-align: center;
    margin-bottom: 30px;
}

.cont-block-title {
    background: linear-gradient(transparent 65%, #d9e9da 50%);
    display: inline;
    font-size: 25px;
}

.cont-block-inner-flex {
    display: flex;
    justify-content: space-between;
    margin-top: 50px;
}

.cont-block-inner {
    width: 290px;
}

.cont-block-inner-flex .cont-block-inner:nth-of-type(2) {
    width: 324px;
}

.cont-block-inner-title {
    font-size: 17px;
    font-weight: bold;
    color: #439855;
    padding-top: 10px;
    padding-bottom: 15px;
}

.cont-block-inner-text {
    font-size: 14px;
    line-height: 1.75;
}

.cont-block-title-center {
    text-align: center;
    margin-top: 50px;
    margin-bottom: 20px;
}

.cont-block-title.line-red {
    background: linear-gradient(transparent 65%, #fedfd8 50%);
    display: inline;
    font-size: 25px;
}

.cont-block-title.textMincho {
    font-family: 'Noto Serif JP';
    font-size: 30px;
}


@media screen and (max-width: 896px) {
    .cont-block-inner-title {
        font-size: 15px;
    }

    .cont-block-inner-text br {
        display: none;
    }

    .cont-block-inner {
        width: 280px;
    }

    .cont-block-inner-flex .cont-block-inner:nth-of-type(2) {
        width: 320px;
    }
}

@media screen and (max-width: 560px) {
    .cont-block {
        padding: 30px 20px 0;
        margin-bottom: 0;
    }

    .cont-block-title {
        background: linear-gradient(transparent 65%, #d9e9da 65%);
        display: inline;
        font-size: 18px;
        font-weight: 500;
    }

    .cont-block-inner-flex {
        display: block;
        margin-top: 20px;
    }

    .cont-block-inner {
        width: 100%;
        margin-bottom: 30px;
    }


    .cont-block-inner-flex .cont-block-inner:nth-of-type(2) {
        width: 100%;
    }

    .cont-block-inner-title {
        font-size: 16px;
        padding-bottom: 5px;
    }

    .cont-block-title-center {
        margin-bottom: 20px;
        margin-top: 10px;
    }

    .cont-block-title-center .cont-block-title {
        font-size: 17px;
    }

    .cont-block-title-center .cont-block-title.line-red {
        background: linear-gradient(transparent 65%, #fedfd8 65%);
        font-size: 18px;
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .cont-block-title-center .cont-block-title.line-red br {
        display: none;
    }

}

.wp-block-media-text .wp-block-media-text__content p {
    padding: 0;
}

/*----------------------------------------------------
cont-block-list
----------------------------------------------------*/
.cont-block-inner-flex.list-wrap {
    justify-content: center;
}

.cont-block-list {
    display: flex;
}

.cont-block-list .cont-block-list-inner {
    text-align: left;
    margin: 0;
}

.cont-block-list .cont-block-list-inner li {
    list-style: none;
    padding-bottom: 13px;
}

.cont-block-list-wrap p {
    padding-top: 20px;
    font-size: 20px;
    color: #e55d4e;
}

@media screen and (max-width: 560px) {
    .cont-block-inner-flex.list-wrap {
        display: block;
    }

    .cont-block-list {
        display: block;
    }

    .cont-block-list-wrap p {
        font-size: 16px;
        text-align: center;
        padding-top: 0;
        padding-left: 0;
        padding-right: 0;
    }

}

.cont-block-boxline {
    border: 1px solid #4d4d4d;
    padding: 10px;
    text-align: center;
    font-size: 18px;
    display: inline-block;
    margin-bottom: 30px;
}

.cont-block.box2 {
    margin-top: 30px;
    padding: 20px 30px;
}


@media screen and (max-width: 560px) {
    .cont-block-boxline {
        padding: 5px;
        font-size: 14px;
        margin-bottom: 20px;
    }

    .cont-block.box2 {
        margin-top: 20px;
        padding: 10px 20px;
    }

}

/*----------------------------------------------------
cont-block-box
----------------------------------------------------*/
.cont-block-inner-flex.list-wrap-box {
    /*    justify-content: space-between;*/
    margin: 30px 20px;
    text-align: left;
}

.cont-block-inner-flex.list-wrap-box .cont-block-box {
    width: 50%;
    padding: 44px 50px;
    background-color: #e5e5e5;
    margin-right: 10px;
}

.cont-block-inner-flex.list-wrap-box .cont-block-box.colorgreen {
    background-color: #d9e9da;
    margin-right: -5px;
}

.cont-block-box-head {
    font-size: 17px;
    font-weight: bold;
}

.cont-block-box.colorgreen .cont-block-box-head {
    color: #439855;
}

.cont-block-box-text {
    margin: 0;
    padding-top: 20px;
}

.cont-block-box-text li {
    padding-bottom: 10px;
}

.cont-block-inner-flex.list-wrap-box {
    margin: 10px 20px;
}

.row-2 .cont-block-inner-flex.list-wrap-box {
    justify-content: space-between;
}

.row-2 .cont-block-box.colorgreen.colomn {
    padding: 25px 20px 20px;
    margin-right: 10px;
    width: 100%;
}

.row-2 .cont-block-box.colorgreen.colomn.lower {
    width: 67%;
}

.row-2 .cont-block-box.colorgreen.colomn .cont-block-box-head {
    color: #439855;
}

.row-2 .cont-block-box.colorgreen.colomn .cont-block-box-text {
    font-size: 14px;
    padding-top: 10px;
}

.row-2 .cont-block-box.colorgreen:last-child {
    margin-right: 0;
}

.row-2 .cont-block-box.colorgreen.colomn.img-thumbnail {
    background-color: transparent;
    padding: 0;
    width: 33%;
}

.row-2 {
    margin-bottom: 80px;
}

@media screen and (max-width: 560px) {
    .cont-block-inner-flex.list-wrap-box {
        margin: 20px 15px;
    }

    .cont-block-inner-flex.list-wrap-box .cont-block-box {
        width: 100%;
        padding: 20px;
        margin-right: 0;
    }

    .cont-block-box-head {
        font-size: 16px;
    }

    .cont-block-box.colorgreen {
        margin-right: 0;
        margin-top: 20px;
    }

    .cont-block-box-text {
        padding-left: 20px;
        font-size: 14px;
    }

    .row-2 .cont-block-box.colorgreen.colomn {
        padding: 20px;
        margin-right: 0;
        margin-top: 15px;
    }

    .row-2 .cont-block-box.colorgreen.colomn .cont-block-box-text {
        padding: 0;
    }

    .row-2 .cont-block-box.colorgreen.colomn.lower {
        width: 100%;
    }

    .row-2 .cont-block-box.colorgreen.colomn.img-thumbnail {
        display: none;
    }

    .row-2 {
        margin-bottom: 50px;
    }
}

/*----------------------------------------------------
cont-block-list
----------------------------------------------------*/

.point .s1 {
    color: #4d4d4d;
    font-size: 22px;
    display: flex;
    align-items: center;
    margin-top: 50px;
    padding: 0;
}

.s1:before,
.s1:after {
    content: "";
    flex-grow: 1;
    height: 2px;
    background: #439855;
    display: block;
}

.s1:before {
    margin-right: 1em;
}

.s1:after {
    margin-left: 1em;
}

.wp-block-separator {
    border-color: #439855;
    margin-bottom: 50px;
}

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

    .point .s1 {
        font-size: 16px;
    }
}

/*----------------------------------------------------
cont-block-circle
----------------------------------------------------*/
.cont-block-circle {
    background-color: #fedfd8;
    border-radius: 50%;
    width: 220px;
    height: 220px;
    padding: 40px 20px;
    margin-right: 50px;
}

.cont-block-circle:last-child {
    margin-right: -50px;
}

.cont-block-circle p {
    color: #4d4d4d;
}

.cont-block-circle .circle-head {
    font-size: 22px;
    font-weight: bold;
    margin-bottom: 0;
    padding-bottom: 10px;
}

.cont-block-circle .circle-text {
    font-size: 18px;
    padding: 0;
    line-height: 1.75;
}

.cont-block-list-wrap .cont-block-list-wrap-text {
    font-size: 18px;
    padding-top: 40px;
    color: #4d4d4d;
    margin-left: 50px;
}

.cont-block-list-wrap .cont-block-list-wrap-text-under {
    padding-top: 0;
    margin-top: 0;
}

.cont-block-inner .circle-img {
    margin-left: -40px;
}

@media screen and (max-width: 560px) {
    .cont-block-inner .circle-img {
        width: 60%;
        margin-left: 0;
    }

    .cont-block-circle {
        width: 150px;
        height: 150px;
        padding: 20px 15px;
        margin-right: 20px;
    }

    .cont-block-circle .circle-head {
        font-size: 15px;
        padding-bottom: 0;
    }

    .cont-block-circle .circle-text {
        font-size: 14px;
        line-height: 1.5;
        margin-top: 5px;
    }

    .cont-block-list.circle-block {
        display: flex;
    }

    .cont-block-list-wrap .cont-block-list-wrap-text {
        font-size: 15px;
        padding: 30px 0 0;
        margin-left: 0;
    }

    .cont-block-list-wrap .cont-block-list-wrap-text-under {
        padding-bottom: 30px;
    }
}

/*----------------------------------------------------
green-text
----------------------------------------------------*/

p .green-text {
    font-size: 17px;
    color: #439855;
}

@media screen and (max-width: 560px) {
    p .green-text {
        font-size: 16px;
    }
}

.aligncenter {
    margin: 0 auto;
}

.alignright {
    text-align: right;
}

/*----------------------------------------------------
table-title
----------------------------------------------------*/

.table-title {
    margin: 25px auto;
    background-color: #439855;
    padding: 8px 30px;
    color: #fff;
    font-size: 20px;
}

.wp-block-column .table-position {
    margin-top: 60px;
}

@media screen and (max-width: 560px) {
    .table-title {
        margin: 18px auto;
        background-color: #439855;
        padding: 8px 0;
        color: #fff;
        font-size: 16px;
    }

    .wp-block-column .table-position {
        margin-top: 10px;
    }
}

/*----------------------------------------------------
anchor
----------------------------------------------------*/

a.anchor {
    display: block;
    padding-top: 130px;
    margin-top: -130px;
}

/*----------------------------------------------------
anchor
----------------------------------------------------*/
#anchorWrap {
    padding-top: 20px;
}

#anchorWrap .list-menu .menu-box {
    display: flex;
    justify-content: space-between;
}

#anchorWrap .list-menu .menu-box {
    font-size: 17px;
    list-style: none;
    margin-top: 0;
    margin-bottom: 5px;
    padding: 0;
}

#anchorWrap .list-menu .menu-box li a {
    text-decoration: none;
    color: #439855;
    display: block;
}

#anchorWrap .list-menu .menu-box li {
    position: relative;
    width: 194px;
    text-decoration: none;
    background-color: #d9e9da;
    padding: 25px;
    font-size: 17px;
    margin-right: 5px;
}

#anchorWrap .list-menu .menu-box li:hover {
    background-color: #c7dfc9;
    color: #6bac75;
}

#anchorWrap .list-menu .menu-box .menu-item:after {
    position: absolute;
    top: 27px;
    right: 15px;
    width: 20px;
    height: 20px;
    background: url(../images/down.png) no-repeat 0 center;
    content: "";
}

@media screen and (max-width: 896px) {
    #anchorWrap .list-menu .menu-box {
        display: inline-block;
        text-align: center;
        margin: 0 auto;
    }

    #anchorWrap .list-menu .menu-box li {
        width: 400px;
        margin-bottom: 5px;
    }
}

@media screen and (max-width: 560px) {
    #anchorWrap {
        margin: 0 auto;
    }

    #anchorWrap .list-menu .menu-box {
        display: block;
        margin-right: 20px;
        margin-left: 20px;
    }

    #anchorWrap .list-menu .menu-box li {
        width: 100%;
        padding: 12px;
        font-size: 15px;
    }

    #anchorWrap .list-menu .menu-box .menu-item:after {
        position: absolute;
        top: 13px;
        right: 15px;
        width: 20px;
        height: 20px;
        background-size: 50%;
        background: url(../images/down.png) no-repeat 0 center;
        content: "";
    }
}


/*----------------------------------------------------
cont-flex
----------------------------------------------------*/
.cont-flex {
    margin: 50px auto;
    display: flex;
    justify-content: center;

}

.cont-flex .back-image {
    position: relative;
    margin-right: 40px;
}

.cont-flex .back-image:last-child {
    margin-right: 0;
}

.txt {
    position: absolute;
    color: #439855;
    font-size: 20px;
    font-weight: 500;
    letter-spacing: .1em;
    text-align: center;
    top: 36%;
    left: 15%;
    right: 15%;
}

.back-image.two-rows {
    margin-right: 80px;
    position: static;
    text-align: center;
}

.back-image.two-rows img {
    margin-bottom: 20px;
}

.back-image.two-rows .txt {
    position: static;
    font-size: 18px;
    margin-bottom: 30px;
    letter-spacing: 0;
}

@media screen and (max-width: 896px) {
    .txt {
        font-size: 16px;
        left: 10%;
        right: 10%;
    }
}

@media screen and (max-width: 560px) {
    .cont-flex {
        margin: 30px auto;
    }

    .cont-flex p {
        text-align: center;
        padding: 0;
    }

    .cont-flex .back-image {
        margin-right: 10px;
    }

    .txt {
        font-size: 13px;
        top: 29%;
        letter-spacing: 0;
        left: 5%;
        right: 5%;
    }

    .back-image.two-rows {
        margin-right: 15px;
        margin-bottom: 30px;
    }

    .back-image.two-rows img {
        margin-bottom: 0;
        min-width: 108.33px;
    }

    .back-image.two-rows .txt {
        font-size: 14px;
        line-height: 1.4;
    }

    .back-image.two-rows .txt br {
        display: none;
    }
}


/*----------------------------------------------------
balloon-bottom
----------------------------------------------------*/

.balloon-bottom {
    display: block;
    position: relative;
    width: 360px;
    margin: 30px;
    padding: 15px 30px;
    background: #e3efe3;
    border-radius: 30px;
    font-size: 18px;
    letter-spacing: .1em;
    text-align: center;
}

.balloon-bottom::after {
    content: "";
    position: absolute;
    margin: 0;
    bottom: -30px;
    right: 25%;
    width: 0;
    height: 0;
    border-top: 40px solid #e3efe3;
    border-left: 12px solid transparent;
    border-right: 12px solid transparent;
    transform: rotate(30deg);
}

.cont-wrap {
    display: flex;
    text-align: center;
    justify-content: center;
    margin-bottom: 50px;
}

.cont-wrap .btn2-sm {
    display: none;
}

@media screen and (max-width: 560px) {
    .balloon-bottom {
        margin: 20px 0;
        display: inline-block;
        padding: 15px 10px;
        border-radius: 15px;
        font-size: 14px;
        letter-spacing: 0;
    }

    .balloon-bottom::after {
        margin: 0;
        top: 35%;
        left: -18px;
        width: 0;
        height: 0;
        border-top: 15px solid #e3efe3;
        border-left: 15px solid transparent;
        border-right: 15px solid transparent;
        transform: rotate(-30deg);
    }

    .cont-wrap {
        display: block;
        margin: 0 15px 30px;
    }

    .cont-wrap-block {
        display: flex;
        flex-direction: row-reverse;
    }

    .cont-wrap-block .btn2 {
        display: none;
    }

    .cont-wrap .btn2-sm {
        display: inline-block;
    }

    .cont-wrap-block img {
        align-self: center;
        margin-right: 20px;
        width: 100px;
    }

    .cont-wrap-block .balloon-img {
        margin-top: -10px;
        margin-bottom: 20px;
    }
}


/*----------------------------------------------------
about-cerec
----------------------------------------------------*/
#about-cerec {
    margin-bottom: 60px
}

#about-cerec .post-cont-text {
    margin-top: 30px;
    font-size: 16px;
    text-align: center;
}

@media screen and (max-width: 560px) {
    #about-cerec {
        margin-bottom: 30px
    }

    #about-cerec .post-cont-text {
        margin-top: 20px;
        padding-bottom: 20px;
        font-size: 14px;
        text-align: left;
    }
}

/*----------------------------------------------------
merit
----------------------------------------------------*/
#merit {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    background-image: url(../images/back_leaf.png);
    background-size: 80%;
    background-repeat: no-repeat;
    background-position: 50% 85%;
}

.border-box-wrap {
    margin-right: 50px;
}

.border-box-wrap:nth-of-type(3) {
    margin-right: 0;
}

.border-box-wrap:nth-of-type(5) {
    margin-right: 0;
}

.border-box-wrap .border-box {
    width: 230px;
    height: 230px;
    border: 3px solid #439855;
    border-radius: 20px;
    padding: 30px 20px 20px;
}

.border-box-wrap .border-box .box-title {
    color: #439855;
    font-weight: bold;
    font-size: 22px;
    line-height: 1.47;
    text-align: center;
}

.border-box-wrap .border-box .box-title.fourth {
    padding: 18px 0;
}

.border-box-wrap .icon {
    width: 60px;
    height: 60px;
    background-color: #439855;
    border-radius: 50%;
    color: #fff;
    font-size: 10px;
    font-weight: 500;
    text-align: center;
    line-height: 1;
    padding-top: 10px;
    position: relative;
    top: 40px;
    left: -20px;
}

.border-box-wrap .icon-num {
    font-size: 30px;
    font-weight: bold;
    color: #fff;
    padding-top: 3px;
    line-height: 1;
}

.border-box-wrap .border-box p {
    font-size: 16px;
}

@media screen and (max-width: 896px) {
    #merit {
        display: block;
        background-image: none;
        margin: 0 20px;
    }

    .border-box-wrap {
        margin-right: 0;
    }

    .border-box-wrap .border-box {
        width: 100%;
        height: auto;
        border: 2px solid #439855;
        border-radius: 10px;
        padding: 15px 10px;
    }

    .border-box-wrap .border-box p {
        margin-bottom: 0;
        font-size: 14px;
    }

    .border-box-wrap .border-box .box-title.fourth {
        padding-top: 0;
        padding-bottom: 10px;
    }

    .border-box-wrap .border-box .box-title {
        font-size: 18px;
        line-height: 1;
        padding-bottom: 10px;
    }

    .border-box-wrap .border-box .box-title br {
        display: none;
    }

    .border-box-wrap .icon-num {
        margin: 0;
        text-align: center;
    }
}

/*----------------------------------------------------
recommended
----------------------------------------------------*/
#recommended {
    text-align: center;
    margin: 50px auto;
}

#recommended .recommended-title {
    font-size: 22px;
    position: relative;
    display: inline-block;
    padding: 0 60px;
    margin-top: 50px;
}

#recommended .recommended-title:before {
    content: '';
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 44px;
    height: 3px;
    background-color: #439855;
    -webkit-transform: rotate(60deg);
    transform: rotate(60deg);
}

#recommended .recommended-title:after {
    content: '';
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 44px;
    height: 3px;
    background-color: #439855;
    -webkit-transform: rotate(-60deg);
    transform: rotate(-60deg);
}

#recommended .recommended-title:before {
    left: 0;
}

#recommended .recommended-title:after {
    right: 0;
}

#recommended .cont-flex {
    margin: 30px auto;
    flex-wrap: wrap;
}

#recommended .recommended-title > .highlight {
    font-size: 30px;
    color: #439855;
    background: linear-gradient(transparent 65%, #d9e9da 50%);
    display: inline;
}

#recommended .cont-flex .cont-flex-block {
    padding: 0 30px;
}

#recommended .cont-flex .cont-flex-block p {
    color: #439855;
    font-size: 18px;
    font-weight: 500;
    padding-top: 20px;
}

.price-cont {
    margin: 30px auto;
    text-align: center;
}

.price-cont .price-cont-text {
    font-size: 14px;
    color: #439855;
    padding: 0;
    margin: 0;
    text-align: center;
}

.price-cont .btn2 {
    margin-top: 5px;
    padding: 10px 50px;
}

@media screen and (max-width: 560px) {
    #recommended {
        margin: 30px auto;
    }

    #recommended .recommended-title:before,
    #recommended .recommended-title:after {
        width: 35px;
        height: 2px;
    }

    #recommended .recommended-title {
        font-size: 16px;
        padding: 0 40px;
        margin-top: 30px;
    }

    #recommended .recommended-title > .highlight {
        font-size: 20px;
        font-weight: 500;
    }

    #recommended .cont-flex .cont-flex-block {
        width: 160px;
        padding: 0 20px 10px 10px;
    }

    #recommended .cont-flex {
        margin-right: -20px;
    }

    #recommended .cont-flex .cont-flex-block p {
        font-size: 16px;
        padding-top: 0;
        padding-bottom: 10px;
    }

    #recommended .cont-flex {
        padding-bottom: 0;
        margin-bottom: 20px;
    }
}


/*----------------------------------------------------
footer-widget
----------------------------------------------------*/
section {
    margin-top: 50px;
}

#footer-widget {
    width: 47%;
}

#footer-widget ul{
    padding-left: 0 !important;
}

#footer-widget li {
    list-style: none;
    text-align: center;
}

#footer-widget img{
    width: 150px;
    height: auto;
    margin-bottom: -10px;
}

section .container {
   display: flex;
    justify-content:space-around;
}

@media screen and (max-width: 560px) {
    #footer-widget {
        width: 100%;
        margin-bottom: 50px;
    }
    
    section .container {
        display: block;
    }
    
    .fb-container {
        width: 100%;
        max-width: 500px;
    }
}
