@charset "utf-8";
/* CSS Document */

/* Google fonts import */

@import url("https://fonts.googleapis.com/earlyaccess/sawarabimincho.css"); /* mincho [font-family: "Sawarabi Mincho";] */
@import url("https://fonts.googleapis.com/earlyaccess/notosansjapanese.css"); /* gothic [font-family: "Noto Sans Japanese";] */
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;700&display=swap&subset=japanese');

/*■reset----------------------------------------------*/
*{
	padding:0;
	margin:0;
}
h1,h2,h3,h4,h5,h6{
	font-size:14px;
	font-weight:normal;
}
ul,ol,li{
	list-style-type:none;
}
a{
	font-size:14px;
	transition:all 0.5s;
	color:#2A6BA8;
}
a:hover{
	opacity:0.68;
}
img{
	border:none;
	display:block;
}
p{
	font-size:14px;
	line-height:140%;
}

body{
    font-family: "Noto Serif JP", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", 游明朝, YuMincho, HG明朝E, "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-family: 'Noto Serif JP', serif;
	background:#FFFFFF;
	padding-top:80px;
}
body.Pop{
	padding-top:80px;
}

br.sp{
	display:none;
}
br.pc{
	display:block;
}


@media screen and (max-width: 600px) {
	body,
	body.Pop{
		padding-top:60px;
	}
	br.sp{
		display: block;
	}
    br.pc{
	display:none;
}
}






/* Header
------------------------------------------------ */
header{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	background:#FFFFFF;
	z-index:100;
}
header .Area{
	width:100%;
	height:60px;
	padding:10px 0;
	position:relative;
}
header .Area a.Logo{
	width:400px;
	height:60px;
	display:block;
	margin-left:15px;
}
header .Area a.Logo img{
	width:100%;
}
@media screen and (max-width: 600px) {
	header .Area{
		height:52px;
		padding:4px 0;
	}
	header .Area a.Logo{
		width:210px;
		height:auto;
		margin-left:4px;
		margin-top:9px;
	}
}



header .Area ul.Cta{
	width:400px;
	height:80px;
	position:absolute;
	top:0;
	right:0;
	overflow:hidden;
}
header .Area ul.Cta li{
	float:left;
	width:200px;
	height:80px;
	display:block;
	overflow:hidden;
	position:relative;
}
header .Area ul.Cta li img{
	display:block;
	width:100%;
}
header .Area ul.Cta li a{
	display:block;
}

header .Area ul.Minlink{
	width:120px;
	position:absolute;
	top:15px;
	right:430px;
	text-align:right;
}
header .Area ul.Minlink li{
	margin-bottom:5px;
}
header .Area ul.Minlink li a{
	color:#19785c;
	padding-left:20px;
	font-size:15px;
	background:url(../_img/l_allow.png) no-repeat left center;
	text-decoration:none;
}
@media screen and (max-width: 600px) {
	header .Area ul.Cta,
	header .Area ul.Minlink{
		display:none;
	}
}



header .Area ul.Spb{
	display:none;
}
@media screen and (max-width: 600px) {
	header .Area ul.Spb{
		position:absolute;
		top:0;
		right:0;
		width:150px;
		display:flex;
		flex-wrap:wrap;
		justify-content:space-between;
	}
	header .Area ul.Spb li{
		width:50px;
		display:inline-block;
		position:relative;
		overflow:hidden;
	}
	header .Area ul.Spb li a{
		width:50px;
		display:block;
	}
	header .Area ul.Spb li a#SPM{
		width:50px;
		height:60px;
		background:url(../_img/spb_menu.png) no-repeat left top;
		background-size:50px;
	}
	header .Area ul.Spb li a#SPM.ac{
		background:url(../_img/spb_menu_c.png) no-repeat left top;
		background-size:50px;
	}
	header .Area ul.Spb li a#SPM:hover{
		opacity:1;
	}
	header .Area ul.Spb li a img{
		width:100%;
		display:block;
	}
}



