/* -------------------------------------------
共通
-------------------------------------------*/
body{
	font-size: 1.0em;
	font-weight: 400;
	/* font-family: "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; */
	font-family: "メイリオ", Meiryo, "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height: 140%;
}

p{
	margin: 0;
	padding: 0;
	line-height: 1.8;
}

figure{
	margin: 0;
	padding: 0;
	font-size:0;
}

figure img{
	width: 100%;
}

ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
}

main {
	/* max-width: 1024px; */
	margin: 0 auto;
	
}

.pc{
	display: block;
}
.sp{
	display: none;
}
.clearfix:before,
.clearfix:after {
    content: " "; 
    display: table;
}

.clearfix:after {
    clear: both;
}


@media (max-width: 680px) {
	.pc{
		display: none;
	}
	.sp{
		display: block;
	}
	
}

.center {
	text-align: center;
}


.wrapper {
    display: block;
	max-width: 1024px;
	position: relative;
	margin: 0 auto;
}

a{
	text-decoration: none;
	color: #333;
}

.attention{
	color:#FF0000;
}

@media (max-width: 860px) {
	.wrapper {
		width: 96%;
	}
}
@media (max-width: 680px) {
	.wrapper {
			padding: 0 6% 0 6%;
	}
}


/* フッター */
footer　h2{
	text-align: center;
}

.telnum {
	display:inline-block;
	font-size: 35px;
	font-weight: 900;
	line-height: 0.6;
	position: relative;
	vertical-align: middle;
	margin-right: 10px;
}

.telnum span {
    font-size: 12px;
	font-weight: 400;
}

.telnum:before {
	content:"";
	display:inline-block;
	width:0.7em;
	height:1em;
	background: url("../img/icon_tel.png") no-repeat;
	background-size:contain;
	position: absolute;
	top: 1px;
	left: -34px;
}


@media (max-width: 680px) {
	.telnum {
		margin: 0 0 20px 10px;
	}

}

.form{
	display: inline-block;
    background: #FFF;
    padding: 10px 35px 10px 58px;
    margin-left: 17px;
    display: inline-block;
	text-decoration: none;
	vertical-align: super;
	border: 2px solid #669900;
}

.form a  {
	text-decoration: none;
}


.form a span {
	color:#669900;
	position: relative;
	font-weight: 600;
}

.form a span:before {
	content: "";
    display: inline-block;
    width: 1em;
    height: 1em;
    background: url(../img/icon_mail.png) no-repeat;
    background-size: contain;
    position: absolute;
	top: 3px;
    left: -30px;
}

@media (max-width: 680px) {
	.form {
		margin-left: 0;
	}
}

.policy {
	background: linear-gradient(#F0F2F4, transparent);
	padding: 28px 0 30px 0;
	display: block;
	text-align: center;
	font-size: 13px;
}

#sitelogo{
	margin:0 0 10px;
}
a.text_link{
	position: relative;
	display:inline-block;
	padding: 0 0 0 15px;
	margin: 20px 0 0 ;
}
a.text_link:before{
	position: absolute;
    margin: auto;
    content: "";
    vertical-align: middle;
    top: 30%;
    left: 0px;
    width: 8px;
    height: 8px;
    border-top: 2px solid #44b034;
    border-right: 2px solid #44b034;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

p.copy {
	text-align: center;
	margin: 15px 0 0 0;
}


@media (max-width: 680px) {
	p.copy {
		margin-top: 10px;
	}

}
.online{
	width:40%;
	border: 4px solid #ffe100;
	border-radius: 10px;
	background: #FFF;
	padding: 20px 10px 18px;
	position: relative;
	margin: 50px auto 0;
}
.online p{
	font-size:23px;
	font-weight: 600;
	margin:0;
	line-height: 1.4;
}

.online ul.list {
    margin: 10px auto;
    width: 85%;
}
.online ul{
	text-align: left;
	font-size:18px;
}

.online:before {
	content: "";
    position: absolute;
    top: -53px;
    left: 50%;
    margin-left: -20px;
    border: 25px solid transparent;
    border-bottom: 35px solid #FFF;
    z-index: 2;
  }
  
  .online:after {
	content: "";
    position: absolute;
    top: -60px;
    left: 50%;
    margin-left: -20px;
    border: 25px solid transparent;
    border-bottom: 35px solid #ffe100;
    z-index: 1;
  }

@media all and (max-width: 860px) {
	.online{
		width:80%;
		padding: 20px 40px 10px;
	}
}
@media all and (max-width: 680px) {
	.online{
		width:100%;
		padding: 20px 20px 10px;
	}
	.online p{
		font-size:26px;
	}
	.online p br{
		display:none;
	}

	.online ul.list {
		width: 100%;
	}
}

footer{
	display:block;
}
#finfo {
	display: block;
    padding: 40px 20px;
    text-align: center;
    font-size: 1em;
    background-size: 200px;
}
#finfo img.f_ttl{
	width: 550px;
	margin:0 0 20px;
}
#finfo .tel {
	display: block;
	margin: 0 0 10px;
	font-size: 30px;
} 
#finfo .tel span{
	margin: 0 0 0 30px;
	font-size: 46px;
}

#finfo h2 {
	font-size: 1.7em;
}

@media all and (max-width: 680px) {
.or {
	font-size: 1.3em;
	display: block;
	margin-bottom: 15px;
}
}
a.btn_contact{
	display:inline-block;
	background: #44b034;
	color:#FFF;
	padding: 20px 60px;
	margin:20px 0;
	font-size: 20px;
	text-decoration: none;
	border-radius: 10px;
	position: relative;
}
a.btn_contact:before{
	position: absolute;
    margin: auto;
    content: "";
    vertical-align: middle;
    top: 40%;
    right:20px;
    width: 15px;
    height: 15px;
    border-top: 2px solid #FFF;
    border-right: 2px solid #FFF;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
a:hover.btn_contact{
	opacity: 0.8;
}
a.btn_contact:hover:before{
    transition: all  0.6s ease;
    right:15px;
}

#finfo .copy {
	margin: 10px 0 0;
}
@media all and (max-width: 1024px) {
	#finfo {
	    background-size: 160px;
	}
}
@media all and (max-width: 860px) {
	#finfo {
	    background-size: 140px;
	}
}
@media all and (max-width: 680px) {
	#finfo {
	    padding: 20px 20px 20px;
	    background-size: 100px;
	}
	#finfo img.f_ttl{
		width: 100%;
	}
	#finfo .tel span {
	    margin: 0;
	    display: block;
	}
	#fnav {
    	padding: 0 20px 10px;
    }
    #fnav ul {
    	margin: 15px auto 0;
    }
    #fnav ul li {
	    display: inline-block;
	    float: none;
	}
	#fnav ul li a {
	    padding: 5px 10px;
	    margin: 0 0 0;
	}
}

ul.list{
	margin: 20px 0;
}
ul.list li{
	margin: 0 0 10px;
	padding: 0 0 0 20px;
	position: relative;
	display: block;
	overflow: hidden;
}
ul.list li:before{
	display: inline-block;
	width: 10px;
	height: 10px;
	content: '';
	border-radius: 100%;
	background: #44b034;
	margin: 0 10px 0 -20px;
	
}

