@charset "UTF-8";
/*スマホ用
----------------------------------*/
/*@media only screen and (max-width: 1035px) {
  .FEATURE-box .text {width: 100%;}
.FEATURE-box .right {width: 100%;}
.FEATURE-box .left {width: 100%;}  
}*/



@media only screen and (max-width: 1240px) {
    .aboutshokawa__list {
        gap: 24px;
    }
}


@media only screen and (max-width: 1050px) {
    .main__content {
        min-width: 90%;
    }
}


@media only screen and (max-width: 1045px) {
    #toparea06 .flexarea li {
        width: 22%;
    }
}

@media only screen and (max-width: 1105px) {
    .aboutshokawa__list {
        gap: 20px;
    }
}


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

header .head {background: #fff;}
header .read {font-size: 20px;}
header .contents {display: none;}
header .sp-logo-box {display: block;}
header .sp-logo-box h1 {width: 100%; text-align: center; padding: 40px 0; background: #2f373a;}
header .slide-area {padding: 0; background-size: 310%; height: 100vh; animation: none;}
header .slide-area .read {top: 175px;}
.scroll {bottom: 15%;}
.scroll img {width:35px;}
.contents ul.NEWS-area li span {margin-bottom: 15px; display: block;}
.contents {width: 90%; margin:0 5%;}
br.sp-br {display: block;}
.sp-zone {display: block;}
.pc-zone {display: none;}

header h1.sp-index-logo {width: 100%; position: absolute; float: none; z-index: 999; text-align: center; padding: 100px 0;}
header .sp-navi {display: block;}






.season__summer .Btn-navi {
    background: #c8dd69 !important;
    border: 3px solid #fff;
}


.basic__menu__sp {
    display: none;
}






/*btn-navi*/
.Btn-navi {padding: 10px 5px; right: 10px; bottom: 60px; position: fixed; background: #1685b7; width: 40px; display:block; line-height:1em; z-index:9999; transition: .3s;}
.Btn-navi .name {font-weight: bold; position: relative; bottom: -25px; vertical-align:middle; text-align:center; color:#ffffff; font-size:7.3px; line-height: 1em; }
.Btn-navi .menuBtn {display: inline-block; position: relative; width: 40px; height:30px;}
.menu-icon {display: block; position: absolute; top: 20%; left: 50%; width: 24px; height: 2px; margin: -1px 0 0 -12px; background: #ffffff; transition: .2s;}
.menu-icon:before,.menu-icon:after {display: block; content: ""; position: absolute; top: 50%; left: 0; width: 24px; height: 2px; background: #ffffff; transition: .3s;}
.menu-icon:before {margin-top: -8px;}
.menu-icon:after {margin-top: 6px;}
.menuBtn:hover .menu-icon:before {margin-top: -10px;}
.menuBtn:hover .menu-icon:after {margin-top: 8px;}
.Btn-navi.close .name { color:#ffffff; overflow: hidden; left: 0px; width: 100%; font-size: 7.3px; line-height: 10px; text-align: center; font-weight: bold; height: 8px;}
.Btn-navi.close .name:before {display: block; content: 'CLOSE'; overflow: hidden; margin-right: 20px; }
.Btn-navi.close .menu-icon:before,.Btn-navi.close .menu-icon:after {background: #ffffff;}
.Btn-navi.close .menuBtn .menu-icon {background: transparent;}
.Btn-navi.close .menuBtn .menu-icon:before, .Btn-navi.close .menuBtn .menu-icon:after {margin-top: 0;}
.Btn-navi.close .menuBtn .menu-icon:before { -webkit-transform: rotate(-45deg); transform: rotate(-45deg);}
.Btn-navi.close .menuBtn .menu-icon:after { -webkit-transform: rotate(-135deg); transform: rotate(-135deg);}
#mainhead .Btn-navi{ position: absolute; left:5px; top:5px; }
#mainhead .Btn-navi.close { opacity: 0; display: none;}
#fixBtn-navi {position: fixed;  width: auto; bottom: 20px; right:15px;}
#fixBtn-navi.Btn-navi .menuBtn { display: block; background-color:#333; border-radius: 10px; padding:10px 0px 0px;}
#fixBtn-navi.Btn-navi .menuBtn .menu-icon {margin-top: -6px;}
#fixBtn-navi .menu-icon,#fixBtn-navi .menu-icon:before,#fixBtn-navi .menu-icon:after {background-color: #ffffff;}
#fixBtn-navi .menu-icon:before{margin-top: -7px;}
#fixBtn-navi .menu-icon:after {margin-top: 5px;}
#fixBtn-navi.close .menu-icon:before,#fixBtn-navi.close .menu-icon:after {margin-top: 0;}
#fixBtn-navi.close .menu-icon {background: transparent;}
#fixBtn-navi .name { color: #ffffff; display: block; position: relative; left:0px; bottom: -17px;}
#fixBtn-navi .name:before { display: inline; content: 'MENU';}
#fixBtn-navi.close .name:before { display: inline; content: 'CLOSE';}
#fixBtn-navi.close .name { color: #ffffff;}
#cavor.Btn-navi {width: 100%; height: 100%; position: fixed; top:0px; left: -100%; transition:0s;  z-index: 999;}
#cavor.Btn-navi .menuBtn {display:block; width: 100%; height: 100%; background:rgba(255,255,255,0.6); }
#cavor.close { left: 0px; }
.navi {
    background-color: #fff; /*メニュー背景色*/
    box-sizing: border-box;
    height: 100%;
    padding: 10px 5%; /*メニュー内部上下左右余白*/
    position: fixed;
    left: -80%; /*メニュー横幅①と合わせる*/
    top: 0;
    transition: .2s; /*0.3s は変化するのにかかる時間*/
    width: 80%; /*メニュー横幅①*/
    z-index: 1000;
}
.Btn-navi:hover + .navi-background {
    opacity: 0.5; /*黒背景部分透過度*/
    z-index: 999;
}
/*.navi-background {width: 100%; height: 100%; position: fixed; top: 0px; left: 0%; transition: 0s; z-index: 999;}*/
.navi-background a.background-btn{display: block; width: 100%; height: 100%; background: rgba(255,255,255,0.6);}
.navi.open { left: 0; }
.navi-background {z-index: 999; display: none; position: fixed; width: 100%; height: 100%; top: 0; left:0; }
.navi-background.open {display: block; background: rgba(255,255,255,0.6); }
.navi.open {padding-bottom: 10px; padding-top: 30px; text-align: center;}
.navi.open ul li {font-size: 14px; margin-bottom: 25px;}

.Btn-navi_first {padding: 5px; background: #816a29; width: 40px; display:none; line-height:1em; z-index:9999; transition: .3s;}
.Btn-navi_first .name { vertical-align:middle; text-align:center; color:#ffffff; font-size:7.3px; line-height: 1em; }
.Btn-navi_first .menuBtn {display: inline-block; position: relative; width: 40px; height:30px;}
/*footer .navi ul {display: block; padding: 30px 0px;}*/
footer .navi ul {
    font-size: 12px;
    height: 280px;
    overflow: auto;
    /* background-color: #FFF; */
    padding: 10px 10px;
    margin-bottom: 15px;
    /* border: 1px solid #CCC; */
    display: block;
    padding: 30px 0px;
}






html {
    font-size: 55%;
}

header .basic__menu .basic__menu__list.liststyle01 {
    justify-content: space-between;
}
header .tablet__flex .basic__menu__list.liststyle02 {
    justify-content: space-between;
}
header .basic__menu .basic__menu__list.liststyle01 .basic__menu__list-item.tablet__block {
    display: none;
}
header .basic__menu .basic__menu__list.liststyle01 .basic__menu__list-item.header__none {
    display: block;
}
.basic__menu .basic__menu__list .basic__menu__list-item a span.icon {
    width: 10%;
    margin-right: 2%;
}
header .tablet__flex .basic__menu__list.liststyle01 .basic__menu__list-item.type06 span.icon {
    width: 9%;
}
.basic__menu .basic__menu__list .basic__menu__list-item.course .icon {
    width: 8%;
}


header .navi.open {
    overflow: scroll;
}
header .navi.open .tablet__flex {
    display: block;
}
header .navi.open .tablet__flex .tablet__block {
    width: 100%;
}
header .navi.open .tablet__flex .tablet__block a {
        font-size: 2.1rem;
        margin-bottom: 5%;
        display: block;
        font-weight: bold;
}
header .navi.open .tablet__flex .basic__menu__wrap {
    width: 100%;
    border: none;
}
header .navi.open .basic__menu .basic__menu__list.liststyle01 {
    display: block;
}
header .navi.open .basic__menu .basic__menu__list.liststyle01 .basic__menu__list-item {
    width: 100%;
    border-right: none;
    border-bottom: 1px solid #aaa;
    margin-bottom: 3%;
}
header .navi.open .basic__menu .basic__menu__list .basic__menu__list-item a {
    font-size: 1.8rem;
    padding-bottom: 1.5%;
}
header .navi.open .basic__menu .basic__menu__list .basic__menu__list-item a span.icon,
header .navi.open .basic__menu .basic__menu__list .basic__menu__list-item a span img {
    width: 20px;
}
header .navi.open .tablet__flex .basic__menu__list.liststyle02 {
    display: block;
}
header .navi.open .basic__menu .basic__menu__list.liststyle02 .basic__menu__list-item {
    width: 100%;
    border-right: none;
    border-bottom: 1px solid #aaa;
    margin-bottom: 3%;
}
header .navi.open .basic__menu .basic__menu__list.liststyle02 .basic__menu__list-item a {
    font-size: 1.8rem;
    padding-bottom: 1.5%;
}






.main__content .btn-detail {
    width: 30%;
    min-width: 180px;
}

.aboutshokawa__list {
    justify-content: space-between;
}
.aboutshokawa__list .aboutshokawa__list__item {
    width: calc(100% / 3.4);
}
.aboutshokawa__list .aboutshokawa__list__item .icon {
    width: 25%;
}
.aboutshokawa__list .aboutshokawa__list__item a img {
    margin-bottom: 4%;
}



.main__content .season__icon {
    width: 30%;
}


.main__content .season__icon.summer__icon01 {
    top: 2%;
    left: 90%;
    width: 15%;
}
.main__content .season__icon.summer__icon02 {
    top: auto;
    left: 0;
    bottom: -15%;
    width: 20%;
}
.main__content .season__icon.summer__icon03 {
top: -26%;
    left: 80%;
    width: 22%;
}
.main__content .season__icon.summer__icon04 {
    top: -15%;
    left: 50%;
    width: 30%;
    display: none;
}
.main__content .season__icon.summer__icon10 {
    top: -4%;
    left: 15%;
    width: 28%;
}
.main__content .season__icon.summer__icon11 {
    top: -2%;
    left: 83%;
    width: 28%;
}
.main__content .season__icon.summer__icon12 {
    bottom: -80px;
    left: 0%;
}
.main__content .season__icon.summer__icon13 {
    bottom: -30%;
}
.main__content .season__icon.summer__icon014 {
    top: -35%;
    right: -5%;
}

.topcontentsection#toparea02 .btn-detail {
    margin: auto;
    width: 60%;
    max-width: 350px;
    display: block;
}
.topcontentsection#toparea03 .main__content .aboutshokawa__list {
    width: 95%;
}
.topcontentsection#toparea04 .main__content {
    width: 95%;
}
.topcontentsection#toparea03 .aboutshokawa__list .aboutshokawa__list__item {
    width: 90%;
    margin: auto auto 10% auto;
}
.topcontentsection#toparea03 .aboutshokawa__list__item a p .infotext {
    font-size: 1.8rem;
}
.topcontentsection#toparea07 .flexcontent__photo {
    padding-top: 75.5%;
}
.topcontentsection#topslide .message__text .message__text__list {
    font-size: 1.8rem;
}
.topcontentsection#topslide .slick-active .message__text .message__text__list.sec {
    margin-left: 10%;
}


footer .footerer__content h1 {
    width: 30%;
}
footer .footerer__content .menuzone .tablet__block {
    display: none;
}
footer .footerer__content .menuzone .basic__menu .basic__menu__list {
    flex-wrap: wrap;
}
.basic__menu .basic__menu__list.liststyle01 .basic__menu__list-item {
    width: calc(100% / 7);
    margin-bottom: 10px;
}
footer .footerer__content .menuzone .basic__menu .basic__menu__list.liststyle02 .basic__menu__list-item {
    width: calc(100% / 3.1);
}






.contentlist {
    display: block;
}
#course-pagezone .contentlist__item {
    width: 90%;
    margin: auto;
}

.contentlist .contentlist__item {
    width: 100%;
    text-align: center;
    margin: auto auto 10% auto;
}

.topcontentsection#toparea04 .main__content .contentlist {

}



