@charset "utf-8";
/*================================================
 CSS Ver.1.00
=================================================*/

body {
	color: #333333;
	background-color: #FFFFFF;
	background-image: url(../image_common/bg_body.jpg);
	background-position: top center;
	background-attachment: fixed;
	background-size: cover;
	font-size: 75%;
	font-family: "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS P Gothic", "Lucida Grande", Helvetica, sans-serif;
	border: none;
	counter-reset: titleNum;
}

@media (max-width: 640px) {
body {
	color: #333333;
	background-color: #FFFFFF;
	font-size: 75%;
	font-family: "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS P Gothic", "Lucida Grande", Helvetica, sans-serif;
	border: none;
	background-image: url(../image_common/bg_body.jpg);
	background-repeat: no-repeat;
}
}


.raster {
	width: 100%;
	margin: 0;
	padding: 0;
	background-image: url(../image_common/raster.png);
	background-repeat: repeat;
	background-attachment: fixed;
}

html>/**/body {
font-size: 12px;
}


/*------------------------------------------------
	Header
-------------------------------------------------*/

.header {
    background: url("../images/freestyle.png") center top no-repeat;
    height: 798px;
    position: relative;
    box-shadow: 0 0 10px rgbas(0,0,0,0.5);
}

@media (max-width: 640px) {
.header {
    height: auto;
}
}
header h1 {
width: 100%;
	padding: 0;
	margin: 0;
}



/*------------------------------------------------
	Contents
-------------------------------------------------*/

#contents {
	max-width: 960px;
	margin: 0 auto;
	text-align: left;
	box-shadow:rgba(0, 0, 0, 0.3) 0px 0px 10px 5px;
	-webkit-box-shadow:rgba(0, 0, 0, 0.3) 0px 0px 10px 5px;
	-moz-box-shadow:rgba(0, 0, 0, 0.3) 0px 0px 10px 5px;
}

#contents section {
	max-width: 960px;
	margin: 0px;
	padding: 1em 0;
	background: #FFFFFF;
}
@media (max-width: 640px) {
#contents section { 
	font-size: 80%;
	max-width: 960px;
	margin: 0px auto;
	padding: 0.1em 0;
	background: #FFFFFF;
}
}

#contents h1 {
	color: #FFFFFF;
	font-size: 3.0em;
	font-weight: bold;
	text-align: center;
	text-shadow: 0px 0px 5px #000000;
	width: 100%;
	margin-bottom: 1.0em;
	padding: 0.8em;
	background-color:#13d762;
	box-sizing: border-box;
}

@media (max-width: 640px) {
#contents h1 {
	color: #FFFFFF;
	font-size: 2.0em;
	font-weight: bold;
	text-align: center;
	text-shadow: 0px 0px 5px #000000;
	width: 100%;
	margin-bottom: 1.0em;
	padding: 0.8em;
	background-color:#13d762;
	box-sizing: border-box;
}
}

#contents h2 {
	color:#13d762;
	font-size: 2.0em;
	font-weight: bold;
	text-align: left;
	border-bottom: 4px double#13d762;
	width: 100%;
	margin-bottom: 1.0em;
	padding: 0.8em 0.8em 0 0.2em;
	line-height: 100%;
	box-sizing: border-box;
}

.left {
	text-align: left !important;
}

.center {
	text-align: center !important;
}

.right {
	text-align: right !important;
}

#contents p {
	font-size: 1.7em;
	line-height: 1.7em;
	margin-bottom: 0.8em;
	padding: 0 0.4em;
}
ul {
    list-style: none;
    margin: 0px;
    padding: 0px;
}

.box {
	width: 100%;
	padding: 0 3.0em 0em 3.0em;
	box-sizing: border-box;
	display: inline-block;
}

@media (max-width: 640px) {
.box {
	width: 100%;
	padding: 0 1.0em 0em 1.0em;
	box-sizing: border-box;
	display: inline-block;
}
}

.box2 {
	width: 100%;
	padding: 0 3.0em .0em 3.0em;
	box-sizing: border-box;
	display: inline-block;
}

@media (max-width: 640px) {
.box2 {
	width: 100%;
	padding: 0 1.0em 0em 1.0em;
	box-sizing: border-box;
	display: inline-block;
}
}
.boxblue {
	width: 100%;
	padding:  2.0em 1.0em 1.0em;
	margin-bottom: 3em;
	box-sizing: border-box;
	display: inline-block;
	background-color:#13d762;
	
}

