/* layout mobile
--------------------------------------------------*/
@media screen and (max-width: 640px) {
body{
    min-width:100%;
}

body div{
	font-size:14px;
}

.main{
    height:auto;
	overflow:visible;
}

.main_img{
	position:relative;
	width:100%;
	left:0;
	margin-left:0;
	display:block;
}


/* コンテンツ01 */
.contents01{
	width:100%;
	height:auto;
    background-image:url("../images/sp_ct01_bg.gif");
    background-position:top center;
	background-size:100% auto;
	padding-top:14%;
	padding-bottom:14%;
}

.contents01 h2 img{
	width:100%;
}

.ct01_caption{
	display:block;
	margin:0 auto 7%;
}

.ct01_read{
	height:auto;
	display:block;
	margin:0 auto 0;
	color:#828282;
	font-size:3.8vw;
	line-height:2;
	letter-spacing:0;
}

.ct01_point_set{
	width:100%;
	margin:0 auto 0;
	text-align:center;
}

.ct01_point_box{
	float:none;
	margin-left:auto;
	display:inline-block;
	margin-top:4%;
}

.ct01_point_box:nth-child(1){
	margin-left:auto;
	margin-top:4%;
}

.ct01_point_box img{
	height:19vw;
}

.ct01_point_text{
	position:absolute;
	margin-left:0%;
	margin-top:4%;
	width:100%;
	height:19vw;
	display:table;
}

.ct01_point_text_inner{
	width:100%;
	height:auto;
	display:table-cell;
	text-align:center;
	vertical-align:middle;
	font-size:3.8vw;
	letter-spacing:0;
	color:#ee4d5f;
	line-height:1;
}


/* コンテンツ02 */
.contents02{
	width:100%;
	padding-top:14%;
	padding-bottom:14%;
	background:#fcfcfc;
}

.contents02 h2 img{
	width:100%;
}

.ct02_caption{
	display:block;
	margin:0 auto 7%;
}

.c02_attention{
	color:#999999;
	font-size:3.8vw;
	font-weight:normal;
	letter-spacing:1px;
	margin-bottom:8%;
	display:block;
}

.ct02_point_set{
	width:100%;
	margin:0 auto 0;
}

.ct02_point_box{
	float:none;
	margin-left:0;
	margin-top:4%;
}

.ct02_point_box:nth-child(1){
	margin-left:0;
}

.ct02_sp_bg{
	width:100%;
}

.ct02_point_text{
	position:absolute;
	margin-left:53%;
	margin-top:19%;
	width:auto;
	text-align:left;
}

.ct02_point_text02{
	margin-top:13%;
}

.ct02_point_text_inner{
	display: inline-block;
	text-align: left;
}

.ct02_point_text_box{
	font-size:3.5vw;
	line-height:1;
	color:#828282;
	letter-spacing:1px;
	margin-top:14%;
	display:inline-block;
	font-weight:normal;
}


/* コンテンツ03 */
.contents03{
	width:100%;
	padding-top:14%;
	padding-bottom:14%;
	background:#e9effb;
    background-image:url("../images/sp_ct03_bg.jpg");
    background-position:top center;
	background-repeat:no-repeat;
	background-size:100% auto;
	text-align:center;
}

.contents03 h2 img{
	width:100%;
}

.ct03_btn{
	font-size:4.7vw;
	color:#e8557e;
	display:inline-block;
	line-height:1;
	letter-spacing:1px;
	width:auto;
	text-align:center;
	border:1px solid #efb4c9;
	text-decoration:none;
	transition-duration:0.2s;
	padding:3% 18%;
}

.ct03_btn:hover{
	color:#e8557e;
	background:none;
}

.ct03_sp_btn{
	display:none;
}


/* コンテンツ03_set */

.toggle_area{
	padding-bottom:0;
}

.ct03_set{
	width:90%;
	text-align:center;
	margin:7% auto 7%;
	background-color: rgba(255,255,255,0.8);
	padding:7% 0;
	color:#828282;
	font-size:3.8vw;
	line-height:2;
}

.anime_set{
	margin-top:7%;
	margin-bottom:7%;
	display:inline-block;
}

.anime_set .anime01{
	float:none;
	margin-right:0;
}

.anime_set .anime01 img{
	width:75%;
	margin-right:7%;
	margin-bottom:7%;
}

.anime_set .anime02{
	float:none;
}

.anime_set .anime02 img{
	width:75%;
	margin-left:7%;
	margin-top:7%;
}


/* コンテンツ04 */
.contents04{
	width:100%;
	padding-top:14%;
	padding-bottom:14%;
	background:#f8f8f8;
    background-image:url("../images/sp_ct04_bg.jpg");
    background-position:top center;
	background-repeat:no-repeat;
	background-size:100% auto;
	text-align:center;
}

.contents04 h2 img{
	width:100%;
}

.ct04_photo_set{
	width:100%;
	margin:-3% auto 0;
	overflow:hidden;
}

.ct04_photo_box:nth-child(odd){
	width:47%;
	float:left;
	margin-left:2%;
	margin-right:-2%;
}

.ct04_photo_box:nth-child(even){
	width:47%;
	float:right;
	margin-left:-2%;
	margin-right:2%;
}


.ct04_photo_box:nth-child(1){
	margin-top:0;
}


.ct04_photo_box:nth-child(2){
	margin-top:17%;
}


.ct04_photo_box:nth-child(3){
	margin-top:5%;
}


.ct04_photo_box:nth-child(4){
	margin-top:5%;
}


.ct04_photo_box:nth-child(5){
	margin-top:5%;
}

.ct04_photo_box:nth-child(6){
	margin-top:5%;
}



.ct04_photo_box img{
	width:100%;
}

.ct04_name{
	font-size:5vw;
	color:#e8557e;
	letter-spacing:1px;
	margin-bottom:4%;
	margin-top:2%;
}

.ct04_text{
	font-size:3.4vw;
	color:#828282;
	line-height:1.7;
}

.ct04_foot{
	width:100%;
	background:#ffffff;
}

.ct04_foot img{
	width:15%;
}



/* コンテンツ05 */
.contents05{
	padding-top:9%;
	padding-bottom:14%;
}

.ct05_caption{
	width:100%;
	display:block;
	margin:0 auto 6%;
}

.ct05_photo_set{
	width:100%;
	text-align:center;
}

.ct05_photo_set_inner{
	display:block;
}

.ct05_photo{
	width:100%;
	float:none;
}

.ct05_text_set{
	float:none;
	text-align:center;
	margin-left:0;
	margin-top:3%;
	color:#464647;
}

.ct05_caption02{
	font-size:6vw;
	font-weight:bold;
	letter-spacing:4px;
}


.ct05_read{
	font-size:4vw;
	font-weight:bold;
	letter-spacing:2px;
	margin-top:4%;
	margin-bottom:2%;
}

.ct05_read:hover{
	text-decoration:underline;
}

.ct05_mark{
	width:100%;
}











/* ここからテンプレートエリア */
.nav_set{
    display:none;
}

.mobile_nav{
    display:block;
}

.menu_detail{
	width:100%;
	margin:0;
}

.menu_detail img{
    display:none;
}

.menu_detail .menu01 img{
    display:block;
}

.menu a:nth-child(1) img{
	margin-left:14px;
}

.mobile_menu{
    position:absolute;
    margin-top:-43px;
    right:14px;
    display:block;
    cursor:pointer;
}

.mobile_menu img{
    display:block;
}


.mobile_menu_detail{
    position:absolute;
    width:100%;
    background:#2a7622;
    z-index:1;
    text-align:left;
}

.mobile_menu_detail a{
    padding:14px;
    display:block;
    font-size:14px;
    color:#ffffff;
    text-decoration:none;
    border-top:solid 1px #90b382;
}

.mobile_menu_detail span.mobile_menu_close{
    padding:14px;
    display:block;
    font-size:14px;
    color:#ffffff;
    text-align:center;
    cursor:pointer;
    border-top:solid 1px #90b382;
}

	
#spWrapper #spHeader {
	width:100%;
}