#about-pagezone .page__title__content {
background-size: cover;
}
.content.about__content .mainphoto {
    margin-bottom: 5%;
}
.content.about__content .photoarea.pc-zone {
    display: none;
}



@media only screen and (max-width: 920px) {
    #aboutworks-pagezone .aboutshokawa__list .aboutshokawa__list__item {
        width: 48%;
    }
}


}



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


.Btn-navi {
    right: 5%;
    bottom: auto;
    top: 3%;
}


.topcontentsection.readarea {
    padding: 15% 0 40% 0;
}

.topcontentsection.readarea .content {
    width: 100%;
}

.season__summer .news-list .news-item a {
    display: block;
}
.news-list .news-item .news-date {
    width: 100%;
    max-width: 100%;
    font-weight: bold;
    color: #2e2e2e;
    border-bottom: none;
    padding: 0% 0;
    display: block;
    text-align: left;
}
.news-list .news-item .news-title {
    width: 100%;
    max-width: 100%;
    color: #2e2e2e;
    border-bottom: 1px solid #676664;
    padding: 1% 0 2%;
    display: block;
    margin-bottom: 5%;
}
.aboutshokawa__list .aboutshokawa__list__item {
    width: 100%;
            margin-bottom: 10%;
}
.aboutshokawa__list .aboutshokawa__list__item a img {
    margin-bottom: 5%;
}
.topcontentsection#toparea03 .main__content .aboutshokawa__list {
    margin-bottom: 0;
}
.topcontentsection {
    padding: 15% 0 40% 0;
}
.topcontentsection#toparea03 {
    padding: 15% 0 40% 0;
}
.news-section .news-circle .title {
    font-size: 2.5rem;
}

