@charset "utf-8";

@font-face{
	font-family:'Zen Kaku Gothic New';
	font-style:normal;
	font-weight:500;
	font-display:swap;
	src:url('font/ZenKakuGothicNew-Medium.woff2') format('woff2'),url('font/ZenKakuGothicNew-Medium.woff') format('woff'); 
	}
@font-face{
	font-family:'Zen Kaku Gothic New';
	font-style:normal;
	font-weight:700;
	font-display:swap;
	src:url('font/ZenKakuGothicNew-Bold.woff2') format('woff2'),url('font/ZenKakuGothicNew-Bold.woff') format('woff'); 
	}
@font-face{
	font-family:'Noto Serif JP';
	font-style:normal;
	font-weight:500;
	font-display:swap;
	src:url('font/NotoSerifJP-Medium.woff2') format('woff2'),url('font/NotoSerifJP-Medium.woff') format('woff'); 
	}
@font-face{
	font-family:'Oswald';
	font-style:normal;
	font-weight:400;
	font-display:swap;
	src:url('font/Oswald-Regular.woff2') format('woff2'),url('font/Oswald-Regular.woff') format('woff'); 
	}
@font-face{
	font-family:'Montserrat';
	font-style:normal;
	font-weight:300;
	font-display:swap;
	src:url('font/Montserrat-Light.woff2') format('woff2'),url('font/Montserrat-Light.woff') format('woff'); 
	}
@font-face{
	font-family:'Montserrat';
	font-style:normal;
	font-weight:600;
	font-display:swap;
	src:url('font/Montserrat-SemiBold.woff2') format('woff2'),url('font/Montserrat-SemiBold.woff') format('woff'); 
	}

body,div,
h1,h2,h3,h4,h5,h6,
p,blockquote,pre,address,
ul,ol,li,dl,dt,dd,
table,th,td,
form,fieldset,legend,strong{
	margin:0;
	padding:0;
	color:#32281E;
	line-height:1.4;
	font-family:"Zen Kaku Gothic New",Helvetica,Lucida Grande,Verdana,Arial,"メイリオ",Meiryo,"ヒラギノ角ゴPro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック",sans-serif;
	font-size:18px;
	font-weight:500;
	letter-spacing:0.07em;
	}
span,input,textarea{
	font-family:"Zen Kaku Gothic New",Helvetica,Lucida Grande,Verdana,Arial,"メイリオ",Meiryo,"ヒラギノ角ゴPro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック",sans-serif;
	}
table{
	border-collapse:collapse;
	border-spacing:0;
	}
img{
	border:0;
	display:block;
	font-size:0;
	line-height:0;
	max-width:100%;
	height:auto;
	}
a:hover img{
	filter:alpha(opacity=80);
	-moz-opacity:0.8;
	opacity:0.8;
	}
li{
	list-style-type:none;
	}
p{
	line-height:2.3;
	text-align:justify;
	text-justify:inter-ideograph;
	}
a{
	text-decoration:none;
	color:#CC4D1A;
	}
a:hover{
	text-decoration:underline;
	color:#CC7625;
	}
/* RESET HTML5 */
article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;font:inherit;vertical-align:baseline;}
/* HTML5 display-role reset for older browsers */
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block;}

#headbg{
	display:flex;
	padding:0 60px 0px 60px;
	max-width:1300px;
	margin:0 auto;
	}
#head-main{
	max-width:980px;
	width:-webkit-calc(100% - 300px);
	width:calc(100% - 300px);
	min-height:100vh;
	position:relative;
	z-index:100;
	padding:0 0 250px 100px;
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-o-box-sizing:border-box;
	-ms-box-sizing:border-box;
	}
#head-side{
	width:300px;
	position:relative;
	z-index:100;
	}
#head-side:after{
	content:"";
	display:block;
	width:300px;
	height:10px;
	background-color:#FFF;
	position:absolute;
	left:0;
	bottom:-10px;
	}
#head-side header{
	top:40px;
	position:sticky;
	background-color:#FFF;
	border-radius: 18px 18px 0px 0px / 18px 18px 0px 0px;
	-moz-border-radius: 18px 18px 0px 0px / 18px 18px 0px 0px;
	-webkit-border-radius: 18px 18px 0px 0px / 18px 18px 0px 0px;
	-o-border-radius: 18px 18px 0px 0px / 18px 18px 0px 0px;
	-ms-border-radius: 18px 18px 0px 0px / 18px 18px 0px 0px;
	padding:55px 35px 230px 35px;
	min-height:-webkit-calc(100vh - 40px);
	min-height:calc(100vh - 40px);
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-o-box-sizing:border-box;
	-ms-box-sizing:border-box;
	-webkit-box-shadow:0px 0px 8px 0 rgba(0,0,0,0.08);
	-moz-box-shadow:0px 0px 8px 0 rgba(0,0,0,0.08);
	box-shadow:0px 0px 8px 0 rgba(0,0,0,0.08);
	}