@media (max-width: 640px) {
.boxblue {
	width: 100%;
	padding:  1.0em 1.0em 1em 1.0em;
	margin-bottom: 0.7em;
	box-sizing: border-box;
	display: inline-block;
	background-color:#13d762;
}
}


.border_box {
	font-size: 1.7em;
	width: 100%;
	padding: 0em 1.2em;
	background-color: #FFFFFF;
	border: 8px solid#13d762;
	box-sizing: border-box;
	display: inline-block;
}

.border_box ul {
	width: 100%;
}

.border_box li {
	width: 100%;
	padding-bottom: 0.7em;
}

.border_box li:last-child {
	width: 100%;
	padding-bottom: 0;
}


.border_box p {
	font-size: 1.7em !important;
	line-height: 1.2em !important;
	padding: 0.2em 0 !important;
}

.border_box h2 {
	font-size: 2.0em !important;
	width: 100%;
	text-align: center;
	line-height: 1.2em !important;
	padding: 0.2em 0 !important;
}

.border_box hr {
	border-top: 1px solid#13d762;
	width: 100%;
	margin-bottom: 1.0em;
	box-sizing: border-box;
}

.border_box2 {
	width: 100%;
	padding: 0;
	background-color: #FFFFFF;
	border: 8px solid#13d762;
	box-sizing: border-box;
	display: inline-block;
}

.border_box2 h2 {
	color: #FFFFFF !important;
	font-weight: bold;
	background-color:#13d762;
	font-size: 2.0em !important;
	width: 100%;
	text-align: left !important;
	line-height: 1.2em !important;
	padding: 0.5em !important;
	text-shadow: 0px 0px 5px #000000;
}

.border_box2 p {
	padding: 0 1.0em !important;
}

.border_box2 hr {
	border-top: 1px solid#13d762;
	margin: 0 2.5% 1.0em 2.5%;
	width: 95%;
	box-sizing: border-box;
}

.border_box3 {
	font-size: 1.7em;
	width: 100%;
	padding: 0 1.2em;
	background-color: #FFFFFF;
	border: 8px solid#13d762;
	box-sizing: border-box;
	display: inline-block;
}

.try {
margin: 0 auto 2.0em auto;
width: 0;
height: 0;
border-style: solid;
border-width: 50px 50px 0 50px;
border-color:#13d762 transparent transparent transparent;
}

.border_box3 ul {
	width: 100%;
}

.border_box3 li {
	width: 100%;
	padding-top: 1.0em;
}

.border_box3 li:last-child {
	width: 100%;
}


.border_box3 h2 {
	font-size: 1.0em !important;
	font-weight: bold;
	line-height: 1.2em !important;
	padding-bottom: 0.5em;
}

.border_box3 p {
	font-size: 0.95em !important;
	line-height: 1.5em !important;
	padding-bottom: 0 !important;
}

.list_box {
	font-size: 1.3em;
	text-align: left;
	width: 80%;
	margin: 0 10%;
	box-sizing: border-box;
	display: inline-block;
}

.list_box ul {
	width: 100%;
	font-size: 1.2em;
	display: inline-block;
}

.list_box_l {
	color: #FFFFFF;
	font-weight: bold;
	text-align: center;
	width: 10.0em;
	margin-right: 1.0em;
	padding: 0.4em 0.5em;
	background-color: #00284E;
	box-sizing: border-box;
	float: left;
}

@media (max-width: 640px) {
.list_box_l {
	color: #FFFFFF;
	font-weight: bold;
	text-align: center;
	width: 100%;
	margin-right: 1.0em;
	padding: 0.5em;
	background-color: #00284E;
	box-sizing: border-box;
	float: left;
}
}

.list_box_r {
	padding: 0.4em 1.0em;
	box-sizing: border-box;
	background-color: #EEEFF5;
}

@media (max-width: 640px) {
.list_box_r {
	width: 100%;
	text-align: center;
	padding: 0.5em;
	box-sizing: border-box;
	background-color: #EEEFF5;
	display: inline-block;
}
}

.q_box {
	color: #FFFFFF;
	font-size: 2.0em;
	font-weight: bold;
	width: 100%;
	background-color:#13d762;
	display: inline-block;
	padding: 0.5em 0.5em 0.5em 0.5em;
	box-sizing: border-box;
	margin-bottom: 1.0em;
	text-shadow: 0px 0px 5px #000000;
}

.q_l {
	float: left;
	width: 8%;
}
.q_r {
	padding-top: 0.5em;	
	width: 92%;
	overflow: hidden;
	padding-left: 0.3em;
	box-sizing: border-box;
}

