/* CSS Document */
@import url('https://fonts.googleapis.com/css2?family=Sawarabi+Mincho&display=swap');
body {
	width:100%;
	font-size:100%;
	line-height:1.5em;
	font-family:'Sawarabi Mincho', sans-serif, 'Hiragino Kaku Gothic ProN', Meiryo, 'MS PGothic', Sans-serif;
	color:#4b4949;
	-webkit-text-size-adjust:100%;/* for smt */
	margin:0px;
	background: #FFF;
	color:#4b4949;
}
.sp {
	display:none;
	width:0px;
	height:0px;
}
.pc {
	display:block;
	width:auto;
}
ul {
	padding-inline-start: 5px;
}

li{
	list-style-type: none;
}
a  {
	color: #000000;
	text-decoration:none;
	padding:10px;
}
a:hover  {
	color:#000000;
	background-color:#b2d5e9;
}
a[href^="tel:"] {
	pointer-events: none;
	text-decoration:none;
}
a[href^="mailto:"] {
	text-decoration:none;
}
a[href^="mailto:"]:hover{
	text-decoration:none;
	color:#0000FF;
}
.clearfix:after {
  clear: both;
  content: '';
  display: block;
}
#wrapper    {
	width:100%;
	margin:auto;
}
#incHeaderWrap  {
	width:100%;
	height:130px;
	padding:5px 0px 5px 0;
	border-bottom:solid 2px #333;
	background:#FFF;
	position: fixed;
	top:0px;
	z-index: 10;
}
#incHeader   {
	max-width:1280px;
	height:120px;
	margin:auto;
}
.topLogo {
	max-width:100%;
	display:flex;
	flex-direction:row;
	flex-wrap:nowrap;
	justify-content:space-between;
}
.topLogo > a {
	display:inline-block;
	padding:0px;
}
.topLogo > a > img {
	max-height:30px;
}
.toAsk {
	margin:10px;
	display:inline-block;
}
.topMenu {
	display:flex;
	flex-direction:row;
	flex-wrap:nowrap;
	justify-content:space-between;
}
.topMenuUl {
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:flex-end;
}
ul.topMenuUl li:last-of-type {
	width:100%;
	margin:auto;
	text-align:right;
}
#menuWrap {
	width:100%;
	height:69px;
	background:#FFFFFF;
}
#globalMenu   {
	width:100%;
	max-width:1280px;
	margin:auto;
	background:#FFFFFF;
	top: 0px;
}

#globalMenu > ul {
	width:100%;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	padding:10px 0px 10px 0px;
	height:40px;
	margin:auto;
}

#globalMenu  > ul > li {
	display:block;
	float:left;
	width:calc(( 100% / 7 ) - 9px);
	font-size:16px;
	line-height:1.1em;
	border-left:1px solid #004f24;
}
#globalMenu  > ul > li:last-child {
	border-right:1px solid #004f24;
}

#globalMenu > ul > li > a {
	display:block;
	color:#004f24;
	text-align:center;
	text-decoration:none;
}

#globalMenu > ul > li > a:hover {
	color:#657e2b;
	padding-top:-20px;
	text-decoration:underline;
	text-underline-offset: 0.5em;
	transition: .3s;
}
#mainContents  {
	width:100%;
	margin-bottom:5px;
	background:#FFFFFF;
	padding:160px 0px 10px 0px;
	font-size:18px;
	line-height:200%;
}
.container {
	max-width:calc( 1080px - 20px );
	margin:auto;
	margin-bottom:30px;
	padding:0px 10px 0px 10px;
}
.wideContainer {
	max-width:100%;
	margin:auto;
	padding:0px;
}
#incFooter {
	width:100%;
	background:#fff;
	padding:10px 0 30px 0;
}
#incFooterinner {
	max-width: calc( 1280px - 20px);
	padding:0 10px 0 10px;
	margin:auto;
}
#footerSns {
	width:100%;
}
#footerSns > ul {
	width:calc( 100% - 20px );
	padding:0px 10px 0px 10px;
	display:inline-block;
}
#footerSns  > ul > li {
	width:calc(( 100% / 3 ) - 60px );
	display:inline-block;
	height:70px;
	margin:10px;
	float:left;
	background:#05004f;
}
#footerSns  > ul > li > a {
	color:#FFF;
	height:calc( 100% - 20px );
}

#footerSns  > ul > li > a:hover {
	background:#2d33f3b8;
}
#footerSns  > ul > li > a > i {
	font-size:40px;
	color:#fff;
}
.sns {
	text-align:center;
}
#page_top{
	width: 100%;
	display:block;
	margin:auto;
	height: 90px;
}
#page_top a{
	position: relative;
	display: block;
	margin:auto;
	width: 90px;
	height: 90px;
	text-decoration: none;
}
#page_top a::before{
	font-family: FontAwesome;
	content: '\f062';
	font-size: 25px;
	color: #3f98ef;
	position: absolute;
	width: 25px;
	height: 25px;
	top: -40px;
	bottom: 0;
	right: 0;
	left: 0;
	margin: auto;
	text-align: center;
}
#page_top a::after{
	content: 'PAGE TOP';
	font-size: 13px;
	color: #fff;
	position: absolute;
	top: 45px;
	bottom: 0;
	right: 0;
	left: 0;
	margin: auto;
	text-align: center;
	color: #3f98ef;
}
#footerLogo  {
	width:150px;
	margin:auto;
}
#footerLogo > a > img {
	width:150px;
}