header .Navi{
	width:100%;
	border-top:solid 2px #115f48;
	border-bottom:solid 2px #115f48;
	background-color:#19785C;
	background:url(../_img/gbg.jpg) no-repeat center center;
}
header .Navi ul{
	display: flex;
	flex-wrap:wrap;
	justify-content:space-between;
}
header .Navi ul li{
	width:10%;
}
header .Navi ul li.spOn{
	display:none;
}
header .Navi ul li a{
	color:#FFFFFF;
	text-align:center;
	display:block;
	width:100%;
	text-decoration:none;
	padding:21px 0;
	font-size:17px;
}
header .Navi ul li a:hover{
	background:rgba(0,0,0,0.28);
	opacity:1;
}
/*
header .Navi ul li:nth-child(8) a,
header .Navi ul li:nth-child(9) a,
header .Navi ul li:nth-child(10) a{
	pointer-events:none;
	color:rgba(255,255,255,0.25);
}
*/
@media screen and (max-width: 600px) {
	header .Navi{
		display:none;
		background-color:#19785C;
		background:url(../_img/gbg_sp.jpg) no-repeat center center;
		background-size:cover;
		padding-bottom:30px;
	}
	header .Navi ul li{
		width:50%;
	}
	header .Navi ul li.spOn{
		display:block;
	}
	header .Navi ul li.spOn.one{
		width:100%;
	}
	header .Navi ul li a{
		display:block;
		width:84%;
		padding:14px 0;
		font-size:12px;
		border-bottom:solid 1px rgba(255,255,255,0.5);
		margin:auto;
	}
	header .Navi ul li.spOn.one a{
		color:#226D53;
		background:rgba(255,255,255,0.92);
		border-bottom:none;
		position:relative;
		margin-top:20px;
	}
	header .Navi ul li.spOn.one a::after{
		content:"";
		display: block;
		width:5px;
		height:5px;
		border-top:1px solid #226D53;
		border-right:1px solid #226D53;
		-webkit-transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		-o-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		transform: rotate(45deg);
		position: absolute;
		right:10px;
		top:55%;
		margin-top:-7px;
	}
	/*
	header .Navi ul li:nth-child(8) a,
	header .Navi ul li:nth-child(9) a,
	header .Navi ul li:nth-child(10) a{
		border-bottom:solid 1px rgba(255,255,255,0.05);
	}
	*/
}












/* Slider
------------------------------------------------ */

.slider {
	margin: 0;
}
.slider img {
	width: 100%;
	height: auto;
}
.slick-prev::before, .slick-next::before {
	font-size: 24px;
}
.lazy-item .slick-next,
.thumb-item-nav .slick-next,
.multiple-item .slick-next,
.center-item .slick-next {
	right: 20px;
	z-index: 99;
}
.lazy-item .slick-prev,
.thumb-item-nav .slick-prev,
.multiple-item .slick-prev,
.center-item .slick-prev {
	left: 15px;
	z-index: 100;
}
.single-item .slick-prev::before,
.single-item .slick-next::before {
	color: #666;
}








.Read{
	background:#ebf4eb;
	padding:3px 0;
	/* border-top: solid 1px #333; */
	border-bottom: solid 1px #868686;
}
.Read img{
	display:block;
	margin:auto;
	max-width:100%;
}
@media screen and (max-width: 600px) {
	.Read{
		/* border-top:solid 2px #D1CBBA; */
		border-bottom: solid 1px #868686;
	}
}






.Info{
	width:100%;
	padding:40px 0;
	background:#FFFFFF;
}
.Info .Area{
	max-width:1080px;
	margin:auto;
	width:92%;
}
.Info .Area img.Tx{
	display:block;
	max-width:100%;
	margin:auto;
}
.Info .Area p{
	font-size:18px;
	color:#214731;
	text-align:center;
}
.Icta{
	width:94%;
	margin:50px auto 20px auto;
	border-top:solid #927750 1px;
	padding-top:40px;
	text-align:center;
}
.Icta li{
	width:380px;
	display:inline-block;
	position:relative;
	overflow:hidden;
	margin:0 15px;
}
.Icta li a{
	display:block;
}
.Icta li a img{
	width:100%;
}
@media screen and (max-width: 600px) {
	.Info .Area p{
		font-size:14px;
	}
	.Icta{
		width:94%;
		margin:50px auto 20px auto;
		border-top:solid #927750 1px;
		padding-top:40px;
		text-align:center;
	}
	.Icta li{
		width:280px;
		display:inline-block;
		position:relative;
		overflow:hidden;
	}
	.Icta li a{
		display:block;
	}

}

