@charset "UTF-8";
/*全体にかかわる設定--start--*/

:root {
  --pc-max-width: 1440px;
  --pc-contents-max-width: 1150px;
  --black: #333333;
  --blue: #104097;
  --white: #ffffff;
  --content_gradient: linear-gradient(95.87deg, #F5FDFF 0.72%, #EDF3FF 99.64%);
  --content_gradient_gray: linear-gradient(95.87deg, #F8F8F8 0.72%, #E2E2E2 99.64%);

}

html {
	font-size: 10px;
}
body {
	font-family: "Zen Kaku Gothic New","Noto Sans JP", sans-serif;
	font-size: 1.6rem;
	font-weight: 500;
	letter-spacing: 0.1em;
	color: var(--black);
}
a {
	text-decoration: none;
	color: var(--blue);
}
p{
	line-height: 1.8em;
	letter-spacing: .125rem;
}
li{
	list-style-type: none;
}
table{
	border-collapse: collapse;
}
article > section:first-child {
    margin-top: 180px;
}
.pc-switch-block {
  display: block;
}
.sp-switch-block {
  display: none;
}
/*全体にかかわる設定--end--*/

/*共通ヘッダー設定--start--*/
header{
	margin: 0 auto;
	padding-top: 20px;
	width: 100%;
	max-width: var(--pc-contents-max-width);
    position: fixed;
    top: 0;
    z-index: 10000;
    max-width: unset;
	background: #fff;
	padding-bottom: 10px;
}
.header_inner {
    width: 1150px;
    margin: 0 auto;
    display: flex;
    display: flex;
    justify-content: space-between;
}
header .logo{
	width: 120px;
}
header ul{
	display: flex;
	justify-content: flex-end;
}
header li{
	margin-left: 35px;
}
header li a{
	font-size: clamp( 1.2rem , 1.6vw , 1.6rem);
	font-weight: 700;
	letter-spacing: 0.15em;
}
header li#menu-item-1235 a{
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.05em;
	color: #ffffff;
	background-color: var(--blue);
	padding: 8px 30px 9px 30px;
	border-radius: 6px;
}

/*共通ヘッダー設定--end--*/

/*mainコンテンツ内設定--start--*/
.subtitle{
	font-weight: 700;
	color: var(--blue);
	margin-bottom: 10px;
}
.path{
	margin-bottom: 150px;
}
.path a{
	color: var(--black);
	text-decoration: none;
}
.path .subTitle{
	display:none;
}
a.post.post-page {
    pointer-events: none;
}
section{
	position: relative;
	max-width:  var(--pc-contents-max-width);
	margin: 80px auto;
}
section section{
	margin: 0 auto;
}
section h1 {
	font-weight: bold;
	display: block;
	color: var(--blue);
	font-size: 4.2rem;
	margin-bottom: 35px;
}
section h1 span{
	font-family: "Figtree", sans-serif;
	font-weight: bold;
	display: block;
	font-size: 1.6rem;
	color: var(--blue);
	margin-top: 10px;
}
section h2 {
	max-width: var(--pc-contents-max-width);
	margin: 0 auto 40px auto;
	font-size: 3.2rem;
}
section h3 {
	font-weight: bold;
}

/*mainコンテンツ内設定--end--*/

/*共有フッター設定--start--*/
footer{
	font-family: "Poppins", sans-serif;
	font-weight: 400;
	background: linear-gradient(91.57deg, #004ACF 1.33%, #00328C 92.24%);
	font-size: 1.4rem;
	padding: 50px 0;
	color: #ffffff;
}
footer a{
	color: #ffffff;
}
.footer_content{
	display: flex;
	justify-content: center;
	max-width: var(--pc-max-width);
	width:100%;
	margin: 0 auto;
}
.footer-logo{
	display: grid;
	place-items: center;
	padding: 0 50px;
	border-right: solid 1px #ffffff;
}
.footer-logo img{
	width:192px;
}
.footer-link{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 0 0 0 3.9%;
	margin: 0 6.7% 22px 0;
}
.footer-link li{
	margin-bottom: 7px;
}
.footer-link a {
    transition: all .3s;	
}
.footer-link a:hover {
    opacity: .8;
	
}
.footer-link .midashi{
	display: inline-block;
	font-weight: 700;
	margin-bottom: 8px;
}
.footer-nav-list-end{
	width: 100%;
	display: flex;
}
.footer-nav-list-end ul{
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	margin: 22px 0 22px 0;
	font-size: 1.3rem;
}
.footer-nav-list-end ul li{
	/*margin-right: 6.5%;*/
}
.midashi.declaration,.midashi.our_efforts {
    pointer-events: none;
}
#menu-item-1281 {
    width: 220px;
}
#menu-item-1239 {
    width: 220px;
}
#menu-item-940 {
    margin-right: 3.5%;
    letter-spacing: .05rem;
}
#menu-item-941 {
    margin-right: 5.5%;
    letter-spacing: .2rem;
}
#menu-item-1236 {
    margin-right: 4.5%;
}
#menu-item-943 {
    margin-right: 3.5%;
    letter-spacing: .05rem;
}
.copyright {
	width: 100%;
}
.facebook-icon img{
	margin: 22px 0;
}
/*共有フッター設定--end--*/

