@charset "utf-8";


/* ----------------------------------------
	common
---------------------------------------- */
body {
font-size:14px;
font-family: 'Noto Sans JP', sans-serif;
line-height:1.5;
}

img {
	max-width: 100%;
	height: auto;
	display: block; //ブロック要素化
	margin: 0 auto; //中央寄せ
}
.img-orig-size {
	width: auto;
}
.img-fixed-400px { width: 400px; }

a {text-decoration:none;}

a:hover {
	text-decoration: transparent;
}

.pc_area { display: block !important; }
.sp_area { display: none !important; }
@media only screen and (max-width: 767px) {
	.pc_area { display: none !important; }
	.sp_area { display: block !important; }
}

@media screen and (max-width: 767px) {
.spbr_none_box br {
	display: none;
	}
}

.link_img01 a:hover img {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
  transition-duration: .1s;
}


.link_all_box {
    position: relative;
    z-index: 1; /* 必要であればリンク要素の重なりのベース順序指定 */
}
.link_all_box a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-indent:-999px;
    z-index: 2; /* 必要であればリンク要素の重なりのベース順序指定 */
}

.link_all_box:hover {
    filter:alpha(opacity=70);/* IE 6,7*/
    -ms-filter: "alpha(opacity=70)";/* IE 8,9 */
    -moz-opacity:0.7;/* FF , Netscape */
    -khtml-opacity: 0.7;/* Safari 1.x */
    opacity:0.7;
    zoom:1;/*IE*/
}


.ggmap {
position: relative;
padding-bottom: 56.25%;
padding-top: 0;
height: 0;
overflow: hidden;
}
 
.ggmap iframe,
.ggmap object,
.ggmap embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}


.inner{
	max-width: 1000px;
	margin: 0 auto;
}


.header_box{
	border-top: solid 8px #007387;
}

.header_logo{
	padding: 20px 0 20px 0;
	display: flex;
	justify-content: center;
}

.header_bg{
	padding: 0;
	position: relative;
}
.header_btn_box{
	position: absolute;
	bottom: 20px;
	left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}
.header_btn_box_01{
	display: flex;
	justify-content: center;
	align-items: center;
	text-align:center;
}

.header_btn {
    position: relative;
    padding: 10px 25px 10px 25px;
    width: 220px;
    font-size: 17px;
	font-weight: 400;
    text-decoration: none;
    color: #000000;
    border: solid 1px #ffffff;
	background: #ffffff;
    border-radius:5px;
    transition: .4s;
}

.header_btn::after{
	position: absolute;
	right: 30px;
	top: 10px;
	content: "\f054";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	width: 25px;
	height: 25px;
}

.header_btn:hover {
    background: #c9c9c9;
    border: solid 1px #000000;
    color: #000000;
}

.sec_01box_ttl{
	font-size: 20px;
	font-weight: 400;
    padding: 15px 5px 5px 5px;
	margin: 10px 0 0 0;
    border-bottom: solid 1px #000000;
}

.sec_01box_flex{
	display: flex;
	flex-wrap: wrap;
	gap: 20px 20px;
	padding: 20px 0 50px 0;
}
.sec_01box_flex_box01{
	width: calc(25% - 15px);
	box-sizing: border-box;
}
.sec_01box_flex_box01_box{
	padding: 0;
}



.sec_01_flex_box_ttl{
	padding: 5px 0 5px 0;
	font-size: 18px;
	text-align: center;
}
.sec_01_flex_box_ttl span{
	font-size: 16px;
}
.sec_01_flex_box_img{
	padding: 0;
}
.sec_01_flex_box_btn{
	padding: 5px 0 0 0;
}

.pdf_btn_box_01{
	display: flex;
	justify-content: center;
	align-items: center;
	text-align:center;
}

.pdf_btn {
    position: relative;
    padding: 10px 10px 10px 10px;
    width: 100%;
    font-size: 16px;
    font-family: 'Noto Sans JP', sans-serif;
    text-decoration: none;
    color: #ffffff;
	background: #000000;
    transition: .4s;
}

.pdf_btn::after{
	position: absolute;
	right: 10px;
	top: 12px;
	content: "";
	display: inline-block;
	width: 22px;
	height: 22px;
	background: url(../images/icon01.png) no-repeat;
	background-size: contain;
}

.pdf_btn:hover {
    color: #ffffff;
	opacity: 0.8;
}


.link_btn_box_01{
	display: flex;
	justify-content: center;
	align-items: center;
	text-align:center;
}

.link_btn {
    position: relative;
    padding: 10px 10px 10px 10px;
    width: 100%;
    font-size: 16px;
    font-family: 'Noto Sans JP', sans-serif;
    text-decoration: none;
    color: #ffffff;
	background: #007387;
    transition: .4s;
}

.link_btn::after{
	position: absolute;
	right: 10px;
	top: 12px;
	content: "";
	display: inline-block;
	width: 22px;
	height: 22px;
	background: url(../images/icon02.png) no-repeat;
	background-size: contain;
}

.link_btn:hover {
    color: #ffffff;
	opacity: 0.8;
}

.footer_copy{
	margin-top: 40px;
	padding: 10px;
	font-size: 14px;
	text-align: center;
	color: #ffffff;
	background: #007387;
}

@media screen and (max-width: 767px) {
	.header_btn {
		font-size: 15px;
	}
	
	.sec_01box_ttl{
		font-size: 15px;
		padding: 15px 0 5px 0;
		margin: 10px 15px 0 15px;
		border-bottom: solid 1px #000000;
	}
	.sec_01box_flex{
		gap: 20px 10px;
		padding: 10px 15px 30px 15px;
	}
	.sec_01box_flex_box01{
		width: calc(50% - 5px);
		box-sizing: border-box;
	}

	.sec_01_flex_box_ttl{
		padding: 5px 0 5px 0;
		font-size: 13px;
		height: 40px;
		display: flex;
		justify-content: center;
		align-items: end;
	}
	.sec_01_flex_box_ttl span{
		font-size: 12px;
	}
	.pdf_btn {
    padding: 10px 10px 10px 10px;
    font-size: 13px;
	}
	.pdf_btn::after{
	right: 10px;
	top: 13px;
	width: 16px;
	height: 16px;
	}
	.link_btn {
    padding: 10px 10px 10px 10px;
    font-size: 13px;
	}
	.link_btn::after{
	right: 10px;
	top: 13px;
	width: 16px;
	height: 16px;
	}
}


