@charset "UTF-8";

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

html { font-size: 62.5%; }
html:focus { outline: none; }

body { 
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: normal; 
	font-size: 16px; 
	line-height: 1.6; 
	color: #333;
	margin: 0;
	background: #F8F5E7;
}

main { display: block; overflow: hidden; }



/* ----------------------------------- */
/* コンテナ
/* ----------------------------------- */
.container { margin-right: auto; margin-left: auto; padding-left: 15px; padding-right: 15px; }
@media print, screen and (min-width: 768px) { .container { width: 750px; transition: ease-in .1s; } }
@media print, screen and (min-width: 992px) { .container { width: 970px; transition: ease-in .1s; } }
@media print, screen and (min-width: 1200px) { .container { width: 1170px; transition: ease-in .1s; } }

/* ----------------------------------- */
/* clearfix
/* ----------------------------------- */
.clearfix:before, .clearfix:after, .container:before, .container:after { content: " "; display: table; }

.clearfix:after, .container:after { clear: both; }


/* ----------------------------------- */
/* リンク */
/* ----------------------------------- */
a { 
	color: #00F; 
	text-decoration: underline; 
	transition: all ease .3s; 
}
a:hover, a:focus { 
	color: #F00; 
	text-decoration: none; 
	transition: all ease .3s; 
}
a:focus, a:active, a:hover { 
	outline: 0; 
	text-decoration: none; 
}
a img:hover { 
	opacity: 0.8;
	-webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

/* ----------------------------------- */
/* イメージ */
/* ----------------------------------- */
img { vertical-align: bottom; max-width: 100%; height: auto; flex-shrink: 0; }
img[class*="align"], img[class*="wp-image-"], img[class*="attachment-"] { height: auto; }
img.alignleft, img.alignright, img.aligncenter { margin-bottom: 30px; }
img.alignleft { display: inline; float: left; margin-right: 20px; }
img.alignright { display: inline; float: right; margin-left: 20px; }
img.aligncenter { clear: both; display: block; margin-left: auto; margin-right: auto; margin-bottom: 30px !important; }

#header{
	border-top: 5px solid #005839;
	padding: 90px 15px 10px;
	text-align: center;
}

#main{
	padding: 0 15px 30px;
	text-align: center;
}
#footer{
	text-align: center;
	padding: 0 15px 75px;
}
@media screen and (max-width: 767px) {
#header{
	padding: 90px 5% 10px;
}

#main{
	padding: 0 5% 30px;
}
#footer{
	padding: 0 5% 75px;
}
}

.logo{
	padding-bottom: 10px;
}
.red_text{
	color: #C7000B;
	font-size: 36px;
	font-weight: bold;
}
@media screen and (max-width: 767px) {
.red_text{
	font-size: 24px;
}
}
.map_area{
	width: 100%;
	max-width: 720px;
	margin: 0 auto;
}
.map_area h2{
	width: 100%;
	height: 50px;
	background: #111111;
	text-align: center;
	color: #fff;
	font-size: 24px;
	font-weight: bold;
	line-height: 50px;
	margin: 0;
	
}
.map_area .g_map{
	height: 0;
	overflow: hidden;
	padding-bottom: 480px;
	position: relative;
}
.map_area .g_map iframe{
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
}

.footer_box{
	padding-bottom: 57px;
	display: table;
	margin: 0 auto;
}
.footer_box .left_box{
	padding-right: 7px;
	display: table-cell;
  	vertical-align: middle;
}
.footer_box .right_box{
	padding-left: 7px;
	display: table-cell;
  	vertical-align: middle;
}
@media screen and (max-width: 767px) {
.footer_box{
	display: block;
}
.footer_box .left_box{
	padding-right: 0;
	display: block;
	padding-bottom: 30px;
}
.footer_box .right_box{
	padding-left: 0;
	display: block;
}
}
.footer_box2 a{
	color: #111111;
	font-size: 14px;
	text-decoration: none;
	border-bottom: 1px solid #111111;
	padding-bottom: 5px;
	
}
.footer_box2 a:hover{
	opacity: 0.8;
	
}
.pc{
	display: block !important;
}
.sp{
	display: none !important;
}
@media screen and (max-width: 767px) {
.pc{
	display: none !important;
}
.sp{
	display: block !important;
}
}

.pc_span{
	display: inline-block !important;
}
.sp_span{
	display: none !important;
}
@media screen and (max-width: 767px) {
.pc_span{
	display: none !important;
}
.sp_span{
	display: inline-block !important;
}
}