@import url("default.css");

* {-webkit-text-size-adjust:100%;}
a:link {text-decoration:none; color:#323232;}
a:visited{text-decoration:none; color:#323232;}
a:hover{text-decoration:none; color:#323232;}
a:active{text-decoration:none; color:#323232;}

.grecaptcha-badge { opacity: 0; }
.full-width { margin-left: calc(-50vw + 50%); margin-right: calc(-50vw + 50%); }
.allWrapper { overflow: hidden; }
.container-fluid { max-width: 1110px; }
.container-fluid .container-fluid { padding-left: 0; padding-right: 0; }

body { min-width: 1150px; font-size: 16px; line-height: 1.8; color: #323232; background-color: #fff; font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif; font-weight: 500; }
header { position: relative; text-align: center; height: 110px; display: flex; align-items: center; justify-content: center; }
header .logo { position: absolute; left: 100px; top: 0; height: 100%; }
header .logo img { height: 100%; }
header .title { font-size: 36px; font-weight: bold!important; letter-spacing: .12em; }
footer { padding: 75px 0 30px; text-align: center; }
footer .copyright { font-size: 12px; letter-spacing: .04em; }
hr { border-top: 1px solid #c1c1c1; margin: 1em 0; }
.color-orange { color: #ed4100; }
.nowrap { white-space: nowrap; }
.main-slider { margin-bottom: 0!important; }
.main-slider,
.main-slider * { overflow: visible; }
.main-slider .child { transform: skew(-15deg); overflow: hidden; border: 3px solid #fff; border-top: none; border-bottom: none; }
.main-slider .wrap { position: relative; padding-top: 65%; overflow: visible; }
.main-slider .bg { position: absolute; left: -10%; width: 120%; top: 0; height: 100%; transform: skew(15deg); }
.main-slider .slick-dots { margin-top: 10px; position: static; }
.main-slider .slick-dots li { margin: 0; width: auto; height: auto; }
.main-slider .slick-dots button { height: 6px; width: 6px; background: #adadad; border-radius: 100%; margin: 5px; }
.main-slider .slick-dots button:before { display: none; }
.main-slider .slick-dots li.slick-active button { background: #ed6c00; }
.bg-theme { background: #feffed; }
.full-title { background: #ed6c00; color: #fff; font-weight: bold; font-size: 28px; letter-spacing: .1em; text-align: center; padding: 15px 15px; }
.site-button { max-width: 100%; width: 540px; position: relative; display: flex; height: 40px; align-items: center; justify-content: center; color: #ed6c00!important; background: #fff; border: 1px solid #ed6c00; font-size: 14px; letter-spacing: .2em; font-weight: bold; border-radius: 100px; margin-left: auto; margin-right: auto; transition: .3s; cursor: pointer; }
.site-button:before { content: ""; position: absolute; right: 20px; top: 0; bottom: 0; margin: auto 0; height: 6px; width: 6px; transform: rotate(45deg); border-top: 1px solid #ed6c00; border-right: 1px solid #ed6c00; }
.site-button:hover { background: #ed6c00; color: #fff!important; }
.site-button:hover:before { border-color: #fff; }
.site-button-lg { max-width: 100%; width: 540px; position: relative; display: flex; height: 70px; align-items: center; justify-content: center; color: #fff!important; background: #ed6c00; border: 1px solid #fff; font-size: 22px; letter-spacing: .2em; font-weight: bold; border-radius: 100px; margin-left: auto; margin-right: auto; transition: .3s; cursor: pointer; }
.site-button-lg svg { height: 32px; margin-right: 10px; }
.site-button-lg svg .b { fill: #fff; transition: .3s; }
.site-button-lg:before { content: ""; position: absolute; right: 20px; top: 0; bottom: 0; margin: auto 0; height: 10px; width: 10px; transform: rotate(45deg); border-top: 2px solid #fff; border-right: 2px solid #fff; }
.site-button-lg:hover { background: #fff; color: #ed6c00!important; border-color: #ed6c00; }
.site-button-lg:hover svg .b { fill: #ed6c00; }
.site-button-lg:hover:before { border-color: #ed6c00; }
.site-button-lg.blue { background: #347dc1; }
.site-button-lg.blue:hover { color: #347dc1!important; background: #fff; border-color: #347dc1; }
.site-button-lg.blue:hover:before { border-color: #347dc1; }
.site-button-lg.blue[disabled] { pointer-events: none; background: #ddd;}
.block-course { margin-bottom: 70px; display: block; }
.block-course .photo { margin-bottom: 15px; }
.block-course .title { font-size: 18px; font-weight: bold; letter-spacing: .08em; line-height: 1.45; }
.block-course .link { margin-top: 20px; }
.list-button { display: flex; flex-wrap: wrap; margin-left: -2px; margin-right: -2px; }
.list-button li { width: 16.6666666%; }
.list-button li a { display: flex; padding: 12px 0 20px; align-items: center; justify-content: center; background: #ffe680; border: 2px solid #fff; font-size: 14px; font-weight: bold; letter-spacing: .04em; position: relative; transition: .3s; text-align: center; aspect-ratio: 2 / 1;}
.list-button li a:before { content: ""; position: absolute; bottom: 13px; left: 0; right: 0; margin: 0 auto; border-right: 1px solid #323232; border-bottom: 1px solid #323232; transform: rotate(45deg); width: 7px; height: 7px; transition: .3s; }
.list-button li a.active,
.list-button li a:hover { background: #ed6c00; color: #fff!important; }
.list-button li a.active:before,
.list-button li a:hover:before { border-color: #fff; }
.bread { background: #ffe680; padding: 15px 0; margin-bottom: 90px; }
.bread-list { display: flex; font-size: 12px; }
.bread-list li { display: flex; position: relative; display: flex; align-items: center; padding-left: 13px; }
.bread-list li:first-child { padding-left: 0; }
.bread-list li:after { content: ""; display: block; border-top: 1px solid #001a2b; border-right: 1px solid #001a2b; transform: rotate(45deg); height: 6px; width: 6px; margin-left: 10px; }
.bread-list li:last-child:after { display: none; }
.single-course { }
.single-course .page-title { font-size: 28px; letter-spacing: .05em; color: #ed6c00; text-align: center; margin-bottom: 20px; font-weight: bold; }
.hero-slider-wrapper .draggable { padding: 0!important; }
.hero-slider .comment { font-size: 12px; opacity: 0; transition: .3s; }
.hero-slider .slick-active .comment { opacity: 1; }
.hero-slider,
.hero-slider * { overflow: visible!important; }
.hero-slider .block { padding: 0 6px; text-align: center; }
.hero-slider .slick-slide img { width: auto; height: 500px; min-height: 500px; max-height: 700px; margin: auto; }
.hero-slider .comment { text-align: center; }
.hero-slider .slick-dots { margin-top: 10px; position: static; }
.hero-slider .slick-dots li { margin: 0; width: auto; height: auto; }
.hero-slider .slick-dots button { height: 6px; width: 6px; background: #adadad; border-radius: 100%; margin: 5px; }
.hero-slider .slick-dots button:before { display: none; }
.hero-slider .slick-dots li.slick-active button { background: #ed6c00; }
.single-course .title { font-weight: bold; white-space: nowrap; }
.single-course .title:before { content: "■"; color: #ed4100; display: inline-block; margin-right: 3px; }
.single-course .flex { display: flex; flex-wrap: wrap; }
.single-course .flex li { display: flex; margin-right: 30px; }
.single-course .flex li.full { width: 100%; margin-right: 0; }
.single-course .page-catch { font-size: 24px; letter-spacing: .1em; text-align: center; font-weight: bold; }
.single-course table th { background: #347dc1; color: #fff; border: 1px solid #fff; text-align: center; padding: 10px; font-weight: bold; }
.single-course table th.list1 { width: 100px; }
.single-course table th.list3 { width: 100px; }
.single-course table td { background: #feffed; border: 1px solid #c1c1c1; padding: 10px 10px; font-weight: bold; }
.single-course table td.lg { padding: 30px 30px; }
.single-course .table-group .icons { margin-top: 10px; display: flex; justify-content: flex-end; font-weight: bold; font-size: 14px; flex-wrap: wrap; }
.single-course .table-group .icons li { display: flex; margin-left: 20px; align-items: center; white-space: nowrap; }
.single-course .table-group .icons .icon { margin: 5px; font-size: 12px; }
.single-course .container-fluid { max-width: 1020px; }
.top_scroll { position: fixed; right: 20px; bottom: 20px; z-index: 999; }
.reserve-form dl { display: flex; flex-wrap: wrap; margin-bottom: 30px; }
.reserve-form dl dt { width: 190px; font-size: 18px; letter-spacing: .04em; line-height: 1.34; padding-top: 13px; }
.reserve-form dl dd { width: calc(100% - 190px); }
.reserve-form input.wpcf7-form-control,
.reserve-form select.wpcf7-form-control,
.reserve-form textarea.wpcf7-form-control { width: 100%; border: 1px solid #c1c1c1; background: #feffed; height: 50px; padding: 5px 10px; }
.reserve-form textarea.wpcf7-form-control { height: 200px; }
.reserve-form input.spmin { width: 70px; }
.reserve-form .wpcf7-not-valid-tip { background: #dc3232; color: #fff; margin-top: 5px; padding: 3px 10px; }
.reserve-form .wpcf7-radio { padding-top: 11px; display: block; }
.reserve-form .wpcf7-list-item { margin: 0 1.5em 0 0; }
.reserve-form .acceptance { margin-top: 60px; text-align: center; }
.reserve-form .submit { margin-top: 50px; }
.reserve-form .submit button[disabled] { pointer-events: none; background: #ddd; }
.reserve-form .subtitle { font-weight: bold; font-size: 24px; color: #ed4100; letter-spacing: .04em; }
.reserve-form .cautionMessage { font-size: 15px; color: #ed4100; margin-top: 10px; margin-bottom: 20px; }
.reserve-form .gp { margin-bottom: 30px; background: #f4f4f4; padding: 20px; border-radius: 5px; }
.reserve-form .mintitle { font-weight: bold; border-bottom: 1px solid #000; margin: 35px 0 20px; padding: 0 0 12px; font-size: 19px; }
.confirm .reserve-form dl dt { padding-top: 0; }
.confirm .reserve-form dl dd { background: #eee; padding: 5px 10px; }
.price_sp { padding-top: 10px; }
/* .price_sp strong { font-size: 26px; font-weight: bold; color: #ed4100; } */

@media (max-width: 767px) {
	body { min-width: 375px; font-size: 14px; }
	header { height: 70px; }
	header .logo { left: 15px; }
	header .title { font-size: 18px; }
	footer { padding: 30px 0 30px; }
	.hero-slider .slick-slide img { height: 67vw; max-height: none; min-height: 0; }
	.bread { margin-bottom: 40px; }
	.bread-list { flex-wrap: wrap; font-size: 10px; }
	.bread-list li { padding-left: 5px; }
	.bread-list li:after { margin-left: 5px; }
	.site-button-lg { font-size: 18px; height: 55px; }
	.site-button-lg svg { height: 26px; }
	.list-button li { width: 50%; }
	.list-button li a { font-size: 12px; letter-spacing: 0; }
	.full-title { font-size: 20px; }
	.block-course { margin-bottom: 30px; }
	.single-course .flex li.sp-full { display: block; }
	.single-course table th.list1 { width: 60px; }
	.single-course table th.list3 { width: 80px; }
	.single-course table td.lg { padding: 15px; }
	.single-course .page-title { font-size: 20px; }
	.single-course .page-catch { font-size: 18px; }
	.reserve-form dl { margin-bottom: 20px; }
	.reserve-form dl dt { width: 100%; padding-top: 0; margin-bottom: 10px; font-size: 16px; }
	.reserve-form dl dd { width: 100%; }
	.reserve-form input.wpcf7-form-control,
	.reserve-form select.wpcf7-form-control { height: 40px; }
	.reserve-form textarea.wpcf7-form-control { height: 120px; }
	.reserve-form .acceptance { margin-top: 40px; }
	.reserve-form .submit { margin-top: 30px; }
	.reserve-form .mintitle { margin: 20px 0 15px; font-size: 16px; padding-bottom: 8px; }
	.reserve-form .subtitle { font-size: 18px; }
	.reserve-form .cautionMessage { font-size: 13px; }
}