#head-side header h1 a{
	width:180px;
	display:block;
	margin:0 auto;
	}
#head-side header nav{
	padding-top:40px;
	}
#head-side header ul{
	border-top:1px solid #E1E1E1;
	}
#head-side header ul li{
	font-size:18px;
	font-weight:700;
	}
#head-side header ul li a{
	display:block;
	color:#32281E;
	padding:18px 40px 17px 20px;
	border-bottom:1px solid #E1E1E1;
	position:relative;
	}
#head-side header ul li a:hover{
	background-color:#FAEEE9;
	text-decoration:none;
	color:#CC4D1A;
	}
#head-side header ul li a:before{
	content:"";
	display:block;
	position:absolute;
	right:18px;
	top:50%;
	margin-top:-8px;
	width:18px;
	height:18px;
	background-color:#CC4D1A;
	border-radius:100px;
	-webkit-border-radius:100px;
	-moz-border-radius:100px;
	-o-border-radius:100px;
	-ms-border-radius:100px;
	}
#head-side header ul li a:after{
	content:"";
	display:block;
	position:absolute;
	right:25px;
	top:50%;
	margin-top:-2px;
	width:4px;
	height:4px;
	border-top:2px solid #FFF;
	border-right:2px solid #FFF;
	-moz-transform:rotate(45deg);
	-webkit-transform:rotate(45deg);
	-o-transform:rotate(45deg);
	-ms-transform:rotate(45deg);
	transform:rotate(45deg);
	}
#head-side header h2{
	padding-top:40px;
	}
#head-side header h2 strong{
	font-size:18px;
	font-weight:700;
	color:#1A468C;
	display:inline-block;
	padding:6px 15px 6px 15px;
	border-radius:100px;
	-webkit-border-radius:100px;
	-moz-border-radius:100px;
	-o-border-radius:100px;
	-ms-border-radius:100px;
	background-color:#DDE3EE;
	letter-spacing:0.04em;
	}
#head-side header h2 a{
	font-size:30px;
	color:#32281E;
	font-family:'Oswald';
	font-weight:400;
	display:inline-block;
	margin-top:3px;
	padding-left:45px;
	background:url(img/common/tel.webp) no-repeat 5px 9px;
	-webkit-background-size:31px 24px;
	background-size:31px 24px;
	}
#head-side header h2 a:hover{
	text-decoration:none;
	filter:alpha(opacity=80);
	-moz-opacity:0.8;
	opacity:0.8;
	}
#head-side header h3{
	text-align:center;
	font-size:18px;
	letter-spacing:0.04em;
	margin-top:20px;
	}
#head-side header h3 strong{
	display:inline-block;
	padding:10px 40px 15px 40px;
	position:relative;
	}
#head-side header h3 strong:after{
	content:"";
	display:block;
	width:40px;
	height:2px;
	background-color:#32281E;
	position:absolute;
	left:0;
	top:30px;
	-moz-transform:rotate(68deg);
	-webkit-transform:rotate(68deg);
	-o-transform:rotate(68deg);
	-ms-transform:rotate(68deg);
	transform:rotate(68deg);
	}
#head-side header h3 strong:before{
	content:"";
	display:block;
	width:40px;
	height:2px;
	background-color:#32281E;
	position:absolute;
	right:0;
	top:30px;
	-moz-transform:rotate(-68deg);
	-webkit-transform:rotate(-68deg);
	-o-transform:rotate(-68deg);
	-ms-transform:rotate(-68deg);
	transform:rotate(-68deg);
	}
#head-side header h3 strong span{
	font-size:23px;
	font-family:'Oswald';
	font-weight:400;
	display:inline-block;
	margin-right:4px;
	vertical-align:-3px;
	}
#head-side header h3 a{
	display:inline-block;
	width:36px;
	margin:0 9px;
	}
@media screen and (max-height:800px){
#head-side header{
	top:30px;
	padding-top:40px;
	min-height:-webkit-calc(100vh - 30px);
	min-height:calc(100vh - 30px);
	}
#head-side header nav{
	padding-top:30px;
	}
#head-side header ul li a{
	padding-top:15px;
	padding-bottom:14px;
	}
#head-side header h2{
	padding-top:35px;
	}
#head-side header h3{
	margin-top:10px;
	}
}
@media screen and (max-height:720px){
#head-side header h2{
	display:none;
	}
#head-side header h3{
	margin-top:30px;
	}
}
@media screen and (max-height:630px){
#head-side header h3{
	display:none;
	}
}
#headul{
	position:absolute;
	right:60px;
	top:60px;
	z-index:105;
	overflow:hidden;
	zoom:1;
	}
#headul li{
	float:left;
	margin-right:20px;
	}
#headul li:last-of-type{
	margin-right:0;
	}
