@charset "utf-8";

/* ==================================
	Reset
================================== */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; outline: 0; font-size: 100%; vertical-align: baseline; background: transparent; }
body { line-height: 1; }
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }
nav ul, li { list-style: none; }
blockquote, q { quotes: none; }
blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }
a { margin: 0; padding: 0; font-size: 100%; vertical-align: baseline; background: transparent; }
ins { background-color: #ff9; color: #000; text-decoration: none; }
mark { background-color: #ff9; color: #000; font-style: italic; font-weight: bold; }
del { text-decoration: line-through; }
abbr[title], dfn[title] { border-bottom: 1px dotted; cursor: help; }
table { border-collapse: collapse; border-spacing: 0; }
hr { display: block; height: 1px; border: 0; border-top: 1px solid #cccccc; margin: 1em 0; padding: 0; }
input, select { vertical-align: middle; }
* { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
.clearfix:after { content:" "; display:block; clear:both; }

/* ==================================
	PC
================================== */
/* basic ------------------------------------------------- */
.pc { display: block; }
.sp { display: none; }
html { font-size: 62.5%; font-family:-apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI","Noto Sans Japanese","ヒラギノ角ゴ ProN W3", Meiryo, sans-serif; }
body { background: url(../img/base/bg.jpg); font-size: 2.2rem; color: #3f3f3f; line-height: 1.7; font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif!important; font-weight: 500; }
#main { background: #fff; width: 960px; margin: 0 auto; padding: 60px 0 10px; border-left: 2px solid #ccc; border-right: 2px solid #ccc; box-sizing: content-box; }
h2.sub-head { background: #d6fcff; background: -moz-linear-gradient(left, #d6fcff 0%, #f2fdff 35%, #f2fdff 65%, #d6fcff 100%); background: -webkit-linear-gradient(left, #d6fcff 0%,#f2fdff 35%,#f2fdff 65%,#d6fcff 100%); background: linear-gradient(to right, #d6fcff 0%,#f2fdff 35%,#f2fdff 65%,#d6fcff 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d6fcff', endColorstr='#d6fcff',GradientType=1 ); padding: 2em 0; margin: 0 0 1em; text-align: center; border-top: 5px solid #6baec4; border-bottom: 5px solid #6baec4; }
.b { font-weight: bold; }
.u { text-decoration: underline; }
.rub { font-weight: bold; border-bottom: 2px solid #EB0003; }
.red { color: #d00; }
.blue { color: #171c77; }
.purple { color: #664984; }
.orange { color: #ff5700; }
.large { font-size: 150%; }
.small { font-size: 80%; }
.sec__inner img { max-width:100%; margin: 0 auto; display: block; }
img { vertical-align: bottom; }
.img_right { float: right; padding: 0 0 1em 1em; }
.img_left { float: left; padding: 0 1em 1em 0; }
ul.check1 { margin: 1.5em 0; }
ul.check1 li { background: url(../img/base/check1.png) 0 0.5em no-repeat; padding: 0.5em 0 0.5em 2em; font-size: 2.5rem; font-weight: bold; border-bottom: 1px dashed #ccc; }
ul.check2 { margin: 1.5em 0; }
ul.check2 li { background: url(../img/base/check2.png) 0 0.2em no-repeat; padding: 0.5em 0 0.5em 2.5em; font-size: 2.5rem; font-weight: bold; border-bottom: 1px dashed #ccc; }
ul.check3 { margin: 1.5em 0; }
ul.check3 li { background: url(../img/base/check3.png) 0 0.5em no-repeat; padding: 0.3em 0 0.3em 2em; font-size: 2.5rem; font-weight: bold; }
ul.check4 { margin: 1.5em 0; }
ul.check4 li { background: url(../img/base/check4.png) 0 0.65em no-repeat; padding: 0.7em 0 0.7em 1.5em; font-size: 2.5rem; font-weight: bold; border-bottom: 1px solid #aaa; line-height: 1.3; }
ul.check5 li { text-indent: -1.5em; padding-left: 1.5em; font-weight: bold; }
ul.check5 li:before { font-family: FontAwesome; content: '\f00c'; padding: 0 0.5em 0 0; }
ul.bullet1 { margin: 0 0 2em; }
ul.bullet1 li { background: url(../img/base/check3.png) 0.2em 1em no-repeat; padding: 1em 0 1em 2em; margin: 0; font-size: 2.6rem; font-weight: bold; line-height: 1.4; border-bottom: 2px dotted #ccc; }
ul.bullet1 li p { margin: 0.5em 0 0; padding: 0.5em 0 0; font-size: 1.8rem; font-weight: normal; line-height: 1.5; border-top: 1px dashed #aaa; }
ul.bullet1 li:last-of-type { border-bottom: none;; }
ul.bullet1 img { margin: 1em auto; }
ul.bullet2 { margin: 0 0 2em; border: 10px solid #704e23; }
ul.bullet2 li { background: url(../img/base/check3.png) 1.5em 1em no-repeat; padding: 1em 50px 1em 3em; font-size: 2.4rem; font-weight: bold; line-height: 1.4; border-bottom: 2px dotted #f1dcc1; }
ul.bullet2 li:nth-child(even) { background: url(../img/base/check3.png) 1.5em 1em no-repeat #fff7ec; }
ul.bullet2 li:last-child { border: none; }
ul.bullet2 li p { margin: 0.5em 0 0; font-size: 1.8rem; font-weight: normal; line-height: 1.5; }
/* header ----------------------------------------------- */
header { background: url(../img/header_bg.jpg) repeat-x bottom; }
header img { margin: 0 auto; }
.pri-zansu__wrap { background: #333; }
.zansu__wrap { background: #222; }
.zansu__inner { width: 960px; margin: 0 auto; display: flex; justify-content: space-between; flex-wrap: wrap; border: 5px solid #222; }
.zansu__group { flex-basis: 50%; border-right: 1px solid #ccc; }
.zansu__group:last-of-type { border: none;; }
.zansu__box { padding: 0.5em 0; line-height: 1.2; text-align: center; display: flex; background: #eee; align-items: center; }
.zansu__box:nth-child(2n) { background: #fff; }
.zansu__box h3 { flex-basis: 35%; color: #0055a5; }
.zansu__box p { flex-basis: 65%; font-weight: bold; font-size: 1.8rem; }
.zansu__num { display: inline-block; font-size: 180%; color: #d00; vertical-align: sub; }
.blinking{ -webkit-animation:blink 0.5s ease-in-out infinite alternate; -moz-animation:blink 0.5s ease-in-out infinite alternate; animation:blink 0.5s ease-in-out infinite alternate; }
@-webkit-keyframes blink{ 0% {opacity:0;} 50% {opacity:1;} }
@-moz-keyframes blink{ 0% {opacity:0;} 50% {opacity:1;} }
@keyframes blink{ 0% {opacity:0;} 50% {opacity:1;} }
/* section ----------------------------------------------- */
section + section { margin: 60px 0 0; }
section .sec__inner { padding: 1em 50px; }
/* session ----------------------------------------------- */
.session__box { margin: 1em 0; }
.session__box h3 { background: #e0eeff; }
/* voice ------------------------------------------------- */
.voice__box1 { background: url(../img/base/voice_frame01.png) no-repeat top center, url(../img/base/voice_frame03.png) no-repeat bottom center, url(../img/base/voice_frame02.png) repeat-y center; padding: 70px 50px; margin: 0 0 2em; }
p + .voice__box1 { margin: 2em 0; }
.voice__box1 .voice__box_title { margin: 0 0 1em; padding: 0 0 2em; border-bottom: 1px dashed #ccc; }
.voice__box_title img { display: block; margin: 0 auto; }
.voice__box2 { border-bottom: 2px dashed #ccc; padding: 1.5em 0 1.5em; margin: 0; }
.voice__box2:last-child { border: none; }
.voice__box2 .voice__box_title { padding: 0 0 0; }
.voice__box2 p { width: 860px; margin: 0 auto; }
h3.voice__before { display: inline-block; background: #555; color: #fff; font-weight: bold; padding: 0.3em 1em; }
h4.voice__before { font-size: 2.5rem; color: #555; font-weight: bold; }
ul.voice__before_list { color: #555; }
ul.voice__before_list li { text-indent: -1.5em; padding-left: 1.5em; }
ul.voice__before_list li:before { font-family: FontAwesome; content: '\f00c'; padding: 0 0.5em 0 0; }
h3.voice__after { display: inline-block; background: #d58200; color: #fff; font-weight: bold; padding: 0.3em 1em; }
h4.voice__after { font-size: 2.5rem; color: #c67200; font-weight: bold;}
ul.voice__after_list { color: #c67200; }
ul.voice__after_list li { text-indent: -1.5em; padding-left: 1.5em; }
ul.voice__after_list li:before { font-family: FontAwesome; content: '\f00c'; padding: 0 0.5em 0 0; }
/* if ----------------------------------------------------- */
.if__box { border-bottom: 1px solid #ccc; padding: 1.5em 0 0;}
.if__box:nth-child(odd) { background: #f5f5f5; }
.if__box img { display: block; margin: 0 auto; }
.if__inner { display: flex; }
.if__txt { width: 70%; padding: 1em 20px 1em 50px; font-size: 85%; }
.if__txt ul { margin-top: 10px; }
.if__txt li { background: url(../img/base/check4.png) no-repeat 0 5px; padding: 8px 0 8px 30px; line-height: 1.4; font-weight: bold; letter-spacing: -1px; }
.if__img { width: 30%; }
.if01 .if__img { background: url(../img/img11.png) center; -webkit-background-size: cover; background-size: cover; }
.if02 .if__img { background: url(../img/img12.png) center; -webkit-background-size: cover; background-size: cover; }
.if03 .if__img { background: url(../img/img13.png) center; -webkit-background-size: cover; background-size: cover; }
.if04 .if__img { background: url(../img/img14.png) center; -webkit-background-size: cover; background-size: cover; }
/* phase ------------------------------------------------ */
.phaze__box { background: #f5f5f5; margin: 2em 0; }
.phaze__box ul { padding: 1em ; }
.phaze__box ul li { padding: 10px 0 10px 30px; background: url( ../img/base/check4.png) no-repeat 0 10px; line-height: 1.4; font-weight: bold; }
/* profile ----------------------------------------------- */
.profile__box1 { background: url(../img/base/profile_frame01.jpg) no-repeat top center, url(../img/base/profile_frame03.jpg) no-repeat bottom center, url(../img/base/profile_frame02.jpg) repeat-y center; padding: 70px 50px; margin: 0 0 2em; }
p + .profile__box1 { margin: 2em 0; }
.profile__box1 img { display: block; margin: 1em auto; }
.profile__box2 { font-family: Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif; }
.profile__box2 p { background-image: linear-gradient( #aae5ff 1px, transparent 1px ); background-size: auto 1.7em; background-position: 0 -3px; margin: 1em 0 0; font-weight: 500; }
/* tokuten ---------------------------------------------- */
#tokuten { margin: 0; }
.tokuten__box + .tokuten__box { margin: 2em 0 0; }
.tokuten__box_contents { background: #f7f7f7; padding: 1em; margin: 0 0 2em; }
.tokuten__box_contents h4{ color: #00609c; border-bottom: 1px dashed #00609c; font-size: 150%; padding: 0 0 0.3em; margin: 0 0 0.7em; line-height: 1.3; }
.tokuten__box_contents ul { margin: 0.5em 0; line-height: 1.2; }
/* reason ------------------------------------------------- */
.reason__box { background: #f5f5f5; margin: 2em 0; }
.reason__box h3 { color: #fff; background: #002082; background: -moz-linear-gradient(left, #002082 0%, #00a2b6 100%); background: -webkit-linear-gradient(left, #002082 0%,#00a2b6 100%); background: linear-gradient(to right, #002082 0%,#00a2b6 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#002082', endColorstr='#00a2b6',GradientType=1 ); font-size: 150%; padding: 10px 25px; letter-spacing: -1px; }
.reason__txt { padding: 1em; }
/* school ------------------------------------------------- */
.school__box { background: #e9f9ff; }
.school__box .bullet1 { padding: 0 1em; margin: 0; }
/* hosyou ------------------------------------------------- */
.hosyou__wrap { display: flex; align-items: center; }
.hosyou__wrap img { flex: 1; width: 100%; height: 100%; max-width: 70%; max-height: 450px; }
.hosyou__wrap p { flex: 1; padding: 1em; font-size: 1.2rem; line-height: 1.6; }
/* schedule --------------------------------------------- */
.schedule__list { width: 100%; margin: 1em auto 0; text-align: center; border: 2px solid #ccc; }
.schedule__list th { background: #00548d; color: #fff; }
.schedule__list tr:nth-child(odd) { background: #e0f3ff; }
.schedule__box { background: #f5f5f5; margin: 1em 0; }
.schedule__box h3 { background: #3f3f3f; padding: 1rem 2rem; color: #fff; font-size: 2.5rem; }
.schedule__txt { padding: 2rem; }
.map { width: 100%; height: 50vh; margin: 2em 0 0; }
/* form ------------------------------------------------- */
.form { margin: 0; }
.price__result { font-family: Arial, Helvetica, "sans-serif"; width: 90%; margin: 0 auto; font-weight: bold; }
.price__result_main { color: #d00; font-size: 6rem; line-height: 1; text-align: center; }
.price__result_main img { width: 120px; margin: 0 0.2em -0.4em 0; }
.price__result_sub { text-align: right; font-size: 6rem; }
.price__notice { width: 90%; margin: 1em auto 0; padding: 1em; background: #eee; }
.price__notice p { text-indent: -1em; padding-left: 1em; font-size: 1.8rem; }
.form__button { line-height: 1.2; }
.form__button .small { font-size: 3rem; }
.form__button a { position: relative; background: #00bbff; background: -moz-linear-gradient(top, #00bbff 0%, #006aff 100%); background: -webkit-linear-gradient(top, #00bbff 0%,#006aff 100%); background: linear-gradient(to bottom, #00bbff 0%,#006aff 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00bbff', endColorstr='#006aff',GradientType=0 ); display: block; padding: 0 0 0.3em; margin: 1em auto; width: 90%; text-align: center; border-radius: 10px; box-shadow: 0 5px 0 #004DBA; color: #fff; font-weight: bold; text-decoration: none; font-size: 5rem; text-shadow: 0 1px 5px #002559; transition: 0.1s; -webkit-font-feature-settings: 'palt' 1; font-feature-settings: 'palt' 1;}
.form__button a:hover { transform: translateY(-3px); box-shadow: 0 8px 0 #004DBA; filter: brightness(120%); }
.form__button a:active { transform: translateY(3px); box-shadow: 0 2px 0 #004DBA; filter: brightness(100%); }
.form__button2 { display: table; margin: 2em auto; transition: 0.1s; }
.form__button2:hover { filter: brightness(120%); }
input[type=image] { max-width: 95%; margin: 0 auto; cursor: pointer }
/* tsuishin ---------------------------------------------- */
#tsuishin { background: url(../img/base/tsuishin_bg.jpg); padding: 3em 50px; font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif; color: #3C3C3C; }
.tsuishin__sub h2 { font-size: 5rem; line-height: 1.3; }
.tsuishin__sub p { font-size: 2.7rem; line-height: 1.3; background-image: none!important; margin: 0!important; border-bottom: 4px double; }
.tsuishin__box { background: url(../img/base/tsuishin__box_bg.jpg); padding: 50px; -webkit-box-shadow: 0 3px 10px -3px rgba(0,0,0,0.3); box-shadow: 0 3px 10px -2px rgba(0,0,0,0.4); }
.tsuishin__box p { background-image: linear-gradient( #e5d6b6 1px, transparent 1px ); background-size: auto 1.7em; background-position: 0 -3px; margin: 1em 0 0; font-weight: 500; }
.tsuishin__name { position: relative; display: block; margin: -200px 0 0 auto; }
/* donation --------------------------------------------- */
#donation { background: #fff6cf; margin: 0; font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif; font-weight: 500; }
#donation .sec__inner img { margin: 2em 0; }
/* question --------------------------------------------- */
.qa__box { border-bottom: 2px dotted #ccc; padding: 0 0 1em; }
.qa__box + .qa__box { margin: 1em 0; }
.question { background: url(../img/base/question.png) no-repeat; position: relative; min-height: 3em; padding: 0 0 0.5em 70px; font-size: 2.5rem; line-height: 1.2; font-weight: bold; color: #e83f19; display:flex; -webkit-align-items: center; align-items: center; }
.answer { background: url(../img/base/answer.png) no-repeat; position: relative; padding: 0 0 0 70px; line-height: 1.5; display:flex; -webkit-align-items: center; align-items: center; min-height: 60px; }
/* information ------------------------------------------ */
#information {width:860px; margin:2em auto; padding:30px 0; border-top:4px dotted #999; clear:both; font-size:1.4rem; line-height:1.5; color:#333; }
#information h3{font-size:1.7rem;font-weight:bold;color:#FF6000;margin:15px 0 3px;}
.information-left {width:48.5%;float:left;}
.information-left__box {border:1px solid #999;}
.information-left__box p{font-size:1.4rem;line-height:1.5;color:#333;margin:20px;}
.information-right {width:48.5%;float:right;}
.information-right__box {border:1px solid #999;}
.information-right__box p{font-size:1.4rem;line-height:1.5;color:#333;margin:20px;}
.information-center { width:860px; clear:both; display: grid; }
.information-center__box {border:1px solid #999;}
.information-center__box p{font-size:1.4rem;line-height:1.5;color:#333;margin:20px;}
/* footer ------------------------------------------------ */
footer { background: #ddd; }
.footer_logo img { max-width: 300px; }
.footer_txt { padding: 0 0 0 2em; line-height: 1.9; font-size: 12px; text-align: left; }
#footer__wrap { width: 800px; margin: 0 auto; font-size: 80%; padding: 2em 0; display: flex; justify-content: center; }
#footer__wrap li { display: inline-block; border-left: 1px solid #aaa; padding: 0 1em 0; }
#footer__wrap li:first-child { border: none; padding: 0 1em 0 0; }
/* Slide ------------------------------------------------ */
#slide {
	background: url(../img/slide.png);								/*1つにつなげたスライド画像を用意*/
	background-position: 0px 0px;
	height: 410px;																/*スライド画像の高さ*/
	width: 100%;																/*スライドを流す幅（ブラウザ幅いっぱいなら100%）*/
	position: relative;
	animation: SlideAnime 50s linear infinite;
	-webkit-animation: SlideAnime 50s linear infinite;		/*1周の秒数を設定*/
}
@-webkit-keyframes SlideAnime {
  0%    { background-position:0px 0px;  }
  100%  { background-position:-3585px 0px;  }				/*スライド画像の横幅をマイナス*/
}
/* scfooter ------------------------------------------------ */
#scfooter { z-index:1000; position: fixed;bottom: 0px;left: 0px;width: 100%;padding: 0;background: rgba(202, 202, 202, 0.7); }
.scfooter_inner {display: block;width: 100%;border-radius: 20px;margin: 0 auto;text-align: center;}
.scfooter_inner a {text-decoration: none;}
.hvr-wobble-vertical { vertical-align: middle;-webkit-transform: translateZ(0);transform: translateZ(0);-webkit-backface-visibility: hidden;backface-visibility: hidden;-moz-osx-font-smoothing: grayscale;}
.hvr-wobble-vertical:active, .hvr-wobble-vertical:focus, .hvr-wobble-vertical:hover { -webkit-animation-name: hvr-wobble-vertical;animation-name: hvr-wobble-vertical;-webkit-animation-duration: 1s;animation-duration: 1s;-webkit-animation-timing-function: ease-in-out;animation-timing-function: ease-in-out;-webkit-animation-iteration-count: 1;animation-iteration-count: 1;}
.reflection { height : 100%;width : 30px;position : absolute;top : -180px;left : 0px;background-color: #fff;opacity : 0;transform: rotate(45deg);animation: reflection 2s ease-in-out infinite;-webkit-transform: rotate(45deg);-webkit-animation: reflection 2s ease-in-out infinite;-moz-transform: rotate(45deg);-moz-animation: reflection 2s ease-in-out infinite;-ms-transform: rotate(45deg);-ms-animation: reflection 2s ease-in-out infinite;-o-transform: rotate(45deg);-o-animation: reflection 2s ease-in-out infinite;}
.btn_ft { margin-left: auto;margin-right: auto;width: 480px;position : relative;overflow : hidden;border-radius: 4px;-webkit-border-radius: 4px;-moz-border-radius: 4px;}
.btn_ft img { border-radius: 4px;-webkit-border-radius: 4px;-moz-border-radius: 4px;}
.btn_ft a { text-decoration: none !important;}

@media screen and (max-width:768px) { .btn_ft { width: 75%;} }
@media screen and (max-width:425px) { .btn_ft { width: 100%;} }
@-webkit-keyframes hvr-wobble-vertical { 16.65% { -webkit-transform: translateY(8px);transform: translateY(8px);} 33.3% { -webkit-transform: translateY(-6px); transform: translateY(-6px);} 49.95% { -webkit-transform: translateY(4px); transform: translateY(4px);} 66.6% { -webkit-transform: translateY(-2px); transform: translateY(-2px);} 83.25% { -webkit-transform: translateY(1px);transform: translateY(1px);} 100% { -webkit-transform: translateY(0); transform: translateY(0);} }
@keyframes hvr-wobble-vertical { 16.65% { -webkit-transform: translateY(8px);transform: translateY(8px);} 33.3% { -webkit-transform: translateY(-6px);transform: translateY(-6px);} 49.95% { -webkit-transform: translateY(4px);transform: translateY(4px);} 66.6% { -webkit-transform: translateY(-2px);transform: translateY(-2px);} 83.25% { -webkit-transform: translateY(1px);transform: translateY(1px);} 100% { -webkit-transform: translateY(0);transform: translateY(0);} }
@keyframes reflection { 0% { transform: scale(0) rotate(45deg);opacity: 0;} 80% { transform: scale(0) rotate(45deg);opacity: 0.25;} 81% { transform: scale(10) rotate(45deg);opacity: 0.35;} 100% { transform: scale(75) rotate(45deg);opacity: 0;} }
@-webkit-keyframes reflection { 0% { -webkit-transform: scale(0) rotate(45deg);opacity: 0;} 80% { -webkit-transform: scale(0) rotate(45deg);opacity: 0.25;} 81% { -webkit-transform: scale(10) rotate(45deg);opacity: 0.35;} 100% { -webkit-transform: scale(75) rotate(45deg);opacity: 0;} }
@-moz-keyframes reflection { 0% { -moz-transform: scale(0) rotate(45deg);opacity: 0;} 80% { -moz-transform: scale(0) rotate(45deg);opacity: 0.25;} 81% { -moz-transform: scale(10) rotate(45deg);opacity: 0.35;} 100% { -moz-transform: scale(75) rotate(45deg);opacity: 0;} } 
@-ms-keyframes reflection { 0% { -ms-transform: scale(0) rotate(45deg);opacity: 0;} 80% { -ms-transform: scale(0) rotate(45deg);opacity: 0.25;} 81% { -ms-transform: scale(10) rotate(45deg);opacity: 0.35;} 100% { -ms-transform: scale(75) rotate(45deg);opacity: 0;} }
@-o-keyframes reflection { 0% { -o-transform: scale(0) rotate(45deg);opacity: 0;} 80% { -o-transform: scale(0) rotate(45deg);opacity: 0.25;} 81% { -o-transform: scale(10) rotate(45deg);opacity: 0.35;} 100% { -o-transform: scale(75) rotate(45deg);opacity: 0;} }

/* count -------------------------------------------------- */
.timeleft { display: block; }
.timer01 { color: #ffffff; font-size: 2.2rem; background: #222; padding: 10px 0; text-align: center; font-weight: bold; line-height: 1.2; font-family: "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN,"メイリオ", Meiryo,sans-serif; }
.timer01 .timer_num { font-size: 170%; color: #fff668; }
@media screen and (max-width: 768px) {
	.timer01 { font-size: 4vw; }
}
	
/* ==================================
	SP
================================== */
@media screen and (max-width:768px) {
	/* basic ------------------------------------------------- */
	.pc { display: none; }
	.sp { display: block; }	
	body { background: none; font-size: 4vw; }
	#main { padding: 2em 0; width: 100%; border: none; }
	img { max-width: 100%; }
	.img_right, .img_left { display: block; clear: both; float: none; padding: 0 0 1em; margin: 0 auto; }
	h2.sub-head { padding: 1em 3%; margin: 0 0 0.5em; border-top: 3px solid #6baec4; border-bottom: 3px solid #6baec4; }
	ul.check1 li, ul.check2 li, ul.check3 li { font-size: 5vw; line-height: 1.3; }
	ul.check4 li { font-size: 5vw; background-position: 0 0.5em; line-height: 1.3; }
	ul.bullet1 li { font-size: 5vw; }
	ul.bullet1 li p { font-size: 4vw; }
	ul.bullet2 { border: 5px solid #704e23; }
	ul.bullet2 li, ul.bullet2 li:nth-child(even) { background-position: 0.3em 1em; padding: 1em 0.5em 1em 2em; font-size: 5vw; }
	ul.bullet2 li p { font-size: 4vw; }
	/* header ----------------------------------------------- */
	header { background-size: cover; }
	.zansu__inner { width: 100%; flex-wrap: wrap; }
	.zansu__group { flex-basis: 100%; }
	.zansu__box { flex-basis: 100%; vertical-align: middle; display: flex; justify-content: space-between; align-items: center; padding: 0.2em; background: #fff; }
	.zansu__box h3 { font-size: 4.5vw; border-bottom: none; flex-basis: 30%; }
	.zansu__box p { font-size: 4vw; flex-basis: 70%; }
	/* section ----------------------------------------------- */
	section + section { margin: 2em 0 0; }
	section .sec__inner { padding: 1em; }
	/* voice ------------------------------------------------- */
	.voice__box1 { background-size: contain; padding: 1.5em; }
	.voice__box2 p { width: 100%; padding: 0 1em; }
	h4.voice__before, h4.voice__after { font-size: 5vw; line-height: 1.4; padding: 0.5em 0 0; }
	/* if ----------------------------------------------------- */
	.if__inner { display: block; }
	.if__txt { width: 100%; padding: 1em; }
	.if__img { width: 100%; height: 30vh; }
	.if04 .if__img { background-position: center 10%; }
	/* profile ----------------------------------------------- */
	.profile__box1 { background-size: contain; padding: 1.5em; }
	/* hosyou ------------------------------------------------- */
	.hosyou__wrap { display: block; align-items: center; }
	/* schedule --------------------------------------------- */
	.scroll { width: 100%; overflow: scroll; }
	.schedule__list { width: 150vw; }
	.schedule__box { background: #f5f5f5; margin: 2em 0; }
	.schedule__box h3 { padding: 1rem 2rem; color: #fff; font-size: 2.5rem; }
	.schedule__txt { padding: 2rem; }
	.map { width: 100%; height: 50vh; margin: 2em 0 0; }

	/* form ------------------------------------------------- */
	.form { margin: 0; }
	.price__result { width: 90%; margin: 0 auto; font-weight: bold; }
	.price__result_main { color: #d00; font-size: 6.5vw; line-height: 1; text-align: center; }
	.price__result_main img { width: 12vw; margin: 0 0.2em -0.4em 0; }
	.price__result_sub { text-align: right; font-size: 5.5vw; }
	.price__notice { width: 90%; margin: 1em auto 0; padding: 1em; font-size: 3.5vw; background: #eee; }
	.price__notice p { text-indent: -1em; padding-left: 1em; font-size: 3.5vw; }
	.form__button a { font-size: 7vw; padding: 0.5em 0 0.7em; }
	.form__button .small { font-size: 5vw; }
	/* tsuishin ---------------------------------------------- */
	#tsuishin { padding: 1em; }
	.tsuishin__sub h2 { font-size: 8vw; line-height: 1.3; }
	.tsuishin__sub p { font-size: 5vw; line-height: 1.3; background-image: none!important; margin: 0!important; border-bottom: 4px double; }
	.tsuishin__box { padding: 2em; }
	.tsuishin__name { margin: 0; }
	/* donation --------------------------------------------- */
	#donation .sec__inner img { margin: 1em 0 0; }
	/* question --------------------------------------------- */
	.question { background-size: 12vw; font-size: 5vw; padding: 0 0 0.5em 15vw; }
	.answer { background-size: 12vw; font-size: 4vw; padding: 0 0 0.5em 15vw; }
	/* information ------------------------------------------ */
	#information { width: 90%; margin: 2em auto 0; }
	.information-center, .information-right, .information-left { width: 100%; }
	/* footer ------------------------------------------------ */
	#footer__wrap { width: 100%; display: block; }
	.footer_logo img { display: block; margin: 0 auto; }
	.footer_txt { padding: 1em 5%; }
	/* Slide ------------------------------------------------ */
	#slide { height: 200px; background-size: cover; -webkit-animation: SlideAnime 90s linear infinite; animation: SlideAnime 90s linear infinite; }
}