@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;600&display=swap');
/*font-family: 'Noto Serif JP', serif;*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap');
/*font-family: 'Noto Sans JP', sans-serif;*/

/* base
-------------------------------------------------- */
body {
	margin:0; padding: 0;
	line-height: 1; vertical-align: top;
	font-family: 'Noto Sans JP', "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic,"メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",  Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color:#323232;
	background: #fff;
  -webkit-text-size-adjust: 100%;
}

a { text-decoration:none;}

.header img,
.footer img,
.hum img { width:100%; height: auto;}

/* editor */
article.main p,
.single p,
.default p{
    display: block;
    margin: 1em 0 !important;
}
.strong { font-weight: bold; }
.em { font-style: italic; }

blockquote {
    display: block;
    -webkit-margin-before: 1em;
    -webkit-margin-after: 1em;
    -webkit-margin-start: 40px;
    -webkit-margin-end: 40px;
}
 
img[class*="wp-image-"],
img[class*="attachment-"] {
    height: auto;
    max-width: 100%;
    width: auto;
}
 

a:hover img{ opacity: 0.7; transition: 0.4s;}

article {
	line-height: 1.7;
	font-size: 16px;
}
a { color:#4f3737;}
a:hover { color:#4f3737; text-decoration:none;}


.wrapper { width:1080px; margin:0 auto;}

a.btn{
	position:relative;
	width:400px;
	height:70px;
	display:flex;
	align-items: center;
	justify-content: center;
	background:#f7eaea;
}

a.btn span::after{
	position:absolute;
	content:url(../img/common/icn_link_arrow.png);
	width:58px;
	height:5px;
	right:30px;
}

a.btn:hover span:after{
	transition: 0.3s;
	right: 20px;
}

input:focus {outline:0;}
input::-ms-clear { visibility:hidden; }


.see_fu {
	opacity:0;
	transition: 0.7s ease-out;
	transform:translate(0,50px);
}
.see_fu_in {
	opacity:1;
	transform:translate(0,0);
}

.see_fuz {
	opacity:0;
	transition: 1.5s ease-out;
	transform:translate(0,200px) scale(1.2);
}
.see_fuz_in {
	opacity:1;
	transform:translate(0,0) scale(1);
}

.see_fr {
	opacity:0;
	transition: 1.5s;
	transform:translate(-200px,0);
}
.see_fr_in {
	opacity:1;
	transform:translate(0,0);
}

.see_fl {
	opacity:0;
	transition: 1.5s;
	transform:translate(200px,0);
}
.see_fl_in {
	opacity:1;
	transform:translate(0,0);
}

@media (min-width: 768px) {
	.sp-show { display:none !important;}
	.sp-hide { display: block !important;}
	.sp02-show { display: none !important;}
}

@media (max-width: 767px) {
		.wrapper { width:94%;}
		article { padding-bottom: 0; background:#fff;}
		.sp-show { display: block !important;}
		.sp-hide { display: none !important;}
		.sp02-show { display: none !important;}
}

@media (max-width: 420px) {
		a.btn{
			width:100%;
			height:70px;
		}
		.sp02-show { display: block !important;}
}



/* common
-------------------------------------------------- */
header{
	background:#fff;
	width:100%;
	-moz-box-shadow: 0px 1px 3px rgba(178, 178, 178,  0.8);
	-webkit-box-shadow: 0px 1px 3px rgba(178, 178, 178,  0.8);
	-ms-box-shadow: 0px 1px 3px rgba(178, 178, 178,  0.8);
	box-shadow: 0px 1px 3px rgba(178, 178, 178,  0.8);
	top:0;
	padding:15px 0;
	transition: .3s;
}

#home header{
	opacity: 0;
	filter: alpha(opacity=0);
	-ms-filter: "alpha(opacity=0)";
	-khtml-opacity: 0;
}

#home header.open{
	opacity: 1;
	filter: alpha(opacity=1);
	-ms-filter: "alpha(opacity=1)";
	-khtml-opacity: 1;
	transition: all 1000ms 1s ease;
}

#home header.open02{
	opacity: 1;
	filter: alpha(opacity=1);
	-ms-filter: "alpha(opacity=1)";
	-khtml-opacity: 1;
}

header.h_fixed,
#home header.h_fixed{
	position:fixed;
	left: 0;
	z-index: 2;
	width: 100%;
	opacity: 1;
	filter: alpha(opacity=1);
	-ms-filter: "alpha(opacity=1)";
	-khtml-opacity: 1;
}
header.is-show {
	padding:0;
}

.header {
	position:relative;
	margin:0;
	padding:15px 50px 10px;
	height:90px;
	box-sizing:border-box;
//	z-index: 11;
}

#h_logo {
  position: absolute;
  margin: 0;
  top: 12px;
  left: 50px;
	padding-top:0;
	text-align:center;
}

header #h_logo {
	display:block;
}

header #h_logo img{
	width:61px;
	height:65px;
}

header #h_link{
	position:absolute;
	margin:0;
	top:37px;
	right:50px;
	display:flex;
	justify-content:flex-end;
	list-style-type:none;
}

.header #h_link li{
	margin-left:30px;
}

.header #h_link li a{
	padding:2px 0 2px 25px;
	font-size:13px;
	color:#4f3737;
	display:block;
	font-family: 'Noto Serif JP', YuMincho, 'Yu Mincho',"ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