#headul li a{
	font-size:17px;
	color:#CC4D1A;
	font-weight:700;
	display:block;
	padding:15px 35px 15px 50px;
	border:2px solid #CC4D1A;
	background:url(img/common/icon1.webp) no-repeat 8px 8px;
	-webkit-background-size:38px 38px;
	background-size:38px 38px;
	background-color:#FFF;
	border-radius:7px;
	-webkit-border-radius:7px;
	-moz-border-radius:7px;
	-o-border-radius:7px;
	-ms-border-radius:7px;
	min-width:165px;
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-o-box-sizing:border-box;
	-ms-box-sizing:border-box;
	position:relative;
	}
#headul li:nth-of-type(2) a{
	background:url(img/common/icon2.webp) no-repeat 8px 8px;
	-webkit-background-size:38px 38px;
	background-size:38px 38px;
	background-color:#FFF;
	}
#headul li:nth-of-type(3) a{
	background:url(img/common/icon3.webp) no-repeat 8px 8px;
	-webkit-background-size:38px 38px;
	background-size:38px 38px;
	background-color:#FFF;
	}
#headul li:nth-of-type(4) a{
	background:url(img/common/icon4.webp) no-repeat 8px 8px;
	-webkit-background-size:38px 38px;
	background-size:38px 38px;
	background-color:#FFF;
	}
#headul li a:after{
	content:"";
	display:block;
	position:absolute;
	right:18px;
	top:50%;
	margin-top:-2px;
	width:4px;
	height:4px;
	border-top:2px solid #CC4D1A;
	border-right:2px solid #CC4D1A;
	-moz-transform:rotate(45deg);
	-webkit-transform:rotate(45deg);
	-o-transform:rotate(45deg);
	-ms-transform:rotate(45deg);
	transform:rotate(45deg);
	}
#headul li a:hover{
	text-decoration:none;
	filter:alpha(opacity=85);
	-moz-opacity:0.85;
	opacity:0.85;
	}
#headtop{
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:460px;
	overflow:hidden;
	zoom:1;
	}
#kulink{
	font-size:15px;
	color:#A0968C;
	overflow:hidden;
	zoom:1;
	text-align:right;
	padding:490px 0px 60px 0px;
	font-weight:500;
	}
#kulink a{
	margin:0 10px;
	}
#kulink strong{
	margin-left:10px;
	font-weight:500;
	font-size:15px;
	color:#A0968C;
	}
.titleb span{
	font-size:60px;
	color:#1A468C;
	display:block;
	font-family:'Montserrat';
	font-weight:300;
	line-height:1.3;
	letter-spacing:0.08em;
	}
.titleb strong{
	font-size:16px;
	font-weight:500;
	padding-right:28px;
	position:relative;
	display:inline-block;
	}
.titleb strong:after{
	content:"";
	display:block;
	width:20px;
	height:1px;
	position:absolute;
	right:0;
	top:50%;
	background-color:#32281E;
	margin-top:1px;
	}
.linkto{
	text-align:left;
	line-height:1.4;
	font-size:17px;
	font-weight:500;
	}
.linkto a{
	background-color:#CC4D1A;
	color:#FFF;
	display:inline-block;
	padding:15px 55px 15px 24px;
	position:relative;
	border-radius:400px;
	-webkit-border-radius:400px;
	-moz-border-radius:400px;
	-o-border-radius:400px;
	-ms-border-radius:400px;
	}
.linkto a:hover{
	text-decoration:none;
	filter:alpha(opacity=8);
	-moz-opacity:0.8;
	opacity:0.8;
	}
.linkto a:after{
	content:"";
	display:block;
	position:absolute;
	right:24px;
	top:50%;
	margin-top:-3px;
	width:5px;
	height:5px;
	border-top:2px solid #FFF;
	border-right:2px solid #FFF;
	-moz-transform:rotate(45deg);
	-webkit-transform:rotate(45deg);
	-o-transform:rotate(45deg);
	-ms-transform:rotate(45deg);
	transform:rotate(45deg);
	}
#contactb{
	margin-top:-100px;
	position:relative;
	padding-bottom:120px;
	z-index:101;
	overflow:hidden;
	zoom:1;
	}
#contactb:after{
	content:"";
	display:block;
	width:100%;
	height:80px;
	background:url(img/common/contactb.webp) no-repeat left top;
	-webkit-background-size:100% 80px;
	background-size:100% 80px;
	position:absolute;
	left:0;
	top:40px;
	}
#contactb:before{
	content:"";
	display:block;
	width:100%;
	height:100%;
	position:absolute;
	left:0;
	top:120px;
	background-color:#F0F0F0;
	}
#contactb h2{
	text-align:center;
	top:0px;
	position:relative;
	z-index:2;
	}
#contactb h2 span{
	font-size:60px;
	font-family:'Montserrat';
	font-weight:600;
	color:#1A468C;
	display:block;
	letter-spacing:0.08em;
	}
#contactb h2 strong{
	font-size:20px;
	color:#FFF;
	display:inline-block;
	background-color:#1A468C;
	padding:3px 9px 3px 10px;
	font-weight:700;
	margin-top:5px;
	}