#spWrapper #spHeader p {
	left:auto;
	right:10px;
}
#spWrapper #spHeader div {
	top:40px;
	left:auto;
	right:10px;
}

.qa{
    width:85%;
    background:#ffffff;
    border-radius:10px;
    margin:0 auto 20px;
    text-align:left;
    padding:15px;
}

.qa02{
    width:85%;
    background:#fafafa;
    border-radius:10px;
    margin:0 auto 0;
    text-align:left;
    padding:15px;
}

.attention{
	width:90%;
    text-align:right;
    font-size:10px;
    color:#666666;
    margin:0 auto 0;
}

.qa02_image{
    padding:15px 10px;
    margin-top:5px;
    float:none;
    text-align:center;
}
.qa02_text01{
    font-size:14px;
    margin-left:20px;
    margin-right:20px;
    margin-bottom:20px;
    float:none;
}
.qa02_text02{
    font-size:14px;
    margin-left:20px;
    display:block;
    float:none;
}

.clm{
    width:90%;
    padding-right:10px
    padding-left:10px;
    border:solid 10px #c6c3aa;
    background:#ffffff;
    margin-top:60px;
    margin:0 auto 0;
}

div#sns {
	width:100%;
    margin:auto;
	margin-left:-10px;
}

.rps_del{
    display:none;
}

