@charset "UTF-8";


@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;600;700&family=Noto+Serif+JP:wght@200;300;400;500;600;700&display=swap');


/*======================================

	common 
	
========================================*/


html {
	color: #555555;
	background-color: #ffffff;
	font-family: sans-serif;
	background-color: #ffffff;
}


body {
	margin: 0px auto 0px auto;
	padding: 0px 0px 0 0px;
	text-align : center ;
	font-family: 'Noto Sans JP', sans-serif;
	color: #222;
	background: #fff;
}



	


/*======================================

	common text
	
========================================*/



p {
	color: #555555;
	font-size: 15px;
	line-height: 30px;
}

a{
	color:#555555;
	text-decoration: underline;	
}

a:hover{
	color: #fc864c;
}


a img{
border:none;
padding:0 0 0 0;
margin:0 0 0 0;
transition: all  0.5s ease;
}
a img:hover{
opacity: 0.7;
filter: alpha(opacity=70);
-ms-filter: "alpha(opacity=70)";
}


figure{
	width:100%;
	margin: 0 0 0 0;
	padding:0 0 0 0;
}
figure img{
	width:100%;
	height:auto;
	margin: 0 0 0 0;
	padding:0 0 0 0;
}

section{
	text-align: left;
}

*{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}



.clear{
	clear:both;
	height: 0px;
	overflow: hidden;
}






/*======================================

	page-top
	
========================================*/
#page-top {
display: none;
position: fixed;
bottom: 15px;
right: 15px;
font-size: 12px;
	}
#page-top a {
	background: #fc864c;
	text-decoration: none;
	color: #fff;
	width: 45px;
	padding: 3px 0;
	text-align: center;
	display: block;
	border-radius: 3px;
	}
#page-top a:hover {
	text-decoration: none;
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";
	}




@media only screen and (max-width: 480px) {






/*======================================

	layout
	
========================================*/



.contents-wrapper{
	width:90%;
	text-align: left;
	margin: 36px auto 45px auto;
	padding: 0 0px 0 0px ;
}





.center-col{
	width:100%;
	position: relative;
	float:none;
	text-align: left;
	margin: 0 auto 60px auto;
	padding: 0px 0 0px 0 ;
	background: transparent;
}



/*======================================

	hamburger
	
========================================*/


.mobile-nav {
  position: fixed;
  right: -320px; /* これで隠れる */
  top: 0;
  width: 280px; /* スマホに収まるくらい */
  height: 100vh;
  padding-top: 40px;
  background-color: #4a483b;
  transition: all .6s;
  z-index: 200;
  overflow-y: auto; /* メニューが多くなったらスクロールできるように */
  -webkit-overflow-scrolling: touch;
}



.hamburger-wrapper{



}
.hamburger {
  position: fixed;
  right: 0px;
  top: 9px;
  width: 70px; /* クリックしやすいようにちゃんと幅を指定する */
  height: 70px; /* クリックしやすいようにちゃんと高さを指定する */
  cursor: pointer;
  z-index: 301;
}


.mobile-nav__list {
  margin: 0;
  padding: 0 0 30px 0;
  list-style: none;
}
.mobile-nav__item {
  text-align: center;
  padding: 0px 14px;
}
.mobile-nav__item a {
  display: block;
  padding: 9px 0;
  border-bottom: 1px solid #ddd;
  text-decoration: none;
  color: #fff;
  font-size:15px;
}
.mobile-nav__item span {
  display: block;
  font-size:12px;
}
.mobile-nav__item a:hover {

}
.hamburger__line {
  position: absolute;
  left: 25px;
  width: 32px;
  height: 4px;
  background-color: #fc864c;
  transition: all .4s;
}
.hamburger__line--1 {
  top: 9px;
}
.hamburger__line--2 {
  top: 18px;
}
.hamburger__line--3 {
  top: 27px;
}
.menu-caption{
	display: block;
	width:36px;
	font-size:8px;
	position: absolute;
	top: 33px;
	left:23px;
	color: #fc864c;
}

.black-bg {
  position: fixed;
  left: 0;
  top: 0;
  width: 100vw;
  height: 100vh;
  z-index: 100;
  background-color: #000;
  opacity: 0;
  visibility: hidden;
  transition: all .6s;
  cursor: pointer;
}
/* 表示された時用のCSS */
.nav-open .mobile-nav {
  right: 0;
}
.nav-open .black-bg {
  opacity: .7;
  visibility: visible;
}
.nav-open .hamburger__line--1 {
  transform: rotate(45deg);
  top: 20px;
  color:#fff;
  background-color:#fc864c;
}
.nav-open .hamburger__line--2 {
  width: 0;
  left: 50%;
  background-color:#fc864c;
}
.nav-open .hamburger__line--3 {
  transform: rotate(-45deg);
  top: 20px;
  background-color:#fc864c;
}

.nav-open span.menu-caption{
	display: none;
}




/*======================================

	h2
	
========================================*/


.h2-wrapper{
	width: 100%;
	padding: 12px 0px 12px 0px;
	display: block;
	justify-content: space-between;
	align-items: center;
	border-bottom:4px solid #ddd;
	background: #4a483b;
}

.h2-left{
	width: 90%;
	text-align: left;
	margin: auto;
}

.h2-right{
	display: none;
	width: 100%;
	text-align: right;
}

.h2-wrapper a{
	text-decoration: none;
	border: none;
}

h2{
	display: block;
	text-align: left;
	width:100%;
	line-height: 1;
	margin:0px 0 0px 0;
	padding: 0 0 0 0;
	font-size:24px;
	font-weight: 500;
	color:#fff;
	letter-spacing: 2px;
}
h2 span{
	display: block;
	font-size:15px;
	margin: 12px 0 0 0px;
	color:#ddd;
}






/*======================================

	header
	
========================================*/




header#header{
	width:100%;
	text-align: center;
	margin: 0 auto 0px auto;
	padding: 0 0px 0 0px ;
	background: #fff;
	position: relative;
	border-top:0px solid #000;
	border-bottom: 0px solid #666;
}