#contactb p{
	max-width:800px;
	margin:75px auto 0 auto;
	padding:0 70px;
	position:relative;
	z-index:2;
	}
#contactb ul{
	max-width:1080px;
	overflow:hidden;
	zoom:1;
	position:relative;
	z-index:2;
	margin:65px auto 0 auto;
	padding:0 70px;
	}
#contactb ul li{
	float:left;
	width:48.5%;
	margin-right:3%;
	background-color:#FFF;
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-o-box-sizing:border-box;
	-ms-box-sizing:border-box;
	position:relative;
	}
#contactb ul li:last-of-type{
	margin-right:0;
	}
#contactb ul li:nth-of-type(1){
	padding:40px 15px 20px 140px;
	min-height:160px;
	}
#contactb ul li:nth-of-type(1):after{
	content:"";
	display:block;
	width:80px;
	height:80px;
	background-color:#32281E;
	position:absolute;
	left:40px;
	top:50%;
	margin-top:-40px;
	z-index:1;
	border-radius:400px;
	-webkit-border-radius:400px;
	-moz-border-radius:400px;
	-o-border-radius:400px;
	-ms-border-radius:400px;
	}
#contactb ul li:nth-of-type(1):before{
	content:"";
	display:block;
	width:36px;
	height:36px;
	position:absolute;
	left:62px;
	top:50%;
	background:url(img/common/tel2.webp) no-repeat left top;
	-webkit-background-size:36px 36px;
	background-size:36px 36px;
	margin-top:-18px;
	z-index:2;
	}
#contactb ul li:nth-of-type(2) a:after{
	content:"";
	display:block;
	width:80px;
	height:80px;
	background-color:#32281E;
	position:absolute;
	left:40px;
	top:50%;
	margin-top:-40px;
	z-index:1;
	border-radius:400px;
	-webkit-border-radius:400px;
	-moz-border-radius:400px;
	-o-border-radius:400px;
	-ms-border-radius:400px;
	}
#contactb ul li:nth-of-type(2) a:before{
	content:"";
	display:block;
	width:36px;
	height:36px;
	position:absolute;
	left:62px;
	top:50%;
	background:url(img/common/mail.webp) no-repeat left top;
	-webkit-background-size:36px 36px;
	background-size:36px 36px;
	margin-top:-18px;
	z-index:2;
	}
#contactb ul li:nth-of-type(1) h3 a{
	color:#32281E;
	font-size:44px;
	font-family:'Montserrat';
	font-weight:600;
	letter-spacing:0.08em;
	word-break:break-all;
	}
#contactb ul li:nth-of-type(1) h3 span{
	font-size:17px;
	color:#968C82;
	display:block;
	line-height:1.7;
	}
#contactb ul li:nth-of-type(1) h3 span a{
	color:#968C82;
	font-size:17px;
	font-family:'Zen Kaku Gothic New';
	font-weight:500;
	letter-spacing:0.02em;
	}
#contactb ul li:nth-of-type(2) a{
	color:#32281E;
	font-size:30px;
	font-weight:700;
	position:relative;
	display:block;
	padding:50px 60px 20px 140px;
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-o-box-sizing:border-box;
	-ms-box-sizing:border-box;
	min-height:180px;
	}
#contactb ul li:nth-of-type(2) a span{
	color:#968C82;
	font-size:17px;
	font-family:'Montserrat';
	display:block;
	letter-spacing:0.03em;
	font-weight:300;
	margin-top:5px;
	word-break:break-all;
	}
#contactb ul li:nth-of-type(2) a span:after{
	content:"";
	display:block;
	width:30px;
	height:30px;
	background-color:#CC4D1A;
	position:absolute;
	right:30px;
	top:50%;
	margin-top:-15px;
	z-index:1;
	border-radius:400px;
	-webkit-border-radius:400px;
	-moz-border-radius:400px;
	-o-border-radius:400px;
	-ms-border-radius:400px;
	}
#contactb ul li:nth-of-type(2) a span:before{
	content:"";
	display:block;
	position:absolute;
	right:43px;
	top:50%;
	margin-top:-2px;
	z-index:2;
	width:4px;
	height:4px;
	border-top:2px solid #FFF;
	border-right:2px solid #FFF;
	-moz-transform:rotate(45deg);
	-webkit-transform:rotate(45deg);
	-o-transform:rotate(45deg);
	-ms-transform:rotate(45deg);
	transform:rotate(45deg);
	}
#contactb ul li:nth-of-type(2) a:hover{
	text-decoration:none;
	filter:alpha(opacity=70);
	-moz-opacity:0.7;
	opacity:0.7;
	}
footer{
	position:relative;
	background-color:#0F2438;
	padding:0 10% 60px 44%;
	text-align:center;
	}
footer:before{
	content:"";
	display:block;
	width:37%;
	height:33.333333%;
	position:absolute;
	left:0;
	top:0;
	background:url(img/common/foot1.webp) no-repeat center center;
	-webkit-background-size:cover;
	background-size:cover;
	}
