@charset "utf-8";
@media screen and (max-width:768px){
body {
	font-size:14px;
}

img{
	max-width:100%;
}


.only_pc{
	display:none !important;
}
.only_smart{
	display:block !important;
}
.only_smart_i{
	display:inline-block !important;
}


#wrapper{
	min-width:auto;
	min-width:initial;
}


/* header */
header{
	width:auto;
	margin:auto;
	padding:10px 0 0;
	overflow:hidden;
}
header img{
	width:100px;
	float:left;
	margin-left:10px;
}
header p{
	margin:0 10px 0 0;
	float:right;
	font-size:10px;
	font-weight:bold;
	text-align:right;
	line-height:1.2;
}
header ul{
	width:100%;
	padding-top:10px;
	clear:both;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
}
header ul li{
	width:33.333%;
	line-height:30px;
	font-size:14px;
	font-weight:bold;
	color:#fff;
}
header ul li:first-child{
	background-color:#0080D7;
}
header ul li:nth-child(2){
	background-color:#7E5AB2;
}
header ul li:last-child{
	background-color:#008086;
}



/* article */
article{
}


/* .appli */
.appli{
	padding:15px 5%;
	background-color:#FFBE00;
}
.appli section{
	width:auto;
	margin:auto;
	padding:5% 8%;
	background-color:#fff;
	font-weight:bold;
}
.appli section h2{
	display:inline-block;
	position:relative;
}
.appli section h2:before{
	content:'';
	display:block;
	width:55px;
	height:70px;
	background:url(../images/appli_icon.png)no-repeat center top;
	background-size:100% auto;
	position:absolute;
	right:88%;
	top:-30px;
}
.appli section h2 span{
	display:block;
	font-size:14px;
}
.appli section p{
	margin-top:10px;
	font-size:16px;
}
.appli section p span{
	margin:10px 0;
	display:block;
	font-size:12px;
}
.appli section a{
	display:inline-block;
	width:90%;
	min-width:240px;
	line-height:60px;
	background-color:#FF008E;
	color:#fff;
	font-size:18px;
	font-weight:bold;
}
.appli section a img{
	width:25px;
	margin-right:5px;
}


/* #mv */
#mv{
	position:relative;
}
#mv div{
	width:50%;
	padding:17% 0 10px;
	background:url(../images/mv_appli.png)no-repeat center top;
	background-size:100% auto;
	position:absolute;
	left:45%;
	top:42%;
}
#mv div a{
	display:inline-block;
	width:84%;
	line-height:25px;
	padding:1% 0;
	background-color:#FF008E;
	color:#fff;
	font-size:13px;
	letter-spacing:-0.05em;
	font-weight:bold;
}


/* .cont */
.cont{
}
.cont h2{
	margin-bottom:20px;
	line-height:60px;
	font-size:18px;
	color:#fff;
	position:relative;
	background:#005AD8;
}
.cont h2:after{
	content:'';
	display:block;
	width:100%;
	height:20px;
	background:url(../images/blue_h2_arrow.png)no-repeat center top;
	background-size:5% auto;
	position:absolute;
	top:100%;
}



/* #cont1 */
#cont1{
}
#cont1 h2{
	margin-bottom:0;
	background:#000 url(../images/cont1_h2.png) center top;
	background-size:5% auto;
	line-height:1.5;
	padding:10px 0;
}
#cont1 h2:after{
	content:'';
	display:block;
	width:100%;
	height:35px;
	background:url(../images/cont1_h2_arrow.png)no-repeat center top;
	background-size:5% auto;
	position:absolute;
	top:100%;
}
#cont1 figure{
	background:#F8F4F3 url(../images/cont1_bg.png)no-repeat center bottom;
	background-size:100% 100%;
}