@media (max-width: 640px) {
.q_r {
	padding-top: 0.5em;	
	width: 92%;
	overflow: hidden;
	padding-left: 1em;
	box-sizing: border-box;
}
}

.q_r2 {
	padding-top: 0.5em;	
	width: 92%;
	overflow: hidden;
	padding-left: 0.3em;
	box-sizing: border-box;
}

@media (max-width: 640px) {
.q_r2 {
	padding-top: 0.2em;	
	width: 92%;
	overflow: hidden;
	padding-left: 1em;
	box-sizing: border-box;
}
}

.a_box {
	width: 100%;
	padding-left: 1.2em;
	margin-bottom: 3.0em;
	display: inline-block;
}

@media (max-width: 640px) {
.a_box {
	width: 100%;
	margin-bottom: 1.0em;
	display: inline-block;
}
}

.a_box2 {
	width: 100%;
	display: inline-block;
}

.bc_red {
	border-color: #D90003 !important;
}

.box_button {
	max-width: 586px;
	margin: 0 auto 1.0em auto;
	margin-bottom: 1.0em;
	display: inline-block;
	text-align: center;
}

.video-container iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

#info {
	width: 92%;
	padding: 2% 4%;
	background-color: #ECFFE5;
}

#info h1 {
	width: 100%;
	color: #128600;
	font-size: 2.0em;
	font-weight: bold;
	margin-bottom: 0.5em;
	text-align: center;	
}



/*------------------------------------------------
	Footer
-------------------------------------------------*/

footer {
	width: 90%;
	padding: 1.6em 5%;
	background-color:#13d762;
	display: inline-block;
	color: #FFFFFF;
}

@media (max-width: 640px) {
footer {
	width: 90%;
	padding: 1.2em 5%;
	margin-bottom: 0em;
	background-color:#13d762;
	display: inline-block;
	color: #FFFFFF;
	
	}
}
footer h1 {
	width: 100%;
	border-bottom: px solid #128600;
	color: #128600;
	font-size: 1.2em;
	font-weight: bold;
	margin: 1.0em 0;
}

footer nav {
	width: 100%;
	display: inline-block;
}

footer ul {
	margin-bottom: 4.0em;
}

footer li {
	margin-right: 1.5em;
	float: left;
}

footer div {
	width: 100%;
	text-align: center;
	margin-bottom: 0.5em;
}


/*------------------------------------------------
	Voice Box
-------------------------------------------------*/

#vbwrapper {
	width: 60%;
}

#voicebox {
	border: solid 2px #128000;
	width: 98%;
	height: 450px;
	padding: 0.5em;
	overflow: auto;
	background-color: #F1FFEF;
	margin-left: 2%;
}

#voicebox p {
	all: initial;
	font-size: 1.6em;
}

#voicebox hr {
	margin-bottom: 0.5em;
	background-color: #128000;
	border: none;
	height: 1px;
}


/*------------------------------------------------
	Image
-------------------------------------------------*/

.margin_5 {
	margin-bottom: 0.5em;
}

.margin_10 {
	margin-bottom: 1.0em;
}

.margin_20 {
	margin-bottom: 2.0em;
}

@media (max-width: 640px) {
.margin_20 {
	margin-bottom: 2em;
}
}

.margin_30 {
	margin-bottom: 3.0em;
}

.patting_05 {
	padding-bottom: 0.5em !important;
}

.patting_10 {
	padding-bottom: 1.0em !important;
}

.patting_15 {
	padding-bottom: 1.5em !important;
}

.patting_20 {
	padding-bottom: 2.0em !important;
}

.patting_30 {
	padding-bottom: 3.0em !important;
}

.image_l {
	float: left;
	margin: 0 2.0em 2.0em 0;
}

@media (max-width: 640px) {
.image_l {
	width: 100%;
	margin-bottom: 0em;
}
}

.image_r {
	float: right;
	margin: 0 0 2.0em 2.0em;
}

@media (max-width: 640px) {
.image_r {
	width: 100%;
	margin-bottom: 0em;
}
}

.image_r2 {
	float: right;
	margin: 0 1.0em  2.0em 2.0em;
}

.image_c {
	margin-bottom: 2.0em;
}

.separator {
	width: 98%;
	margin: 5.0em auto 4.0em auto;
	border-top: 1px dashed #D6004F;
	border-bottom: 1px dashed #FFFFFF;
}