/*======================================

	head-navi
	
========================================*/

.head-navi{
	width: 100%;
	margin: 0px auto 0px auto;
	padding: 0 0px 0 0px;
	display: block;
	justify-content: space-between;
	align-items: center;
	background: #fff;
	overflow: hidden;
}

.head-navi-left{
	width: 95%;
	margin: 0px auto 0px auto;
	height: 45px;
	background: #fff;
	text-align: center;
	
}
.head-navi-right{
	display: none;
	width: 500px;
	padding: 0px 0 0px 0;
	height: 60px;
}

.head-main-logo{
	width: 300px;
	height: auto;
	margin: 18px 0 0px 0;
}

.head-main-logo img{
	width: 100%;
	height: auto;
}


.head-navi-common{
	width: 500px;
	height: 60px;
	display: flex;
	justify-content: flex-end;
	background: #fff;
	margin-top: 12px;
}

.head-navi-common a{
	display: inline-block;
	color:#333;
	font-size: 15px;
	font-weight: 600;
	letter-spacing: 2px;
	text-decoration: none;
	margin-left:27px;
}

.head-navi-common a:hover{
	opacity: 0.7;
}

.head-navi-common a span{
	display: block;
	color:#333;
	font-size: 11px;
	font-weight: 400;
	color:#999;
}


/*======================================

	breadcrumbs
	
========================================*/

.breadcrumbs-wrapper {
	width:100%;
	min-width: 1060px;
	text-align: center;
	margin: 0 auto 0px auto;
	padding: 0 40px 0 40px ;
	text-align: center;
}


.breadcrumbs {
	width:100%;
	text-align: left;
	margin:18px auto 0px auto;
	padding:6px 0 0px 0;
	display: flex;
}

.breadcrumbs li{
	font-size:12px;
	display:inline-block;
	margin:0 0 0 0;
	padding:0 0 0 0;
}
.breadcrumbs li a{
	text-decoration: none;
}






/*======================================

	footer
	
========================================*/



#footer-wrapper {
	background: #4a483b;
	width: 100%;
	padding: 33px 0 20px 0;
	margin: 0px 0 0 0;
	clear: both;
	text-align: center;
	color: #fff ;
	border-top:3px solid #ddd;
}