.header #h_link a.mail{
	background:url(../img/common/icn_mail.png) no-repeat left center;
}

.header #h_link a.shop{
	background:url(../img/common/icn_shop.png) no-repeat left center;
}

/*--- gnav ---*/
.gnav {
	margin:24px auto;
	width:100%;
	max-width:700px;
}

.gnav ul {
	display:flex;
	align-items:center;
	justify-content:space-between;
}

.gnav ul li{
	margin:0;
	list-style-type:none;
	letter-spacing:0.1em;
}

.gnav ul li a{
	position:relative;
	font-size:16px;
	color:#000;
	display:block;
	font-family: 'Noto Serif JP', YuMincho, 'Yu Mincho',"ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

.gnav ul li a.active:before,
.gnav ul li a:hover:before{
	position:absolute;
	content:url(../img/common/icn_ribbon.png);
	left:calc((100% - 12px) / 2);
	top:-24px;
}

#pagetop{
	position:fixed;
	right:3%;
	bottom:3%;
}


#onlineShop
{
  position:fixed;
	right:3%;
	bottom:10%;
	}


/*--- footer ---*/
footer{
}

.footer01{
	padding:50px 0;
	background:#fff;
}

.footer01 .wrapper.flex{
	display:flex;
	justify-content:space-between;
}

.footer01 .f_info{
	width:58%;
}

.footer01 #f_logo{
	margin-bottom:45px;
}

.footer01 .addr{
	margin-bottom:50px;
	color:#000;
	font-size:12px;
	line-height:1.7;
	letter-spacing:0.1em;
}

.fnav ul{
	margin-left:15px;
	display:flex;
	justify-content:space-between;
}

.fnav li{
	list-style-image:url(../img/common/f_arrow.png);
	font-size:12px;
}

.fnav li a:hover{
	text-decoration:underline;
}

a.f_btn{
	width:200px;
	height:50px;
	display:flex;
	align-items: center;
	justify-content: center;
	background:#f7eaea;
}

a.f_btn:hover{
	opacity: .7;
	filter: alpha(opacity=7);
	-ms-filter: "alpha(opacity=70)";
	-khtml-opacity: .7;
}

a.f_btn span{
	padding:0 0 0 20px;
	background:url(../img/common/icn_mail.png) no-repeat 0 center;
}

.footer02{
	padding:10px 0 40px;
	color:#fff;
	font-size:10px;
	background:#000;
}

.footer02 .wrapper.flex{
	display:flex;
	justify-content:space-between;
}

.footer02 a{
	color:#fff;
	font-size:10px;
}


@media (max-width: 767px) {
		.header {
			padding-bottom:10px;
			width:100%;
			display:block;
		}
		.h-inner{
			padding:90px 0;
		}
		#h_logo {
			top:26px;
			left:5%;
			width:60%;
			max-width:300px;
		}
		header #h_logo img { width:100%; height:auto; }
		.header #h_link { display: none;}

		.hum { position:absolute; right: 5%; top:40px; height:18px; width:18px; z-index:99999;}
		.hum span { display: block; height:18px; width:18px; background: url(../img/common/sp_btn_menu_01.png) left top no-repeat; background-size:18px 18px;transition: 0.3s;}
		.hum span.active { display: block; height:18px; width:18px; background: url(../img/common/sp_btn_menu_02.png) left top no-repeat; background-size:18px 18px; transition: 0.3s;}

		.gnav {
			position: absolute;
			margin:0;
			padding:0;
			width:100%;
			height:100vh;
			background:#fff;
			display:none;
			top:83px;
			left:0;
			z-index: 10101;
		}
		.gnav ul {display:block; margin:0; padding:0;}
		.gnav ul li { margin:0; padding:0; text-align:left; }
		.gnav ul li a { display: block; line-height: 40px; padding:10px 20px; box-sizing:border-box; border-bottom: 1px solid #ccc; z-index: 1001;}
		.gnav ul li a.active:before,
		.gnav ul li a:hover:before{
			display:none !important;
		}
		.gnav #g_link{
			padding:0;
			margin:20px auto;
			width:90%;
			display:block;
		}
		.gnav #g_link a.btn{
			margin-bottom:20px;
			padding:0 40px 0 25px;
			width:100%;
			height:70px;
			line-height:1.2;
			color:#fff;
			font-size:18px;
			background:#4ca871 url(../img/common/arrow_white.png) no-repeat right 20px center;
			box-shadow:none;
			display:flex;
			align-items: center;
			justify-content: center;
		}
		.gnav #g_link a.btn:hover{
			color:#4ca871;
			background:#FFF000;
		}
		.gnav ul li a.active:before,
		.gnav ul li a:hover:after{
			height:0;
		}
		.gnav li.sp_h_link a{
			padding-left:50px;
			color:#4f3737;
			display:block;
			font-family: 'Noto Serif JP', YuMincho, 'Yu Mincho',"ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
		}
		.header li.sp_h_link a.mail{
			background:url(../img/common/icn_mail.png) no-repeat 25px center;
		}

		#onlineShop{
			width:10%;
		}
		#onlineShop img{
			width:100%;
			height:auto;
		}
	
		#pagetop{
			width:10%;
		}
		#pagetop img{
			width:100%;
			height:auto;
		}
	

		/*--- footer ---*/
		.footer01 .wrapper.flex{
			display:block;
		}
		.footer01 .addr{
			margin-bottom:20px;
		}
		.fnav ul{
			margin-bottom:20px;
			display:block;
		}
		.fnav li{
			line-height:1.4;
		}
		a.f_btn{
			margin:0 auto;
		}

		.footer02{
			padding:20px 0;
		}
		.footer02 .wrapper.flex{
			display:block;
		}
		.footer02 .f_info{
			margin-bottom:20px;
		}
}

