@charset "UTF-8";
/* CSS Document */
/*common*/
@font-face {
    font-family: 'mamelon';
    src: url('../font/Mamelon-5-Hi-Regular.eot') format('eot'),
         url('../font/Mamelon-5-Hi-Regular.woff') format('woff2'),
		 url('../font/Mamelon-4HiRegular.eot') format('eot'),
         url('../font/Mamelon-4HiRegular.woff2') format('woff2');
}
html {
    font-size: 62.5%;
}
body {
    position: relative;
    font-feature-settings: "palt";
    letter-spacing: 0.05em;
    line-height: 1.5;
    font-size: 1.6rem;
    font-family:  'Noto Sans Japanese',sans-serif;
    font-weight: 600;
    font-style: normal;
}
strong{
	font-size: 3.3rem;
	font-weight: bold;
}

.section-block {
    padding: 60px 0;
}
.wrap {
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
	overflow: hidden;
}
.red {
    color: #f94146;
}
.bold {
    font-weight: bold;
}
.marker {
    background: linear-gradient(transparent 60%,#ffc845 60%);
}
.text-center {
    text-align: center;
}
.text-right {
    text-align: right;
}
.caution {
    font-size: 1.2rem;
}
.caution::before {
    content: "※";
    display: inline-block;
}
.pconly {
    display: block;
}
.sponly {
    display: none;
}
.effect-fade {
    opacity : 0;
    transform : translate(0, 45px);
    transition : all .8s;
}
.effect-fade.effect-scroll {
    opacity : 1;
    transform : translate(0, 0);
}
.effect > .effect-fade.effect-scroll:nth-of-type(2) {
	-moz-transition-delay:200ms;
	-webkit-transition-delay:200ms;
	-o-transition-delay:200ms;
	-ms-transition-delay:200ms;
	}
/* 3つ目の要素に400msのdelayをかける */
.effect > .effect-fade.effect-scroll:nth-of-type(3) {
	-moz-transition-delay:400ms;
	-webkit-transition-delay:400ms;
	-o-transition-delay:400ms;
	-ms-transition-delay:400ms;
	}
/* 4つ目の要素に400msのdelayをかける */
.effect > .effect-fade.effect-scroll:nth-of-type(4) {
	-moz-transition-delay:400ms;
	-webkit-transition-delay:600ms;
	-o-transition-delay:600ms;
	-ms-transition-delay:600ms;
	}
/*
h2 {
    letter-spacing: 0.05em;
}
*/
.sec-ttl{
	margin-bottom:50px;	
}
.sec-ttl img{
	margin:0 auto;
}
.btn-area {
    display: flex;
    justify-content: center;
}

.btn-area a{
    padding: 10px 0;
	text-align: center;
    color: #fff;
    transition: .4s;
	background: rgb(0,219,0);
	background: linear-gradient(194deg, rgba(0,219,0,1) 0%, rgba(0,185,0,1) 100%);
	display: inline-block;
	position: relative;
	font-size: 2.2rem;
	overflow: hidden;
	display: flex;
	line-height: 3em;
	box-shadow: 0 4px 0 #1b6b1b;
	border-radius: 10px;
	
}
/*
.btn-area a::before {
	position: absolute;
	content:"";
	width:80px;
	height:80px;
	display: inline-block;
	top:10%;
	left:3%;
}
*/
.btn-area a:hover {
    opacity: .5;
    transform: translateY(6px);
	box-shadow: none;
}
.btn-area a::after {
	position: absolute;
	display: inline-block;
    background: url("../images/btn-deco-min.png") no-repeat;
	content:"";
	width:29px;
	height:31px;
	top:30%;
	right:5%;
	
}
.lineicon{
	width:15%;
	padding:0 3rem;
}

/*header*/
.header-pc {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background: #fff;
    padding: 16px 0;
    box-sizing: border-box;
    z-index: 10000;
}
.header-sp {
    display: none;
}
h1 p{
	padding-left:7rem;
	font-size:14px;
/*	margin-top:-10px;*/
	white-space: nowrap;
}
.header-pc .wrap{
    max-width: 100%;
    padding: 0 50px;
    box-sizing: border-box;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.header-pc h1 {
    width: 300px;
}
.header-pc .btn-area {
    width: 80%;
    justify-content: flex-end;
    box-sizing: border-box;
}
.header-pc .btn-area a {
    padding: 10px 40px;
}
.header-pc .btn-area .telbtn {
    margin-right: 30px;
}
.header-pc .btn-area .phone-num,
.btn-area .mail-num{
    font-size: 1.6rem;
}
.header-pc .btn-area .phone-num {
    font-size: 2.2rem;
    line-height: 1;
}
footer {
    background-color: #dbc6ff;
    padding: 40px 0 20px;
}
small {
    display: block;
    text-align: center;
    font-size: 1.4rem;
    color: #fff;
    margin: 40px 0 0;
}
.footer-bar {
    display: none;
}

#page_top {
/*    position: relative;*/
    background-color: #ffc845;
    border-radius: 50px;
    width: 50px;
    height: 50px;
    position: fixed;
    right: 10px;
    bottom: 10px;
    z-index: 200;
    display: none;
}
#page_top::before {
    display: inline-block;
    font-family: 'Font Awesome 5 Free';
    content: "\f106";
    font-weight: 900;
    font-size: 2rem;
    color: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
}