.topcontentsection#toparea04 {
    padding-bottom: 40%;
}
.topcontentsection#toparea04 .main__content .contentlist {
    padding-top: 10%;
}
.topcontentsection#toparea04 .main__content .contentlist P {
    font-size: 1.8rem;
}

.main__content .btn-detail {
    margin: auto !important;
}

.main__content .season__icon.summer__icon06 {
    top: -7.5%;
    left: 15%;
    width: 25%;
}
.main__content .season__icon.summer__icon07 {
    top: -8.5%;
    right: auto;
    left: 47.5%;
    width: 25%;
}
.main__content .season__icon.summer__icon10 {
        top: -25%;
        left: 85%;
        width: 24%;
}

.main__content .season__icon.summer__icon10 {
    top: -6%;
    left: 17%;
    width: 24%;
}
.main__content .season__icon.summer__icon11 {
    top: -6%;
    left: 80%;
    width: 24%;
}

.main__content .season__icon.summer__icon014 {
    top: -22%;
}

.contentlist .contentlist__item {
    width: 90%;
    margin: auto auto 15% auto;
}

#course-pagezone .contentlist__item {
    margin: auto auto 15% auto;
}

.flexcontent .flexcontent__photo {
    width: 100%;
    max-width: 100%;
    margin-bottom: 5%;
}
.flexcontent .flexcontent__text {
    width: 100%;
    max-width: 100%;
}