/* #cont2 */
#cont2{
}
#cont2 ul{
	width:auto;
	margin:auto;
	padding:0 5%;
	display: block;
}
#cont2 ul li{
	width:auto;
	padding:5%;
	margin-top:10px;
}
#cont2 ul li h3{
	margin-bottom:10px;
	display:inline-block;
	font-size:21px;
	color:#474342;
	position:relative;
}
#cont2 ul li h3:before{
	content:'';
	display:block;
	width:23px;
	height:27px;
	background:url(../images/cont2_check.png)no-repeat center top;
	background-size:100% auto;
	position:absolute;
	right:108%;
	top:-1px;
}
#cont2 ul li p{
	text-align: justify;
	text-justify: inter-ideograph;
	letter-spacing:-0.05em;
}
#cont2 > p{
	margin-top:-5%;
}


/* #cont3 */
#cont3{
	padding:20px 0 20px;
	background:url(../images/cont3_bg.png)no-repeat center center;
	background-size:cover;
	overflow:hidden;
}
#cont3 h2{
	margin-bottom:30px;
}
#cont3 h2 img{
	width:60%;
	max-width:300px;
}
#cont3 ol{
	width:520px;
	margin:auto;
}
#cont3 ol li{
	width:140px;
	display:inline-block;
	vertical-align:top;
	margin:0 10px 20px;
	text-align:center;
}
#cont3 ol li img{
	width:80px;
}
#cont3 ol li p{
	margin-top:10px;
	font-weight:bold;
	text-align: justify;
	text-justify: inter-ideograph;
	letter-spacing:-0.03em;
}
#cont3 ol li p span{
	color:#FF0093;
}
#cont3 > p{
	width:70%;
	margin:20px auto 0;
	padding:15px 10%;
	background-color:#fff;
	font-size:15px;
	font-weight:bold;
	text-align: justify;
	text-justify: inter-ideograph;
	border-radius:10px;
	position:relative;
}
#cont3 > p img{
	width:80px;
	position:absolute;
	left:88%;
	top:auto;
	bottom:-20px;
}


/* #cont4 */
#cont4{
	padding:0 0 50px;
	background:url(../images/cont4_bg.png)no-repeat center 50px;
	background-size:cover;
	overflow:hidden;
}
#cont4 figure{
	padding:0 5%;
}
#cont4 figure figcaption{
	margin-bottom:5px;
	font-size:16px;
	font-weight:bold;
}
#cont4 div{
	width:80%;
	margin:30px auto 0;
	padding:5px 3%;
	background-color:rgba(255,255,255,0.8);
	border:3px solid #FF0093;
	border-radius:8px;
	position:relative;
}
#cont4 div p{
	margin:10px 0;
	font-size:15px;
	font-weight:bold;
	text-align: left;
}
#cont4 div p span{
	background:url(../images/cont4_line.png)repeat-x left top;
	background-size:auto 19px;
}
#cont4 div img{
	width:90px;
	position:absolute;
	left:80%;
	bottom:-100px;
}


/* #cont5 */
#cont5{
	background:url(../images/cont5_bg.png)no-repeat center 50px;
	background-size:cover;
	overflow:hidden;
}
#cont5 ul{
	width:500px;
	margin:auto;
}
#cont5 ul li{
	width:140px;
	margin:4px 2px;
	line-height:40px;
	font-size:14px;
	font-weight:bold;
	color:#fff;
	display:inline-block;
	white-space:nowrap;
	letter-spacing:-0.03em;
}
#cont5 p{
	margin:20px 5%;
	font-size:16px;
	font-weight:bold;
	text-align: justify;
	text-justify: inter-ideograph;
}
#cont5 > img{
	width:80%;
}


/* #cont6 */
#cont6{
	padding-bottom:30px;
}
#cont6 h3{
	margin-top:30px;
	font-size:18px;
	line-height:1.2;
}
#cont6 h3 span{
	width:50px;
	margin-bottom:5px;
	line-height:20px;
	display:inline-block;
	vertical-align:middle;
	margin-right:20px;
	background-color:#FF008E;
	font-size:12px;
	font-weight:bold;
	color:#fff;
	position:relative;
}
#cont6 h3 span:after{
	content:'';
	display:inline-block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 0 10px 10px;
	border-color: transparent transparent transparent #FF008E;;
	position:absolute;
	left:100%;
}
#cont6 dl{
	width:90%;
	margin:10px auto;
}
#cont6 dl dt,
#cont6 dl dd{
	overflow:hidden;
}
#cont6 dl dt{
	margin-bottom:10px;
	padding-bottom:10px;
	border-bottom:1px solid;
}
#cont6 dl dt span{
	width:50px;
	height:50px;
	background-color:#FF8500;
	color:#fff;
	font-size:16px;
	font-weight:bold;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	float:left;
}
#cont6 dl dd span{
	width:50px;
	height:50px;
	line-height:1.2;
	background-color:#00B900;
	color:#fff;
	font-size:16px;
	font-weight:bold;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	float:left;
}

