.font-zen { font-family: "Zen Kaku Gothic New", sans-serif; }

.font-en { font-family: "Montserrat", sans-serif; }

.gg-in { width: 100%; max-width: 1200px; margin: 0 auto; }

.guidegroup-top { display: flex; align-items: center; margin-top: 20px; margin-bottom: 10px; }

.guidegroup-money { padding: 2px 1em; background-color: #17517D; font-size: 1.4rem; text-align: center; color: #fff; border-radius: 2em; }

.guidegroup-search { margin-bottom: 35px; }
.guidegroup-search .search-con { display: flex; align-items: center; justify-content: space-between; }
@media screen and (max-width: 750px) { .guidegroup-search .search-con { display: block; } }
.guidegroup-search .search-con dl { display: flex; align-items: flex-end; }
@media screen and (max-width: 750px) { .guidegroup-search .search-con dl { margin-bottom: 20px; } }
.guidegroup-search .search-con dl dt { width: 5em; padding-bottom: 3px; font-size: 1.4rem; }
.guidegroup-search .search-con dl dd { flex: 1; display: flex; align-items: flex-end; }
.guidegroup-search .search-con dl dd span { display: inline-block; margin-right: 5px; font-size: 4.2rem; font-weight: 700; color: #F15D4E; line-height: 1; }
.guidegroup-search .search-con dl dd p { padding-bottom: 2px; font-size: 1.7rem; font-weight: 700; }
.guidegroup-search .search-con .search-r { flex: 1; display: flex; align-items: center; justify-content: flex-end; }
.guidegroup-search .search-con .search-r .search-rbtn { display: flex; align-items: center; justify-content: center; width: 150px; height: 40px; margin-right: 10px; padding: 5px; border-radius: 0.5em; background-color: #17517D; text-align: center; text-decoration: none; color: #fff; line-height: 1; cursor: pointer; }
.guidegroup-search .search-con .search-r .search-rbtn._define { background-image: url("../img/common/ico_define.svg"); background-repeat: no-repeat; background-position: right 10px center; background-size: 24px auto; }
.guidegroup-search .search-con .search-r ul { display: flex; }
.guidegroup-search .search-con .search-r ul li { width: 40px; cursor: pointer; }
.guidegroup-search .search-con .search-r ul li.active { display: none; }

.guidegroup-terms { padding: 35px 0 40px; background-color: #F15D4E; }
.guidegroup-terms .terms-con { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; margin-bottom: 20px; }
@media screen and (max-width: 980px) { .guidegroup-terms .terms-con { display: block; } }
.guidegroup-terms .terms-con dl { flex: 1; display: flex; align-items: center; }
@media screen and (max-width: 980px) { .guidegroup-terms .terms-con dl { margin-bottom: 1em; } }
@media screen and (max-width: 750px) { .guidegroup-terms .terms-con dl { display: block; } }
.guidegroup-terms .terms-con dl dt { width: 11em; font-weight: 700; color: #fff; }
@media screen and (max-width: 750px) { .guidegroup-terms .terms-con dl dt { width: 100%; margin-bottom: 10px; } }
.guidegroup-terms .terms-con dl dd { flex: 1; display: flex; align-items: center; flex-wrap: wrap; }
.guidegroup-terms .terms-con dl dd p { display: flex; align-items: center; justify-content: center; margin: 5px 1em 5px 0; padding: 5px 1em; background-color: #fff; border-radius: 2em; }
@media screen and (max-width: 750px) { .guidegroup-terms .terms-con dl dd p { margin-bottom: 1em; } }
.guidegroup-terms .terms-con dl dd p .ico { margin-left: 0.5em; cursor: pointer; }
.guidegroup-terms .terms-con .terms-delete { display: flex; align-items: center; justify-content: center; width: 10em; padding: 5px 1em; background-color: #212121; color: #fff; border-radius: 2em; cursor: pointer; }
@media screen and (max-width: 980px) { .guidegroup-terms .terms-con .terms-delete { margin: 0 0 0 auto; } }
.guidegroup-terms .terms-con .terms-delete .ico { margin-left: 0.5em; }
.guidegroup-terms .search-btn { margin: 0 auto; border-radius: 2em; }

.guidegroup-list { padding: 65px 0; }
.guidegroup-list ul { margin-bottom: 60px; }
.guidegroup-list ul._beside { display: flex; flex-wrap: wrap; }
@media screen and (max-width: 750px) { .guidegroup-list ul._beside { justify-content: space-between; } }
.guidegroup-list ul._beside li { width: 32.1666666667%; margin-right: 1.6666666667%; margin-bottom: 2.5%; }
@media screen and (max-width: 750px) { .guidegroup-list ul._beside li { width: 48%; margin-right: 0; } }
.guidegroup-list ul._beside li:nth-child(3n) { margin-right: 0; }
.guidegroup-list ul._beside li a { height: 100%; padding: 20px; }
@media screen and (max-width: 750px) { .guidegroup-list ul._beside li .guidegroup-area { width: 5em; font-size: 1.2rem; } }
@media screen and (max-width: 750px) { .guidegroup-list ul._beside li .guidegroup-money { font-size: 1.2rem; } }
.guidegroup-list ul._beside li .list-location, .guidegroup-list ul._beside li .list-capacity, .guidegroup-list ul._beside li .list-calendar { display: none; }
.guidegroup-list ul._beside li .list-place dt { display: none; }
.guidegroup-list ul._beside li .list-place dd { padding-left: 30px; background: url("../img/common/ico_place.svg") no-repeat left top; background-size: 16px auto; font-size: 1.4rem; }
.guidegroup-list ul._vertical li { margin-bottom: 30px; }
.guidegroup-list ul._vertical li:last-child { margin-bottom: 0; }
.guidegroup-list ul._vertical li a { display: flex; padding: 30px 20px; }
@media screen and (max-width: 750px) { .guidegroup-list ul._vertical li a { display: block; } }
.guidegroup-list ul._vertical li a figure { width: 29.3103448276%; margin-right: 2.5862068966%; }
@media screen and (max-width: 750px) { .guidegroup-list ul._vertical li a figure { width: 100%; margin: 0 auto 30px; } }
.guidegroup-list ul._vertical li a .list-con { flex: 1; }
.guidegroup-list ul._vertical li a .list-con dl { display: flex; margin-bottom: 20px; }
.guidegroup-list ul._vertical li a .list-con dl:last-child { margin-bottom: 0; }
.guidegroup-list ul._vertical li a .list-con dl.list-location dt span { background: url("../img/common/ico_location.svg") no-repeat left top 0.2em; background-size: 16px auto; }
.guidegroup-list ul._vertical li a .list-con dl.list-place dt span { background: url("../img/common/ico_place.svg") no-repeat left top 0.2em; background-size: 16px auto; }
.guidegroup-list ul._vertical li a .list-con dl.list-capacity dt span { background: url("../img/common/ico_capacity.svg") no-repeat left top 0.2em; background-size: 16px auto; }
.guidegroup-list ul._vertical li a .list-con dl.list-calendar dt span { background: url("../img/common/ico_calendar.svg") no-repeat left top 0.2em; background-size: 16px auto; }
.guidegroup-list ul._vertical li a .list-con dl dt { width: 8em; font-size: 1.4rem; font-weight: 700; }
.guidegroup-list ul._vertical li a .list-con dl dt span { display: inline-block; padding-left: 25px; }
.guidegroup-list ul._vertical li a .list-con dl dd { flex: 1; font-size: 1.4rem; }
.guidegroup-list ul._col2 { display: flex; flex-wrap: wrap; justify-content: space-between; }
@media screen and (max-width: 750px) { .guidegroup-list ul._col2 { display: block; } }
.guidegroup-list ul._col2 li { width: 48%; }
@media screen and (max-width: 750px) { .guidegroup-list ul._col2 li { width: 100%; } }
.guidegroup-list ul._col2 li a { height: 100%; }
.guidegroup-list ul._col2 li a .list-con dl { margin-bottom: 10px; }
.guidegroup-list ul._col2 li a .guidegroup-top { margin-top: 0; }
.guidegroup-list ul li a { display: block; text-decoration: none; background-color: #fff; border-radius: 1em; transition: all .6s; }
.guidegroup-list ul li a:hover { opacity: 0.7; }
.guidegroup-list ul li .list-ttl { margin-bottom: 10px; font-size: 1.8rem; font-weight: 700; }
.guidegroup-list ul li figure { border-radius: 1em; overflow: hidden; }
@media screen and (max-width: 750px) { .guidegroup-list ul li figure { border-radius: 0.75em; } }

.detail-top { margin-bottom: 140px; }
.detail-top .detail-top-main { display: flex; align-items: flex-end; justify-content: space-between; margin-bottom: 30px; padding-bottom: 20px; border-bottom: 1px solid #D6CCB7; }
@media screen and (max-width: 750px) { .detail-top .detail-top-main { display: block; } }
.detail-top .detail-top-main .detail-top-main-ttl { flex: 1; }
.detail-top .detail-top-main .detail-top-main-ttl .detail-ttl { position: relative; margin-bottom: 5px; padding-left: 25px; font-size: 3.2rem; font-weight: 700; }
@media screen and (max-width: 750px) { .detail-top .detail-top-main .detail-top-main-ttl .detail-ttl { font-size: 2.6rem; } }
.detail-top .detail-top-main .detail-top-main-ttl .detail-ttl::before { content: ''; position: absolute; top: 0; left: 0; background: url("../img/common/bg_ttl.svg"); width: 8px; height: 32px; margin-top: 0.4em; }
.detail-top .detail-top-main .detail-top-main-ttl .detail-ttl-kana { font-size: 1.4rem; color: #666666; }
@media screen and (max-width: 750px) { .detail-top .detail-top-main .guidegroup-top { justify-content: flex-end; } }
.detail-top .detail-top-main .guidegroup-area { margin-right: 0; margin-left: 0.5em; color: #fff; }
.detail-top .detail-top-txt { margin-bottom: 30px; }
.detail-top .detail-top-info { display: flex; justify-content: space-between; }
@media screen and (max-width: 750px) { .detail-top .detail-top-info { display: block; } }
.detail-top .detail-top-info figure { width: 40%; margin-right: 4%; }
@media screen and (max-width: 750px) { .detail-top .detail-top-info figure { width: 100%; margin: 0 auto 30px; } }
.detail-top .detail-top-info figure .cmn-fig { border-radius: 15px; overflow: hidden; }
.detail-top .detail-top-info table { flex: 1; width: 100%; border-top: 1px solid #D6CCB7; }
.detail-top .detail-top-info table tr { border-bottom: 1px solid #D6CCB7; }
.detail-top .detail-top-info table tr th { width: 10em; padding: 10px 0; text-align: left; font-weight: 700; }
@media screen and (max-width: 750px) { .detail-top .detail-top-info table tr th { display: block; width: 100%; padding-bottom: 0; } }
.detail-top .detail-top-info table tr td { padding: 10px 0; }
@media screen and (max-width: 750px) { .detail-top .detail-top-info table tr td { display: block; width: 100%; } }

.detail-course { margin-bottom: 100px; }
.detail-course .course-box { margin-bottom: 40px; padding: 40px 50px; border: 3px solid #F15D4E; background-color: #FFFAF5; border-radius: 1.5em; }
@media screen and (max-width: 750px) { .detail-course .course-box { padding: 30px; } }
.detail-course .course-box:last-child { margin-bottom: 0; }
.detail-course .course-box .course-box-ttl { display: flex; align-items: center; margin-bottom: 30px; }
@media screen and (max-width: 750px) { .detail-course .course-box .course-box-ttl { display: block; } }
.detail-course .course-box .course-box-ttl .course-box-num { position: relative; width: 70px; margin-right: 20px; background-color: #F15D4E; }
@media screen and (max-width: 750px) { .detail-course .course-box .course-box-ttl .course-box-num { width: 50px; margin: 0 auto 20px; } }
.detail-course .course-box .course-box-ttl .course-box-num::after { content: ''; display: block; padding-top: 100%; }
.detail-course .course-box .course-box-ttl .course-box-num p { position: absolute; top: 0; left: 0; width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; font-size: 4.0rem; color: #fff; font-weight: 500; text-align: center; line-height: 1; }
@media screen and (max-width: 750px) { .detail-course .course-box .course-box-ttl .course-box-num p { font-size: 3.0rem; } }
.detail-course .course-box .course-box-ttl .course-box-ttl-main { flex: 1; }
.detail-course .course-box .course-box-ttl .course-box-ttl-main .course-box-ttl-h { font-size: 2.4rem; font-weight: 700; }
@media screen and (max-width: 750px) { .detail-course .course-box .course-box-ttl .course-box-ttl-main .course-box-ttl-h { font-size: 2.2rem; } }
.detail-course .course-box .course-box-ttl .course-box-ttl-main p { margin-top: 5px; color: #F15D4E; }
.detail-course .course-box .course-box-main { display: flex; justify-content: space-between; flex-direction: row-reverse; }
@media screen and (max-width: 750px) { .detail-course .course-box .course-box-main { display: block; } }
.detail-course .course-box .course-box-main .course-box-photo { width: 26.6666666667%; margin-left: 2.9166666667%; overflow: hidden; }
@media screen and (max-width: 750px) { .detail-course .course-box .course-box-main .course-box-photo { width: 100%; margin: 0 auto 30px; } }
.detail-course .course-box .course-box-main .course-box-photo .cmn-fig { border-radius: 15px; overflow: hidden; }
.detail-course .course-box .course-box-main .course-box-photo .caption { margin-top: 5px; font-size: 1.4rem; }
.detail-course .course-box .course-box-main .course-box-photo .swiper-tool { display: flex; align-items: center; justify-content: center; margin-top: 10px; }
.detail-course .course-box .course-box-main .course-box-photo .swiper-tool .slide-btn { width: 36px; cursor: pointer; }
.detail-course .course-box .course-box-main .course-box-photo .swiper-tool .swiper-pagination { position: static; display: flex; justify-content: center; align-items: center; width: 135px; font-size: 1.8rem; font-weight: 700; }
.detail-course .course-box .course-box-main .course-box-photo .swiper-tool .swiper-pagination .swiper-pagination-per { display: block; width: 35px; height: 1px; background-color: #212121; transform: rotate(-45deg); }
.detail-course .course-box .course-box-main .course-box-photo .swiper-tool .swiper-pagination-current { font-size: 2.6rem; color: #F15D4E; }
.detail-course .course-box .course-box-main .course-box-main-l { flex: 1; }
.detail-course .course-box .course-box-main .course-box-main-l dl { margin-bottom: 25px; }
.detail-course .course-box .course-box-main .course-box-main-l dl:last-child { margin-bottom: 0; }
.detail-course .course-box .course-box-main .course-box-main-l dl dt { margin-bottom: 5px; font-size: 1.8rem; font-weight: 700; }

.detail-info { margin-bottom: 100px; }
.detail-info table { width: 100%; border-top: 1px solid #D6CCB7; }
.detail-info table tr { border-bottom: 1px solid #D6CCB7; }
.detail-info table tr th { width: 15em; padding: 20px 0; text-align: left; font-weight: 700; }
@media screen and (max-width: 750px) { .detail-info table tr th { display: block; width: 100%; padding: 10px 0 0; } }
.detail-info table tr td { padding: 20px 0; }
@media screen and (max-width: 750px) { .detail-info table tr td { display: block; width: 100%; padding: 10px 0; } }
.detail-info table tr td a { color: #F15D4E; }
.detail-info table tr td ul li { margin-bottom: 0.5em; }
.detail-info table tr td ul li:last-child { margin-bottom: 0; }
.detail-info table tr td ul li a { text-decoration: none; }

.detail-file { margin-top: 60px; text-align: center; }
.detail-file .btn { display: inline-block; padding-left: 2em; padding-right: 2em; }

.detail-access .access-box { display: flex; justify-content: space-between; flex-direction: row-reverse; margin-bottom: 20px; padding: 65px 50px; border: 6px solid #DEDCD7; }
@media screen and (max-width: 750px) { .detail-access .access-box { display: block; padding: 30px; } }
.detail-access .access-box .access-box-main { width: 42%; margin-right: 3%; }
@media screen and (max-width: 750px) { .detail-access .access-box .access-box-main { width: 100%; margin-left: 0; } }
.detail-access .access-box .access-box-main dl { margin-bottom: 20px; }
.detail-access .access-box .access-box-main dl:last-child { margin-bottom: 0; }
.detail-access .access-box .access-box-main dl dt { display: flex; align-items: center; margin-bottom: 5px; }
.detail-access .access-box .access-box-main dl dt .ico { width: 1.5em; margin-right: 0.5em; }
.detail-access .access-box .access-box-main dl dt span { font-size: 1.8rem; font-weight: 700; }
.detail-access .access-box .access-box-main dl dd { line-height: 2; }
.detail-access .access-box .access-box-map { flex: 1; border: 1px solid #707070; overflow: hidden; }
@media screen and (max-width: 750px) { .detail-access .access-box .access-box-map { margin-bottom: 30px; } }
.detail-access .access-box .access-box-map .access-box-gmap { position: relative; padding-bottom: 60%; }
@media screen and (max-width: 750px) { .detail-access .access-box .access-box-map .access-box-gmap { padding-bottom: 65.2173913043%; } }
.detail-access .access-box .access-box-map .access-box-gmap._l { padding-bottom: 33%; }
@media screen and (max-width: 750px) { .detail-access .access-box .access-box-map .access-box-gmap._l { padding-bottom: 65.2173913043%; } }
.detail-access .access-box .access-box-map iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

/*# sourceMappingURL=guidegroup.css.map */