#footer {
	width: 100%;
	padding: 0 0 0 0;
	margin: 0px auto 0 auto;
	clear: both;
	text-align: left;
	color: #000000 ;
	border-top:0px solid #cccccc;
}

#footer-wrapper p {
	font-size:12px;
	line-height: 20px;
	color:#333;
}




/*======================================

	footernavi-nav
	
========================================*/

.footer-nav01{
	width: 100%;
	display: none;
	justify-content: center;
	margin: 0 0 33px 0;
}

.footer-nav01 a{
	font-size:15px;
	width: 120px;
	text-decoration: none;
	display: block;
	padding: 3px 0px 3px 0px;
	margin: 0 0px 0 0px;
	border-left:1px solid #fff;
	text-align: center;
	color:#fff;
}

.footer-nav01 a.last-child{
	border-right:1px solid #fff;
}

.footer-nav01 a:hover{
	color: #fc864c;
}


.footer-nav02{
	width: 100%;
	display: flex;
	justify-content:center;
	flex-flow: center;
	margin: 0 0 24px 0;
	color:#fff;
}


.footer-nav02 a{
	font-size:13px;
	text-decoration: none;
	display: inline-block;
	padding: 2px 15px 2px 15px;
	border-left:1px solid #fff;
	color:#fff;
}

.footer-nav02 a:hover{
	color: #fc864c;
}

.last-child{
	border-right:1px solid #fff;
}




.footer-logo{
	width: 100%;
	margin: 21px 0 21px 0;
	text-align: center;
}
.footer-logo a img{
	width: 240px;;
	margin: 0 auto;
}




/*======================================

	copyright
	
========================================*/



#copyright {
	width:100%;
	clear:both;
	margin: 30px auto 0 auto;
	padding:0 0 0 0;
	text-align: center;
}

#copyright p {
	color:#fff;
	font-size:12px;
}


/*======================================

	breadcrumbs
	
========================================*/

#breadcrumbs-wrapper {
	width: 100%;
	min-width: 1080px;
	padding: 0px 0 0px 15px;
	margin: 0px auto 0 auto;
	clear: both;
	text-align: center;
}


#breadcrumbs {
	width: 100%;
	min-width: 1080px;
	text-align: left;
	margin:0px auto 12px auto;
	padding: 0px 0 0px 15px;
	color: #cccccc ;
	height:20px;
	}

#breadcrumbs li{
	font-size:12px;
	float:left;
	display:inline;
	margin:0 0 0 0;
	padding:0 0 0 0;
	color:#999;
}

#breadcrumbs li a{
	color:#555555;
}

#breadcrumbs li a:hover{
	color:#fc864c;
}





/*======================================

	catalog-fix
	
========================================*/

.catalog-fix{
	display: none;
	position: fixed;
	right: 0;
	top: 30%;
	z-index: 90;
	width: 51px;
}





/*======================================

	to-contact
	
========================================*/

.to-contact{
	width: 100%;
	margin: 45px auto 45px auto;
}

.to-contact a{
	display: block;
	width: 100%;
	margin: 0 auto 0 auto;
	padding: 9px 0 9px 0;
	text-align: center;
	background: #fc864c;
	color: #fff;
	font-weight: 600;
	font-size: 16px;
	text-decoration: none;
}
.to-contact a span{
	display: block;
	font-size: 12px;
	text-decoration: none;
	margin-top: 3px;
}






}/*//end  max-width: 480px ///////////////////////*/











@media only screen and (min-width: 481px) {



/*======================================

	common text
	
========================================*/

body {
	margin: 0px 0px 0px 0px;
	padding: 0px 0% 0px 0% ;
	text-align : center ;
	background-color: #ffffff;
	border-top: 0px solid #333;
}

p {
	color: #333333;
	font-size: 15px;
	line-height: 30px;
}

a{
	color:#333333;
	text-decoration: underline;	
}

a:hover{
	color: #fc864c;
}


a img{
border:none;
padding:0 0 0 0;
margin:0 0 0 0;
}

a:hover img{
	border:none;
	padding:0 0 0 0;
	margin:0 0 0 0;
	opacity:0.7;
}




#mobile-nav-wrapper {
display: none;
z-index: 99;

}