#cont6 dl dt p,
#cont6 dl dd p{
	padding:0 0 0 60px;
	text-align:left;
	font-size:14px;
}


/* #cont7 */
#cont7{
	padding-bottom:50px;
}
#cont7 ul{
	width:90%;
	margin:8% auto 5%;
	display: block;
}
#cont7 ul li{
	width:60px;
	margin:10px;
	position:relative;
	display:inline-block;
	vertical-align:top;
}
#cont7 ul li:before{
	content:'';
	display:block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 0 10px 10px;
	border-color: transparent transparent transparent #000;
	position:absolute;
	right:107%;
	top:20px;
}
#cont7 ul li:first-child:before{
	content:none;
}
#cont7 ul li figure figcaption{
	margin-top:10px;
	font-size:12px;
	font-weight:bold;
	line-height:1.2;
}
#cont7 p{
	font-size:16px;
	font-weight:bold;
}
#cont7 p span{
	color:#FF008E;
	display:block;
}


/* #cont8 */
#cont8{
	padding:25px 5%;
	background-color:#EAEAEA;
}
#cont8 h2{
	margin-bottom:15px;
	font-size:18px;
}
#cont8 dl{
	width:auto;
	margin:auto;
	font-size:14px;
	text-align:left;
}
#cont8 dl dt{
	float:none;
	font-weight:bold;
}
#cont8 dl dd{
	margin-bottom:5px;
	padding:0 0 5px 0;
	border-bottom:1px solid #000;
}
#cont8 dl dd:last-of-type{
	border-bottom:none;
}
#cont8 section{
	width:auto;
	margin:30px auto 0;
	overflow:hidden;
}
#cont8 section h3{
	margin-bottom:20px;
	line-height:30px;
	background-color:#727171;
	color:#fff;
}
#cont8 section figure{
	width:150px;
	float:right;
	margin:0 0 10px 10px;
}
#cont8 section figure figcaption{
	margin-top:5px;
	font-size:16px;
}
#cont8 section figure figcaption span{
	font-size:12px;
	margin-right:15px;
}
#cont8 section p{
	margin-bottom:20px;
	font-size:14px;
	text-align: justify;
	text-justify: inter-ideograph;
	line-height:1.7;
}


/* #contact/#confirm */
#contact,
#confirm,
#thanks{
	width:auto;
	margin:auto;
	padding:20px 5%;
}
#contact h2,
#confirm h2,
#thanks h2{
	margin-bottom:10px;
	font-size:18px;
}
#contact h2 + span{
	display:block;
	color:#FF008E;
	text-align:right;
}
#contact form dl,
#confirm form dl{
	width:100%;
	margin-bottom:20px;
	text-align:left;
}
#contact form dl dt,
#confirm form dl dt{
	display:block;
	min-width:auto;
	min-width:initial;
	padding-left:10px;
	line-height:30px;
	font-weight:bold;
	position:static;
	float:none;
	background-color:#EAEAEA;
}
#contact form dl dt.hissu:after{
	content:'※';
	color:#FF008E;
	position:static;
	left:auto;
}
#contact form dl dd{
	min-height:50px;
	margin-bottom:5px;
	padding:0px 10px 10px 10px;
	background-color:#EAEAEA;
}
#confirm form dl dd{
	min-height:25px;
	margin-bottom:5px;
	padding:0px 10px 10px 10px;
	background-color:#EAEAEA;
}