.basic__menu__sp .basic__menu__list .basic__menu__list-item.top {
    padding: 0px 0;
}
header .tablet__flex {
    display: none;
}
header .header__content.headinfo {
    display: block;
}
header .header__content.headinfo h1 {
    width: 65%;
    max-width: 215px;
}
header .header__content.headinfo .info {
    text-align: center;
    margin-right: 0;
    margin-top: 0;
    font-size: 1.8rem;
    line-height: 1em;
    display: flex;
    justify-content: space-around;
    margin-top: 5%;
}
header .header__content.headinfo .info a {
    font-size: 1.8rem;
}
.basic__menu__sp .basic__menu__list .basic__menu__list-item a {
    width: 100%;
    padding: 17px 0;
    line-height: 1.5em;
    display: flex;
    text-align: left;
    justify-content: center;
    font-size: 1.6rem;
    align-items: center;
}
.basic__menu__sp .basic__menu__list .icon {
    width: 15px;
    margin: 0 2.5% 0% 0;
    display: flex;
    align-items: center;
}



footer .footerer__content {
    padding: 5% 0 5%;
    display: block;
    text-align: center;
}
footer .footerer__content h1 {
    width: 55%;
    max-width: 100%;
    margin: auto auto 5% auto;
}

footer .footerer__content .menuzone .basic__menu__wrap {
    display: none;
}
footer .footerer__content .menuzone .info {
    margin-left: 0;
}