/*------------------------------------------------
	Fonts
-------------------------------------------------*/
.color_w{
	color: white;
	font-weight: bold;
}

.color_red {
	color: #D90003;
	font-weight: bold;
}

.color_pink {
	color: #e9a0b1;
	font-weight: bold;
}
.bold {
	font-weight: bold;
}

.font_ss {
	font-size: 0.7em !important;
}

.font_s {
	font-size: 1.3em !important;
}
@media (max-width: 640px) {
.font_s {
	font-size: 70% !important;
}
	
}
.font_l {
	font-size: 1.2em !important;
}

@media (max-width: 640px) {
.font_l {
	font-size: 100% !important;
}
}

.font_ll {
	font-size: 2.0em !important;
}

.font_lll {
	font-size: 3.0em !important;
}

.coment {
	width: 100%;
	text-align: right;
	font-size: 0.8em;
	padding-top: 0.6em;
}

.underline {
	text-decoration: underline;
}


.seotext_06 {
text-decoration:underline;
text-decoration-style:wave;
}

.marker {
background-color: #FFF354;
}

.marker2 {
background-color: #FFF354;
	font-weight: bold;
}


/*------------------------------------------------
	Table
-------------------------------------------------*/

.sc {
	width: 100%;
	border-spacing: 0;
	margin-bottom: 2.0em;
	font-size: 1.5em;
}

.sc th {
	color: #FFFFFF;
	padding: 0.8em;
	background-color:#13d762;
	background-position: bottom;
	border:1px solid #11477A;
	line-height: 120%;
	text-align: center;
}

.sc td {
	padding: 0.8em;
	border: 1px solid #11477A;
}

.sc tr {
	background: #FFFFFF;
}




/*------------------------------------------------
	Video
-------------------------------------------------*/

.video-container {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
	margin-bottom: 1.0em;
}

.video-container iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}





/*------------------------------------------------
	Side Menu
-------------------------------------------------*/

#sidemenu {
	width: 10%;
	text-align: right;
	vertical-align: bottom;
	position: fixed !important;
	position: absolute;
	bottom: 1.0em;
	right: 1.0em;
	z-index: 1001;
	display: inline-block;
}

@media (max-width: 640px) {
#sidemenu {
	display: none;
}
}

#smp {
	display: none;
}

@media (max-width: 640px) {
#smp {
	width: 100%;
	text-align: center;
	vertical-align: bottom;
	position: fixed !important;
	position: absolute;
	bottom: 0;
	z-index: 1001;
	display: inline-block !important;
	box-shadow:rgba(0, 0, 0, 0.3) 0px 0px 0px 0px;
	-webkit-box-shadow:rgba(0, 0, 0, 0.3) 0px 0px 0px 0px;
	-moz-box-shadow:rgba(0, 0, 0, 0.3) 0px 0px 0px 0px;
}
}

.box_smp {
	max-width: 960px;
	margin: 0 auto;
	padding: 1.0em 0 0 0;
	background:none;
}



/*------------------------------------------------
	Payment
-------------------------------------------------*/

.payment {
	color: #FFFFFF;
	font-size: 2.0em;
	font-weight: bold;
	text-align: center;
	width: 100%;
	background-color:  #00284E;
	padding: 0.5em;
	margin-bottom: 1.0em;
}


/*------------------------------------------------
	Mail Form
-------------------------------------------------*/

.mfo {
	width: 85%;
	margin: 0 0 0 7.5%;
	text-align: center;
	border: solid 4px #128600;
	background-color: #FFFFFF;
	box-shadow: 0px 0px 15px 10px #C5FF89;
	margin-bottom: 2.0em;
}


.image_10 {
	margin-bottom: 1.0em;
}

.image_20 {
	margin-bottom: 2.0em;
}

.image_30 {
	margin-bottom: 3.0em;
}


.form_box {
	width:80%;
	margin: 0 auto 2.0em auto;
	border: solid 2px #9FD6D2;
	padding: 0 5%;
	background-color: #D0ECEA;
}

.form_txt {
	font-size: 0.9em;
}


.af_image {
	width: 100%;
	margin-bottom: 2.5em;
}


/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc { display: block !important; }
.sp { display: none !important; }
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 750px) {
.pc { display: none !important; }
.sp { display: block !important; }
}

/*------------------------------------------------
	Link
-------------------------------------------------*/

a:link, a:visited {
	color: #FFFFFF;
	text-decoration: none;
}

a:hover, a:active {
	color: #D90003;
	text-decoration: none;
}