@media (max-width: 767px) and (orientation: landscape) {
		.gnav {
			height: 280%;
			z-index: 10101;
		}
		.gnav ul{
			height: 100%;
			overflow: auto;
			-webkit-overflow-scrolling: touch;
		}
		#h_logo {
			top:15px;
		}
		#pagetop{
			width:6%;
		}
	#onlineShop{
		width:6%;
		}
}


/*  top page loading
-------------------------------------------------- */
#loading{
	height:100.1vh;
	background:#fff;
}

#loading .icon{
	width:100%;
}

#loading .icon .up{
	position: absolute;
	transition: all 2000ms 1.2s ease;
	background:#fff;
	width: 100%;
	height:70%;
	top: 0;
	left: 0;
	display:flex;
	align-items: center;
	justify-content: center;
}

#loading .icon .up.open{
	margin-top: -50%;
}

#loading .icon .down{
	position: absolute;
	transition: all 2000ms 1.2s ease;
	background:#fff;
	width: 100%;
	height:30%;
	top: 70%;
	left: 0;
	display:flex;
	justify-content: center;
}

#loading .icon .down .mask{
	position:relative;
	text-align:center;
	z-index:100;
}

#loading .icon .down .mask::before{
	position:absolute;
	content:url(../img/common/ribbon.png);
	top:-100px;
	left:calc((100% - 186px) / 2);
}

#loading .icon .down.open{
	margin-top: 70%;
}

#loading .bar {
	position: absolute;
	top: 70%;
	left: 0;
	width: 0;
	height: 1px;
	background: #000;
}

#loading .bar.open{
	display:none;
}

#mainmv{
	width:100%;
	height:639px;
	background:url(../img/top/mv.png) no-repeat center 0;
	background-size:cover;
}

@media (max-width: 767px) {
		#loading .icon .up,
		#loading .icon .down{
			transition: all 1000ms 1.2s ease;
		}
		#loading .icon .up .mask{
			text-align:center;
			
		}
	#loading .icon .down .mask::before{
	position:absolute;
	content:url(../img/common/ribbon_s.png);
	top:-50px;
	left:calc((100% - 107px) / 2);
}

		#loading .icon .up .mask img{
			width:60%;
			height:auto;
		}
		#loading .icon .up.open{
			margin-top: -140%;
		}
		#loading .icon .down.open{
			margin-top: 100%;
		}
		#mainmv{
			height:500px;
			background:url(../img/top/sp_mv.png) no-repeat center 0;
		}
}



/*  top page
-------------------------------------------------- */
.home .mv--area {
	position:relative;
	margin:0 auto;
	height:95px;
	padding-bottom:95px;
}

.topmv {
	padding:95px 0;
  overflow: hidden;
  position: relative;
	width:100%;
	top:0;
}

.topmv:before {
  position: absolute;
  animation: topmv 5s linear forwards;
	background:#fff;
  bottom: 0;
  content: '';
  left: 0;
  pointer-events: none;
  right: 0;
  top: 0;
  z-index: 1;
}

@keyframes topmv {
  100% {
    transform: translateY(calc(100% - 95px));
  }
}

.topmv img{
	width:100%;
	height:auto;
}

.topmv::after{
	position:absolute;
  animation: topmv 4s linear forwards 1s;
  background: url(../img/common/ribbon.png) no-repeat center 0;
	content:'';
	width:100%;
	top:0;
	bottom:95px;
	right:0;
	left:0;
	z-index:2;
}

.img-wrap {
  overflow: hidden;
  position: relative;
}

.img-wrap:before {
  animation: img-wrap 30s cubic-bezier(.4, 0, .2, 1) forwards;
  background: #fff;
  content: '';
  pointer-events: none;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  z-index: 1;
}

@keyframes img-wrap {
  100% {
    transform: translateY(100%);
  }
}

.home section:not(.mv, .contact--area){
	margin-bottom:100px;
}