#pagecontent {
    min-width: 100%;
    width: 100%;
}
#pagecontent .content__wrap {
    display: block;
    width: 75%;
}

#news-pagezone .content__wrap {
    padding-top: 30px;
}

#pagecontent .content__wrap .sidemenu {
    display: none;
}
#pagecontent .content__wrap .content {
    width: 100%;
}
#aboutworks-pagezone .aboutshokawa__list {
    display: block;
}
#aboutworks-pagezone .aboutshokawa__list .aboutshokawa__list__item {
    width: 100%;
}


#aboutworks-pagezone .single {
    margin-top: 0;
}
#aboutworks-pagezone .single .content {
    display: block;
}
#aboutworks-pagezone .single .slidearea__wrap {
    width: 100%;
    max-width: 100%;
}
#aboutworks-pagezone .single .information__areea {
    width: 100%;
    max-width: 100%;
    margin-top: 10%;
}






#news-pagezone .single h2 {
    margin-bottom: 5%;
}
#news-pagezone .single .content .newssingle {
    padding: 2% 1%;
}




.basic__menu__sp {
    margin-bottom: 60px;
    display: block;
}
#index-pagezone .basic__menu__sp {
    margin-bottom: 0px;
}
.basic__menu__sp .comingsoon {
    pointer-events: none;
}
.page__title__content h1 {
    width: 100%;
}
.page__title__content {
    margin-bottom: 0;
}



#village-pagezone .page__title__content {
    background-size: cover;
}

header .navi.open .basic__menu .basic__menu__list.liststyle01 .basic__menu__list-item.type05 .icon,
header .navi.open .basic__menu .basic__menu__list.liststyle01 .basic__menu__list-item.course .icon {
    width: 15px;
}


#live-pagezone .contentlist__item {
    width: 100%;
}



}


@media only screen and (max-width: 610px) {
    #toparea06 .flexarea li {
        width: 30%;
    }
}

@media only screen and (max-width: 490px) {
    #toparea06 .flexarea li {
        width: 47%;
    }
}


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

    #toparea06 .flexarea li {
        width: 46%;
    }
    
}

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

    .topcontentsection#toparea03 {
        padding: 22% 0 40% 0;
    }
    
}

@media only screen and (max-width: 385px) {
    .topcontentsection#toparea02 .btn-detail {
        width: 65%;
    }
}


@media only screen and (max-width: 305px) {
        #toparea06 .flexarea li {
            width: 90%;
            margin: 0 auto;
        }
}