#mb_footer{
	display:block;
}
#pc_footer{
	display:none;
}

#pagetop {
	width:auto;
	height:auto;
	padding-right:10px;
}
#spWrapper #spFooter ul {
	width:300px;
}
#spWrapper #spFooter ul li {
	margin-top:10px;
}
#spWrapper #spFooter p.copyright {
	width:100%;
}
.rps_visible{
    display:block;
}

.sec-contact{width:90%;margin:-20px auto 0;}
.sec-contact .sec-inner{padding-top:45px;padding-bottom:45px}
.sec-contact .sec-inner:before,.sec-contact .sec-inner:after{content:"";display:block}
.sec-contact .sec-inner:after{clear:both}
.sec-contact h3{padding:10px;background:#aeaeae;text-align:center;color:#fff;font-weight:normal;font-size:14px;}
.sec-contact .contact{padding:15px;background:#fff}
.sec-contact .contact:before,.sec-contact .contact:after{content:"";display:block}
.sec-contact .contact:after{clear:both}
.sec-contact .contact dl{width:90%;margin:auto;float:none}
.sec-contact .contact dl:before,.sec-contact .contact dl:after{content:"";display:block}
.sec-contact .contact dl:after{clear:both}
.sec-contact .contact dl .tel-text{width:30px;height:17px;margin:0px auto 10px;float:none;overflow:visible;font-size:0;text-indent:100%;white-space:nowrap;outline:none;background:url(../../images/faq-text1.png) no-repeat 0 0;display:block;;background-size:100% auto;}
.sec-contact .contact dl .tel-number{width:200px;height:35px;margin:7px auto 0;;float:none;overflow:visible;font-size:0;text-indent:100%;white-space:nowrap;outline:none;background:url(../../images/faq-text2.png) no-repeat 0 0;background-size:100% auto;}
.sec-contact .contact .contact-text{width:100%;height:16px;margin-top:10px;overflow:hidden;font-size:0;text-indent:100%;white-space:nowrap;outline:none;background:url(../../images/faq-text3.png) no-repeat 0 0;background-size:100% auto;}
.sec-contact .privacy-text{margin:0 0 0 0; display:block;}
.sec-contact .privacy-text:before,.sec-contact .privacy-text:after{content:"";display:block}
.sec-contact .privacy-text:after{clear:both}
.sec-contact .privacy-text dt{float:none;font-weight:bold;font-size:12px;margin-right:0;margin-top:10px;}
.sec-contact .privacy-text dd{font-size:12px}
.sec-contact .privacy-text dd a{color:#ff6666}.sec-contact .privacy-text dd a:hover{text-decoration:none}

}

@media	screen	and	(max-width:	480px)	{
#spWrapper #spHeader {
	width: auto;
}
#spWrapper #spHeader h1 {
	width: 160px;
	height: 56px;
	background-size: 100% auto;
}
#spWrapper #spHeader h1 a {
	width: 100%;
	height: 100%;
}
#spWrapper #spHeader p {
	display:none;
}
#spWrapper #spHeader div {
	right: 8px;
	top: 10px;
}
}
