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

/*--------------------------------------------------------
　基本設定
--------------------------------------------------------*/
html{}

body {
	width: 100%;
	height: 100%;
	font-family:"Noto Sans Japanese", 'Karla', "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	color:#333;
	font-size: 10px;
	font-size: 1rem;
	background:#FFF;
	line-height:1.3em;
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	-o-text-size-adjust: 100%;
	text-size-adjust: 100%;
}

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

img{
	width: 100%;
	height: auto;
}
a{
	text-decoration: none;
	-webkit-backface-visibility: hidden; /* Chrome:hover欠け対策 */
    backface-visibility: hidden; /* Chrome:hover欠け対策 */
	padding: 1px; /* Chrome:hover欠け対策 */
}
a {
	transition-duration: 0.5s;
}
a:hover {
	opacity: 0.7;
}

/*--------------------------------------
フォーム
---------------------------------------*/
input[type=text] {
  background: #fff;
  border: 1px solid #999999;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  font-size: 14px;
  padding: 10px;
  height: 40px;
  width: 100%;
}
select {
  appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  -webkit-appearance: none;
  background:#FFFFFF;
  border: 1px solid #999999;
  border-radius: 0;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  cursor: pointer;
  padding: 10px;
  position:relative;
  height: 40px;
  width: 100%;
}
textarea {
  border: 1px solid #999999;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  font-size: 13px;
  padding: 10px;
  height: 210px;
  width: 100%;
}




/*--------------------------------------------------------
　PC
--------------------------------------------------------*/

@media print, screen and (min-width: 768px){
.sp{display: none!important;}
.inner{width: 960px;margin: auto;}

#wrapper{position: static;padding-top: 54px;}
#content{}
header{
	width: 100%;
	/* height: 100vh; */
	background: url("../img/common/header_bg.png") no-repeat top center;
	/* background-size: cover; */
	/* background-attachment: fixed; */
	position: fixed;
	z-index: 999;
	box-shadow: 0 10px 30px -20px rgba(53, 47, 47, 0.6);
}


#navHead{
    width: 100%;
    padding: 9;
    z-index: 900;
    /* overflow: hidden; */
}
#navHead h2{
	float: left;
	width: 220px;
	padding: 10px 60px 10px 0;
	z-index: 999;
	background: url("../img/common/header_line.png") no-repeat top right;
}
nav{
}
nav h2.logo{float: left;width: 200px;}
nav h2.logo img{
	width: 100%;
}
nav ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	float: right;
	margin: 5px 0 0 0;
	position: relative;
	padding: 0 120px 0 0;
}
nav ul li{
    text-align: center;
    border-left: 1px solid #fff;
}
nav ul li:first-child{
    border-left: none;
}
nav ul li:first-child a{
	background: url("../img/common/icon_home_on.svg") no-repeat 0px 12px;
	background-size: 20px auto;
	padding: 0 20px 0 30px;
	text-align: center;
}
nav ul li:last-child{
	position: absolute;
	right: 0;
	top: -5px;
	width: 120px;
    border-left: none;
}
nav ul li:last-child a{
	background: url(../img/common/icon_mail.svg) no-repeat 50px 45px #007752;
	background-size: 20px auto;
	padding: 5px 0 25px  0;
}
nav ul li a{
    color: #fff;
    display: block;
    padding: 0 20px;
    line-height: 44px;
}
	
footer{
	background: #333;
	color: #fff;
	padding: 40px 0 20px 0;
}
footer .inner{
	background: #333;
	color: #fff;
	display: flex;
	justify-content: space-between;
}
footer .inner .copyright{margin-top: 60px;}
footer .inner .foot-menu{width: 120px;}
footer .inner .foot-menu li{margin-bottom: 20px;}
footer .inner .foot-menu li a{
}
	
/* topに戻る */
#page_top{
    /* position: absolute; */
    /* width: 100%; */
    /* max-width: 1200px; */
    /* z-index: 5; */
    height: 0;
    line-height: 0;
    padding: 0;
    font-size: 0;
}
#page_top img{
    position: fixed;
    right: 5%;
    width: 15%;
    bottom: 3.5%;
    max-width: 80px;
    height: auto;

}
}


/*--------------------------------------------------------
　SP
--------------------------------------------------------*/

@media print, screen and (max-width: 767px){
	.pc{
		display: none!important;
	}

#navHead{
    position: fixed;
    width: 100%;
    padding: 10px 0;
    z-index: 900;
    background-color: rgba(0,0,0,0.3);
}
#navHead h2{
	float: left;
	width: 140px;
	z-index: 999;
	margin-left: 10px;
}

#navHead nav {
	position:absolute;
	right:0;
	top: -80vh;
	background: rgba(0,0,0,1);
	width: 100%;
	padding: 4% 4%;
	-webkit-transition:.5s ease-in-out;
	-moz-transition:.5s ease-in-out;
	-o-transition:.5s ease-in-out;
	transition:.5s ease-in-out;
	text-align:left;
	}
#navHead nav  ul {margin:0;display:  inherit;width: 100%;}
#navHead nav  ul li {width:100%;display:block;margin:0;border-bottom: dotted 1px #666;border-right: none;line-height:3;}
#navHead nav  ul li.sele {background:#666;color:#fff;}
#navHead nav  ul li a {
	display:block;
	color: #fff;
	background: url("../img/common/icon_arrow1.png") no-repeat 95%;
	background-size:10px;
}
#navHead nav  ul li::after {content:''}
#navHead nav  ul li:last-child {/* border-bottom:none */}
#navHead nav.fixed{
	position: absolute;
	width: 100%;
	z-index: 999;
	background-color: rgba(0,0,0,0.6);
	right: 0;
	top: -80vh;
}
#navHead nav.fixed ul{width: 100%;margin: 0 auto;}
#navToggle {
	display: none;
	position:absolute;
	right:13px;
	top:13px;
	width:30px;
	height:25px;
	cursor:pointer}