footer:after{
	content:"";
	display:block;
	width:37%;
	height:33.333333%;
	position:absolute;
	left:0;
	top:33.333333%;
	background:url(img/common/foot2.webp) no-repeat center center;
	-webkit-background-size:cover;
	background-size:cover;
	}
footer h2{
	padding-top:110px;
	}
footer h2:after{
	content:"";
	display:block;
	width:37%;
	height:33.333333%;
	position:absolute;
	left:0;
	top:66.666666%;
	background:url(img/common/foot3.webp) no-repeat center center;
	-webkit-background-size:cover;
	background-size:cover;
	}
footer h2 a{
	margin:0 auto;
	width:180px;
	display:block;
	}
footer h3{
	display:inline-block;
	text-align:left;
	font-size:17px;
	color:#F5F5F5;
	margin-top:40px;
	line-height:1.7;
	}
footer ul{
	border-top:1px solid #41566A;
	margin-top:55px;
	padding-top:50px;
	display:flex;
	justify-content:space-between;
	text-align:left;
	}
footer ul li{
	font-size:17px;
	font-weight:700;
	}
footer ul li a{
	color:#F5F5F5;
	position:relative;
	padding-left:25px;
	}
footer ul li a:after{
	content:"";
	display:block;
	width:18px;
	height:18px;
	background-color:#F5F5F5;
	position:absolute;
	left:0;
	top:5px;
	z-index:1;
	border-radius:400px;
	-webkit-border-radius:400px;
	-moz-border-radius:400px;
	-o-border-radius:400px;
	-ms-border-radius:400px;
	}
footer ul li a:before{
	content:"";
	display:block;
	position:absolute;
	left:5px;
	top:11px;
	z-index:2;
	width:4px;
	height:4px;
	border-top:2px solid #0F2438;
	border-right:2px solid #0F2438;
	-moz-transform:rotate(45deg);
	-webkit-transform:rotate(45deg);
	-o-transform:rotate(45deg);
	-ms-transform:rotate(45deg);
	transform:rotate(45deg);
	}
footer ul li a:hover{
	filter:alpha(opacity=80);
	-moz-opacity:0.8;
	opacity:0.8;
	color:#F5F5F5;
	}
footer ul li ul{
	border-top:0;
	margin-top:0;
	padding-top:8px;
	display:block;
	justify-content:normal;
	}
footer ul li ul li{
	font-size:16px;
	font-weight:500;
	margin-top:12px;
	letter-spacing:0.02em;
	}
footer ul li ul li a{
	color:#B4BEC8;
	padding-left:18px;
	}
footer ul li ul li a:after{
	display:none;
	}
footer ul li ul li a:before{
	border-color:#B4BEC8;
	left:0px;
	}
footer h4{
	margin-top:70px;
	}
footer h4 a{
	overflow:hidden;
	zoom:1;
	display:block;
	margin:0 auto;
	width:466px;
	max-width:100%;
	border:3px solid #2C8D7F;
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-o-box-sizing:border-box;
	-ms-box-sizing:border-box;
	border-radius:12px;
	-webkit-border-radius:12px;
	-moz-border-radius:12px;
	-o-border-radius:12px;
	-ms-border-radius:12px;
	}
footer small{
	font-size:15px;
	color:#B4BEC8;
	font-family:'Montserrat';
	display:block;
	padding-top:60px;
	letter-spacing:0.05em;
	font-weight:300;
	}
footer small a{
	color:#B4BEC8;
	}
footer small a:hover{
	filter:alpha(opacity=80);
	-moz-opacity:0.8;
	opacity:0.8;
	color:#B4BEC8;
	}
#totop{
	font-size:11px;
	color:#F5F5F5;
	text-align:center;
	padding-top:35px;
	display:block;
	position:fixed;
	right:40px;
	bottom:45px;
	font-family:'Montserrat';
	font-weight:600;
	width:62px;
	height:62px;
	background-color:#32281E;
	z-index:300;
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-o-box-sizing:border-box;
	-ms-box-sizing:border-box;
	border-radius:400px;
	-webkit-border-radius:400px;
	-moz-border-radius:400px;
	-o-border-radius:400px;
	-ms-border-radius:400px;
	}
#totop:before{
	content:"";
	width:18px;
	height:2px;
	background-color:#F5F5F5;
	position:absolute;
	left:50%;
	top:0;
	margin:19px 0 0 -9px;
	z-index:10;
	}
#totop:after{
	content:"";
	width:10px;
	height:10px;
	border-top:2px solid #F5F5F5;
	border-right:2px solid #F5F5F5;
	-moz-transform:rotate(-45deg);
	-webkit-transform:rotate(-45deg);
	-o-transform:rotate(-45deg);
	-ms-transform:rotate(-45deg);
	transform:rotate(-45deg);
	display:block;
	position:absolute;
	left:50%;
	top:0;
	z-index:10;
	margin:24px 0 0 -6px;
	}
