@charset "UTF-8";
/*
* 共通
*/
body {
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Noto Sans Japanese", "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, Meiryo, sans-serif;
	font-size: 18px;
}
p,ul,li{
	margin:0;
	padding:0;
}
ul{
	list-style: none;
}
a {
	color: unset;
	text-decoration: none;
	background-color: transparent;
	-webkit-text-decoration-skip: objects;
}
a:hover{
	opacity:0.8;
	color: unset;
	text-decoration: none;
}
img{
	width: 100%;
}
header{
	position: relative;
}
footer{
	/* margin:40px 0; */
	padding-bottom: 1em;
	background-color: #fff;
}
footer p{
	text-align:center;
	font-size:10px;
}
/* input[type=checkbox],
input[type=radio] {
  display: none;
} */
.pure-container>input[type=checkbox],
.pure-container>input[type=radio] {
  display: none;
}

/* ヘッダー */
.header_wrap{
	padding: 3rem 0 1.5rem 0;
	width: 100%;
}
.header_contents {
	text-align: left;
	transition: padding .2s;
	width:90%;
	max-width: 1240px;
	margin:0 auto 1rem;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
h1{
	width: 35%;
	display:inline-block;
	margin:0;
	box-sizing: border-box;
	padding: 0;
}
.logo{
	width: 100%;
}
.header_contact{
	display: flex;
	font-size: min(1.3vw, 0.95rem);
	align-items: center;
}
.header_contact__item{
	margin-left: 2rem;
	display: flex;
	flex-direction: column;
}
.header_contact__item a{
	background-color: #0A6FA9;
	padding: 0.3rem 2rem;
	color: #fff;
	text-align: center;
	margin-bottom: 0.4rem;
}
.header_contact__item a:last-child{
	background-color: #CBBA6A;
	margin-bottom: 0;
}
/* ナビ */
.g_navi {
	width: 90%;
	max-width: 1040px;
	margin: 0 auto;
}
.g_navi ul{
	font-size: min(1.7vw, 17px);
	list-style: none;
	display: flex;
	justify-content: center;
	flex-wrap: nowrap;
}
.g_navi>ul>li {
	flex-basis: 20%;
	text-align: center;
	white-space: nowrap;
	border-right: 1px solid #231815;
}
.g_navi>ul>li:first-child {
	border-left: 1px solid #231815;
}
.g_navi li.current a{
	font-weight:bold;
}
.g_navi li a{
	position: relative;
	padding: 0.5rem 1rem;
	text-decoration: none;
	transition: all .3s;
	display: inline-block;
	width: 100%;
}
.g_navi>ul>li>a:hover{
	opacity: 1;
}
.g_navi>ul>li>a:hover:after {
	position: absolute;
	display: block;
	top: 1.8em;
	left: 50%;
	transform: translateX(-50%);
	content: "";
	width: calc(100% - 1.6em );
	height: 0;
	border: solid 3px #0A6FA9;
	z-index: 1;
	margin: 0.5em auto;
}
nav li.has-child:hover::after{
	position: absolute;
	display: block;
	top: 1.8em;
	left: 50%;
	transform: translateX(-50%);
	content: "";
	width: calc(100% - 1.6em );
	height: 0;
	border: solid 3px #0A6FA9;
	z-index: 1;
	margin: 0.5em auto;
}
.business_itemwrap {
	position: absolute;
	left: 0;
	top: calc(100% + 2.5em);
	z-index: 1;
	visibility: hidden;
	opacity: 0;
	height: 100%;
	width: 100%;
	transition: all .3s;
}
ul.business_item {
	position: absolute;
	z-index: 4;
	background: rgba(255, 255, 255, 0.8);;
	padding: 1.5rem 1.5rem 1.5rem 2rem;
	visibility: hidden;
	opacity: 0;
	transition: all .3s;
	text-align: center;
	list-style: none;
	display: inline-block;
}
ul.business_item::after{
	content: "";
	padding: 0;
}
ul.business_item li{
	margin-bottom: 0.5rem;
	position: relative;
}
ul.business_item li::before{
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0.3rem 0 0.3rem 0.5rem;
	border-color: transparent transparent transparent #000;
	top: 50%;
	left: -0.8rem;
	transform: translateY(-50%);
	padding: 0;
}

.g_navi>ul>li.current:after {
	position: absolute;
	display: block;
	top: 1.8em;
	left: calc(50% + 0.8em);
	transform: translateX(-50%);
	content: "";
	width: calc(100% - 1.6em );
	height: 0;
	border: solid 3px #0A6FA9;
	z-index: 1;
	margin: 0.5em auto;
}

/*hoverしたら表示*/
/* nav li.has-child:hover ul,
nav li.has-child:hover>div>ul,
nav li.has-child:hover>div,
nav li.has-child ul li:hover > ul,
nav li.has-child:active > ul,
nav li.has-child ul li:active > ul{
visibility: visible;
opacity: 1;
} */

.mobile-navigation, .pure-drawer{
	display:none;
}
input:-webkit-autofill {
	-webkit-box-shadow: 0 0 0px 1000px white inset;
}

/* パンくず */
.page-navilist-wrap{
	max-width: 1040px;
	width: 90%;
	margin: 1.8rem auto;
}
.breadcrumb {
  margin: 0;
  padding: 0;
	background-color: unset;
}
.breadcrumb li {
	display: inline-block;
	font-size: 0.9rem;
}
.breadcrumb li:after {
  content: '＞';
  padding: 0 0.2em;
}
.breadcrumb li:last-child:after {
	display: none;
}
.breadcrumb li a {
}

.breadcrumb li a:hover {
  text-decoration: underline;
}

.page-manulist{
	display: flex;
	flex-wrap: wrap;
}
.page-manulist li{
	flex-grow: 1;
	background-color: #F7F8F8;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	color: #000;
}
.page-manulist li>a{
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	width: 100%;
	height: 3.5em;
}
.page-manulist li.list_current{
	background-color: #0A6FA9;
	color: #fff;
}


/* ページ内部 */
.page-wrap{
	margin-bottom: 6.25rem;
	/* margin:6.25rem 0; */
}
.header__title-wrap{
	text-align: center;
}
h2.section-header__title {
	display: block;
	margin-bottom: 0;
	color: #fff;
	background-color: #0A6FA9;
	font-size: 2rem;
	font-weight: bold;
	letter-spacing: 0.1em;
	padding: 1.5em 0;
}

/* p.header__title_txt{
	width: 45%;
  margin: 1em auto 0;
	font-weight: bold;
	font-size: 1.35rem;
} */

.page-section-wrap{
	margin-top: 3rem;
}

h3.page-contents__title {
	font-size: 1.8rem;
	font-weight: bold;
	text-align: center;
	margin: 2em auto;
	color: #0A6FA9;
	letter-spacing: 0.1rem;
}
h3.page-contents__title::after {
	content: "";
	display: block;
	width: 2.5em;
	margin: 1em auto;
	background: #0A6FA9;
	height: 3.5px;
}

h4.contents_ttl {
	font-size: 1.4rem;
	font-weight: bold;
	text-align: center;
	margin: 3.5em auto 2em;
	letter-spacing: 0.1rem;
}
h4.contents_ttl::after {
	content: "";
	display: block;
	width: 100%;
	margin: 1rem auto;
	background: #0A6FA9;
	height: 3.5px;
}
.page-contents-wrap{
	max-width:1040px;
	width:90%;
	margin:0 auto;
}
.wrap{
	max-width:1040px;
	width:100%;
	margin:0 auto;
}
.wrap2{
	max-width:760px;
	width:80%;
	margin:0 auto;
}
.wrap3{
	max-width:560px;
	width:60%;
	margin:0 auto;
}
.main_img_wrap{
	width:100%;
	margin: 0 auto 2.5rem;
}
.main_img_wrap > img{
	width:100%;
}

/* TOPに戻るボタン */
html{
  scroll-behavior: smooth;
}
.page_top_btn {
  position: fixed;
  bottom: 5%;
  right: 2.5%;
	width:80px;
	transition: 0.3s;
	z-index: 999;
}
.page_top_btn > img{
  width: 100%;
	margin: 0 auto;
} 

/* フッター */
.footer_bg {
	padding: 6em 0;
	background: #F7F8F8;
}
.wrap_footer_box{
	max-width: 1040px;
	width: 90%;
	margin: 0 auto;
}

.footer_box {
	display: flex;
	gap: 2vw;
	align-items: center;
	margin-bottom: 2rem;
}
.footer_box a{
	flex-basis: 40%;
}
.footer_box_address{
	flex-basis: 60%;
}
.footer_box_address p{
	text-align: left;
	font-size: 1rem;
}

.footer_box_g_navi{
	display: flex;
}
.g_navi_footer{
	flex-grow: 1;
}

.g_navi_footer ul {
	font-size: 1.1rem;
}
.g_navi_footer li {
	margin-bottom: 0.3em;
	position: relative;
	margin-left: 0.5rem;
}
.g_navi_footer ul > li {
	font-weight: bold;
}
.g_navi_footer li>ul {
	margin-top: 0.5rem;
}
.g_navi_footer li>ul>li {
	font-weight: normal;
	font-size: 1rem;
}
.g_navi_footer li>ul>li::before {
	content: "-";
	border: none;
	top: 0;
	left: -1rem;
}

.pc-none{
	display: none;
}

@media screen and (max-width: 959px) {
	/*
	* 共通
	*/
	h1 {
    width: 50%;
	}
	.footer_box_address p {
		font-size: min(1.6vw, 0.95rem);
	}
	.footer_box_g_navi {
		flex-wrap: wrap;
	}
	.g_navi_footer {
    width: 50%;
		margin-bottom: 1.5rem;
	}
}

@media screen and (max-width: 768px){
	/*
	* 共通
	*/
	.mobile-navigation,.pure-drawer{
		display:block;
	}
	.header_wrap {
    padding: 0;
	}
	.header_contents {
    margin: 1rem auto;
	}
	h1 {
    width: 80%;
	}
	.g_navi,.header_contact{
		display:none;
	}
	.m_menu{
		margin:100px 0 0 ;
		margin:1em 0 0 ;
		overflow-y: scroll;
		height: 80vh;
	}
	.m_menu li{
		border-bottom:1px solid #ccc;
		list-style:none;
	}
	.m_menu li a{
		display:block;
		color:#036eb7;
		padding:1em 1.5em;
		font-size:15px;
	}
	.m_menu li>ul {
		border-top: 1px solid #ccc;
	}

	h2.section-header__title {
    font-size: 2rem;
    padding: 1em 0;
	}

	.wrap, .wrap2, .wrap3{
		width:100%;
	}
	
	h3.page-contents__title {
    width: 90%;
		margin: 1.5em auto;
		font-size: 1.5rem;
	}
	h3.page-contents__title::after {
    margin: 1rem auto;
	}

	.footer_bg{
		padding: 2em 1em;
	}
	.wrap_footer_box {
		width: 100%;
	}
	.wrap_footer_box p {
		margin: 1em 0;
		font-size: 0.8rem;
	}
	.footer_box {
		display: block;
	}
	.wrap_footer_box img {
    width: 80%;
	}
	.footer_box_g_navi{
		display: block;
	}
	.g_navi_footer ,.footer_box_address{
		width: auto;
	}
	.g_navi_footer ul {
    margin: 0.5rem 0;
	}

	.pc-none{
		display: block;
	}
	.sp-none{
		display: none;
	}
}
@media (max-width: 375px){
	html {
		font-size: 4.2666666667vw;
	}
	body {
		font-size:1rem;
	}
}