#contact section{
	height:280px;
	overflow-y:scroll;
	-webkit-overflow-scrolling: touch;
	margin-top:30px;
	padding:10px;
	font-size:12px;
	text-align: justify;
	text-justify: inter-ideograph;
	border:1px solid #ccc;
}
#contact section h3{
	font-size:16px;
}
#contact section h3 + p{
	margin:20px 0;
}
#contact section > dl > dd{
	margin-bottom:20px;
}
#contact section > dl > dd ul{
	margin-top:10px;
	padding-left:1.5em;
}
#contact section > dl > dd ul li{
	list-style:disc;
}
#contact section > dl > dd h4{
	margin:10px 0;
	padding-left:0;
	font-size:14px;
	font-weight:bold;
}
#contact section > dl > dd dl{
	padding-left:0;
}
#contact section > dl > dd dl dt{
	float:none;
	font-weight:bold;
}
#contact section > dl > dd dl dt:after{
	content:none;
}
#thanks p{
	display:inline-block;
	text-align:left;
}



/* テキストボックス */
input[type="text"],
input[type="email"],
input[type="tel"]{
	width:100%;
	font-size:16px;
	height:40px;
	padding:0 10px;
	background-color:#fff;
	border:1px solid #000;
}

/* テキストエリア */
textarea{
	width:100%;
	min-height: 130px;
	font-size:16px;
	padding:10px;
	border-radius: 2px;
	background-color:#fff;
	color:#000;
	border:1px solid #000;
	font-weight:normal;
}

/* チェックボックス */
input[type="checkbox"] {
	display:none;
}
input[type="checkbox"] + span{
	display:inline-block;
	position: relative;
	font-weight:bold;
}
input[type="checkbox"] + span:before{
	content:'';
	display:inline-block;
	width: 27px;
	height: 27px;
	margin-right:10px;
	background-color: #FFFFFF;
	border: 1px solid #000;
	-webkit-box-shadow: inset 3px 3px 8px rgba(0,0,0,0.1);
	box-shadow: inset 3px 3px 8px rgba(0,0,0,0.1);
	vertical-align: middle;
	cursor: pointer;
	outline : none;
}
input[type="checkbox"]:checked + span:after {
	content:'';
	display: block;
	width: 12px;
	height: 25px;
	position: absolute;
	top: calc(50% - 17px);
	left: 7px;
	border-right: 4px solid #f00;
	border-bottom: 4px solid #f00;
	content: '' !impo3tant;
	-webkit-transform: rotate(45deg) !important;
	-ms-transform: rotate(45deg) !important;
	transform: rotate(45deg) !important;
}

/* ボタン */
#contact input[type="submit"]{
	display:block;
	width:100%;
	margin:20px auto 0;
	line-height:60px;
	font-size:14px;
	font-weight:bold;
	background-color:#FF008E;
	color:#fff;
	border-radius:2px;
	cursor:pointer;
}
#confirm input[type="submit"]{
	display:inkline-block;
	width:45%;
	margin:20px 5px;
	line-height:60px;
	font-size:16px;
	font-weight:bold;
	background-color:#FF008E;
	color:#fff;
	border-radius:2px;
	cursor:pointer;
}
#confirm input[type="button"]{
	display:inkline-block;
	width:45%;
	margin:20px 5px;
	line-height:60px;
	font-size:16px;
	font-weight:bold;
	background-color:#005AD8;
	color:#fff;
	border-radius:2px;
	cursor:pointer;
}
input[type="submit"]:hover{
	opacity:0.7;
}




/* footer */
footer{
}


/* top_top */
#topbtn{
	width:40px;
	line-height:40px;
	font-size:18px;
	border-radius:50%;
	color:#fff;
	background-color:rgba(0,0,0,0.5);
	position:fixed;
	z-index:101;
	right:10px;
	bottom:-150px;
	-webkit-transition: bottom 0.8s;
	-moz-transition: bottom 0.8s;
	-ms-transition: bottom 0.8s;
	transition: bottom 0.8s;
}




}





@media screen and (max-width:520px){
#cont3 ol{
	width:280px;
	margin:auto;
	text-align:left;
}
#cont3 ol li{
	width:125px;
	display:inline-block;
	vertical-align:top;
	margin:0 5px 10px;
	text-align:center;
}

#cont5 ul{
	width:300px;
}


#cont7 ul{
	width:280px;
}

}