#totop:hover{
	filter:alpha(opacity=90);
	-moz-opacity:0.9;
	opacity:0.9;
	text-decoration:none;
	}
#header2 nav{
	position:fixed;
	right:-85%;
	background-color:#FFF;
	width:85%;
	height:100%;
	z-index:500;
	top:0;
	border-left:1px solid #CDCDCD;
	overflow-y:scroll;
	-ms-overflow-style:none;
	scrollbar-width:none;
	padding:95px 8% 70px 8%;
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-o-box-sizing:border-box;
	-ms-box-sizing:border-box;
	}
.h2{
	font-size:22px;
	font-weight:700;
	background-color:#F5F5F5;
	padding:19px 15px 19px 24px;
	border-left:3px solid #1A468C;
	}
@media screen and (max-width:1200px){
#headbg{
	padding:0 40px 0px 40px;
	}
#head-main{
	width:-webkit-calc(100% - 250px);
	width:calc(100% - 250px);
	padding-left:50px;
	}
#head-side{
	width:250px;
	}
#head-side:after{
	width:250px;
	}
#head-side header{
	padding-left:25px;
	padding-right:25px;
	}
#head-side header h2 a{
	font-size:26px;
	padding-left:38px;
	-webkit-background-size:26px auto;
	background-size:26px auto;
	}
#head-side header h3{
	letter-spacing:0.01em;
	}
#head-side header h3 strong{
	letter-spacing:0.01em;
	padding:10px 32px 15px 32px;
	}
#headul{
	right:40px;
	}
#headul li{
	margin-right:10px;
	}
#headul li a{
	padding:15px 28px 15px 42px;
	min-width:auto;
	background-position:2px 8px;
	font-size:16px;
	}
#headul li:nth-of-type(2) a{
	background-position:2px 8px;
	}
#headul li:nth-of-type(3) a{
	background-position:2px 8px;
	}
#headul li:nth-of-type(4) a{
	background-position:2px 8px;
	}
#headul li a:after{
	right:12px;
	}
#contactb ul{
	max-width:520px;
	margin:30px auto 0 auto;
	}
#contactb ul li{
	float:none;
	width:auto;
	margin:25px 0 0 0;
	}
footer ul{
	padding-top:10px;
	flex-wrap:wrap;
	}
footer ul li{
	width:50%;
	margin-top:60px;
	}
footer ul li ul li{
	width:auto;
	margin-top:12px;
	}
#totop{
	right:4%;
	bottom:25px;
	font-size:10px;
	padding-top:28px;
	width:52px;
	height:52px;
	}
#totop:before{
	width:14px;
	margin:14px 0 0 -7px;
	}
#totop:after{
	width:8px;
	height:8px;
	margin:19px 0 0 -5px;
	}
}
@media screen and (max-width:1000px){
body,div,
h1,h2,h3,h4,h5,h6,
p,blockquote,pre,address,
ul,ol,li,dl,dt,dd,
table,th,td,
form,fieldset,legend,strong{
	letter-spacing:0.03em;
	}
p{
	line-height:2.1;
	font-size:17px;
	}
#headbg{
	display:block;
	padding:0;
	}
#head-main{
	width:-webkit-calc(100%);
	width:calc(100%);
	min-height:auto;
	padding:0 7% 0px 7%;
	}
#head-side{
	width:auto;
	}
#head-side:after{
	display:none;
	}
#head-side header{
	top:auto;
	position:relative;
	background:none;
	border-radius: 0px 0px 0px 0px / 0px 0px 0px 0px;
	-moz-border-radius: 0px 0px 0px 0px / 0px 0px 0px 0px;
	-webkit-border-radius: 0px 0px 0px 0px / 0px 0px 0px 0px;
	-o-border-radius: 0px 0px 0px 0px / 0px 0px 0px 0px;
	-ms-border-radius: 0px 0px 0px 0px / 0px 0px 0px 0px;
	padding:20px 0 0 20px;
	min-height:auto;
	-webkit-box-shadow:0px 0px 0px 0 rgba(0,0,0,0);
	-moz-box-shadow:0px 0px 0px 0 rgba(0,0,0,0);
	box-shadow:0px 0px 0px 0 rgba(0,0,0,0);
	}
#head-side header h1 a{
	width:110px;
	height:108px;
	margin:0;
	background:url(img/common/logo3.webp) no-repeat left top;
	-webkit-background-size:110px auto;
	background-size:110px auto;
	}
#head-side header h1 a img{
	display:none;
	}
#head-side header nav{
	display:none;
	}
#head-side header h2{
	display:none;
	}
#head-side header h3{
	display:none;
	}
#headul{
	display:none;
	}
#headtop{
	height:220px;
	}
#kulink{
	font-size:14px;
	padding:115px 0px 40px 0px;
	}
#kulink strong{
	font-size:14px;
	}
.titleb span{
	font-size:45px;
	letter-spacing:0.05em;
	}
.titleb strong{
	font-size:15px;
	padding-right:22px;
	}