/* Low */
.Info.Low{
	width:100%;
	padding:40px 0;
	background:#F7F7F7;
	margin-top:100px;
}
.Info.Low .Icta{
	margin:10px auto;
	border-top:none;
	padding-top:0px;
}













.Cap{
	background:#EFEFEF;
	padding:15px 0;
}
.Cap div{
	width:90%;
	max-width:1180px;
	margin:auto;
}
.Cap div p{
	font-size:10px;
}
.Cap div p.Ykoku{
	font-size:12px;
	margin-bottom:24px;
	line-height:155%;
    
    display: none;
}
.Cap div p.Ykoku span{
	font-size:12px;
	font-weight:bold;
	padding:1px 5px;
	border:solid 1px #333;
	display:inline-block;
}









footer{
	background:#FFFFFF;
	padding:20px 0;
}
footer .Area{
	max-width:1180px;
	margin:auto;
	position:relative;
}
footer .Area a.Tel{
	display:block;
	width:100%;
	max-width:320px;
	cursor:default;
}
footer .Area a.Tel:hover{
	opacity:1;
}
footer .Area a.Tel img{
	width:100%;
}

footer .Area ul{
	position:absolute;
	top:15px;
	right:0;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}
footer .Area ul li{
	width:180px;
	margin:0 10px;
}
footer .Area ul li a{
	width:180px;
	font-size:10px;
	color:#333333;
	text-decoration:none;
	display:block;
}
footer .Area ul li a img{
	width:100%;
}
@media screen and (max-width: 1140px) {
	footer .Area a.Tel{
		margin:20px auto;
	}
	footer .Area ul{
		width:100%;
		margin:25px auto;
		position: static;
		text-align:center;
		display:block;
	}
	footer .Area ul li{
		margin-bottom:15px;
		display:inline-block;
		text-align:left;
	}
}

@media screen and (max-width: 600px) {
	footer .Area a.Tel{
		display:block;
		width:300px;
		margin:20px auto;
	}
	footer .Area a.Tel:hover{
		opacity:1;
	}
	footer .Area a.Tel img{
		width:100%;
	}
	footer .Area ul{
		width:320px;
		margin:25px auto;
		position: static;
		display:flex;
		flex-wrap:wrap;
		justify-content:space-between;
	}
	footer .Area ul li{
		width:150px;
		margin:0 5px;
		margin-bottom:15px;
	}
	footer .Area ul li a{
		width:150px;
		font-size:10px;
		letter-spacing:-1px;
		color:#333333;
		text-decoration:none;
		display:block;
	}
}



address{
	background:#383838;
	color:#FFFFFF;
	text-align:center;
	font-size:10px;
	font-style:normal;
	padding:12px 0;
	letter-spacing:1px;
	
}
@media screen and (max-width: 600px) {
address{
	letter-spacing:0;
	
}

}




/*--------------------
      Btn Light
--------------------*/

.reflection {
    height      :100%;
    width       :30px;
    position    :absolute;
    top         :-180px;
    left        :0;
    background-color: #FFF;
    opacity     :0;
    transform: rotate(45deg);
    animation: reflection 2s ease-in-out infinite;
    -webkit-transform: rotate(45deg);
    -webkit-animation: reflection 3s ease-in-out -1s infinite;
    -moz-transform: rotate(45deg);
    -moz-animation: reflection 3s ease-in-out -1s infinite;
    -ms-transform: rotate(45deg);
    -ms-animation: reflection 3s ease-in-out -1s infinite;
    -o-transform: rotate(45deg);
    -o-animation: reflection 3s ease-in-out -1s infinite;
}
 