#navToggle div {position:relative}
#navToggle span {
	display:block;
	position:absolute;
	width:100%;
	border-bottom: solid 3px #fff;
	-webkit-transition: .35s ease-in-out;
	-moz-transition: .35s ease-in-out;
	transition: .35s ease-in-out;
	}
#navToggle span:nth-child(1) {top:0}
#navToggle span:nth-child(2) {top:11px}
#navToggle span:nth-child(3) {top:22px}
#navToggle {display: block}
.openNav #navToggle span:nth-child(1) {
	top: 11px;
	-webkit-transform:rotate(-45deg);
	-moz-transform:rotate(-45deg);
	transform:rotate(-45deg)}
.openNav #navToggle span:nth-child(2),
.openNav #navToggle span:nth-child(3) {
	top: 11px;
	-webkit-transform:rotate(45deg);
	-moz-transform:rotate(45deg);
	transform:rotate(45deg)}
.openNav nav {
	-moz-transform: translateY(calc( 80vh + 50px ) );
	-webkit-transform: translateY(calc( 80vh + 50px ) );
	transform: translateY(calc( 80vh + 50px ) );
	}

footer{
	background: #333;
	color: #fff;
	padding: 40px 0 20px 0;
}
footer .inner{
}
footer .inner .copyright{margin: 0 0 4% 0;text-align: center;}
footer .inner .foot-menu{width: 80%;margin: auto;display: flex;flex-wrap: wrap;justify-content: space-between;}
footer .inner .foot-menu li{
    width: 44%;
}
footer .inner .foot-menu li:first-child{margin-top: 6%;}
footer .inner .foot-menu li a{
}
	
/* topに戻る */
#page_top{
    position: absolute;
    width: 100%;
    max-width: 1200px;
    z-index: 5;
}
#page_top img{
    position: fixed;
    right: 5%;
    width: 15%;
    bottom: 3.5%;
    max-width: 80px;
    height: auto;

}

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

}

/*--------------------------------------------------------
　フォント
--------------------------------------------------------*/

@font-face {
font-family: 'Noto Serif Japanese';
font-style: normal;
font-weight: 400;
src: url(fonts/NotoSerifCJKjp-Regular.otf) format('opentype')
}

/*--------------------------------------------------------
　空き設定
--------------------------------------------------------*/
.mt05 { margin-top: 5px !important; }
.mt06 { margin-top: 6px !important; }
.mt07 { margin-top: 7px !important; }
.mt08 { margin-top: 8px !important; }
.mt10 { margin-top: 10px !important; }
.mt12 { margin-top: 12px !important; }
.mt15 { margin-top: 15px !important; }
.mt18 { margin-top: 15px !important; }
.mt20 { margin-top: 20px !important; }
.mt25 { margin-top: 25px !important; }
.mt30 { margin-top: 30px !important; }
.mt35 { margin-top: 30px !important; }
.mt40 { margin-top: 50px !important; }
.mt50 { margin-top: 50px !important; }
.mt60 { margin-top: 60px !important; }
.mt80 { margin-top: 80px !important; }
.mt100 { margin-top: 100px !important; }

.mu03 { margin-bottom: 3px !important; }
.mu05 { margin-bottom: 5px !important; }
.mu08 { margin-bottom: 8px !important; }
.mu10 { margin-bottom: 10px !important; }
.mu15 { margin-bottom: 15px !important; }
.mu20 { margin-bottom: 20px !important; }
.mu25 { margin-bottom: 25px !important; }
.mu30 { margin-bottom: 30px !important; }
.mu50 { margin-bottom: 50px !important; }
.mu40 { margin-bottom: 40px !important; }
.mu60 { margin-bottom: 60px !important; }
.mu70 { margin-bottom: 80px !important; }
.mu80 { margin-bottom: 80px !important; }
.mu100 { margin-bottom: 100px !important; }
.mu150 { margin-bottom: 100px !important; }

.mr02 { margin-right: 2px !important; }
.mr05 { margin-right: 5px !important; }
.mr10 { margin-right: 10px !important; }
.mr13 { margin-right: 13px !important; }
.mr14 { margin-right: 14px !important; }
.mr15 { margin-right: 15px !important; }
.mr20 { margin-right: 20px !important; }
.mr25 { margin-right: 25px !important; }
.mr30 { margin-right: 30px !important; }
.mr35 { margin-right: 35px !important; }
.mr40 { margin-right: 40px !important; }
.mr45 { margin-right: 45px !important; }
.mr50 { margin-right: 50px !important; }

.ml02 { margin-left: 2px !important; }
.ml05 { margin-left: 5px !important; }
.ml10 { margin-left: 10px !important; }
.ml15 { margin-left: 15px !important; }
.ml20 { margin-left: 20px !important; }
.ml25 { margin-left: 25px !important; }
.ml30 { margin-left: 30px !important; }
.ml35 { margin-left: 35px !important; }
.ml40 { margin-left: 40px !important; }
.ml45 { margin-left: 45px !important; }
.ml50 { margin-left: 50px !important; }
