@charset "UTF-8";


/* common /////////////////////////////////////////////////////////////////////////////////////////// */
#wrapper {
    overflow: hidden;
}

main {
    background-color: #F6EDE1;
    /* mix-blend-mode: multiply; */
    background-image: url(../img/cmn_patt_dot.svg);
    background-repeat: repeat;
    background-position: center;
    /* background-size: auto; */
    background-size: 120px;
}

/* header */
header {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 9;
    width: 100%;
}

#header_modalmenu_check {
    display: none;
}

.header_infobar {
    position: relative;
    z-index: 1;
    height: 140px;
    background-color: rgba(0, 85, 50, 0.8);
}

.header_infobar_inner {
    display: flex;
    height: 100%;
}

.header_logo {
    position: relative;
    flex-shrink: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 16%;
    min-width: 82px;
    text-align: center;
}

.header_logo::before{
    content: '';
    position: absolute;
    right: 0;
    top: 0;
    display: block;
    width: 50vw;
    height: 100%;
    background-color: rgba(246, 237, 225, 0.9);
}

.header_logo a {
    position: relative;
    display: inline-block;
}

.header_nav {
    position: relative;
    width: 100%;
}

.header_nav .list01 {
    position: absolute;
    top: 0;
    right: 16px;
    display: inline-flex;
    justify-content: flex-end;
    align-items: flex-start;
    width: auto;
}


.header_nav .list01 .sns,
.header_nav .list01 .txt {
    flex-shrink: 0;
    display: inline-block;
    padding: 15px 8px 0 8px;
}

.header_nav .list01 .sns a {
    display: inline-block;
    margin-top: 2px;
}

.header_nav .list01 .txt a {
    display: inline-block;
    padding: .28em 1.1em;
    border: 1px solid #ffffff;
    border-radius: 1.5rem;
    overflow: hidden;
    color: #FFFFFF;
    font-size: 1.4rem;
    font-weight: 700;
    opacity: 1;
    transition:
        color .15s,
        background-color .15s;
}

.header_nav .list01 .txt a:hover {
    color: #005532;
    background-color: #FFFFFF;
}

.header_nav .list02 {
    display: flex;
    width: 100%;
    height: 100%;
}

.header_nav .list02 li {
    width: 100%;
    height: 100%;
}

.header_nav .list02 a {
    display: flex;
    justify-content: center;
    align-items: flex-end;
    align-content: flex-end;
    flex-wrap: wrap;
    height: 100%;
    padding: 1.1em .1em;
    color: #FFFFFF;
    font-size: 1.6rem;
    font-weight: 700;
    text-align: center;
    opacity: 1;
    transition:
        color .15s,
        background-color .15s;
}

.header_nav .list02 a:hover {
    color: #005532;
    background-color: rgba(246, 237, 225, 0.8);
}

.header_nav .list02 a span {
    display: block;
    width: 100%;
    font-size: 1.2rem;
}


.header_modalmenu_btn {
    display: none;
}

.header_reserv {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, 0);
    width: 100%;
    /* min-width: 1400px; */
    text-align: right;
    pointer-events: none;
}

.header_reserv a {
    position: absolute;
    right: 140px;
    top: 0;
    display: block;
    width: 150px;
    height: 280px;
    pointer-events: all;
}

.header_reserv img {
    display: inline-block;
    width: 290px;
    max-width: none;
    pointer-events: none;
}

#header_modalmenu_area {
    display: none;
}


/* footer */
.footer_top {
    padding-top: 50px;
    padding-bottom: 50px;
    background-color: #005532;
}