@keyframes reflection {
    0% { transform: scale(0) rotate(45deg); opacity: 0; }
    80% { transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { transform: scale(4) rotate(45deg); opacity: 1; }
    100% { transform: scale(50) rotate(45deg); opacity: 0; }
}
@-webkit-keyframes reflection {
    0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
}
@-moz-keyframes reflection {
    0% { -moz-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -moz-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -moz-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -moz-transform: scale(50) rotate(45deg); opacity: 0; }
}
@-ms-keyframes reflection {
    0% { -ms-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -ms-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -ms-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -ms-transform: scale(50) rotate(45deg); opacity: 0; }
}
@-o-keyframes reflection {
    0% { -o-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -o-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -o-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -o-transform: scale(50) rotate(45deg); opacity: 0; }
}




/* voice banner */
.VoiceBanner{
	display:block;
	width:90%;
	max-width:768px;
	margin:20px auto;
	transition:all 0.5s;
	box-shadow:0 2px 3px rgba(0,0,0,0.15);
}
.VoiceBanner:hover{
	opacity:0.68;
}
.VoiceBanner img{
	display:block;
	width:100%;
}



/* NEW -----------------------------------------------------------*/
.reflection-img{
	width:36px;
	height:18px;
	position:absolute;
	left:12px;
	top:13px;
	overflow:hidden;
	box-shadow:1px 1px 2px rgba(0,0,0,0.25);
}
.reflection-img .new{
	width:36px;
	height:18px;
	background-color:#CC0000;
    background:-moz-linear-gradient(-135deg, #BD2629, #C9585A);
    background:-webkit-linear-gradient(left, #BD2629, #C9585A);
    background:-o-linear-gradient(-135deg, #BD2629, #C9585A);
    background:-ms-linear-gradient(-135deg, #BD2629, #C9585A);
    background:linear-gradient(-135deg, #BD2629, #C9585A);
	color:#FFF;
	line-height:18px;
	font-size:10px;
	letter-spacing:1px;
	text-align:center;
	font-family: "Noto Sans Japanese";
	text-shadow:1px 1px 2px rgba(0,0,0,0.15);
	border-radius:1px;
}
.reflection-img .reflections {
    height      :100%;
    width       :36px;/* 親スタイルに合わせる */
    position    :absolute;
    top         :-90px;
    left        :0;
    background-color: #FFF;
    opacity     :0;
    transform: rotate(45deg);
    animation: reflections 2s ease-in-out infinite;
    -webkit-transform: rotate(45deg);
    -webkit-animation: reflections 3s ease-in-out -1s infinite;
    -moz-transform: rotate(45deg);
    -moz-animation: reflections 3s ease-in-out -1s infinite;
    -ms-transform: rotate(45deg);
    -ms-animation: reflections 3s ease-in-out -1s infinite;
    -o-transform: rotate(45deg);
    -o-animation: reflections 3s ease-in-out -1s infinite;
}
 /* アニメーション　記述 ------------------------------------------------------*/
@keyframes reflections {
    0% { transform: scale(0) rotate(45deg); opacity: 0; }
    80% { transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { transform: scale(4) rotate(45deg); opacity: 1; }
    100% { transform: scale(50) rotate(45deg); opacity: 0; }
}
@-webkit-keyframes reflections {
    0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
}
@-moz-keyframes reflections {
    0% { -moz-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -moz-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -moz-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -moz-transform: scale(50) rotate(45deg); opacity: 0; }
}
@-ms-keyframes reflections {
    0% { -ms-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -ms-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -ms-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -ms-transform: scale(50) rotate(45deg); opacity: 0; }
}
@-o-keyframes reflections {
    0% { -o-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -o-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -o-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -o-transform: scale(50) rotate(45deg); opacity: 0; }
}

header .Navi ul li:nth-of-type(5) a{
    font-size: 12px;
}
header .Navi ul li a {
    height: 76px;
    box-sizing: border-box;
    position:relative;
}


header .Navi ul li:nth-child(1) a::before,
header .Navi ul li:nth-child(6) a::before {
    content: "NEW";
    position: absolute;
    top: -2px;
    left: 3px;
    display: inline-block;
    background-color: rgb(171 0 9);
    font-size: 10px;
    padding: 3px 3px;
    line-height: 10px;
    color: #ffffff;
    letter-spacing: 1px;
    z-index: 2;
}


@media screen and (max-width: 600px) {
header .Navi ul li a {
    height: auto;
}

header .Navi ul li:nth-child(1) a::before,
header .Navi ul li:nth-child(6) a::before {
    top: 50%;
    margin-top:-10px;
}

}