H1 {
    font-size: 28px;
    position: relative;
    padding: 1rem 2rem;
    border-bottom: 3px solid #eee;
    border-left: none;
}

H1:before {
	position: absolute;
	bottom: -3px;
	left: 0;
	width: 20%;
	height: 3px;
	content: '';
	background: #ccc;
}

H2 {
    font-size: 14px;
    position: relative;
    padding: 5px 5px 10px 5px;
    border-bottom: 3px solid #eee;
    border-left: none;
}
h3 {
	font-size:24px;
	display:block;
	width:100%;
}
h10 {
	display:block;
	font-size:24px;
}
h20 {
	max-width:950px;
	display:block;
	padding:10px 0px 20px 0px;
	margin:auto;
	margin-top:50px;
	margin-bottom:50px;
	text-align:center;
	border-top:1px solid #004f24;
	border-bottom:1px solid #004f24;
	font-size:24px;
}
h30 {
	background:#000;
	display:block;
	width:100%;
	height:150px;
	color:#fff;
	margin-bottom:30px;
	background-position:top 0px left 0px;
	background-size:auto;
	background-repeat:no-repeat;
}


/* ■■■■■■■■■■■■■■■      Moile CSS @media screen and (max-width: 800px)   ■■■■■■■■■■■■■■■*/
@media screen and (max-width: 800px) {
.pc {
	display:none;
	width:0px;
	height:0px;
}
.sp {
	display:block;
	width:auto;
}
#incHeaderWrap  {
	height:100px;
}
#mainContents  {
	padding:111px 0px 10px 0px;
}
.topLogo {
	max-width:100%;
	margin-left:70px;
	display:flex;
	flex-direction:column;
	flex-wrap:nowrap;
	justify-content:flex-end;
	align-items:flex-end;
}
#topLogo > a > img {
	display:block;
	height:50px;
}
.topMenuUl {
	margin-top:0px;
	margin-bottom:0px;
}
.topMenuUl > li > a {
	padding:5px;
	height:30px;
}
.tel {
	width:200px;
	margin:auto;
	display:block;
}
a[href^="tel:"] {
	pointer-events: auto;
	text-decoration:none;
}
/*----------------------Burger*/
/*ヘッダーまわりはご自由に*/
header {
	position:fixed;
	top:60px;
	float:left;
	width:50px;
  padding-left:5px;
  padding-top:5px;
	margin-top:-50px;
  background: #000000;
	z-index:99;
}
#nav-drawer {
	padding-top:10px;
  position: relative;
}

#nav-drawer img{
	height:20px;
	margin-bottom:0px;
}
/*チェックボックス等は非表示に*/
.nav-unshown {
  display:none;
}
/*アイコンのスペース*/
#nav-open {
    display: inline-block;
    width: 50px;
    height: 22px;
	margin-bottom:10px;
	margin-left:7px;
    vertical-align: middle;
}
/*ハンバーガーアイコンをCSSだけで表現*/
#nav-open span, #nav-open span:before, #nav-open span:after {
    position: absolute;
    height: 3px;/*線の太さ*/
    width: 30px;/*長さ*/
    border-radius: 3px;
    background: #FFFFFF;
    display: block;
    content: '';
    cursor: pointer;
}
#nav-open span:before {
    bottom: -8px;
}
#nav-open span:after {
    bottom: -16px;
}
/*閉じる用の薄黒カバー*/
#nav-close {
    display: none;/*はじめは隠しておく*/
    position: fixed;
    z-index: 1000;
    top: 0;/*全体に広がるように*/
    left: 0;
    width: 100%;
    height: 100%;
    background: black;
    opacity: 0;
    transition: .3s ease-in-out;
}
/*中身*/
#nav-content {
    overflow: auto;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;/*最前面に*/
    width: 80%;/*右側に隙間を作る*/
    max-width: 280px;/*最大幅*/
    height: 100%;
    transition: .3s ease-in-out;/*滑らかに表示*/
    -webkit-transform: translateX(-105%);
    transform: translateX(-105%);/*左に隠しておく*/
    background-color: rgba(51,51,51,0.6);
    padding-left: 10px;
    border: 1px solid #000;
    color: #fff;
}
/*チェックが入ったらもろもろ表示*/
#nav-input:checked ~ #nav-close {
    display: block;/*カバーを表示*/
    opacity: .5;
}
#nav-input:checked ~ #nav-content {
    -webkit-transform: translateX(0%);
    transform: translateX(0%);/*中身を表示*/
    box-shadow: 6px 0 25px rgba(0,0,0,.15);
}
#nav-content > ul {
	width:100%;
	margin:auto;
	padding-left:0px;
	display:inline-block;
}
#nav-content  > ul > li {
	display:inline-block;
	float:left;
	width:200px;
}
#nav-content > ul > li >a {
	font-size:16px;
	padding:15px;
	height:30px;
	color:#FFFFFF;
	display:inline-block;
	vertical-align:middle;
	text-decoration:none;
}

/*----------------------Burger*/

#footerSns  > ul > li {
	width:calc( 100% - 20px);
	display:block;
	height:70px;
	margin:10px;
	float:none;
}
}
