@charset "UTF-8";
/* CSS Document */

html{font-size: 62.5%;
	padding: 0;
	margin: 0;}

body{font-size:1.5rem;
	font-family: noto-sans-cjk-jp,sans-serif;
	font-weight: 400;
	font-style: normal;
	color:#808080;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	letter-spacing: 0.1em;
}

section,article{
	width:900px;
	margin: 0 auto;}

main{display: block;}

a{color: inherit;transition-duration: .3s;transition-timing-function: ease-in-out;}
a:hover{opacity: .5;}

img{max-width: 100%;}

.sp{display: none;}

/*

font-family: noto-sans-cjk-jp,sans-serif;
font-weight: 400;
font-style: normal;

font-family: noto-sans-cjk-jp,sans-serif;
font-weight: 700;
font-style: normal;

font-family: fot-tsukubrdgothic-std,sans-serif;
font-weight: 700;
font-style: normal;

font-family: yu-mincho-pr6n,sans-serif;
font-weight: 400;
font-style: normal;
*/

.btn a{display: inline-flex;width: 320px;height: 60px;
	justify-content: center;align-items: center;position: relative;
	background: #fff;color: #a0643c;padding-right: 30px;font-size: 1.6rem;
	border: 1px solid #a0643c;border-radius: 10px;box-sizing: border-box;}

.btn a:after{content: "";width: 7px;height: 13px;
	position: absolute;top: calc(50% - 6px);right: 25px;
	background: url("../img/common/webp/arrow01.webp") center/100%;}
.no-webp .btn a:after{background: url("../img/common/arrow01.png") center/100%;}


/*  header-------------------------------------*/
header{padding: 18px 30px;width: 100%;position: absolute;top: 0;left: 0;z-index: 99;}

header .right{display: flex;height: 60px;color: #a0643c;
	position: fixed;top: 0;right: 30px;}
header .right .yoyaku{margin-right: 20px;}
header .right .yoyaku a{display: flex;justify-content: center;align-items: center;
	height: 100%;padding: 0 25px 0 35px;font-size: 1.6rem;
	background: linear-gradient(50deg,#fdfdcc 10%,#faaabe 100%);
	border-radius: 0 0 10px 10px;}
header .right .yoyaku a:before,
header .right .yoyaku a:after{content: "";display: inline-block;}

header .right .yoyaku a:before{width: 19px;height: 18.5px;margin-right: 12px;
	background: url("../img/common/webp/ico-yoyaku.webp") center/100% no-repeat;}
header .right .yoyaku a:after{width: 6px;height: 12px;margin-left: 15px;
	background: url("../img/common/webp/arrow01.webp") center/100% no-repeat;}

.no-webp header .right .yoyaku a:before{background: url("../img/common/ico-yoyaku.png") center/100% no-repeat;}
.no-webp header .right .yoyaku a:after{background: url("../img/common/arrow01.png") center/100% no-repeat;}

header input{display: none;}
header .right label{width: 70px;font-size: 1.2rem; display: flex;
	flex-direction: column;justify-content: center;align-items: center;
	background: #faaabe;border-radius: 0 0 10px 10px;position: relative;z-index: 999;}
header .right label:before,
header .right label span:before,
header .right label span:after{content: "";display: block; width: 34px;height: 1px;
	background: #a0643c;margin-bottom: 5px;
	transition-duration: .4s;transition-timing-function: ease-in-out;}

header .right .gnav{width: 350px;height: auto; background: #faaabe;
	display: flex;justify-content: space-between;
	padding: 70px 50px 50px;border-radius: 0 0 10px 10px;
	position: fixed;top: 0;right: -100%;z-index: 99;
	transition-duration: .4s;transition-timing-function: ease-in-out;}
header .right ul:first-child{margin-right: 40px;}
header .right ul li a{display: block;white-space: nowrap;min-width: 180px;
	border-bottom: 1px solid #fff;padding: 20px 0 10px; color: #fff;}

/*元々の色味の茶色　#a0643c*/

header input:checked ~ .gnav{right: 30px;}
header input:checked ~ label:before{opacity: 0;}
header input:checked ~  label span:before{transform: rotate(45deg)translate(-1px,-1px);}
header input:checked ~  label span:after{transform: rotate(-45deg)translate(6px,-5px);}

/*  footer-------------------------------------*/
footer .news{display: flex;
	padding: 95px 0 50px;border-bottom: 1px solid #f3f3f3;}

footer .news .tit{display: flex;justify-content: center;align-items: center;
	width: 100px;height: 60px;background: #a0643c;color: #fff;border-radius: 10px;
	margin-right: 20px;flex-shrink: 0;}

footer .news ul{margin-right: 40px;overflow: hidden;}
footer .news ul li:first-child{margin-bottom: 10px;}
footer .news ul li a{display: block; white-space: nowrap;overflow: hidden;text-overflow: ellipsis}
footer .news ul span{margin-right: 1em;}

footer .news .btn{margin-left: auto;flex-shrink: 0;}
footer .news .btn a{width: 250px;}

footer .sitemap{padding: 100px 0 100px;display: flex;justify-content: space-between;align-items: center;}
footer .sitemap ul{border-left: 1px solid #a0643c;font-size: 1.4rem;
	column-count: 3;margin-left: 50px; padding-left: 50px;}
footer .sitemap ul li{line-height: 2.3;}
footer .copy{color: #a0643c; text-align: center;padding: 10px 0;
	background: linear-gradient(50deg,#fdfdcc 10%,#faaabe 100%);}

body{
    scroll-behavior: smooth;
}

.page-top{
    z-index: 90;
    position: fixed;
    bottom: 10px;
    right: 10px;
    width: 60px; 
    height: 60px; 
    border-radius: 50%;
    text-align: center;
    background: #fff; 
    border: 1px solid #a0643c;
}

.page-top a{
    width: 100%;
}

.page-top a .fa-arrow-up{
    display: inline-block;
    width: 100%;
    color: #a0643c;
}

.page-top a span{
    font-size: 12px;
    font-weight: 700;
    color: #a0643c;
    line-height: 1.1;
    display: inline-block;
}


/* 2022 05 16 追記-------------------- */
header .right .yoyaku a{ width: 275px; padding: 0 10px 0 0; letter-spacing: 0;
	box-sizing: border-box; flex-wrap: wrap; flex-direction: column;
	background: #ff6677; color: #fff; font-weight:400; font-size: 1.3rem; position: relative; }
header .right .yoyaku a strong{ display: block; font-size: 1.6rem; font-weight: 700; }

header .right .yoyaku a:before{ content: none; }
header .right .yoyaku a span{ position: relative; padding: 0 0 0 30px; }
header .right .yoyaku a span:before{ content: ""; width: 19px; height: 18.5px; margin-right: 12px;
	background: url("../img/common/webp/ico-yoyaku02.webp") center/100% no-repeat;
	position: absolute; left: 0; top: 50%; transform: translateY(-50%); }
header .right .yoyaku a:after{ background: url(../img/common/webp/arrow02.webp) center/100% no-repeat;
	position: absolute; right: 20px; top: 50%; transform: translateY(-50%); }

.no-webp header .right .yoyaku a span:before{background: url("../img/common/ico-yoyaku02.png") center/100% no-repeat;}
.no-webp header .right .yoyaku a:after{background: url("../img/common/arrow02.png") center/100% no-repeat;}

/*  responsive ------------------------------------------------------------*/
@media screen and (max-width:599px){
	
	.pc{display: none;}
	.sp{display: initial}
	
	.btn a{width: 90vw;justify-content: flex-start;padding-left: 5vw;}
	
	section,article{width:100%;padding-left: 5vw;padding-right: 5vw;}
		
	header{padding: 15px;}
	header .logo img{width: 37vw;}
	header .right{right: 0;}
	
	header .right .yoyaku{width: 100%;height: 60px;
		position: fixed;left: 0;bottom: 0;z-index: 99;}
	header .right .yoyaku a{border-radius: 0;}

	
	header .right label{border-radius: 0 0 0 10px;}
	header input:checked ~ .gnav{right: 0;}
	header .right .gnav{display: block;width: auto;height: auto;
		padding: 10vh 5vw 8vh;border-radius: 0 0 0 10px;}
	
	footer .news{display: block;padding: 70px 5vw 75px;border: none;}
	footer .news .tit{width: 100%;height: 40px;margin: 0 0 25px;}
	footer .news ul{margin: 0 0 50px;}
	footer .news ul span{display: block; margin-right: 0;}
	footer .news .btn a{width: 100%;}
	
	footer .sitemap{display: block;padding: 0px 5vw 50px;}
	footer .sitemap .logo{text-align: center;margin-bottom: 30px;}
	
	footer .sitemap ul{margin-left: 0;padding-left: 0;border-left: none;column-count:auto;}
	footer .sitemap ul a{display: block;border-bottom: 1px solid #a0643c;padding: 10px 0;position: relative;}
	footer .sitemap ul a:after{content: "";width: 7px;height: 13px;
		position: absolute;right: 0;top: 20px;
		background: url("../img/common/arrow01.png")center/100%;}
	footer .copy{background: none;color: #808080;padding-bottom: 70px;}
    .page-top{bottom: 70px;}
	
	/* 2022 05 16 追記-------------------- */
	header .right .yoyaku a{ width: 100%; padding: 0; }
	header .right .yoyaku a span{ padding: 0 40px; }
	
}