.titleb strong:after{
	width:15px;
	margin-top:0px;
	}
#contactb{
	margin-top:130px;
	padding-bottom:90px;
	}
#contactb:after{
	height:30px;
	-webkit-background-size:100% 30px;
	background-size:100% 30px;
	top:25px;
	}
#contactb:before{
	top:55px;
	}
#contactb h2 span{
	font-size:42px;
	letter-spacing:0.07em;
	}
#contactb h2 strong{
	font-size:18px;
	padding:1px 7px 1px 8px;
	}
#contactb p{
	margin:40px auto 0 auto;
	padding:0 7%;
	}
#contactb ul{
	margin:10px auto 0 auto;
	padding:0 7%;
	}
#contactb ul li{
	float:none;
	width:auto;
	margin:25px 0 0 0;
	}
#contactb ul li:nth-of-type(1){
	padding:28px 15px 20px 88px;
	min-height:auto;
	}
#contactb ul li:nth-of-type(1):after{
	width:50px;
	height:50px;
	left:25px;
	top:25px;
	margin-top:0;
	}
#contactb ul li:nth-of-type(1):before{
	width:24px;
	height:24px;
	left:38px;
	top:38px;
	-webkit-background-size:24px auto;
	background-size:24px auto;
	margin-top:0;
	}
#contactb ul li:nth-of-type(2) a:after{
	width:50px;
	height:50px;
	left:25px;
	top:25px;
	margin-top:0;
	}
#contactb ul li:nth-of-type(2) a:before{
	width:24px;
	height:24px;
	left:38px;
	top:38px;
	-webkit-background-size:24px auto;
	background-size:24px auto;
	margin-top:0;
	}
#contactb ul li:nth-of-type(1) h3 a{
	font-size:30px;
	letter-spacing:0.02em;
	}
#contactb ul li:nth-of-type(1) h3 span{
	font-size:15px;
	margin:20px 0 0 -68px;
	}
#contactb ul li:nth-of-type(1) h3 span a{
	font-size:16px;
	}
#contactb ul li:nth-of-type(2) a{
	font-size:24px;
	padding:25px 15px 20px 88px;
	min-height:auto;
	}
#contactb ul li:nth-of-type(2) a span{
	font-size:13px;
	letter-spacing:0.01em;
	margin-top:2px;
	}
#contactb ul li:nth-of-type(2) a span:after{
	width:24px;
	height:24px;
	right:17px;
	margin-top:-12px;
	}
#contactb ul li:nth-of-type(2) a span:before{
	right:27px;
	}
footer{
	padding:600px 7% 40px 7%;
	}
footer:before{
	width:100%;
	height:300px;
	}
footer:after{
	width:100%;
	height:300px;
	top:300px;
	}
footer h2{
	padding-top:50px;
	}
footer h2:after{
	display:none;
	}
footer h2 a{
	width:140px;
	}
footer h3{
	font-size:16px;
	margin-top:35px;
	}
footer ul{
	margin-top:50px;
	padding-top:0px;
	display:block;
	justify-content:normal;
	flex-wrap:nowrap;
	border-top:0;
	border-bottom:1px solid #41566A;
	}
footer ul li{
	width:auto;
	margin-top:0;
	border-top:1px solid #41566A;
	}
footer ul li a{
	display:block;
	padding:18px 15px 18px 48px;
	}
footer ul li a:after{
	width:16px;
	height:16px;
	left:20px;
	top:20px;
	}
footer ul li a:before{
	left:24px;
	top:25px;
	}
footer ul li ul{
	padding:0 0 0 45px;
	}
footer ul li ul li{
	margin-top:0;
	}
footer ul li ul li a{
	padding:16px 15px 16px 35px;
	}
footer ul li ul li a:before{
	left:15px;
	}
footer h4{
	margin-top:60px;
	}
footer small{
	font-size:14px;
	text-align:left;
	padding:40px 40px 0 0;
	letter-spacing:0.02em;
	}
.menu{
	right:3%;
	top:16px;
	width:52px;
	height:52px;
	position:fixed;
	display:block;
	cursor:pointer;
	z-index:1000;
	background-color:#FFF;
	border-radius:400px;
	-webkit-border-radius:400px;
	-moz-border-radius:400px;
	-o-border-radius:400px;
	-ms-border-radius:400px;
	}
.menu:hover{
	filter:alpha(opacity=80);
	-moz-opacity:0.8;
	opacity:0.8;
	}
.menu1{
	width:22px;
	top:13px;
	left:15px;
	height:2px;
	background-color:#3C3C3C;
	position:absolute;
	border-radius:4px;
	-webkit-border-radius:4px;
	-moz-border-radius:4px;
	-o-border-radius:4px;
	-ms-border-radius:4px;
	} 
.menu2{
	width:22px;
	top:19px;
	left:15px;
	height:2px;
	background-color:#3C3C3C;
	position:absolute;
	border-radius:4px;
	-webkit-border-radius:4px;
	-moz-border-radius:4px;
	-o-border-radius:4px;
	-ms-border-radius:4px;
	} 