.footer_top > div {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.footer_nav {
    flex-shrink: 0;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    /* width: 320px; */
    width: 47%;
    min-width: 386px;
    margin: -8px 0 0 0;
}

.footer_nav > li {
    flex-shrink: 0;
    /* width: 45%; */
    width: 30%;
    margin: 8px 0 0 0;
    color: #FFFFFF;
    font-size: 1.4rem;
    font-weight: 700;
}

.footer_nav::after {
    content: '';
    display: block;
    flex-shrink: 0;
    /* width: 45%; */
    width: 30%;
}

.footer_nav > li a {
    display: inline-block;
    /* letter-spacing: 0.03em; */
}

.footer_nav > li span {
    display: inline-block;
}

.footer_orginfo {
    /* flex-shrink: 0; */
    display: flex;
    align-items: center;
}

.footer_orginfo figure {
    padding: 0 20px 0 0;
}

.footer_orginfo p {
    margin: 4px 0 0 0;
    color: #FFFFFF;
    font-size: 1.6rem;
    line-height: 1.8;
    font-weight: 700;
}

.footer_orginfo .zip {
    display: block;
}

.footer_copy {
    padding: 20px 0;
    background-color: #231815;
    color: #FFFFFF;
    font-size: 1.3rem;
    text-align: center;
}


.footer_gotop {
    position: fixed;
    right: 0;
    bottom: 0;
    /* z-index: 9; */
    z-index: 2;
    display: none;
}

.footer_gotop a {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 80px;
    height: 80px;
    text-align: center;
    background-color: rgba(0, 85, 50, 0.8);
}



.pcNone {
    display: none;
}

.cmn_maxbox {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
}

.cmn_maxbox_1100 {
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
}

/* フォントファミリー */
.font_yugo {
    /* font-family: "Helvetica Neue","Segoe UI","Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif; */
    font-family: "游ゴシック体",YuGothic,"游ゴシック Medium","Yu Gothic Medium","游ゴシック","Yu Gothic",sans-serif;
    /* font-family: "游ゴシック体",YuGothic,"游ゴシック","Yu Gothic","Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif; */
}

.cmn_btn_rd,
.cmn_tit_rd,
.font_shinmarugo {
    font-family: "Shin Maru Go Regular","新丸ゴ R",'Kosugi Maru',"Hiragino Maru Gothic ProN","ヒラギノ丸ゴ ProN W4","Hiragino Maru Gothic Pro","ヒラギノ丸ゴ Pro W4","Hiragino Maru Gothic ProN","ヒラギノ丸ゴ ProN","HG丸ゴシックM-PRO","HGMaruGothicMPRO",Meiryo,"Yu Gothic",YuGothic,"游ゴシック体","メイリオ",Osaka,arial,helvetica,sans-serif;
    font-weight: 500;
}

/* main.cssの透過効果打ち消し */
a.opacityNone:hover,
.XXXXX a
{
    opacity: 1.0;
    filter: none; /* 初期値：none */
    -ms-filter: ""; /* 初期値："" */
    -webkit-transition: none;
    -moz-transition: none;
    -o-transition: none;
    transition: none;
}

/* aタグ(電話番号) */
a[href^="tel"] {
    pointer-events: none;
}

/* 角丸 */
.rd10 {
    border-radius: 1.0rem;
    overflow: hidden;
}

.rd20 {
    border-radius: 2.0rem;
    overflow: hidden;
}

.rd30 {
    border-radius: 2.0rem;
    overflow: hidden;
}


/* 背景装飾 */
.bg_patt {
    /* background-color: #DED0B8; */
    background-color: #DBC2A4;
    /* mix-blend-mode: multiply; */
    background-image: url(../img/cmn_patt_dot_02.svg);
    background-repeat: repeat;
    background-position: center;
    /* background-size: auto; */
    background-size: 120px;
}

/* 見出し（角丸※色、矢印） */
.cmn_btn_rd {
    text-align: center;
}

.cmn_btn_rd,
.cmn_tit_rd {
    color: #FFFFFF;
    font-size: 2.2rem;
    font-weight: 600;
}

.cmn_btn_rd a,
.cmn_tit_rd {
    display: block;
    max-width: 560px;
    /* padding: .56em 2em; */
    padding: .56em .6em;
    border-radius: 3.0rem;
    margin: 0 auto;
    background-color: #005532;
    text-align: center;
}

.cmn_btn_rd.arr a,
.cmn_tit_rd.arr {
    background-image: url(../img/cmn_btn_arr_r_green.svg);
    background-repeat: no-repeat;
    background-position: right 0.9em center;
    background-size: 0.9em;
}

.cmn_btn_rd.green a,
.cmn_tit_rd.green {
    background-color: #005532;
}

.cmn_btn_rd.blue a,
.cmn_tit_rd.blue {
    background-color: #2CA6E0;
}

.cmn_btn_rd.yellow a,
.cmn_tit_rd.yellow {
    background-color: #F7B52C;
}

.cmn_btn_rd.orange a,
.cmn_tit_rd.orange {
    background-color: #E95513;
}

.cmn_btn_rd.arr a.green,
.cmn_tit_rd.arr.green {
    background-image: url(../img/cmn_btn_arr_r_green.svg);
}

.cmn_btn_rd.arr a.blue,
.cmn_tit_rd.arr.blue {
    background-image: url(../img/cmn_btn_arr_r_blue.svg);
}

.cmn_btn_rd.arr a.yellow,
.cmn_tit_rd.arr.yellow {
    background-image: url(../img/cmn_btn_arr_r_yellow.svg);
}

.cmn_btn_rd.arr a.orange,
.cmn_tit_rd.arr.orange {
    background-image: url(../img/cmn_btn_arr_r_orange.svg);
}

.cmn_tit_rd + * {
    margin-top: 30px;
}


/* リンク（写真付き） */
.cmn_link_img {
    display: flex;
    justify-content: space-between;
    max-width: 868px;
    margin: 0 auto;
}

.cmn_link_img li {
    width: 49%;
}

.cmn_link_img a {
    display: block;
    text-align: center;
}

.cmn_link_img a:hover {
    opacity: 1;
}

.cmn_link_img p {
    position: relative;
    z-index: 1;
    display: inline-block;
    min-width: 294px;
    padding: 0.61em;
    border-radius: 4.5rem;
    margin: 0 0 -12% 0;
    color: #FFFFFF;
    font-size: 2.8rem;
    line-height: 1.4;
    text-align: center;
    background-image: url(../img/cmn_btmlink_bg.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    overflow: hidden;
    transition:
        color .15s,
        background-image .15s;
}

.cmn_link_img a:hover p {
    color: #005532;
    background-image: url(../img/cmn_btmlink_bg_hover.svg);
}

.cmn_link_img span {
    display: block;
    letter-spacing: 0.15rem;
}

.cmn_link_img small {
    display: block;
    margin: 2px 0 0 0;
    font-size: 1.4rem;
    letter-spacing: 0.05rem;
}

.cmn_link_img figure {
    position: relative;
    overflow: hidden;
}

.cmn_link_img figure::after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 100%;
    height: 100%;
    border: 8px solid #ffffff;
    pointer-events: none;
}

.cmn_link_img img {
    transition: transform .15s;
}

.cmn_link_img a:hover img {
    transform: scale(1.1);
}


/* SUBメインタイトル */
.cmn_maintitle {
    display: flex;
    align-items: flex-end;
    flex-wrap: wrap;
    height: 39vw;
    min-height: 550px;
    max-height: 750px;
    position: relative;
    /* z-index: 1; */
    background-image: url(../img/group_maintitle_img_pc.jpg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

.cmn_maintitle::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 100%;
    height: 100%;
    pointer-events: none;
    /* background-image: url(../img/cmn_maintitle_bg04.svg); */
    background-image: url(../img/cmn_maintitle_bg05.svg);
    background-repeat: no-repeat;
    background-position: center bottom -2px;
    background-size: 104% auto;
}

.cmn_maintitle > * {
    position: absolute;
    left: 50%;
    bottom: -15px;
    width: 100%;
    max-width: 1100px;
    transform: translate(-50%, 0);
}

.cmn_maintitle img {
    display: inline-block;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
    min-width: 0;
    min-height: 0;
}

/* 汎用padding・margin */
.cmn_pd_v30 {
    padding-top: 30px;
    padding-bottom: 30px;
}

.cmn_pd_v50 {
    padding-top: 50px;
    padding-bottom: 50px;
}

.cmn_pd_v100 {
    padding-top: 100px;
    padding-bottom: 100px;
}

.cmn_pd_v50:nth-last-of-type(1) {
    padding-bottom: 100px;
}

.cmn_maintitle + .cmn_pd_v100,
.cmn_maintitle + .cmn_pd_v50 {
    padding-top: 50px;
}

/* イラスト */
.cmn_illust {
    position: absolute;
    left: 50%;
    transform: translate(-50%, 0);
    width: 100vw;
    max-width: 1300px;
    padding-left: 20px;
    padding-right: 20px;
    pointer-events: none;
}

.cmn_illust.top {
    top: 0;
}

.cmn_illust.bottom {
    bottom: 0;
}

.cmn_illust.left .cmn_illust_inner {
    margin-right: auto;
}

.cmn_illust.right .cmn_illust_inner {
    margin-left: auto;
}


/* 戻るボタン */
.cmn_backbtn a {
    display: inline-flex;
    align-items: center;
}

.cmn_backbtn a p {
    flex-shrink: 0;
    margin: .2em 0 0 .4em;
    font-size: 1.8rem;
}



/* CMSエディタ装飾 */
.cmn_cms_editor {
    word-wrap: break-word;
    overflow-wrap: break-word;
}

.cmn_cms_editor > *:nth-child(1) {
    margin-top: 0;
}

.cmn_cms_editor h2,
.cmn_cms_editor h3,
.cmn_cms_editor h4,
.cmn_cms_editor h5,
.cmn_cms_editor h6 {
    display: block;
    padding: 0 0 .3em 0;
    border-color: #005532;
    line-height: 1.3;
    margin: .6em 0 .8em;
    letter-spacing: -0.0015625em;
}

.cmn_cms_editor h3 {
    font-size: 2.2rem;
    border-width: 0 0 1px 0;
    border-style: double;
}

.cmn_cms_editor h4 {
    font-size: 2.0rem;
    border-width: 0 0 1px 0;
    border-style: dashed;
}

.cmn_cms_editor h5 {
    font-size: 1.8rem;
    border-width: 0 0 1px 0;
    border-style: dotted;
}

.cmn_cms_editor h6 {
    font-size: 1.6rem;
    border-width: 0 0 1px 0;
    border-style: dotted;
}

.cmn_cms_editor p {
    padding: 8px 0 10px;
    margin: 0 0 8px 0;
    /*text-align: justify;
    text-justify: inter-ideograph;*/
}


/* 商品説明などのエディタ上書き */
.cmn_cms_editor img {
    display: inline-block;
    width: auto;
    height: auto;
    margin-right: 8px;
    margin-top: 8px;
    margin-bottom: 8px;
    border-radius: 1.0rem;
    overflow: hidden;
}

.cmn_cms_editor iframe[src*="youtube"] {
    /* display: inline-block;
    width: 100%;
    height: 56.25vw;
    max-height: 506px;
    margin-top: 8px;
    margin-bottom: 8px; */

    display: inline-block;
    max-width: 100%;
    margin-top: 8px;
    margin-bottom: 8px;
}

.cmn_cms_editor iframe[src*="google"][src*="map"] {
    display: inline-block;
    max-width: 100%;
    max-height: 600px;
    margin-top: 8px;
    margin-bottom: 8px;
}

.cmn_cms_editor strong {
    font-weight: 900;
}

.cmn_cms_editor em {
    font-style: italic;
}

.cmn_cms_editor a {
    display: inline-block;
    margin-top: 2px;
    margin-bottom: 2px;
    color: inherit;
    text-decoration: underline;
    word-break: break-all;
}

.cmn_cms_editor a:hover {
    color: inherit;
}

.cmn_cms_editor table {
    margin: 0 0 8px 0;
    word-break: break-all;
}

.cmn_cms_editor th,
.cmn_cms_editor td {
    margin: 0 0 8px 0px;
    padding: 6px 10px;
    border: 1px solid #8F8F8F;
}

.cmn_cms_editor ul {
    margin: 0 0 8px 0;
}

.cmn_cms_editor ul li {
    list-style: disc;
    margin: 0 0 4px 20px;
}

.cmn_cms_editor ol {
    margin: 0 0 8px 0;
}

.cmn_cms_editor ol li {
    list-style: decimal;
    margin: 0 0 4px 20px;
}

.cmn_cms_editor blockquote {
    background-color: #F3F3F3;
    margin-inline-start:10px;
    margin-inline-end:10px;
    padding: 15px;
}

/* WPオリジナルクラス有効化 */
.cmn_cms_editor .aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.cmn_cms_editor .alignright {
    display: block;
    margin-left: auto;
}

.cmn_cms_editor .alignleft {
    display: block;
    margin-right: auto;
}

.cmn_cms_editor .wp-caption {
    border: 1px solid #dddddd;
    text-align: left;
    background-color: #f3f3f3;
    padding: 5px;
    border-radius: 3px;
}

.cmn_cms_editor .wp-caption img {
    padding: 0;
    border: 0;
    margin: 0;
}

.cmn_cms_editor .wp-caption p.wp-caption-text {
    font-size: 14px;
    line-height: 1.5;
    padding: 0;
    margin: 0;
}

/* テントサイト詳細リンク（写真付き） */
.cmn_tent_link {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.cmn_tent_link li {
    width: 48%;
}

.cmn_tent_link a {
    display: block;
}

.cmn_tent_link figure {
    position: relative;
    overflow: hidden;
}

.cmn_tent_link figure::after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 100%;
    height: 100%;
    border: 8px solid #ffffff;
    border: 12px solid #ffffff;
    pointer-events: none;
}

.cmn_tent_link img {
    transition: transform .15s;
}

.cmn_tent_link a:hover img {
    transform: scale(1.1);
}

.cmn_tent_link .cmn_tit_rd {
    margin-top: 20px;
}


/* SUB写真スライダー */
.cmn_gl_slider {
    position: relative;
    z-index: 0;
}

.cmn_gl_slider .swiper-container {
    visibility: hidden;
    overflow: visible;
}

.cmn_gl_slider .swiper-container-initialized {
    visibility: visible;
}

.cmn_gl_slider .swiper-wrapper {
    height: 50vw;
    min-height: 240px;
    max-height: 500px;
}

.cmn_gl_slider .swiper-slide {
    display: block;
    width: 100%;
    height: 100%;
    background-image: url(../img/charge_maintitle_img_pc.jpg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

.cmn_gl_slider .swiper-container-horizontal > .swiper-pagination-bullets {
    position: static;
}

.cmn_gl_slider .swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    margin: 15px 5px;
    background-color: rgba(0, 85, 50, 0.5);
    opacity: 1;
}

.cmn_gl_slider .swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet-active {
    background-color: #005532;
}



/* テントサイト料金表 */
.cmn_tent_price > li {
    border: 1px solid #B4B4B5;
}

.cmn_tent_price > li + li {
    margin: 20px 0 0 0;
}

.cmn_tent_price > li > p {
    padding: .4em;
    color: #FFFFFF;
    font-size: 1.8rem;
    line-height: 1.5;
    font-weight: 700;
    text-align: center;
    background-color: rgba(0, 85, 50, 0.85);
}

.cmn_tent_price > li > p span {
    display: inline-block;
}

.cmn_tent_price dl {
    display: flex;
}

.cmn_tent_price dl > div {
    display: flex;
    flex-direction: column;
    width: 100%;
}

/* .cmn_tent_price dl > div:only-of-type {
    width: 100%;
} */

.cmn_tent_price dt,
.cmn_tent_price dd {
    padding: 1em;
    border-top: 1px solid #B4B4B5;
    color: #005532;
    font-size: 1.8rem;
    text-align: center;
}

.cmn_tent_price dt {
    flex-shrink: 0;
    font-weight: 700;
}

.cmn_tent_price dd {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    background-color: #ffffff;
}


.cmn_tent_price div + div dt,
.cmn_tent_price div + div dd {
    border-left: 1px solid #B4B4B5;
}


.cmn_tent_price .bgc_value {
    background-color: rgb(141, 194, 31,0.5);
}

.cmn_tent_price .bgc_regular {
    background-color: rgb(0, 159, 232,0.5);
}

.cmn_tent_price .bgc_high {
    background-color: rgb(231, 56, 40,0.5);
}

.cmn_tent_price .bgc_day01 {
    background-color: rgb(242, 150, 0,0.5);
}

.cmn_tent_price .bgc_day02 {
    background-color: rgb(255, 145, 154,0.5);
}

.cmn_tent_price .bgc_ts01 {
    background-color: rgb(233, 85, 19,0.5);
}

.cmn_tent_price .bgc_ts02 {
    background-color: rgb(247, 181, 44,0.5);
}

.cmn_tent_price .bgc_ts03 {
    background-color: rgb(44, 166, 224,0.5);
}






/* home /////////////////////////////////////////////////////////////////////////////////////////// */
.home_mainslider {
    position: relative;
    height: 100vh;
}

.home_mainslider .swiper-container {
    height: 100%;
    visibility: hidden;
}

.home_mainslider .swiper-container-initialized {
    visibility: visible;
}

.home_mainslider .swiper-wrapper {
    height: 100%;
}

.home_mainslider .swiper-slide {
    display: block;
    width: 100%;
    height: 100%;
    background-image: url(../img/home_mainslider_img01.jpg);
    background-repeat: no-repeat;
    /* background-position: center bottom; */
    background-position: center;
    background-size: cover;
}

.home_mainslider .slide01 {
    background-image: url(../img/home_mainslider_img01.jpg);
}

.home_mainslider .slide02 {
    background-image: url(../img/home_mainslider_img02.jpg);
}

.home_mainslider .slide03 {
    background-image: url(../img/home_mainslider_img03.jpg);
}

.home_mainslider .slide04 {
    background-image: url(../img/home_mainslider_img04.jpg);
}

.home_mainslider .slide05 {
    background-image: url(../img/home_mainslider_img05.jpg);
}

/* .home_mainslider .swiper-container-horizontal > .swiper-pagination-bullets,
.home_mainslider .swiper-pagination-custom,
.home_mainslider .swiper-pagination-fraction {
    z-index: 1;
} */


.home_mainslider::after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: 1;
    display: block;
    width: 100%;
    height: auto;
    pointer-events: none;
    /* background-image: url(../img/cmn_maintitle_bg04.svg); */
    background-image: url(../img/cmn_maintitle_bg05.svg);
    background-repeat: no-repeat;
    background-position: center bottom -2px;
    background-size: 104% auto;
}

.home_news {
    position: relative;
    z-index: 2;
    max-width: 1100px;
    margin: -11% auto 0;
}

.home_news_inner {
    position: relative;
    z-index: -1;
    margin-top: -4%;
}

.home_news_inner ul {
    padding: 50px;
    margin: 0 auto;
    background-color: #ffffff;
    color: #005532;
}

.home_news_inner li {
    display: flex;
    align-items: flex-start;
    padding: 8px 0 8px 30px;
    border-bottom: 1px solid #DBDCDC;
    background-image: url(../img/cmn_arr_r_g.svg);
    background-repeat: no-repeat;
    background-position: left top 12px;
    background-size: auto;
}

.home_news_inner li span {
    flex-shrink: 0;
    display: inline-block;
    margin: 0 20px 0 0;
    font-size: 1.8rem;
    font-weight: 700;
}

.home_news_inner li a {
    display: inline-block;
    margin: .1em 0 0 0;
    font-size: 1.6rem;
}

.home_news_illust {
    /* transform: translate(-50%, 35%); */
    transform: translate(-50%, 56%);
}

.home_news_illust .cmn_illust_inner {
    width: 190px;
    /* width: 210px; */
}

.home_link_col03 {
    max-width: 1308px;
    margin: 100px auto 0;
}

.home_link_col03 .cmn_link_img {
    max-width: none;
}

.home_link_col03 .cmn_link_img li {
    width: 32%;
}

.home_link_guide {
    margin-top: 100px;
}

.home_link_guide li {
    position: relative;
    /* height: 180px; */
    height: 0;
    padding: 21% 0 0 0;
}

.home_link_guide li + li {
    margin: 20px 0 0 0;
}

.home_link_guide a {
    /* position: relative; */
    position: absolute;
    left: 0;
    top: 0;
    display: flex;
    justify-content: center;
    align-content: center;
    align-items: center;
    flex-wrap: wrap;
    width: 100%;
    height: 100%;
    color: #FFFFFF;
    text-align: center;
    overflow: hidden;
}

.home_link_guide a::after {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
    display: block;
    width: 101%;
    height: 101%;
    /* background-image: url(../img/home_link_guide_frame.png); */
    background-image: url(../img/home_link_guide_frame_pc_dot.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100% 100%;
}

.home_link_guide p {
    position: relative;
    z-index: 2;
    display: block;
    width: 100%;
    font-size: 2.8rem;
    letter-spacing: 0.15rem;
}

.home_link_guide span {
    display: block;
    width: 100%;
    font-size: 1.4rem;
}

.home_link_guide img {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    display: block;
    width: 100%;
    transition: transform .15s;
}

.home_link_guide a:hover img {
    transform:
        translate(-50%,-50%) scale(1.1);
}


















.home_topics {
    padding-bottom: 100px;
    margin-top: 100px;
}

.home_topics_inner {
    position: relative;
}

.home_topics h2 {
    transform: translate(0,-50%);
}

.home_topics_list .swiper-wrapper {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap;
}

.home_topics_list .swiper-wrapper::before,
.home_topics_list .swiper-wrapper::after {
    content: '';
    order: 1;
    display: block;
}

.home_topics_list .swiper-wrapper::before,
.home_topics_list .swiper-wrapper::after,
.home_topics_list .swiper-slide {
    width: 24%;
    width: 23.8%;
}

.home_topics_list .swiper-slide:nth-of-type(4) ~ .swiper-slide {
    display: none;
}

.home_topics_list a {
    display: block;
}

.home_topics_list a:hover {
    opacity: 1;
}

.home_topics_list .imgbox {
    position: relative;
    height: 0;
    padding: 75% 0 0 0;
}

.home_topics_list .imgbox_inner {
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 100%;
    height: 100%;
    background-color: #ffffff;
    background-image: url(../img/news_nothumb.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    transition: transform .15s;
}

.home_topics_list .imgbox::after {
    content: '';
    position: absolute;
    left: 0;
    top: 83%;
    display: block;
    width: 100%;
    height: 999%;
    background-image: url(../img/home_topics_bg.svg);
    background-repeat: no-repeat;
    background-position: center top;
    background-size: 100% auto;
    transition: opacity .15s;
}

.home_topics_list a:hover .imgbox::after {
    background-image: url(../img/home_topics_bg_hover.svg);
}

.home_topics_list a:hover .imgbox_inner {
    transform: scale(1.1);
}

.home_topics_list .txtbox {
    position: relative;
    padding: 15px 20px;
    color: #005532;
    font-weight: 700;
    font-size: 1.8rem;
    transition: color .15s;
}

.home_topics_list a:hover .txtbox {
    color: #ffffff;
}

.home_topics_list p {
    padding: .4em .02em 0;
    border-top: 1px dashed #005532;
    margin: .4em 0 0 0;
    transition: border-color .15s;
}

.home_topics_list a:hover p {
    border-color: #FFFFFF;
}

.home_topics_illust {
    transform: translate(-50%, -94%);
    max-width: 580px;
}

.home_topics_illust .cmn_illust_inner {
    width: 200px;
}

.home_access {
    position: relative;
    padding-top: 100px;
}

.home_access_inner {
    position: relative;
    padding-top: 20px;
    padding-bottom: 30px;
}

.home_access_map {
    position: relative;
    height: 400px;
    padding: 0 0 0 0;
    overflow: hidden;
}

.home_access_map > iframe {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}

.home_access_illust01 {
    transform: translate(-50%, -50%);
    max-width: 1300px;
}

.home_access_illust01 .cmn_illust_inner {
    width: 190px;
}

.home_access_illust02 {
    z-index: 1;
    transform: translate(-50%, -20%);
    max-width: 1100px;
}

.home_access_illust02 .cmn_illust_inner {
    width: 220px;
}


/* news /////////////////////////////////////////////////////////////////////////////////////////// */
.news_body .cmn_maintitle {
    background-image: url(../img/news_maintitle_img_pc.jpg);
}

.news_list_wrap {
    position: relative;
}

.news_illust {
    transform: translate(-50%, -70%);
    max-width: 1050px;
}

.news_illust .cmn_illust_inner {
    width: 200px;
}

.news_list li + li {
    margin: 20px 0 0 0;
}

.news_list a {
    display: flex;
    justify-content: space-between;
    background-color: #ffffff;
}

.news_list .imgbox {
    position: relative;
    flex-shrink: 0;
    width: 26%;
    min-height: 200px;
    background-image: url(../img/news_nothumb.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

.news_list .cat {
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 130px;
    height: 80px;
    padding: 4% 0 0 3%;
    background-image: url(../img/news_tag_bg.svg);
    background-repeat: no-repeat;
    background-position: left top;
    background-size: 100%;
}

.news_list .cat img {
    max-width: 82%;
    max-height: 52%;
}

.news_list .txtbox {
    width: 100%;
    padding: 25px 25px;
    color: #005532;
    font-weight: 700;
}

.news_list .txtbox span {
    font-size: 1.8rem;
}

.news_list .txtbox p {
    padding: .7em 0 0 0;
    border-top: 1px dashed #005532;
    margin: .7em 0 0 0;
    font-size: 1.8rem;
}



.news_pager_num .pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}

.news_pager_num .first,
.news_pager_num .prev,
.news_pager_num .pager,
.news_pager_num .next,
.news_pager_num .last {
    display: block;
    width: 50px;
    height: 50px;
    padding: 0 0 0 .15em;
    border-radius: 50%;
    margin: 5px 5px;
    line-height: 50px;
    color: #ffffff;
    background-color: rgba(0, 85, 50, 0.5);
    font-size: 2.2rem;
    font-weight: 500;
    letter-spacing: .2rem;
    text-align: center;
}

.news_pager_num a:hover,
.news_pager_num .current {
    opacity: 1;
    background-color: #005532;
}

.news_pager_num .prev,
.news_pager_num .next {
    color: #005532;
    background-color: transparent;
    pointer-events: none;
}

.news_pager_num .first,
.news_pager_num .last,
.news_pager_num .prev,
.news_pager_num .next,
.news_pager_num .page_num {
    display: none;
}

.news_single_conts {
    position: relative;
    background-color: #ffffff;
}

.news_single_conts .cat {
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 180px;
    height: 110px;
    padding: 15px 0 0 20px;
    background-image: url(../img/news_tag_bg.svg);
    background-repeat: no-repeat;
    background-position: left top;
    background-size: 100%;
}

.news_single_conts .cat img {
    width: 68%;
}

.news_single_inner {
    width: 80%;
    padding: 75px 0;
    margin: 0 auto;
}

.news_single_inner > span {
    color: #005532;
    font-size: 2.0rem;
    font-weight: 700;
}

.news_single_inner > h2 {
    color: #005532;
    font-size: 2.4rem;
    font-weight: 700;
    padding: .7em 0 0 0;
    border-top: 1px dashed #005532;
    margin: .7em 0 0 0;
}

.news_editor {
    margin: 30px 0 0 0;
    color: #005532;
    font-size: 1.6rem;
    letter-spacing: 0.1rem;
    line-height: 1.85;
}

.news_backbtn {
    margin-top: 100px;
}




/* about /////////////////////////////////////////////////////////////////////////////////////////// */
.about_body .cmn_maintitle {
    background-image: url(../img/about_maintitle_img_pc.jpg);
}


.about_top {
    position: relative;
}

.about_top_illust01 {
    transform: translate(-50%, -25%);
    max-width: 1250px;
}

.about_top_illust02 {
    transform: translate(-50%, 15%);
    max-width: 1350px;
}

.about_top_illust03 {
    transform: translate(-50%, 50%);
    max-width: 1350px;
}

.about_top_illust01 > * {
    width: 270px;
}

.about_top_illust02 > * {
    width: 220px;
}

.about_top_illust03 > * {
    width: 200px;
}


.about_top > p {
    max-width: 1000px;
    padding: 0 150px 0 0;
    padding: 0 200px 0 0;
    /* font-size: 2.0rem; */
    font-size: 1.7rem;
    line-height: 1.8;
}

.about_map_wrap {
    position: relative;
    margin: -20px 0 0 0;
}

.about_map_wrap img {
    display: block;
}

.about_map_wrap .base {
    width: auto;
    height: auto;
}

.about_map_wrap [class*="area_ts"] {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: auto;
    opacity: 0;
    transition: opacity .2s;
    pointer-events: none;
}

.about_map_wrap .js-isVisible {
    opacity: 1;
}

.about_maplist {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap;
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
}

.about_body {
    counter-reset: about_maplist_num 0;
}

.about_maplist::after {
    content: '';
    display: block;
    width: 32%;
}

.about_maplist li {
    counter-increment: about_maplist_num;
    width: 32%;
    margin: 46px 0 0 0;
}

/* .about_maplist.ts li {
    width: 33%;
}

.about_maplist.facility li {
    width: 32%;
} */


.about_maplist.ts > li > a {
    display: block;
}

.about_maplist.facility .imgbox a {
    display: block;
    /* opacity: 1; */
}

.about_maplist .imgbox {
    position: relative;
}

.about_maplist .imgbox::after {
    content: counter(about_maplist_num);
    position: absolute;
    left: .65em;
    top: .65em;
    display: block;
    width: 40px;
    height: 40px;
    /* padding: 0 .02em 0 0; */
    /* padding: 0 0 0 .05em; */
    border-radius: 50%;
    line-height: 40px;
    color: #FFFFFF;
    font-size: 2.2rem;
    letter-spacing: 0.05rem;
    font-weight: 700;
    text-align: center;
    background-color: #005532;
    pointer-events: none;
}

.about_maplist.ts li:nth-of-type(1) .imgbox::after {
    background-color: #E95513;
}

.about_maplist.ts li:nth-of-type(2) .imgbox::after {
    background-color: #F7B52C;
}

.about_maplist.ts li:nth-of-type(3) .imgbox::after {
    background-color: #2CA6E0;
}

.about_maplist .txtxbox {
    margin: 20px 0 0 0;
}

.about_maplist .txtxbox .cmn_tit_rd  {
    padding-top: .2em;
    padding-bottom: .2em;
}

.about_maplist .txtxbox p {
    margin: 18px 0 0 0;
    font-size: 1.4rem;
    line-height: 1.6;
}










.about_ts_outline {
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}

.about_ts_gl .swiper-wrapper {
    height: 68.75vw;
    min-height: 260px;
    max-height: 550px;
}

.about_ts_gl .swiper-wrapper::after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 100%;
    height: 100%;
    border: 8px solid #FFFFFF;
    pointer-events: none;
}


.about_ts_gl.ts01 .slide01 {
    background-image: url(../img/about_ts01_gl_img01.jpg);
}

.about_ts_gl.ts01 .slide02 {
    background-image: url(../img/about_ts01_gl_img02.jpg);
}

.about_ts_gl.ts01 .slide03 {
    background-image: url(../img/about_ts01_gl_img03.jpg);
}

.about_ts_gl.ts02 .slide01 {
    background-image: url(../img/about_ts02_gl_img01.jpg);
}

.about_ts_gl.ts02 .slide02 {
    background-image: url(../img/about_ts02_gl_img02.jpg);
}

.about_ts_gl.ts02 .slide03 {
    background-image: url(../img/about_ts02_gl_img03.jpg);
}

.about_ts_gl.ts03 .slide01 {
    background-image: url(../img/about_ts03_gl_img01.jpg);
}

.about_ts_gl.ts03 .slide02 {
    background-image: url(../img/about_ts03_gl_img02.jpg);
}

.about_ts_gl.ts03 .slide03 {
    background-image: url(../img/about_ts03_gl_img03.jpg);
}

.about_ts_outline > p {
    margin: 20px auto 0;
    font-size: 1.6rem;
}


.about_ts_price.about_ts_price  {
    padding-top: 0px;
}

.about_ts_price .cmn_backbtn {
    margin-top: 20px;
}

.about_ts_note01_wrap{
    margin-top: 20px;
}

.about_ts_note01 {
    font-size: 1.6rem;
    line-height: 1.75;
    /* font-feature-settings: "palt"; */
    /* letter-spacing: 0; */
}


/* rental /////////////////////////////////////////////////////////////////////////////////////////// */
.rental_body .cmn_maintitle {
    background-image: url(../img/rental_maintitle_img_pc.jpg);
}

.rental_list_wrap03,
.rental_list_wrap04,
.rental_list_wrap01,
.rental_list_wrap02 {
    position: relative;
}

.rental_illust01 {
    transform: translate(-50%, 50%);
    max-width: 1400px;
}

.rental_illust01 > * {
    width: 140px;
}

.rental_illust02 {
    transform: translate(-50%, -30%);
    max-width: 1100px;
}

.rental_illust02 > * {
    width: 140px;
}

.rental_illust03 {
    transform: translate(-50%, 60%);
    max-width: 1300px;
}

.rental_illust03 > * {
    width: 190px;
}

.rental_illust04 {
    transform: translate(-50%, -20%);
    max-width: 1300px;
}

.rental_illust04 > * {
    width: 190px;
}

.rental_list > div {
    border: 1px solid #B4B4B5;
}

.rental_list > div + div {
    margin: 10px 0 0 0;
}

.rental_list button {
    display: inline-flex;
    align-items: flex-start;
    width: 100%;
    padding: .9em 0 .9em 1.4em;
    border: 0;
    color: #FFFFFF;
    font-size: 1.8rem;
    line-height: 1.45;
    font-weight: 700;
    text-align: left;
    background-color: rgba(0, 85, 50, 0.8);
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    box-shadow: none;
}


.rental_list button:focus:not(:focus-visible) {
    outline: 0;
}

.rental_list dt div {
    width: 100%;
}

.rental_list button::after {
    content: '';
    flex-shrink: 0;
    align-self: center;
    display: inline-block;
    width: 30px;
    height: 30px;
    margin: 0 .8em 0 .8em;
    background-image: url(../img/cmn_arr_d_white.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100%;
    transition: background-image .1s;
}

.rental_list .js-isOpen button::after {
    background-image: url(../img/rental_ico_close.svg);
    transition: background-image .1s;
}

/* .rental_list dd {

} */


.rental_detail li {
    display: flex;
    background-color: #ffffff;
    letter-spacing: 0.02rem;
    font-size: 1.8rem;
    line-height: 1.45;
}

.rental_detail li > * {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    /* padding: 1.5em 1em; */
    padding: 1.2em 1em;
    border-style: solid;
    border-color: #B4B4B5;
}

.rental_detail .name {
    flex-shrink: 0;
    width: 40%;
    border-width: 1px 0 0 0;
    font-weight: 700;
    text-align: center;
    background-color: #DED0B8;
}

.rental_detail .price {
    width: 100%;
    border-width: 1px 0 0 1px;
    text-align: center;
}

.rental_detail .price .after{
    display: block;
    color: #E73828;
    width: 100%;
}

.rental_note01_wrap {
    margin: 15px 0 30px;
}

.rental_note01 {
    font-size: 1.6rem;
    line-height: 1.75;
    /* font-feature-settings: "palt"; */
    /* letter-spacing: 0; */
}







/* charge /////////////////////////////////////////////////////////////////////////////////////////// */
.charge_body .cmn_maintitle {
    background-image: url(../img/charge_maintitle_img_pc.jpg);
}

.charge_common,
.charge_ts03 {
    position: relative;
}

.charge_common_illust {
    transform: translate(-50%, -25%);
    max-width: 1000px;
}

.charge_ts03_illust {
    transform: translate(-50%, 50%);
    max-width: 1300px;
}

.charge_common_illust > * {
    width: 140px;
}

.charge_ts03_illust > * {
    width: 220px;
}

.charge_time_row + .charge_time_row{
    margin-top: 1.8em;
}
.charge_time_term{
    text-align: center;
    font-weight: 700;
    font-size: 2.1rem;
}
.charge_time_desc{
    text-align: center;
    font-size: 2.3rem;
}
.charge_time_desc_pcNone{
    display: none;
}


.charge_common_table {
    border-collapse: collapse;
    width: 100%;
}

.charge_common_table th,
.charge_common_table td {
    padding: 1em;
    border: 1px solid #B4B4B5;
    font-size: 2.0rem;
    line-height: 1.4;
    font-weight: 700;
    text-align: center;
}

.charge_common_table th {
    width: 40%;
    color: #FFFFFF;
    background-color: rgba(0, 85, 50, 0.85);
}
.charge_common_table.orange th {
    background-color: #E95513;
}
.charge_common_table.yellow th {
    background-color: #F7B52C;
}
.charge_common_table.blue th {
    background-color: #2CA6E0;
}

.charge_common_table td {
    width: 60%;
    color: #005532;
    background-color: #ffffff;
}

.charge_common_table td:last-of-type {
    font-weight: 500;
}

.charge_common_table_dl div + div{
    margin-top: 10px;
}
.charge_common_table_dl .after{
    color: #E73828;
}
.charge_common_table_dl dt{
    font-size: 1.5rem;
    line-height: 1.45;
}
.charge_common_table_dl dd{
    font-size: 2.0rem;
}

.charge_common > p {
    font-size: 1.6rem;
    font-feature-settings: "palt";
    letter-spacing: 0.15rem;
    margin: 15px 0 0 0;
}


.charge_btn_detail {
    text-align: right;
}

.charge_btn_detail a {
    display: inline-block;
    padding: 0 2em;
    margin: 1em 0 0 0;
    font-size: 1.6rem;
    background-image: url(../img/cmn_arr_r_g.svg);
    background-repeat: no-repeat;
    background-position: right .15em top;
    background-size: 1.2em;
}

.charge_note01_wrap{
    margin-top: 80px;
    margin-bottom: 60px;
}

.charge_note01 {
    font-size: 1.6rem;
    line-height: 1.75;
    /* font-feature-settings: "palt"; */
    /* letter-spacing: 0; */
}

/* faq /////////////////////////////////////////////////////////////////////////////////////////// */
.faq_body .cmn_maintitle {
    background-image: url(../img/faq_maintitle_img_pc.jpg);
}

.faq_list_wrap01,
.faq_list_wrap02 {
    position: relative;
}

.faq_illust01 {
    transform: translate(-50%, -50%);
    max-width: 1300px;
}

.faq_illust01 > * {
    width: 320px;
}

.faq_illust02 {
    transform: translate(-50%, -20%);
    max-width: 1300px;
}

.faq_illust02 > * {
    width: 190px;
}


.faq_list > div {
    border-width: 1px 0 0 0;
    border-style: solid;
    border-color: #005532;
}

.faq_list > div:last-of-type {
    border-width: 1px 0 1px 0;
}

.faq_list button {
    display: inline-flex;
    align-items: flex-start;
    width: 100%;
    padding: 1.2em 0 .6em;
    border: 0;
    color: #005532;
    font-size: 1.8rem;
    line-height: 1.45;
    font-weight: 700;
    text-align: left;
    background-color: transparent;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    box-shadow: none;
}


.faq_list button:focus:not(:focus-visible) {
    outline: 0;
}

.faq_list button::before {
    content: '';
    flex-shrink: 0;
    display: inline-block;
    width: 1.7em;
    height: 2.2em;
    margin: -.3em 1em 0 0;
    font: inherit;
    color: inherit;
    letter-spacing: inherit;
    background-image: url(../img/QandA_logo_Q.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

.faq_list dt div {
    width: 100%;
    /* background-color: #ffffff; */
}

.faq_list button::after {
    content: '';
    flex-shrink: 0;
    align-self: center;
    display: inline-block;
    width: 30px;
    height: 30px;
    margin: -.6em .8em 0 .8em;
    background-image: url(../img/cmn_arr_d_green.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100%;
    transition: background-image .1s;
}

.faq_list .js-isOpen button::after {
    background-image: url(../img/faq_ico_close.svg);
    transition: background-image .1s;
}

.faq_list dd {
    /* width: 100%; */
    /* max-width: 950px; */
    width: 95%;
    padding: .9em 1em;
    margin: 1em 0 1em auto;
    font-size: 1.6rem;
    line-height: 1.45;
    background-color: #ffffff;
}

.faq_list dd a {
    text-decoration: underline;
}





/* access /////////////////////////////////////////////////////////////////////////////////////////// */
.access_body .cmn_maintitle {
    background-image: url(../img/access_maintitle_img_pc.jpg);
}


.access_gmap {
	position: relative;
	padding-top: 50px;
}

.access_gmap p {
	margin: 20px auto 50px auto;
	font-size: 1.6rem;
	font-weight: bold;
}

.access_gmap > div {
	position: relative;
}

.access_gmap > div img {
	position: absolute;
	top: -40px;
	right: 0;
	width: 276px;
	z-index: 1;
}

.access_gmap_embed {
    position: relative;
    display: block;
    height: 500px;
    overflow: hidden;
}

.access_gmap_embed > iframe {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}


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

.access_guide_list::after {
	content: '';
	width: 320px;
}

.access_guide_list li {
	width: 320px;
	position: relative;
	margin-bottom: 30px;
}

.access_guide_list figure {
	margin: auto auto 15px auto;
}

.access_guide_list figcaption {
	padding: 10px 0;
	color: #FFFFFF;
	text-align: center;
	font-size: 1.8rem;
	background: #005532;
}

.access_guide_list li > div {
	position: absolute;
	display: flex;
	align-items: center;
	justify-content: center;
	top:10px;
	width: 100px;
	height: 30px;
	text-align: center;
	font-size: 1.6rem;
	padding: 5px;
	line-height: 0;
	letter-spacing: 2px;
	color: #FFFFFF;
	background: rgba(0,85,50,0.7);
	border-top-right-radius: 1em;
	border-bottom-right-radius: 1em;
}

.access_guide_list li p {
	font-size: 1.4rem;
}




/* contact /////////////////////////////////////////////////////////////////////////////////////////// */
.contact_body .cmn_maintitle {
    background-image: url(../img/contact_maintitle_img_pc.jpg);
}

.contact_tel {
    position: relative;
}

.contact_tel_illust {
    transform: translate(-50%, 10%);
    max-width: 1050px;
}

.contact_tel_illust > * {
    width: 150px;
}

.contact_tel > p {
    padding: 45px 50px;
    /* background-color: rgba(222, 208, 184, 0.2); */
    background-color: rgba(255, 255, 255, 0.5);
    /* mix-blend-mode: screen; */
    text-align: center;
}

.contact_tel > p > a {
    font-size: 3.0rem;
    font-weight: 700;
    letter-spacing: 0.15rem;
}

.contact_tel > p > span {
    display: block;
    margin: 2px 0 0 0;
    font-size: 1.8rem;
    line-height: 1.3;
}

.contact_form_inner {
    padding: 45px 10%;
    /* background-color: rgba(222, 208, 184, 0.2); */
    background-color: rgba(255, 255, 255, 0.5);
    /* mix-blend-mode: screen; */
}

.contact_form_inner > p {
    line-height: 1.6;
    letter-spacing: 0;
    letter-spacing: 0.05rem;
}

.contact_form_inner > p span {
    display: block;
    margin: .6em 0 0 0;
    font-size: 1.4rem;
    text-align: right;
}

.contact_form_inner > p small {
    padding: .3em;
    color: #E73828;
    font-size: inherit;
}

.contact_form_list {
    margin: 45px 0 0 0;
}

.contact_form_list > div {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin: 20px 0 0 0;
}

.contact_form_list dt {
    display: flex;
    justify-content: flex-end;
    align-items: flex-start;
    /* width: 24%;
    min-width: 150px;
    max-width: 190px; */
    width: 200px;
    padding: 12px 0 0 0;
    margin: 0 2% 0 0;
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: 0;
    text-align: right;
    font-feature-settings: "palt";
}

.contact_form_list dt small {
    display: inline-block;
    padding: 0 .3em;
    color: #E73828;
    font-feature-settings: "palt";
}

.contact_form_list dd {
    width: 100%;
}

.contact_form_list dd input,
.contact_form_list dd textarea {
    display: inline-block;
    width: 100%;
    padding: .2em .5em;
    border: 1px solid #005532;
    border-radius: 0;
    background-color: #FFFFFF;

    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    box-shadow: none;
}

.contact_form_list dd input {
    height: 50px;
}

.contact_form_list dd textarea {
    width: 100% !important;
    height: 250px !important;
    vertical-align: bottom;
}

.contact_form_btn {
    margin: 50px auto 0;
    text-align: center;
}

.contact_form_btn button {
    display: inline-block;
    width: 100%;
    max-width: 200px;
    height: 50px;
    line-height: 50px;
    border-radius: 2.5rem;
    color: #FFFFFF;
    font-size: 2.2rem;
    font-weight: 700;
    letter-spacing: 0.15rem;
    background-color: #005532;

    border: 0;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    box-shadow: none;
}

div#mfp_overlay {
    color: #333; /* mfp上書き */
}



/* beginners /////////////////////////////////////////////////////////////////////////////////////////// */
.begi_body .cmn_maintitle {
    background-image: url(../img/begi_maintitle_img_pc.jpg);
}


.begi_main section{
    margin-bottom: 33px;
}
.begi_main section:last-of-type{
    margin-bottom: 0px;
}

.begi_main li{
        text-indent: -1.5em;
        padding-left: 1.5em;
}




/* group /////////////////////////////////////////////////////////////////////////////////////////// */
.group_body .cmn_maintitle {
    background-image: url(../img/group_maintitle_img_pc.jpg);
}


.group_book,
.group_center {
    position: relative
}

.group_book_illust {
    transform: translate(-50%, -55%);
    max-width: 1200px;
}

.group_book_illust > * {
    width: 230px;
}

.group_center_illust {
    transform: translate(-50%, -110%);
    max-width: 1200px;
}

.group_center_illust > * {
    width: 100px;
}


.group_book_gl .slide01 {
    background-image: url(../img/group_book_gl_img01.jpg);
}

.group_book_gl .slide02 {
    background-image: url(../img/group_book_gl_img02.jpg);
}

.group_book_gl .slide03 {
    background-image: url(../img/group_book_gl_img03.jpg);
}

.group_book_gl .slide04 {
    background-image: url(../img/group_book_gl_img04.jpg);
}

.group_book_gl .slide05 {
    background-image: url(../img/group_book_gl_img05.jpg);
}


.group_shitami_explain,
.group_book_explain,
.group_center_explain {
    font-size: 2.0rem;
    letter-spacing: 0.05rem;
    line-height: 1.55;
}

.group_book_explain {
    margin: 30px 0 0 0;
}

.group_book_tentlink {
    margin-top: 90px;
}

.group_center_photolist {
    display: flex;
    margin: 15px 0 0 0;
}

.group_center_photolist li {
    width: 25%;
}

.group_center_photolist a {
    display: block;
}



/* privacy /////////////////////////////////////////////////////////////////////////////////////////// */
.privacy_body .cmn_maintitle {
    background-image: url(../img/privacy_maintitle_img_pc.jpg);
}

.privacy_date{
    text-align: right;
}

.privacy_main h2{
    margin-top: 150px;
}

.privacy_main h3{
    font-weight: 700;
    border-bottom: 1px solid #005532;
    padding-bottom: 10px;
    margin-bottom: 20px;
}

.privacy_main h4{
    font-weight: 700;
}

.privacy_main section{
    margin-bottom: 33px;
}

.privacy_main section:last-of-type{
    margin-bottom: 0px;
}

.privacy_list{
    margin-bottom: 33px;
}

.privacy_main li{
        text-indent: -2em;
        padding-left: 2em;
}



/* terms /////////////////////////////////////////////////////////////////////////////////////////// */
.terms_body .cmn_maintitle {
    background-image: url(../img/terms_maintitle_img_pc.jpg);
}

.terms_date{
    text-align: right;
    margin-bottom: 33px;
}

.terms_main h2{
    margin-top: 150px;
}

.terms_main h3{
    font-weight: 700;
}

.terms_main section{
    margin-bottom: 33px;
}

.terms_main section:last-of-type{
    margin-bottom: 0px;
}

.terms_main li{
        text-indent: -2em;
        padding-left: 2em;
}

.terms_main li a {
    text-decoration: underline;
}

.terms_main ul>ul{
    padding-left: 2em;
}