@media screen and (max-width:768px) {
    .big {
        font-size: 7rem;
    }
	h1 p{
	padding-left:4rem;

	}
    .wrap {
        padding: 0 20px;
        box-sizing: border-box;
    }
    .header-pc h1 {
        width: 250px;
    }
    .header-pc .wrap {
        padding: 0 20px;
    }
    .btn-area a::after {
/*
        right: 2px;
        width: 13px;
        height: 13px;
*/
    }
	.btn-area a{
		font-size: 1.8rem;
	}

/*
	.btn-area a::before{
		background-size: 60%;
		top:15%;
	}
*/
	.btn-area a::after{
		background-size: 70%;
		top:40%;
	}
	.lineicon{
		
		padding:0 2rem;
	}
    
}
@media screen and (max-width:425px) {
	.pconly {
        display: none;
    }
    .sponly {
        display: block;
    }
    .wrap {
        width: 100%;
        padding: 0 16px;
        box-sizing: border-box;
    }
	.sec-ttl{
		margin-bottom:25px;
	}
	h1 p{
	padding-left:4rem;
	font-size:1rem;
	margin-top:-10px;
	}
    .section-block {
        padding: 40px 0;
    }
    .header-pc {
        display: none;
    }
    .header-sp {
        display: block;
        background-color: #fff;
        padding: 16px;
        text-align: center;
    }
    .header-sp a {
        display: block;
        margin: 0 auto;
        width:60%;
    }
	.btn-area a::after{
		right:0;
	}
	.btn-area a{
		line-height: 3.5em;
		font-size: 2rem;
	}
    .btn-area {
        width: 100%;
    }
	.lineicon{
		width:40px;
		height:40px;
		padding:2rem 1rem 1rem 1rem;
	}
    .footer-bar {
        opacity: 0;
        display: block;
        position: fixed;
        background: rgba(126,206,244,0.8);
        bottom: 0;
        left: 0;
        width: 100%;
        z-index: 1000;
        padding: 16px 0;
        transition: .4s;
    }
    .footer-bar .btn-area {
        display: flex;
        justify-content: space-between;
    }
    .footer-bar .btn-area a {
        display: block;
        width: 48%;
        box-sizing: border-box;
        padding: 4px;
    }
    .page .footer-bar {
        display: none;
    }
	#page_top{
		height:0;
	}

}

@media screen and (max-width:375px) {
    .footer-bar .btn-area .phone-num,
    .footer-bar .btn-area .mail-num {
        font-size: 1.6rem;
    }
    .btn-area .telbtn::after {
        right: 4px;
    }
	.lineicon{
		width:35px;
		height:35px;
		padding:2rem .8rem;
	}
}
@media screen and (max-width:360px){
	.lineicon{
		padding:1rem .5rem;
	}
	.btn-area a::after{
		top:35%;
	}
}

