/*======================================

	layout
	
========================================*/



.contents-wrapper{
	width:1200px;
	min-height: 400px;
	text-align: left;
	margin: 36px auto 45px auto;
	padding: 0 40px 0 40px ;
}




.main-col{
	width:700px;
	position: relative;
	text-align: left;
	margin: 0 0px 0 0;
	padding: 0px 0 0px 0 ;
	background: transparent;
}

.side-col{
	width:220px;
	position: relative;
	text-align: left;
	margin: 0 0px 0 0;
	padding: 0px 0 0px 0 ;
	background: transparent;
}

.center-col{
	width:810px;
	position: relative;
	float:none;
	text-align: left;
	margin: 0 auto 60px auto;
	padding: 0px 0 0px 0 ;
	background: transparent;
}



/*======================================

	h2
	
========================================*/


.h2-wrapper{
	width: 100%;
	min-width: 1060px;
	padding: 12px 40px 15px 40px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	border-bottom:4px solid #ddd;
	background: #4a483b;
}

.h2-left{
	width: 50%;
	text-align: left;
}

.h2-right{
	width: 50%;
	text-align: right;
}

.h2-wrapper a{
	text-decoration: none;
}

h2{
	display: block;
	text-align: left;
	width:100%;
	line-height: 1;
	margin:0px 0 0px 0;
	padding: 0 0 0 0;
	font-size:36px;
	font-weight: 500;
	color:#fff;
	letter-spacing: 3px;
}
h2 span{
	display: block;
	font-size:16px;
	margin: 12px 0 0 0px;
	color:#ddd;
	letter-spacing: 0px;
}






/*======================================

	header
	
========================================*/




header#header{
	width:100%;
	min-width: 1200px;
	text-align: center;
	margin: 0 auto 0px auto;
	padding: 0 40px 0 40px ;
	background: #fff;
	position: relative;
	border-top:0px solid #000;
	border-bottom: 0px solid #666;
}







/*======================================

	head-navi
	
========================================*/

.head-navi{
	width: 100%;
	margin: 0px auto 0px auto;
	padding: 0 0px 0 0px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	background: #fff;
	height: 90px;
	overflow: hidden;
}

.head-navi-left{
	width: 500px;
	text-align: left;
	height: 60px;
}
.head-navi-right{
	width: 700px;
	padding: 0px 0 0px 0;
	height: 60px;
}

.head-main-logo{
	width: 500px;
	height: auto;
	margin: 12px 0 0px 0;
}

.head-main-logo img{
	width: 100%;
	height: auto;
}


.head-navi-common{
	width: 700px;
	height: 60px;
	display: flex;
	justify-content: flex-end;
	background: #fff;
	margin-top: 12px;
}

.head-navi-common a{
	display: inline-block;
	color:#333;
	font-size: 15px;
	font-weight: 600;
	letter-spacing: 2px;
	text-decoration: none;
	margin-left:27px;
}

.head-navi-common a:hover{
	opacity: 0.7;
}

.head-navi-common a span{
	display: block;
	color:#333;
	font-size: 11px;
	font-weight: 400;
	color:#999;
}


/*======================================

	breadcrumbs
	
========================================*/

.breadcrumbs-wrapper {
	width:100%;
	min-width: 1060px;
	text-align: center;
	margin: 0 auto 0px auto;
	padding: 0 40px 0 40px ;
	text-align: center;
}


.breadcrumbs {
	width:100%;
	text-align: left;
	margin:18px auto 0px auto;
	padding:6px 0 0px 0;
	display: flex;
}

.breadcrumbs li{
	font-size:12px;
	display:inline-block;
	margin:0 0 0 0;
	padding:0 0 0 0;
}
.breadcrumbs li a{
	text-decoration: none;
}






/*======================================

	footer
	
========================================*/



#footer-wrapper {
	background: #4a483b;
	width: 100%;
	padding: 33px 0 20px 0;
	margin: 0px 0 0 0;
	clear: both;
	text-align: center;
	color: #fff ;
	border-top:3px solid #ddd;
}