.home .lead--area{
	margin:120px 0 100px;
	text-align:center;
	font-family: 'Noto Serif JP', YuMincho, 'Yu Mincho',"ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

.home .lead--area h2{
	font-size:30px;
	font-weight:400;
	margin-bottom:30px;
	letter-spacing:0.05em;
}

.home .lead--area p{
	margin:40px 0;
	font-size:16px;
	letter-spacing:0.1em;
}

.home .lead--area .line{
	margin:0 auto;
	width:370px;
	display:flex;
	align-items:center;
	text-align:center;
	letter-spacing:0.05em;
}

.home .lead--area .line:before {
	margin-right:22px;
	border-top:1px solid #ccc;
	content:"";
	flex-grow:1;
}

.home .lead--area .line:after {
	margin-left:22px;
	border-top:1px solid #ccc;
	content:"";
	flex-grow:1;
}

.home .menu--area{
}

.home .menu--area .menu_list{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}

.home .menu--area .menubox{
	margin-bottom:100px;
}

.home .menu--area .menubox .photo{
	margin-bottom:20px;
	overflow: hidden;
}

.home .menu--area .menubox .photo img{
	transition-duration: 0.5s;
}

.home .menu--area .menubox .photo img:hover{
	transform: scale(1.1);
}

.home .menu--area .menubox .ttl{
	margin-bottom:20px;
}

.home .menu--area .menubox p{
	letter-spacing:-0.05em;
	font-size:14px;
}

.home .oem--area{
	background:#fff;
}

@media (min-width: 768px) {
		.home .oem--area .parallax-bg{
			background-image: url(../img/top/oem_mv.png);
		  background-attachment: fixed;
		  background-position: center;
		  background-size: cover;
		  background-repeat: no-repeat;
		  box-sizing: border-box;
		  display: flex;
		  align-items: center;
		  justify-content: center;
		  min-height: 800px;
		  padding: 5%;
		}
}

@media (max-width: 767px) {
		.home .oem--area .parallax-bg{
		  width: 100%;
			min-height: 400px;
			background-position: center top;
			background-repeat: no-repeat;
			background-size: cover;	
			text-align: center;
			padding: 60px;
			background-image: url(../img/top/sp_oem_mv.png);
		}
}

.home .oem--area .oemwrap {
	background-color: #fff;
}

.home .oem--area .flex{
	padding:100px 0;
	display:flex;
	align-items: center;
	justify-content:space-between;
}

.home .oem--area .ttlbox{
	margin-bottom:50px;
}

.home .oem--area .ttlbox h2{
	margin-bottom:10px;
	font-size:30px;
	font-weight:400;
	letter-spacing:0.3em;
	font-family: 'Noto Serif JP', YuMincho, 'Yu Mincho',"ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

.home .oem--area .oembox p{
	margin:50px 0 !important;
}

.home .oem--area .fig{
	width:49%;
	max-width:520px;
	overflow:hidden;
}

.home .oem--area .fig img{
	transition-duration: 0.5s;
}

.home .oem--area .fig img:hover{
	transform: scale(1.1);
}

.home .news--area{
	padding:100px 0;
	background:#f4f7fb;
}

.home .news--area .flex{
	position:relative;
	padding:80px 50px;
	background:#fff;
	display:flex;
	align-items: center;
	justify-content:space-between;
	box-sizing:border-box;
}

.home .news--area .flex::before{
	position:absolute;
	content:url(../img/common/icn_ribbon_big.png);
	top:-10px;
	left:52px;
}

.home .news--area .flex .ttl{
	display:flex;
}

.home .news--area .ttlbox{
}

.home .news--area .ttlbox h2{
	margin-right:20px;
	margin-bottom:10px;
	font-size:30px;
	font-weight:400;
	letter-spacing:0.3em;
	font-family: 'Noto Serif JP', YuMincho, 'Yu Mincho',"ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

.home .news--area .ico_insta{
	padding-top:13px;
}

.home .news--area .flex p{
	font-size:18px;
}

.home .company--area{
	padding:100px 0;
	text-align:center;
	background:#fff;
}

.home .company--area .flex{
	display:flex;
	align-items: center;
	justify-content:space-between;
	flex-direction:row-reverse;
}

.home .company--area .fig{
	width:49%;
	max-width:520px;
	overflow:hidden;
}

.home .company--area .fig img{
	transition-duration: 0.5s;
}

.home .company--area .fig img:hover{
	transform: scale(1.1);
}

.home .company--area .combox{
	margin-right:5%;
}

.home .company--area .ttlbox{
	margin-bottom:50px;
	text-align:center;
}

.home .company--area .ttlbox h2{
	margin-bottom:10px;
	font-size:30px;
	font-weight:400;
	letter-spacing:0.3em;
	font-family: 'Noto Serif JP', YuMincho, 'Yu Mincho',"ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

.home .company--area .combox p{
	margin:50px 0 !important;
	font-size:14px;
}

.home .contact--area{
	padding:100px 0;
	text-align:center;
	background:#f8f8f8;
}

.home .contact--area .ttlbox{
	margin-bottom:40px;
	text-align:center;
}

.home .contact--area .ttlbox h2{
	margin-bottom:10px;
	font-size:30px;
	font-weight:400;
	letter-spacing:0.3em;
	font-family: 'Noto Serif JP', YuMincho, 'Yu Mincho',"ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

.home .contact--area .flex{
	margin-bottom:50px;
	padding:40px 0;
	background:#fff;
	display:flex;
	align-items: center;
	justify-content:center;
	box-sizing:border-box;
}

.home .contact--area .flex .tel{
	padding:20px 50px;
	font-size:50px;
	color:#867373;
	line-height:1;
	background:url(../img/common/icn_tel.png) no-repeat 0 center;
}
.home .contact--area .flex .tel a{
	color:#867373;
}

.home .contact--area .flex .fax{
	padding:20px 50px 20px 100px;
	font-size:50px;
	color:#867373;
	line-height:1;
	border-left:1px solid #a68d8d;
	background:url(../img/common/icn_fax.png) no-repeat left 50px center;
}

.home .contact--area a.btn{
	margin:0 auto;
	font-size:15px;
}

@media (max-width: 767px) {
		.topmv::after{
			background-size:95px 95px;
		}
		.home .mv img{
			width:100%;
			height:auto;
		}
		.home .mv--area #ribbon div img{
			width:30%;
			height:auto;
		}
		.home section:not(.mv, .contact--area){
			margin-bottom:20%;
		}
		.home .lead--area{
			margin:20% auto;
			width:94%;
		}
		.home .lead--area h2{
			font-size:26px;
		}
		.home .lead--area p{
			text-align:left;
		}
		.home .lead--area .line{
			width:100%;
		}

		.home .menu--area .menu_list{
			display:block;
		}
		.home .menu--area .menubox{
			margin-bottom:20%;
		}
		.home .menu--area .menubox .photo img{
			width:100%;
			height:auto;
		}
		.home .menu--area .menubox .ttl img{
			max-width:100%;
			height:auto;
		}

		.home .oem--area{
			padding:10% 0;
		}
		.home .oem--area .oemwrap {
			padding:20% 0 0;
		}
		.home .oem--area .flex{
			padding:0;
			display:block;
		}
		.home .oem--area .ttlbox{
			margin-bottom:20px;
			text-align:center;
		}
		.home .oem--area .ttlbox h2{
			font-size:24px;
		}
		.home .oem--area .oembox{
			margin-bottom:10%;
		}
		.home .oem--area .oembox p{
			margin:20px 0 !important;
		}
		.home .oem--area .fig{
			width:100%;
		}
		.home .oem--area .fig img{
			width:100%;
			height:auto;
		}

		.home .news--area{
			padding:20% 0;
		}
		.home .news--area .flex{
		  padding: 20px 25px;
		}
		.home .news--area .flex .ttl{
			width:50%;
		}
		.home .news--area .ttlbox h2{
			font-size:18px;
		}
		.home .news--area .ico_insta{
			padding-top:3%;
		}
		.home .news--area .flex p{
			width:48%;
			font-size:14px;
		}

		.home .company--area{
			padding:20% 0;
		}
		.home .company--area .flex{
			display:block;
		}
		.home .company--area .fig{
			width:100%;
		}
		.home .company--area .combox{
			margin:0 auto 30px;
			width:100%;
			max-width:333px;
		}
		.home .company--area .combox:last-of-type{
			margin-bottom:0;
		}
		.home .company--area .combox .photo img{
			width:100%;
			height:auto;
		}
		.home .company--area .ttlbox{
			margin-bottom:20px;
		}
		.home .company--area .ttlbox h2{
			font-size:24px;
		}
		.home .company--area .combox p{
			margin:20px 0 !important;
		}


		.home .contact--area{
			padding:20% 0;
		}
		.home .contact--area p{
			padding-left:3%;
			padding-right:3%;
		}
		.home .contact--area .flex{
		  padding: 20px;
			display:block;
		}
		.home .contact--area .flex .tel{
			padding:30px 0 20px 50px;
			font-size:30px;
			background:url(../img/common/icn_tel.png) no-repeat 10px 18px
		}
		.home .contact--area .flex .fax{
			padding:30px 0 20px 50px;
			font-size:30px;
			border-top:1px solid #a68d8d;
			border-left:none;
			background:url(../img/common/icn_fax.png) no-repeat 10px 15px;
		}
		.home .contact--area a.btn{
			margin:0 auto;
			font-size:15px;
			width:94%;
		}
		a.btn span::after {
		    width: 38px;
		    right: 35px;
		}

		a.btn:hover span::after {
		    right: 25px;
		}
}



/* page common
-------------------------------------------------- */
.under .mvtxt{
	padding:80px 0 60px;
	background:#f4e9e9;
	text-align:center;
}

.under .mv h2 span,
.under .mvtxt h2 span{
	padding-bottom:5px;
	font-size:30px;
	letter-spacing:0.4em;
	display:block;
	font-family: 'Noto Serif JP', YuMincho, 'Yu Mincho',"ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

.under .gray--area{
	height:100px;
	background:#f3f3f3;
}

@media (max-width: 420px) {
		.under .mvtxt{
			padding:50px 0 40px;
		}
		.under .mv h2 span,
		.under .mvtxt h2 span{
			font-size:20px;
			letter-spacing:0.05em;
		}
		.under .gray--area{
			height:50px;
			background:#f3f3f3;
		}
}





/* kisyo
-------------------------------------------------- */
.kisyo .mv{
	margin-bottom:0;
}

.kisyo .mv img{
	width:100%;
	height:auto;
}

.kisyo .history--area{
	padding:200px 0;
	font-family: 'Noto Serif JP', YuMincho, 'Yu Mincho',"ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

.kisyo .history--area .wrapper{
	display:flex;
	justify-content:space-between;
}

.kisyo .history--area .left{
	width:33%;
	max-width:356px;
	display:flex;
	flex-direction:column;
	text-align:center;
}

.kisyo .history--area .left .ttlbox{
	position: sticky;
	position: -webkit-sticky;
	top: 140px;
	margin-right:22%;
}

.kisyo .history--area .left .ttlbox h2{
	margin-bottom:10px;
	font-size:28px;
	font-weight:400;
	letter-spacing:0.2em;
}

.kisyo .history--area .inbox{
	width:67%;
}

.kisyo .history--area .inbox p{
	margin:0 0 6em 0 !important;
	letter-spacing:0.05em;
}

.kisyo .history--area .inbox .figbox{
	display:flex;
	flex-wrap:wrap;
}

.kisyo .respect--area{
	padding:200px 0;
	background:#f3f1f1;
	text-align:center;
}

.kisyo .respect--area .ttlbox{
	margin-bottom:50px;
	text-align:center;
}

.kisyo .respect--area h2{
	margin-bottom:10px;
	font-size:28px;
	font-weight:400;
	letter-spacing:0.3em;
	font-family: 'Noto Serif JP', YuMincho, 'Yu Mincho',"ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

.kisyo .respect--area p{
	margin:0 0 2em 0 !important;
	letter-spacing:0.05em;
	line-height:2;
}

.kisyo .respect--area p.lead{
	font-family: 'Noto Serif JP', YuMincho, 'Yu Mincho',"ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

.kisyo .respect--area .wrapper .imgbox{
	margin-bottom:100px;
	display:flex;
	justify-content:space-between;
}

.kisyo .respect--area .wrapper .imgbox .fig{
	border-radius:50%;
	overflow:hidden;
}

.kisyo .respect--area .wrapper .imgbox .fig img{
	transition-duration: 0.5s;
	cursor:pointer;
}

.kisyo .respect--area .wrapper .imgbox .fig img:hover{
	transform: scale(1.1);
}

.kisyo .respect--area .btnbox{
	margin:0 auto;
	width:840px;
	display:flex;
	justify-content:space-between;
}

.kisyo .respect--area .btnbox a.btn{
	padding-left:30px;
	background:#fff;
	justify-content: flex-start;
	box-sizing:border-box;
}

.kisyo .syokunin--area{
	padding:200px 0;
	text-align:center;
	background:#fff;
}

.kisyo .syokunin--area .ttlbox{
	text-align:center;
}

.kisyo .syokunin--area h2{
	margin-bottom:10px;
	font-size:30px;
	font-weight:400;
	letter-spacing:0.2em;
	font-family: 'Noto Serif JP', YuMincho, 'Yu Mincho',"ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

.kisyo .syokunin--area h3{
	margin:0 auto 80px;
	width:100%;
	display:flex;
	align-items:center;
	text-align:center;
	font-weight:400;
	letter-spacing:0.05em;
	font-size:16px;
}

.kisyo .syokunin--area h3::before{
	margin-right:22px;
	border-top:1px solid #c40101;
	content:"";
	flex-grow:1;
}

.kisyo .syokunin--area h3::after{
	margin-left:22px;
	border-top:1px solid #c40101;
	content:"";
	flex-grow:1;
}

.kisyo .syokunin--area p{
	margin:0 0 45px 0 !important;
	font-family: 'Noto Serif JP', YuMincho, 'Yu Mincho',"ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

.kisyo .menu--area{
	padding:100px 0;
	background:#f4f7fb;
}

.kisyo .menu--area .wrapper{
	display:flex;
	justify-content:space-between;
}

.kisyo .menu--area .inbox{
	width:33%;
	max-width:333px;
	height:235px;
	overflow: hidden;
}

.kisyo .menu--area .inbox {
  position: relative;
	width:100%;
	max-width:333px;
	height:235px;
  text-align: center;
  overflow: hidden;
}
.kisyo .menu--area .inbox:after {
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -ms-background-size: cover;
  background: url(../img/common/menu01_img.png) no-repeat center center;
  background-size: cover;
  -webkit-transition: all .3s ease-out;
  -moz-transition: all .3s ease-out;
  -ms-transition: all .3s ease-out;
  transition: all .3s ease-out;
}
.kisyo .menu--area .inbox.inbox02:after {
  background: url(../img/common/menu02_img.png) no-repeat center center;
  background-size: cover;
}
.kisyo .menu--area .inbox.inbox03:after {
  background: url(../img/common/menu03_img.png) no-repeat center center;
  background-size: cover;
}
.kisyo .menu--area .inbox.inbox04:after {
  background: url(../img/common/menu04_img.png) no-repeat center center;
  background-size: cover;
}

.kisyo .menu--area .inbox:hover:after {
  -moz-transform: scale(1.1);
  -webkit-transform: scale(1.1);
  -ms-transform: scale(1.1);
  transform: scale(1.1);
}
.kisyo .menu--area .inbox .inimg {
    z-index: 1;
    position: relative;
}


@media (max-width: 767px) {
		.kisyo .history--area{
			padding:20% 0;
		}
		.kisyo .history--area .wrapper{
			display:block;
		}
		.kisyo .history--area .left{
			width:100%;
			text-align:center;
			margin-bottom:20px;
		}
		.kisyo .history--area .left .ttlbox{
			margin-right:0;
			text-align:center;
		}
		.kisyo .history--area .inbox{
			width:100%;
		}
		.kisyo .history--area .inbox p{
			margin:0 0 3em 0 !important;
		}
		.kisyo .history--area .inbox .figbox div{
			width:50%;
		}
		.kisyo .history--area .inbox .figbox div img{
			width:100%;
			height:auto;
		}

		.kisyo .respect--area{
			padding:20% 0;
		}
		.kisyo .respect--area h2{
			margin-bottom:20px;
		}
		.kisyo .respect--area p{
			margin:0 auto 3em !important;
			width:94%;
		}
		.kisyo .respect--area p:last-of-type{
			width:100%;
		}
		.kisyo .respect--area .wrapper .imgbox{
			margin-bottom:20%;
			display:block;
		}
		.kisyo .respect--area .wrapper .imgbox div{
			margin-bottom:50px;
		}
		.kisyo .respect--area .btnbox{
			margin:0 auto 20px;
			width:94%;
			display:block;
		}
		.kisyo .respect--area .btnbox div{
			margin-bottom:20px;
			width:100%;
		}
		.kisyo .respect--area .btnbox div img{
			width:100%;
			height:auto;
		}
		.kisyo .syokunin--area{
			padding:20% 0 0;
		}
		.kisyo .syokunin--area h2{
			margin:0 auto;
		}
		.kisyo .syokunin--area h3{
			margin:0 auto 40px;
		}
		.kisyo .syokunin--area p{
			margin:0 auto 10% !important;
			width:94%;
		}

		.kisyo .menu--area{
			margin-top:-200px !important;
			padding:20% 0;
		}
		.kisyo .menu--area .wrapper{
			margin:0 auto;
			max-width:333px;
			display:block;
		}
		.kisyo .menu--area .inbox{
			margin-bottom:15px;
			width:100%;
		}
}





/* contact
-------------------------------------------------- */
.contact h3{
	color:#a68d8d;
	font-size:30px;
	font-family: 'Noto Serif JP', YuMincho, 'Yu Mincho',"ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

.contact .lead--area{
	padding:100px 0;
	text-align:center;
}

.contact .lead--area .wrapper{
	border-bottom:1px solid #a68d8d;
}

.contact .lead--area.complete .wrapper{
	border-bottom:none;
}

.contact .lead--area p{
	margin-bottom:50px !important;
}

.contact .telfax--wrap{
	text-align:center;
}

.contact .telfax--wrap h3{
	margin-bottom:50px;
}

.contact .telfax--area{
	padding:100px 0 100px 0;
	background:#f5f5f5;
}

.contact .telfax--area .flex{
	padding:40px 0;
	display:flex;
	align-items: center;
	justify-content:center;
	box-sizing:border-box;
}

.contact .telfax--area .flex .tel{
	padding:20px 50px 20px 50px;
	font-size:50px;
	color:#867373;
	line-height:1;
	background:url(../img/common/icn_tel.png) no-repeat 0 18px
}
.contact .telfax--area .flex .tel a{
	color:#867373;
}

.contact .telfax--area .flex .fax{
	padding:20px 50px 20px 100px;
	font-size:50px;
	color:#867373;
	line-height:1;
	border-left:1px solid #a68d8d;
	background:url(../img/common/icn_fax.png) no-repeat left 50px top 15px;
}

.contact .form--area{
	margin:0 auto;
	padding:100px 0;
	width:980px;
	text-align:center;
}

.contact .form--area h3{
	margin-bottom:50px;
}

.contact .form--area .wrapper{
	width:980px;
}

.contact .form--area dl{
	padding:60px 38px;
	display:flex;
	align-items: flex-start;
	border-bottom:1px solid #a68d8d;
	box-sizing:border-box;
}

.contact .form--area dl:first-of-type{
	border-top:1px solid #a68d8d;
}

.contact .form--area dl dt{
	width:30%;
	max-width:320px;
	text-align:left;
	display:flex;
	align-items: center;
	justify-content: flex-start;
	font-size:16px;
}

.contact .form--area dl dt span{
	margin-left:1.5em;
	color:#fff;
	background:#f00;
	padding:0 5px;
	font-size:12px;
}

.contact .form--area dl dd{
	width:70%;
	text-align:left;
}

.radio-input{
	display: none;
}

.radio-input + label{
  padding-left: 20px;
  position:relative;
  margin-right: 20px;
}

.radio-input + label::before{
  content: "";
  display: block;
  position: absolute;
  top: 4px;
  left: 0;
  width: 15px;
  height: 15px;
  border: 1px solid #a68d8d;
  border-radius: 50%;
	margin-right:2px;
}

.radio-input:checked + label{
  color: #a68d8d;
}
.radio-input:checked + label::after{
  content: "";
  display: block;
  position: absolute;
  top: 7px;
  left: 3px;
  width: 11px;
  height: 11px;
  background: #a68d8d;
  border-radius: 50%;
}

.contact .form--area dl dd input[type="text"],
.contact .form--area dl dd input[type="tel"],
.contact .form--area dl dd input[type="mail"]{
	padding:10px 15px;
	width:100%;
	box-sizing:border-box;
	background:#f5f5f5;
	border:none;
	font-size:16px;
}

.contact .form--area dl dd textarea{
	padding:10px 15px;
	width:100%;
	height:100px;
	box-sizing:border-box;
	background:#f5f5f5;
	border:none;
	font-size:16px;
}

.contact .form--area p{
	padding-top:20px;
	margin-bottom:20px;
	font-size:14px;
}

.contact .form--area p a{
	text-decoration:underline;
}

.contact .form--area p.error{
	padding:0;
	margin:0;
	color:#f00;
}

.contact .form--area input[type="button"],
.contact .form--area input[type="submit"]{
	margin:0 auto;
	position:relative;
	width:470px;
	height:70px;
	display:flex;
	align-items: center;
	justify-content: center;
	font-size:22px;
	font-weight:bold;
	background:#f7eaea;
	border:none;
	cursor:pointer;
	-webkit-appearance: none;
	border-radius: 0;
}

.contact .form--area input[type="button"]{
	background:#f0f0f0;
}

.contact .formConfirm{
	display:flex;
	justify-content:space-between;
}


@media (max-width: 767px) {
		.contact h3{
			font-size:20px;
		}
		.contact .lead--area{
			padding:20% 0;
		}
		.contact .lead--area p,
		.contact .telfax--wrap h3,
		.contact .form--area h3{
			margin-bottom:10%;
		}
		.contact .telfax--area{
			padding:10% 0;
		}
		.contact .telfax--area .wrapper{
			max-width:300px;
		}
		.contact .telfax--area .flex{
		  padding: 20px;
			display:block;
		}
		.contact .telfax--area .flex .tel{
			padding:30px 0 20px 60px;
			font-size:30px;
			text-align:left;
			background:url(../img/common/icn_tel.png) no-repeat 10px 18px
		}
		.contact .telfax--area .flex .fax{
			padding:30px 0 20px 60px;
			font-size:30px;
			border-top:1px solid #a68d8d;
			text-align:left;
			border-left:none;
			background:url(../img/common/icn_fax.png) no-repeat 10px 15px;
		}
		.contact .form--area{
			margin:0 auto;
			padding:20% 0;
			width:94%;
		}
		.contact .form--area .wrapper{
			width:100%;
		}
		.contact .form--area dl{
			padding:20px;
			display:block;
		}
		.contact .form--area dl dt{
			margin-bottom:10px;
			width:100%;
		}
		.contact .form--area dl dd{
			width:100%;
		}
		.radio-input + label{
			display:block;
		}
		.contact .form--area input[type="submit"]{
			width:80%;
			max-width:470px;
			font-size:18px;
		}
}





/* company
-------------------------------------------------- */
.company .mv{
	padding:80px 0 60px;
	background:url(../img/company/mv.png) no-repeat center center / cover;
	text-align:center;
	width:100%;
}

.company .mv h2 span{
	color:#fff;
}

.company .ttlbox{
	text-align:center;
}

.company .ttlbox h2{
	margin-bottom:10px;
	font-size:30px;
	letter-spacing:0.1em;
	font-family: 'Noto Serif JP', YuMincho, 'Yu Mincho',"ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

.company .rinen--area {
  padding: 100px 0;
}

.company .lead--area {
  padding: 100px 0;
	text-align:center;
	background:#f4f7fb;
	font-family: 'Noto Serif JP', YuMincho, 'Yu Mincho',"ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

.company .lead--area p{
	margin:1em 0 3em !important;
	line-height:2.5;
}

.company .outline--area{
  padding: 200px 0;
}

.company .lead--area .sign{
	margin:1em 0 0 !important;
	font-size:20px;
	text-align:right;
}

.company .lead--area .sign span{
	font-size:14px;
}

.company .history--area{
  padding: 200px 0;
	background:#fdf7f7;
}

.company .outline--area .wrapper,
.company .history--area .wrapper{
	margin:40px auto 0;
	width:900px;
}

.company .outline--area dl,
.company .history--area dl{
	margin-bottom:50px;
	padding-bottom:40px;
	border-bottom:1px solid #885c5c;
	font-family: 'Noto Sans JP', "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic,"メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",  Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	display:flex;
}

.company .outline--area dl:first-of-type,
.company .history--area dl:first-of-type{
	border-top:1px solid #885c5c;
	padding-top:40px;
}

.company .outline--area dt,
.company .history--area dt{
	padding:0 40px;
	width:210px;
	color:#885c5c;
	font-weight:bold;
	box-sizing:border-box;
}

.company .outline--area dd p{
	margin:1em 0 3em !important;
}

.company .outline--area dd span{
	padding:2px 5px;
	width:70px;
	color:#fff;
	text-align:center;
	background:#885c5c;
	display:inline-block;
}

@media (max-width: 767px) {
		.company .rinen--area,
		.company .lead--area{
		  padding: 10% 0;
		}
		.company .outline--area,
		.company .history--area{
		  padding: 20% 0;
		}
		.company .outline--area .wrapper,
		.company .history--area .wrapper{
			margin:40px auto 0;
			width:94%;
			max-width:900px;
		}
}

@media (max-width: 420px) {
		.company .outline--area dl,
		.company .history--area dl{
			margin-bottom:25px;
			padding-bottom:20px;
			display:block;
		}
		.company .outline--area dl:first-of-type,
		.company .history--area dl:first-of-type{
			padding-top:20px;
		}
		.company .outline--area dt,
		.company .history--area dt{
			padding:0 10px 10px;
			width:100%;
			box-sizing:border-box;
		}
		.company .outline--area dd,
		.company .history--area dd{
			padding:0 10px 10px;
			width:100%;
			box-sizing:border-box;
		}
		.company .outline--area dd p{
			margin:1em 0 1.5em !important;
		}
}



/* privacy
-------------------------------------------------- */
.privacypolicy{
}

.privacypolicy .lead--area {
  padding: 100px 0;
}

.privacypolicy .lead--area p.lead{
	margin-bottom:40px !important;
}

.privacypolicy dt{
	margin-bottom:10px;
	color:#885c5c;
	font-weight:bold;
	border-bottom:1px solid #885c5c;
	font-family: 'Noto Sans JP', "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic,"メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",  Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}

.privacypolicy dd{
	margin-bottom:40px;
}

.privacypolicy dd .sign{
	font-size:14px;
}

.privacypolicy dd .sign span{
	padding:1em 0 .5em;
	font-size:18px;
	font-weight:bold;
	display:block;
}

@media (max-width: 420px) {
		.privacypolicy .lead--area {
		  padding: 20% 0;
		}
}





/*  xxxxx
-------------------------------------------------- */
@media (min-width: 769px) {
/* PC用 */
}
@media (min-width: 641px) {
/* tablet用 */
}
@media (min-width: 641px) and (max-width: 768px) {
	/* tablet用 */	
}
@media (max-width: 640px) {
/* SP用 */
}