@media screen and (max-width:1440px){
	header{
		width:96%;
	}
	section{
		/*padding: 0 3%;*/
	}
}

@media screen and (max-width:768px) {
	header{
		width: 100%;
		padding: 16px 20px;
	}
	.header_inner {
		width: 100%;
		max-width: var(--pc-contents-max-width);
	}
	section h1{
		font-size: 2.6rem;
	}
	section h1 span{
		font-size: 1.4rem;
	}
	.path{
		font-size: 1.2rem;
		margin-bottom: 60px;
	}

	/* ハンバーガーメニュー start */
	.humberger{
		position: relative;
		cursor: pointer;
		width: 50px;
		height:50px;
		border-radius: 5px;
		z-index: 100;
	}
	.humberger span{
		display: inline-block;
		transition: all .4s;
		position: absolute;
		left: 14px;
		height: 3px;
		border-radius: 2px;
		background: var(--blue);
		width: 45%;
	}
	header.active .humberger span{
		background: #ffffff;
	}
	.humberger span:nth-of-type(1) {
		top:15px;
	}
	.humberger span:nth-of-type(2) {
		top:23px;
	}
	.humberger span:nth-of-type(3) {
		top:31px;
	}
	header.active .humberger span:nth-of-type(1) {
		top: 18px;
		left: 18px;
		transform: translateY(6px) rotate(-45deg);
		width: 30%;
	}
	header.active .humberger span:nth-of-type(2) {
		opacity: 0;/*クリック時真ん中の線を透過*/
	}
	header.active .humberger span:nth-of-type(3){
		top: 30px;
		left: 18px;
		transform: translateY(-6px) rotate(45deg);
		width: 30%;
	}
	/* ハンバーガーメニュー end */

	header nav{
		padding: 100px 30px 45px;
		visibility: hidden;
		opacity: 0;
		-webkit-transition: 0.3s ease-in-out;
		transition: 0.3s ease-in-out;
		height: 100vh;
		overflow-y: auto;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		background-color: #104097;
	}
	header.active nav{
		visibility: visible;
		opacity: 1;
		z-index: 99;
	}
	header nav ul{
		flex-direction: column;
		width: fit-content;
		text-align: center;
		margin: 0 auto;
	}
	header nav li{
		width: fit-content;
		margin: 0 auto 45px auto;
	}
	header nav li a{
		font-size: 1.6rem;
		color: #ffffff;
	}
	header li.contact a{
		display: inline-block;
		color: var(--blue);
		background-color: #ffffff;
	}
	
	/* footer */
	.footer{
	}
	.footer_content{
		flex-direction: column;
	}
	.footer-logo{
		border-right: none;
		border-bottom: solid 1px #ffffff;
		padding-bottom: 16px;
		margin-bottom: 30px;
		width: 100%;
	}
	.footer-logo a{
		width: 29vw;
	}
	.footer-logo img{
		width: 100%;
	}
	.footer-nav-list{
		width: 48%;
		margin-bottom: 10px;
	}
	.footer-link{
		width:100%;
		margin: 0;
		padding: 0 10px;
	}
	.footer-nav-list-end{
		border-top: solid 1px #ffffff;
	}
	.footer-link .midashi{
		width: 140px;
	}
	.footer-link ul{
		width: 100%;
	}
	.footer-link li{
		font-size: clamp(1rem , 2.5vw , 1.2rem);
		word-break: break-all;
	}
	
	.footer-nav-list-end{
		width: 100%;
		display: block;
	}
	.footer-nav-list-end ul{
		margin: 30px 3% 15px 3%;
		width: 94%;
	}
	.footer-nav-list-end ul li{
		    margin-right: 3.5%;
	}
	.footer-nav-list-end ul li:nth-child(2n - 1){
		/*width:50%;*/
	}
	#menu-item-1281 {
		width: auto;
	}
	#menu-item-1239 {
		width: auto;
	}
	#menu-item-940 {
		margin-right:unset;
		letter-spacing: .05rem;
	}
	#menu-item-941 {
		margin-right:unset;
		letter-spacing: .2rem;
	}
	#menu-item-1236 {
		margin-right:unset;
	}
	#menu-item-943 {
		margin-right:unset;
		letter-spacing: .05rem;
	}
	.copyright{
		font-size: clamp(0.8rem, 2.5vw, 1.4rem);
		padding-left: 0;
		margin: 0 3%;
		text-align: center;
	}
	.facebook-icon img{
		margin: 0 3% 30px;
	}

	.pc-switch-block {
	  display: none !important;
	}
	.sp-switch-block {
	  display: block;
	}
}