.menu3{
	width:22px;
	top:25px;
	left:15px;
	height:2px;
	background-color:#3C3C3C;
	position:absolute;
	border-radius:4px;
	-webkit-border-radius:4px;
	-moz-border-radius:4px;
	-o-border-radius:4px;
	-ms-border-radius:4px;
	} 
.menu:after{
	content:"MENU";
	font-family:'Montserrat';
	font-weight:600;
	position:absolute;
	top:30px;
	left:0;
	letter-spacing:0.05em;
	width:100%;
	text-align:center;
	font-size:9px;
	color:#3C3C3C;
	}
.menuclick:after{
	content:"CLOSE";
	}
.menu1,.menu2,.menu3{
	transition:all 0.5s ease-out;
	-o-transition:all 0.5s ease-out;
	-moz-transition:all 0.5s ease-out;
	-webkit-transition:all 0.5s ease-out;
	-ms-transition:all 0.5s ease-out;
	}
.menuclick1{
	top:19px;
	-moz-transform:rotate(405deg);
	-webkit-transform:rotate(405deg);
	-o-transform:rotate(405deg);
	-ms-transform:rotate(405deg);
	transform:rotate(405deg);
	-webkit-box-shadow:0px 0px 0 0 rgba(0,0,0,0);
	-moz-box-shadow:0px 0px 0 0 rgba(0,0,0,0);
	box-shadow:0px 0px 0 0 rgba(0,0,0,0);
	}
.menuclick2{
	opacity:0;
	}
.menuclick3{
	top:19px;
	-moz-transform:rotate(-405deg);
	-webkit-transform:rotate(-405deg);
	-o-transform:rotate(-405deg);
	-ms-transform:rotate(-405deg);
	transform:rotate(-405deg);
	-webkit-box-shadow:0px 0px 0 0 rgba(0,0,0,0);
	-moz-box-shadow:0px 0px 0 0 rgba(0,0,0,0);
	box-shadow:0px 0px 0 0 rgba(0,0,0,0);
	}
#spbg{
	width:100%;
	height:100%;
	position:fixed;
	top:0;
	left:0;
	background-color:#000;
	z-index:400;
	filter: alpha(opacity=60);
	-moz-opacity:0.6;
	opacity:0.6;
	display:none;
	}
#header2 nav::-webkit-scrollbar{
	display:none;
	-webkit-appearance:none;
	}
#header2 nav ul{
	border-top:1px solid #E1E1E1;
	}
#header2 nav ul li{
	font-size:18px;
	font-weight:700;
	}
#header2 nav ul li a{
	display:block;
	color:#32281E;
	padding:18px 40px 17px 20px;
	border-bottom:1px solid #E1E1E1;
	position:relative;
	}
#header2 nav ul li a:hover{
	background-color:#FAEEE9;
	text-decoration:none;
	color:#CC4D1A;
	}
#header2 nav ul li a:before{
	content:"";
	display:block;
	position:absolute;
	right:18px;
	top:50%;
	margin-top:-9px;
	width:18px;
	height:18px;
	background-color:#CC4D1A;
	border-radius:100px;
	-webkit-border-radius:100px;
	-moz-border-radius:100px;
	-o-border-radius:100px;
	-ms-border-radius:100px;
	}
#header2 nav ul li a:after{
	content:"";
	display:block;
	position:absolute;
	right:25px;
	top:50%;
	margin-top:-2px;
	width:3px;
	height:3px;
	border-top:2px solid #FFF;
	border-right:2px solid #FFF;
	-moz-transform:rotate(45deg);
	-webkit-transform:rotate(45deg);
	-o-transform:rotate(45deg);
	-ms-transform:rotate(45deg);
	transform:rotate(45deg);
	}
#header2 nav ul li ul{
	border-top:0;
	padding-left:20px;
	}
#header2 nav ul li ul li{
	font-size:17px;
	font-weight:500;
	}
#header2 nav ul li ul li a{
	color:#645A50;
	padding:15px 30px 15px 20px;
	}
#header2 nav ul li ul li a:before{
	display:none;
	}
#header2 nav ul li ul li a:after{
	border-color:#CC4D1A;
	right:16px;
	}
#header2 nav ul li ul li.current_page_item a{	
	background-color:#FAEEE9 !important;
	color:#CC4D1A !important;
	}
#header2 nav ul li ul li ul li{
	font-size:16px;
	line-height:1.3;
	}
#header2 nav ul li ul li ul li a{
	padding:12px 15px 12px 15px;
	}
#header2 nav ul li ul li ul li a:after{
	display:none;
	}
.h2{
	font-size:20px;
	padding:15px 15px 15px 21px;
	}
}
@media screen and (max-width:500px){
footer{
	padding-top:400px;
	}
footer:before{
	height:200px;
	}
footer:after{
	height:200px;
	top:200px;
	}
}