#footer {
	width: 1080px;
	padding: 0 0 0 0;
	margin: 0px auto 0 auto;
	clear: both;
	text-align: left;
	color: #000000 ;
	border-top:0px solid #cccccc;
}

#footer-wrapper p {
	font-size:12px;
	line-height: 20px;
	color:#333;
}




/*======================================

	footernavi-nav
	
========================================*/

.footer-nav01{
	width: 100%;
	display: flex;
	justify-content: center;
	margin: 0 0 33px 0;
}

.footer-nav01 a{
	font-size:15px;
	width: 120px;
	text-decoration: none;
	display: block;
	padding: 3px 0px 3px 0px;
	margin: 0 0px 0 0px;
	border-left:1px solid #fff;
	text-align: center;
	color:#fff;
}

.footer-nav01 a.last-child{
	border-right:1px solid #fff;
}

.footer-nav01 a:hover{
	color: #fc864c;
}


.footer-nav02{
	width: 100%;
	display: flex;
	justify-content:center;
	flex-flow: center;
	margin: 0 0 24px 0;
	color:#fff;
}


.footer-nav02 a{
	font-size:13px;
	text-decoration: none;
	display: inline-block;
	padding: 2px 15px 2px 15px;
	border-left:1px solid #fff;
	color:#fff;
}

.footer-nav02 a:hover{
	color: #fc864c;
}

.last-child{
	border-right:1px solid #fff;
}


.footer-logo{
	width: 100%;
	margin: 21px 0 21px 0;
	text-align: center;
}
.footer-logo a img{
	width: 240px;;
	margin: 0 auto;
}



/*======================================

	copyright
	
========================================*/



#copyright {
	width:100%;
	clear:both;
	margin: 30px auto 0 auto;
	padding:0 0 0 0;
	text-align: center;
}

#copyright p {
	color:#fff;
	font-size:12px;
}


/*======================================

	breadcrumbs
	
========================================*/

#breadcrumbs-wrapper {
	width: 100%;
	min-width: 1080px;
	padding: 0px 0 0px 15px;
	margin: 0px auto 0 auto;
	clear: both;
	text-align: center;
}


#breadcrumbs {
	width: 100%;
	min-width: 1080px;
	text-align: left;
	margin:0px auto 12px auto;
	padding: 0px 0 0px 15px;
	color: #cccccc ;
	height:20px;
	}

#breadcrumbs li{
	font-size:12px;
	float:left;
	display:inline;
	margin:0 0 0 0;
	padding:0 0 0 0;
	color:#999;
}

#breadcrumbs li a{
	color:#555555;
}

#breadcrumbs li a:hover{
	color:#fc864c;
}





/*======================================

	catalog-fix
	
========================================*/

.catalog-fix{
	position: fixed;
	right: 0;
	top: 30%;
	z-index: 90;
	width: 51px;
}

.catalog-fix{
	display: block;
	z-index: 90;
	background: #eb6ea5;
	width: 51px;
	height: auto;
	text-align: center;
	padding: 12px 0 12px 0;
	margin: 0 0 12px 0;
	border-radius: 9px 0px 0px 9px;
	border-top:1px solid #fff;
	border-right:0px solid #fff;
	border-bottom:1px solid #fff;
	border-left:1px solid #fff;
	text-decoration: none;
	color:#fff;
}

.catalog-fix:hover{
	opacity: 0.7;
	color:#fff;
}

.catalog-fix span{
	font-size: 14px;
	font-weight: 600;
  writing-mode: vertical-rl;
}





/*======================================

	to-contact
	
========================================*/

.to-contact{
	width: 100%;
	margin: 45px auto 45px auto;
}

.to-contact a{
	display: block;
	width: 350px;
	margin: 0 auto 0 auto;
	padding: 9px 0 9px 0;
	text-align: center;
	background: #fc864c;
	color: #fff;
	font-weight: 600;
	font-size: 18px;
	text-decoration: none;
}
.to-contact a span{
	display: block;
	font-size: 13px;
	text-decoration: none;
	margin-top: 3px;
}

.to-contact a:hover{
	opacity: 0.7;
}



}/*//end  min-width: 481px ///////////////////////*/