.form_input {
	text-align: center;
	font-size: 1.7em;
	width: 100%;
	padding: 1.6em 0.5em 2em;
	box-sizing: border-box;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	border:  4px solid  #c0c0c0;
	background-color: #FFFFFF;
}

@media (max-width: 640px) {
.form_input {
	text-align: center;
	font-size: 1em;
	width: 100%;
	padding: 1.5em 0.5em;
	box-sizing: border-box;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	border:  1px solid #0c219c;
	background-color: #FFFFFF;
}
}



/*------------------------------------------------
	Form
-------------------------------------------------*/

.form_wrap {
	width: 100%;
	border: 12px solid #0c219c;
	box-sizing: border-box;
	background-color: #FFFFFF;
}

.form_box select {
	width: auto;
	margin-bottom: 0.8em;
	box-sizing: border-box;
	padding: 0.3em 0.5em;
	border: 1px solid #0c219c;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}

.form_box2 {
	width: 100%;
	box-sizing: border-box;
	padding: 1.0em 1.2em;
	border: 1px solid #0c219c;
}

.form_txt {
	font-size: 0.9em;
}

.form_input2 {
	width: 70%;
	border: 1px solid #0c219c;
	padding: 0.5em;
	font-size: 1.5em;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}


.form_input3 {
	width: 100%;
	border: 1px solid #0c219c;
	padding: 0.5em;
	font-size: 0.8em;
	box-sizing: border-box;
	background-color: #FFFFFF;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}

.form_input4 {
	max-width: 100%;
	border: 1px solid #0c219c;
	padding: 0.5em;
	font-size: 0.8em;
	box-sizing: border-box;
	background-color: #FFFFFF;
}


.mi {
	font-size: 1.2em;
	color: #021CA1;
	width: 100%;
	margin-bottom: 1.5em !important;
	border-bottom: 2px solid #021CA1;
	text-align: center;
}

.mi2 {
	font-size: 1.2em;
	color: #E00003;
	width: 100%;
	margin-bottom: 1.5em !important;
	border-bottom: 1px solid #E00003;
	text-align: center;
}

.mi3 {
	font-size: 1.2em;
	width: 100%;
	margin-bottom: 1.5em !important;
	border-top: 2px solid;
	border-bottom: 2px solid;
	padding: 0.3em;
	box-sizing: border-box;
}


.mi4 {
	font-size: 1.2em;
	width: 100%;
	margin-bottom: 0.4em !important;
	border-top: 2px solid;
	border-bottom: 2px solid #021CA1;
	padding: 0.3em;
	box-sizing: border-box;
	color: #021CA1;
}



/*------------------------------------------------
	Link
-------------------------------------------------*/


a:link, a:visited {
	color: #000000;
	text-decoration: none;
}


@media (max-width: 640px) {
a:link, a:visited {
	color: #000000;
	text-decoration: none;
	font-size: 0.7em;
}
}

a:hover, a:active {
	color: #666666;
	font-weight: bold;
	text-decoration: none;
}




.cdtbox {
	width: 100%;
	z-index: 10001;
   	position: fixed;
	top: 0;
	left: 0;
}
 
.CDT {
	height: 80px;
}
 
@media (max-width: 640px) {
.CDT {
	height: 40px;
}
}

#timer {
	color: #FFFE3F;
	padding: 0.5em 0;
	width: 100%;
	text-align: center;
	font-size: 3.0em;
	font-weight: bold;
	background-color: #0c219c;
}

@media (max-width: 640px) {
#timer {
	color: #FFFE3F;
	padding: 0.5em 0;
	width: 100%;
	text-align: center;
	font-size: 1.0em;
	font-weight: bold;
	background-color: #0c219c;
}
}


.hr{
	color: #D80102;
	border-style: dashed;
　 　font-size: 2px;
	
   }

.tmargin {
	margin-top: 80px;
}

@media (max-width: 640px) {
.tmargin {
	margin-top: 40px;
}
}

/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc { display: block !important; }
.sp { display: none !important; }
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 750px) {
.pc { display: none !important; }
.sp { display: block !important; }
}


/* ぷるぷる */
@keyframes puru {
  0% {transform: rotate(3deg);}
  13% {transform: rotate(-3deg);}
  25% {transform: rotate(3deg);}
  33% {transform: rotate(-3deg);}
  34% {transform: rotate(0deg);}
  100% {transform: rotate(0deg);}
}


.puru-01 {
  animation: puru 1.5s infinite alternate;
}