/* =============================================================

	Base

* ============================================================= */
:root {
	--text-color : #333333;
	--link-color : #003770;
	--point-color: #ddc992;
}
html {
	scroll-padding-top: 90px;
}
body {
	font-family: 'Noto Sans JP', sans-serif;
	font-size:15px;
	line-height:2;
	letter-spacing:1px;
	font-weight: 400;
	color: var(--text-color);
	background-color:#ffffff;
	min-width: 375px;
	margin-top: 90px;
}
@media screen and (max-width:1350px) {
	html {
		scroll-padding-top: 70px;
	}
	body {
		margin-top: 70px;
	}
}
a {
	-webkit-transition:all 0.4s ease;
	   -moz-transition:all 0.4s ease;
	    -ms-transition:all 0.4s ease;
	     -o-transition:all 0.4s ease;
	        transition:all 0.4s ease;
}
a:link, a:visited {
	color:var(--link-color);
	text-decoration: none;
}
a:hover, a:active {
	color:var(--link-color);
	text-decoration: underline;
}
img {
	vertical-align: top;
	max-width:100%;
	height:auto;
}
/* 768px以下では電話番号リンクを無効にする */
@media screen and (min-width: 768px) { 
	a[href^="tel:"] { 
		pointer-events: none;
	}
}
/* Chromeのみ「image-rendering」を指定（ぼやけを解消） */
@media screen and (-webkit-min-device-pixel-ratio: 0) and (min-resolution: .001dpcm) {
	img {
		image-rendering: -webkit-optimize-contrast;
	}
}
/* ScrollRevealの初期チラつきを防止 */
.scroll {
  visibility: hidden;
}
/* 管理バーの編集ガイドを非表示 */
.veu_admin_bar_disable_button, .veu_adminEdit { display:none; }
/* ログイン時のツールバー処理 */
body.admin-bar #header { top: 32px !important; }
body.admin-bar #global_nav .global_menu { top: 54px !important; }
@media screen and ( max-width: 782px ) {
	body.admin-bar #header { top: 46px !important; }
	body.admin-bar #global_nav .global_menu { top: 68px !important; }
}
@media screen and ( max-width: 600px ) {
	html { margin-top: 0px !important; }
	body.admin-bar #top_image { margin-top: 46px; }
	body.admin-bar.active #header { top: 0px !important; }
	body.admin-bar.active #global_nav .global_menu { top: 22px !important; }
}
@media screen and (min-width:  0px) and (max-width:1020px) {
}
@media screen and (min-width:  0px) and (max-width: 767px) {
}
@media screen and (min-width:  0px) and (max-width: 575px) {
}



/* header */
#header {
	position: fixed;
	top: 0;
	left:0;
	right:0;
	z-index: 200;
	background-color: rgba(255,255,255,1);
	width: 100%;
}
#header .header_wrap {
	display: flex;
	align-items: center;
	width: 100%;
	height: 90px;
	padding: 0 0 0 30px;
}
/* header_logo */
#header .header_logo {
	font-size: 0;
	width: 286.47px;
}
/* header_nav */
#header .header_nav {
	list-style-type: none;
	display: flex;
	align-items: center;
	justify-content: center;
}
#header .header_nav > li {
	margin-left: 35px;
}
#header .header_nav > li:first-child {
	margin-left: 60px;
}
#header .header_nav > li > a {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	font-size:15px;
	line-height:1;
	letter-spacing:1px;
	font-weight: 400;
	text-decoration: none;
	color: var(--text-color);
	transition:all 0.3s ease;
	min-height: 35px;
}
#header .header_nav > li > a::after {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 1px;
	background-color: var(--link-color);
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}
#header .header_nav > li > a.blank {
	background-image: url(../../img/icon_blank.svg);
	background-size: 12px;
	background-repeat: no-repeat;
	background-position: right center;
	padding-right: 15px;
}
#header .header_nav > li:hover > a {
	color:var(--link-color);
}
#header .header_nav > li:hover > a::after {
	transform-origin: left top;
	transform: scale(1, 1);
}
/* drop */
#header .drop {
	position: relative;
}
#header .drop:hover .drop_list {
	visibility: visible;
	opacity: 1;
}
#header .drop_list {
	list-style-type: none;
    position: absolute;
    top: 35px;
    left: 0;
	background-color: rgba(255,255,255,0.9);
    width: 250px;
	padding: 40px 30px 40px 30px;
    visibility: hidden;
    opacity: 0;
	transition: all .3s;
}
#header .drop_list > li > a {
	display: block;
	font-size:15px;
	line-height:1;
	letter-spacing:1px;
	font-weight: 400;
	text-decoration: none;
	color: var(--text-color);
	background-image: url(../../img/round_arrow_off.svg);
	background-size: 17px 17px;
	background-repeat: no-repeat;
	background-position: center right;
	border-bottom: 1px solid #cbcbcb;
	padding: 15px 20px 15px 0;
	margin: 10px 0 0 0;
	transition:all 0.3s ease;
}
#header .drop_list > li > a:hover {
	color: var(--link-color);
	background-image: url(../../img/round_arrow_on.svg);
	border-bottom: 1px solid var(--link-color);
}
/* header_contact */
#header .header_contact {
	margin: 0 0 0 auto;
}
#header .header_contact > a {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size:18px;
	line-height:1;
	letter-spacing:1px;
	font-weight: 400;
	text-decoration: none;
	color: #ffffff;
	background-color: #003770;
	width: 230px;
	height: 90px;
	transition:all 0.3s ease;
}
#header .header_contact > a::before {
	content: '';
	background-image: url(../../img/icon_mail.svg);
	background-size: auto;
	background-repeat: no-repeat;
	background-position: center center;
	width: 26.05px;
	height: 25.32px;
	margin-right: 18px;
}
#header .header_contact > a:hover {
	opacity: 0.5;
}
/* header_nav_button */
#header .header_nav_button {
	display: block;
	position: relative;
	width:  30px;
	height: 24px;
    cursor: pointer;
	display: none;
}
#header .header_nav_button > .menu_line {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 2px;
	background-color: #003770;
	transition:all 0.2s ease;
}
#header .header_nav_button > .menu_line_top {
	top: 0px;
}
#header .header_nav_button > .menu_line_center {
	top: 11px;
}
#header .header_nav_button > .menu_line_bottom {
	top: 22px;
}
#header .header_nav_button > .menu_txt::after {
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	content: "MENU";
	font-family: 'Montserrat', sans-serif;
	font-size: 12px;
	line-height: 1;
	letter-spacing:0px;
	font-weight: normal;
	text-align: center;
	color: #000000;
}
@media screen and (min-width:  0px) and (max-width:1350px) {
	#header .header_wrap {
		justify-content: space-between;
		height: 70px;
		padding: 0 20px;
	}
	#header .header_logo {
		width: 250px;
	}
	#header .header_nav {
		display: none;
	}
	#header .header_contact {
		display: none;
	}
	#header .header_nav_button {
		display: block;
	}
}



/* footer */
#footer {
	background-color: #f4f4f4;
	background-image: url(../../img/fooder_logo.svg);
	background-size: auto;
	background-repeat: no-repeat;
	background-position: center right;
	padding: 40px 20px;
}
#footer .footer_wrap {
	width: 1240px;
	max-width: 100%;
	margin: 0 auto;
}
#footer .footer_logo {
	font-size: 0;
	width: 252.32px;
}
#footer .footer_address {
	font-size: 13px;
	line-height:1.5;
	letter-spacing:0.5px;
	font-weight: 400;
	color: var(--text-color);
	margin-top: 20px;
}
#footer .footer_nav {
	list-style-type: none;
	display: flex;
	flex-wrap: wrap;
	margin-top: 5px;
}
#footer .footer_nav > li:not(:last-child)::after {
	content: '\FF5C';
	margin: 0 5px;
}
#footer .footer_nav > li > a {
	position: relative;
	font-size: 13px;
	line-height:1.5;
	letter-spacing:0.5px;
	font-weight: 400;
	text-decoration: none;
	color: var(--text-color);
	transition:all 0.3s ease;
}
#footer .footer_nav > li > a::after {
	content: '';
	position: absolute;
	left: 0;
	bottom: -5px;
	width: 100%;
	height: 1px;
	background-color: var(--link-color);
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}
#footer .footer_nav > li:hover > a {
	color:var(--link-color);
}
#footer .footer_nav > li:hover > a::after {
	transform-origin: left top;
	transform: scale(1, 1);
}
#footer .footer_copy {
	font-family: 'Montserrat', sans-serif;
	font-size: 11px;
	line-height:1.5;
	letter-spacing:0.5px;
	font-weight: 400;
	color: var(--text-color);
	margin-top: 40px;
}



/* toggleClass */
.fixed {
	position: fixed;
	width: 100%;
	height: 100%;
	overflow: hidden; /* 二重スクロール防止 */
}
/* メニューが開いているとき、指定した要素をぼかす */
body.fixed header .header_wrap,
body.fixed main,
body.fixed footer {
  filter: blur(4px); /* ぼかしの強さ。お好みで調整してください */
  transition: filter 0.3s ease; /* ふわっとぼかすためのアニメーション */
  pointer-events: none; /* ぼけている間、背後のクリックを無効化する（重要） */
  user-select: none;    /* テキスト選択もできないようにする */
}
/* ぼかしによる端の「白浮き」を防ぐための微調整 */
body.fixed main {
  transform: scale(1.01); 
}
/* global_nav */
#global_nav {
	position: fixed;
	z-index:1000;
	top: 0;
	bottom: 0;
	right: -375px;
	width: 375px;
	max-width: 100%;
	min-width: 375px;
	background-color: rgba(0,55,112,1.0);
	background-image: url(../../img/global_logo.svg);
	background-size: 500px;
	background-repeat: no-repeat;
	background-position: bottom -200px right -200px;
	padding: 0;
	margin: 0;
	transition: 0.4s cubic-bezier(.075, .82, .165, 1);
	display: none;
}
@media screen and (max-width: 1350px) {
	#global_nav {
		display: flex;
	}
}
@media screen and (max-width: 575px) {
	#global_nav {
		right: -575px;
		width: 575px;
	}
}
#global_nav.active {
	right: 0;
}
/* global_inner */
#global_nav .global_inner {
	display: flex;
	align-items:normal;
	justify-content: center;
	width: 100%;
	overflow: auto;
}
/* global_nav_button */
#global_nav .global_nav_button {
	display: block;
	position: absolute;
	top: 22px;
	right: 17px;
	width:  36px;
	height: 24px;
	cursor: pointer;
}
#global_nav .global_nav_button > .menu_line {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 2px;
	background-color: #ffffff;
	transition:all 0.2s ease;
}
#global_nav .global_nav_button > .menu_line_top {
	top: 0px;
	transform: translateY(12px) rotate(45deg);
}
#global_nav .global_nav_button > .menu_line_bottom {
	top: 24px;
	transform: translateY(-12px) rotate(-45deg);
}
/* global_nav_menu */
#global_nav .global_nav_menu ul {
	list-style-type: none;
	padding: 100px 0;
	margin: 0;
}
#global_nav .global_nav_menu ul > li {
	margin: 0 0 30px 0;
}
#global_nav .global_nav_menu ul > li > a {
	font-size:22px;
	line-height:1;
	letter-spacing:0;
	font-weight: 400;
	text-align: left;
	text-decoration: none;
	color: #ffffff;
}
#global_nav .global_nav_menu ul > li > a.blank {
	background-image: url(../../img/icon_blank_w.svg);
	background-size: 15px;
	background-repeat: no-repeat;
	background-position: right center;
	padding-right: 20px;
}
#global_nav .global_nav_menu ol {
	list-style-type:none;
	padding: 0;
	margin: 10px 0 0 0;
}
#global_nav .global_nav_menu ol > li {
	margin: 5px 0 0 0;
}
#global_nav .global_nav_menu ol > li::before {
	content: '\2015';
	color: #ffffff;
	margin: 0 5px 0 0;
}
#global_nav .global_nav_menu ol > li > a {
	font-size:16px;
	line-height:1;
	letter-spacing:0;
	font-weight: 400;
	text-align: left;
	text-decoration: none;
	color: #ffffff;
}
#global_nav .global_nav_menu ul > li > a:hover ,
#global_nav .global_nav_menu ol > li > a:hover {
	opacity: 0.5;
}



/* top_image */
#top_image {
	position: relative;
	overflow: hidden;
}
/* top_image_text */
#top_image > .top_image_text {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
}
#top_image > .top_image_text > h2 {
	width: 46.29px;
	height: auto;
}
#top_image > .top_image_text > h2 br {
	display: none;
}
/* top_image_slick */
#top_image .top_image_slick {
	background-color: #eeeeee;
	width: 100%;
	display: none;
}
#top_image .top_image_slick.slick-initialized {
	display: block;
}
#top_image .top_image_slick > div {
	width: 100%;
	height: 600px;
}
#top_image .top_image_slick > div img {
	object-fit: cover;
	object-position: center center; 
	width: 100%;
	height: 600px;
}
#top_image .top_image_slick .slide-animation {
	animation: zoom 10s 0s forwards;
}
@keyframes zoom {
  0% {
    transform: scale(1.05);
  }
  100% {
    transform: scale(1.00);
  }
}
@media screen and (min-width:  0px) and (max-width:1020px) {
	#top_image > .top_image_text > h2 br {
		display: block;
	}
}



/* top_mission */
#top_mission {
	background-color: #ffffff;
	padding: 90px 20px;
}
#top_mission .top_mission_text > h3 {
	font-size:22px;
	line-height:1.5;
	letter-spacing:3px;
	font-weight: 600;
	text-align: center;
	color: var(--text-color);
}
#top_mission .top_mission_text > p {
	font-size:15px;
	line-height:2;
	letter-spacing:0px;
	font-weight: 400;
	text-align: center;
	color: var(--text-color);
	margin-top: 30px;
}
@media screen and (min-width:  0px) and (max-width: 575px) {
	#top_mission .top_mission_text > p {
		text-align: left;
	}
}



/* top_business */
#top_business {
	background-color: #003770;
}
/* top_business_tab */
#top_business .top_business_tab {
	list-style-type: none;
	display: flex;
}
#top_business .top_business_tab > li {
	width: calc( 100% / 3 );
}
#top_business .top_business_tab > li a {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size:18px;
	line-height:1;
	letter-spacing:4px;
	font-weight: 600;
	text-align: center;
	text-decoration: none;
	color: #003770;
	background-color: #dddddd;
	width: 100%;
	height: 60px;
	transition:all 0.3s ease;
}
#top_business .top_business_tab > li:not(:last-child) a {
	border-right: 1px solid #ffffff;
}
#top_business .top_business_tab > li.select a ,
#top_business .top_business_tab > li a:hover {
	color: #ffffff;
	background-color: #003770;
}
/* top_business_wrap */
#top_business .top_business_wrap {
	display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
	width: 1040px;
	max-width: 100%;
	padding: 85px 20px;
	margin: 0 auto;
}
#top_business .top_business_wrap.disnon {
	display: none;
}
#top_business .top_business_wrap > .ph {
	width: 500px;
	max-width: 100%;
}
#top_business .top_business_wrap > .ph img {
	width: 100%;
	height: auto;
}
#top_business .top_business_wrap > .text {
	display: flex;
	flex-direction: column;
	width: 450px;
	max-width: 100%;
}
#top_business .top_business_wrap > .text h4 {
	font-family: 'Montserrat', sans-serif;
	font-size: 13px;
	line-height: 1.5;
	letter-spacing: 2px;
	font-weight: 500;
	color: #ddc992;
}
#top_business .top_business_wrap > .text p {
	font-size: 15px;
	line-height: 2;
	letter-spacing: 1px;
	font-weight: 400;
	color: #ffffff;
	margin: 20px 0;
}
#top_business .top_business_wrap > .text a.more {
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: 'Montserrat', sans-serif;
	font-size: 15px;
	line-height: 2;
	letter-spacing: 1px;
	font-weight: 500;
	text-decoration: none;
	color: #003770;
	background-color: #ddc992;
	border-radius: 5px;
	width: 160px;
	height: 55px;
	margin: auto 0 0 0;
	transition:all 0.3s ease;
}
#top_business .top_business_wrap > .text a.more:hover {
	opacity: 0.5;
}
@media screen and (min-width:  0px) and (max-width:1020px) {
	#top_business .top_business_wrap {
		flex-direction: column;
		width: 500px;
	}
	#top_business .top_business_wrap > .text {
		width: 100%;
		margin: 30px 0 0 0;
	}
	#top_business .top_business_wrap > .text h4 {
		text-align: center;
	}
	#top_business .top_business_wrap > .text a.more {
		margin: 0 auto;
	}
}



/* top_info */
#top_info {
	background-color: #ffffff;
	padding: 85px 20px;
}
#top_info .top_info_wrap {
	display: flex;
	justify-content: space-between;
	width: 1240px;
	max-width: 100%;
	margin: 0 auto;
}
/* top_info_facebook */
#top_info .top_info_news ,
#top_info .top_info_facebook {
	position: relative;
	border: 1px solid #003770;
	width: calc( 50% - 20px );
	padding: 50px 20px;
}
#top_info .top_info_news > h4 ,
#top_info .top_info_facebook > h4 {
	position: absolute;
	top: -14px;
	left: 0;
	right: 0;
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	line-height: 2;
	letter-spacing: 2.5px;
	font-weight: 500;
	text-align: center;
	color: #003770;
	background-color: #ffffff;
	width: 200px;
	margin: 0 auto;
}
#top_info .top_info_news > ul ,
#top_info .top_info_facebook > ul {
	list-style-type: none;
	max-width: 500px;
	margin: 0 auto;
}
/* top_info_news */
#top_info .top_info_news > ul a {
	display: block;
	font-size:15px;
	line-height:2;
	letter-spacing:1px;
	font-weight: 400;
	text-decoration: none;
	color: var(--text-color);
	background-image: url(../../img/round_arrow_off.svg);
	background-size: 17px 17px;
	background-repeat: no-repeat;
	background-position: center right 15px;
	border-bottom: 1px solid #cbcbcb;
	padding: 10px 45px 15px 15px;
	margin: 0 0 20px 0;
	transition:all 0.3s ease;
}
#top_info .top_info_news > ul a:hover {
	color: var(--link-color);
	background-color: #eeeeee;
	background-image: url(../../img/round_arrow_on.svg);
	border-bottom: 1px solid var(--link-color);
}
#top_info .top_info_news > ul time {
	display: inline-block;
	font-family: 'Montserrat', sans-serif;
	font-size: 13px;
	line-height: 2;
	letter-spacing: 1px;
	font-weight: 400;
	width: 100px;
}
#top_info .top_info_news > ul span.tag {
	font-size: 13px;
	line-height: 2;
	letter-spacing: 1px;
	font-weight: 400;
	color: #ffffff;
	background-color: #003770;
	border-radius: 15px;
	padding: 0px 17px 1px 17px;
}
#top_info .top_info_news > ul span.news    { color: #ffffff; background-color: #00529c; }
#top_info .top_info_news > ul span.recruit { color: #ffffff; background-color: #003770; }
#top_info .top_info_news > a.more {
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: 'Montserrat', sans-serif;
	font-size: 15px;
	line-height: 2;
	letter-spacing: 1px;
	font-weight: 500;
	text-decoration: none;
	color: #ffffff;
	background-color: #00529c;
	border-radius: 5px;
	width: 160px;
	height: 55px;
	margin: 40px auto 0 auto;
	transition:all 0.3s ease;
}
#top_info .top_info_news > a.more:hover {
	opacity: 0.5;
}
@media screen and (min-width:  0px) and (max-width:1020px) {
	#top_info .top_info_wrap {
		flex-direction: column;
		width: 600px;
	}
	#top_info .top_info_news {
		width: 100%;
	}
	#top_info .top_info_facebook {
		width: 100%;
		margin: 85px 0 0 0;
	}
}


/* pagetitle */
#pagetitle {
	display: flex;
	align-items: center;
	background-image: linear-gradient(90deg, rgba(238, 238, 238, 1) 50%, rgba(255, 255, 255, 1));
	padding: 0 20px;
	height: 125px;
}
#pagetitle .pagetitle_wrap {
	width: 1000px;
	max-width: 100%;
	margin: 0 auto;
}
#pagetitle ul.pan {
	list-style-type: none;
	display: flex;
    white-space: nowrap;
}
#pagetitle ul.pan > li {
	font-size: 13px;
	line-height: 1;
	letter-spacing: 1px;
	font-weight: 400;
}
#pagetitle ul.pan > li:not(:last-child)::after {
	content: '>';
	margin: 0 5px;
}
#pagetitle ul.pan > li:last-child {
    overflow: hidden;
	text-overflow: ellipsis;
    -webkit-text-overflow: ellipsis;
    -o-text-overflow: ellipsis;
}
#pagetitle ul.pan > li > a {
	position: relative;
	text-decoration: none;
	color: var(--text-color);
	transition:all 0.3s ease;
}
#pagetitle ul.pan > li > a::after {
	content: '';
	position: absolute;
	left: 0;
	bottom: -2px;
	width: 100%;
	height: 1px;
	background-color: var(--text-color);
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}
#pagetitle ul.pan > li:hover > a {
	color:var(--text-color);
}
#pagetitle ul.pan > li:hover > a::after {
	transform-origin: left top;
	transform: scale(1, 1);
}
#pagetitle h2 {
	font-size: 22px;
	line-height: 1.2;
	letter-spacing: 4px;
	font-weight: 600;
	color: #003770;
	margin-top: 15px;
}



/* container */
#container {
	background-color: #ffffff;
	padding: 75px 20px 125px 20px;
}
#container .container_wrap {
	display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
	width: 1000px;
	max-width: 100%;
	margin: 0 auto;
}
@media screen and (min-width:  0px) and (max-width:1020px) {
	#container .container_wrap {
		display: block;
	}
}

/* mainSection */
.mainSection {
	width: 700px;
	max-width: 100%;
}
@media screen and (min-width:  0px) and (max-width:1020px) {
	.mainSection {
		margin: 0 auto;
	}
}

/* list */
.mainSection > .list {
	list-style-type: none;
}
.mainSection > .list li {
	background-image: linear-gradient(90deg, rgba(0, 55, 112, 1), rgba(0, 82, 156, 1));
}
.mainSection > .list li:not(:first-child) {
	margin-top: 25px;
}
.mainSection > .list li a {
	display: flex;
	align-items: center;
	text-decoration: none;
	color: #ffffff;
	border: 1px solid #003770;
	height: 142px;
	padding: 0 30px 0 0;
	transition:all 0.3s ease;
}
.mainSection > .list li a::after {
	content: 'VIEW';
	font-family: 'Montserrat', sans-serif;
	font-size: 15px;
	line-height: 2.2;
	letter-spacing: 1px;
	font-weight: 500;
	background-image: url(../../img/round_arrow_off_w.svg);
	background-size: 33px 33px;
	background-repeat: no-repeat;
	background-position: center right;
	width: 95px;
	height: 33px;
}
.mainSection > .list li a:hover {
	border: 1px solid #7fa2c2;
	background-color: #7fa2c2;
}
.mainSection > .list li a:hover::after {
	background-image: url(../../img/round_arrow_on.svg);
}
.mainSection > .list li .ph {
	width: 140px;
	max-width: 100%;
}
.mainSection > .list li .ph img {
	width: 100%;
	height: auto;
}
.mainSection > .list li .text {
	flex: 1;
	padding: 0 20px 0 40px;
}
.mainSection > .list li .text h5 {
	font-size: 22px;
	line-height: 1.2;
	letter-spacing: 4px;
	font-weight: 600;
}
.mainSection > .list li .text p {
	font-size: 15px;
	line-height: 1.75;
	letter-spacing: 1px;
	font-weight: 400;
	margin-top: 10px;
	display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}
.mainSection > .more a {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 15px;
	line-height: 2;
	letter-spacing: 1px;
	font-weight: 500;
	text-decoration: none;
	color: var(--text-color);
	background-color: #ffffff;
	border: 1px solid #dddddd;
	border-radius: 5px;
	width: 160px;
	height: 55px;
	margin: 45px 0 0 auto;
	transition:all 0.3s ease;
}
.mainSection > .more a:hover {
	opacity: 0.5;
}
@media screen and (min-width:  0px) and (max-width: 767px) {
	.mainSection > .list li .text p br {
		display: none;
	}
}
@media screen and (min-width:  0px) and (max-width: 575px) {
	.mainSection > .list li a {
		padding: 0 20px 0 0;
	}
	.mainSection > .list li a::after {
		content: '';
		width: 33px;
	}
	.mainSection > .list li .ph {
		display: none;
	}
	.mainSection > .list li .text {
		padding: 0 20px 0 20px;
	}
	.mainSection > .more a {
			margin: 45px auto 0 auto;
	}
}

/* message */  
.mainSection.business > .message > h3 {
	font-size: 22px;
	line-height: 1.2;
	letter-spacing: 4px;
	font-weight: 600;
	color: var(--text-color);
}
.mainSection.business > .message > p {
	font-size: 15px;
	line-height:2;
	letter-spacing:1px;
	font-weight: 400;
	color: var(--text-color);
	margin-top: 50px;
}

/* pattern1 */
.mainSection.business > .pattern1 {
	list-style-type: none;
	margin-top: 100px;
}
.mainSection.business > .pattern1 li {
	margin-top: 60px;
}
.mainSection.business > .pattern1 h4.title {
	font-size: 18px;
	line-height: 1.5;
	letter-spacing:1px;
	font-weight: 500;
	color: #ffffff;
	background-color: #003770;
	padding: 3px 15px 5px 15px;
}
.mainSection.business > .pattern1 .inner {
	display: flex;
	justify-content: space-between;
	margin: 25px auto 0 auto;
}
.mainSection.business > .pattern1 .ph {
	width: 350px;
	max-width: 100%;
}
.mainSection.business > .pattern1 .ph img {
	width: 100%;
	height: auto;
}
.mainSection.business > .pattern1 .text {
	font-size: 15px;
	line-height: 2;
	letter-spacing: 1px;
	font-weight: 400;
	color: var(--text-color);
	width: 320px;
	max-width: 100%;
}
.mainSection.business > .pattern1 .text p.overview {
	font-size: 14px;
	line-height: 1.85;
	letter-spacing: 1px;
	font-weight: 400;
	color: var(--text-color);
}
.mainSection.business > .pattern1 .text p.explanation {
	font-size: 14px;
	line-height: 1.85;
	letter-spacing: 1px;
	font-weight: 400;
	color: var(--text-color);
	margin-top: 20px;
}
@media screen and (min-width:  0px) and (max-width: 767px) {
	.mainSection.business > .pattern1 .inner {
		display: block;
	}
	.mainSection.business > .pattern1 .ph {
		margin: 25px auto 0 auto;
	}
	.mainSection.business > .pattern1 .text {
		width: 100%;
		margin: 25px auto 0 auto;
	}
}

/* pattern2 */
.mainSection.business > .pattern2 {
	list-style-type: none;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-top: 50px;
}
.mainSection.business > .pattern2 li {
	width: 330px;
	max-width: 100%;
	margin-top: 50px;
}
.mainSection.business > .pattern2 h4.title {
	font-size: 18px;
	line-height: 1.5;
	letter-spacing:1px;
	font-weight: 500;
	color: #ffffff;
	background-color: #003770;
	padding: 11px 15px 14px 15px;
}
.mainSection.business > .pattern2 h4.title span {
	display: block;
	font-size: 15px;
}
.mainSection.business > .pattern2 .ph {
	width: 330px;
	margin-top: 10px;
}
.mainSection.business > .pattern2 .ph img {
	width: 100%;
	height: auto;
}
@media screen and (min-width:  0px) and (max-width: 767px) {
	.mainSection.business > .pattern2 {
		display: block;
		margin-top: 100px;
	}
	.mainSection.business > .pattern2 li {
		width: 100%;
	}
	.mainSection.business > .pattern2 .ph {
		margin: 10px auto 0 auto;
	}
}

/* pattern3 */
.mainSection.business > .pattern3 {
	list-style-type: none;
	margin-top: 100px;
}
.mainSection.business > .pattern3 li {
	width: 100%px;
	margin-top: 20px;
}
.mainSection.business > .pattern3 h4.title {
	font-size: 18px;
	line-height: 1.5;
	letter-spacing:1px;
	font-weight: 500;
	color: #ffffff;
	background-color: #003770;
	padding: 3px 15px 5px 15px;
}
.mainSection.business > .pattern3 .text {
	font-size: 15px;
	line-height: 2;
	letter-spacing: 1px;
	font-weight: 400;
	color: var(--text-color);
	border: 1px solid #003770;
	width: 100%;
	padding: 22px 35px;
}
.mainSection.business > .pattern3 .text p {
	font-size: 15px;
	line-height: 2;
	letter-spacing: 1px;
	font-weight: 400;
	color: var(--text-color);
}

/* notes */
.mainSection.business > .notes {
	border-top: 1px solid #cbcbcb;
	margin-top: 90px;
}
.mainSection.business > .notes dd {
	border-bottom: 1px solid #cbcbcb;
	padding: 50px 0;
}
.mainSection.business > .notes h5 {
	font-size: 18px;
	line-height: 1.5;
	letter-spacing:1px;
	font-weight: 500;
	color: var(--text-color);
}
.mainSection.business > .notes p {
	font-size: 15px;
	line-height: 2;
	letter-spacing: 1px;
	font-weight: 400;
	color: var(--text-color);
	margin-top: 20px;
}
.mainSection.business > .notes p.small {
	font-size: 13px;
	line-height: 2;
	letter-spacing: 1px;
	font-weight: 400;
	color: var(--text-color);
	margin-top: 10px;
}
.mainSection.business > .notes dd.inner {
	display: flex;
	flex-wrap: wrap;
}
.mainSection.business > .notes dd.inner div {
	max-width: 330px;
}
.mainSection.business > .notes dd.inner div:nth-child(2n) {
	margin-left: 30px;
}
.mainSection.business > .notes dd.inner div:nth-child(n+3) {
	margin-top: 30px;
}
@media screen and (min-width:  0px) and (max-width: 767px) {
	.mainSection.business > .notes dd.inner {
		display: block;
	}
	.mainSection.business > .notes dd.inner div {
		text-align: center;
		margin: 0 auto;
	}
	.mainSection.business > .notes dd.inner div:nth-child(2n) {
		margin: 0 auto;
	}
	.mainSection.business > .notes dd.inner div:nth-child(n+2) {
		margin-top: 30px;
	}
}

/* message */
.mainSection.company > .message p {
	font-size: 15px;
	line-height: 2;
	letter-spacing: 1px;
	font-weight: 400;
	color: var(--text-color);
}
.mainSection.company > .name {
	display: flex;
	align-items: flex-end;
	justify-content: flex-start;
	flex-direction: row-reverse;
	margin-top: 30px;
}
.mainSection.company > .name p {
	font-size: 15px;
	line-height: 1.75;
	letter-spacing: 1px;
	font-weight: 400;
	text-align: right;
	color: var(--text-color);
	margin-right: 20px;
}
.mainSection.company > .name p span {
	font-size: 22px;
}
@media screen and (min-width:  0px) and (max-width: 575px) {
	.mainSection.company > .name {
		display: block;
		text-align: center;
	}
	.mainSection.company > .name p {
		text-align: center;
		margin: 10px 0 0 0;
	}
}

/* profile */
.mainSection.company > .profile {
	width: 100%;
}
.mainSection.company > .profile tr {
	border-bottom: 1px solid #cbcbcb;
}
.mainSection.company > .profile th {
	font-size: 15px;
	line-height: 1.75;
	letter-spacing: 1px;
	font-weight: 500;
	text-align: left;
	color: var(--text-color);
	width: 150px;
}
.mainSection.company > .profile td {
	font-size: 15px;
	line-height: 1.75;
	letter-spacing: 1px;
	font-weight: 400;
	text-align: left;
	color: var(--text-color);
	width: auto;
	padding: 25px 0;
}
.mainSection.company > .profile td strong {
	font-weight: 500;
}
.mainSection.company > .profile tr:first-child td {
	padding: 0 0 25px 0;
}
.mainSection.company > .profile .shop:not(:last-child) {
	border-bottom: 1px solid #cbcbcb;
	padding: 0 0 25px 0;
	margin: 0 0 25px 0;
}
.mainSection.company > .profile a.map {
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: 'Montserrat', sans-serif;
	font-size: 13px;
	line-height: 1;
	letter-spacing: 1px;
	font-weight: 500;
	text-decoration: none;
	color: #ffffff;
	background-color: #333333;
	border-radius: 5px;
	width: 150px;
	height: 30px;
	margin-top: 8px;
}
.mainSection.company > .profile a.map::before {
	content: '';
	background-image: url(../../img/icon_map.svg);
	background-size: auto;
	background-repeat: no-repeat;
	background-position: center center;
	width: 12.34px;
	height: 17.55px;
	margin-right: 10px;
}
.mainSection.company > .profile a.map:hover {
	opacity: 0.5;
}
.mainSection.company > .profile dl {
	display: flex;
	flex-wrap: wrap;
}
.mainSection.company > .profile dl dt {
	width: 240px;
}
.mainSection.company > .profile dl dd {
	width: 310px;
}
@media screen and (min-width:  0px) and (max-width: 767px) {
	.mainSection.company > .profile th {
		display: block;
		width: 100%;
		padding: 30px 0 0 0;
	}
	.mainSection.company > .profile tr:first-child th {
		padding: 0;
	}
	.mainSection.company > .profile td {
		display: block;
		width: 100%;
		padding: 15px 0 30px 1em;
	}
	.mainSection.company > .profile tr:first-child td {
		padding: 15px 0 30px 1em;
	}
	.mainSection.company > .profile dl dt {
		font-weight: 500;
		width: 100%;
	}
	.mainSection.company > .profile dl dd {
		width: 100%;
		padding: 0 0 1em 0;
	}
	.mainSection.company > .profile dl dd:last-child {
		padding: 0 0 0 0;
	}
}

/* history */
.mainSection.company > .history {
	width: 100%;
}
.mainSection.company > .history tr {
	border-bottom: 1px solid #cbcbcb;
}
.mainSection.company > .history th {
	font-size: 15px;
	line-height: 1.75;
	letter-spacing: 1px;
	font-weight: 500;
	text-align: left;
	color: var(--text-color);
	width: 175px;
}
.mainSection.company > .history td {
	font-size: 15px;
	line-height: 1.75;
	letter-spacing: 1px;
	font-weight: 400;
	text-align: left;
	color: var(--text-color);
	width: auto;
	padding: 25px 0;
}
.mainSection.company > .history tr:first-child td {
	padding: 0 0 25px 0;
}
@media screen and (min-width:  0px) and (max-width: 767px) {
	.mainSection.company > .history th {
		display: block;
		width: 100%;
		padding: 30px 0 0 0;
	}
	.mainSection.company > .history tr:first-child th {
		padding: 0;
	}
	.mainSection.company > .history td {
		display: block;
		width: 100%;
		padding: 15px 0 30px 1em;
	}
	.mainSection.company > .history tr:first-child td {
		padding: 15px 0 30px 1em;
	}
}

/* more */
.mainSection.company > .group_button a.more {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 15px;
	line-height: 2;
	letter-spacing: 1px;
	font-weight: 500;
	text-decoration: none;
	color: #ffffff;
	background-color: #00529c;
	border-radius: 5px;
	width: 200px;
	height: 55px;
	margin: 50px auto 0 auto;
	transition:all 0.3s ease;
}
.mainSection.company > .group_button a.more:hover {
	opacity: 0.5;
}

/* organization */
.organization_map {
	width: 1000px;
	max-width: 100%;
	margin: 0 auto 150px auto;
}
.mainSection.company > .organization {
	width: 100%;
}
.mainSection.company > .organization tr {
	border-bottom: 1px solid #cbcbcb;
}
.mainSection.company > .organization th {
	font-size: 15px;
	line-height: 2;
	letter-spacing: 1px;
	font-weight: 500;
	text-align: left;
	color: var(--text-color);
	width: 180px;
}
.mainSection.company > .organization td {
	font-size: 15px;
	line-height: 2;
	letter-spacing: 1px;
	font-weight: 400;
	text-align: left;
	color: var(--text-color);
	width: auto;
	padding: 30px 0;
}
.mainSection.company > .organization td strong {
	font-weight: 500;
}
.mainSection.company > .organization tr:first-child td {
	padding: 0 0 30px 0;
}
.mainSection.company > .organization dl {
	display: flex;
	flex-wrap: wrap;
}
.mainSection.company > .organization dl dt {
	width: 180px;
}
.mainSection.company > .organization dl dd {
	width: 340px;
}

/* organization_group */
.mainSection.company > .organization_group {
	list-style-type: none;
	width: 100%;
}
.mainSection.company > .organization_group li:first-child {
	padding: 50px 0;
}
.mainSection.company > .organization_group li {
	font-size: 15px;
	line-height: 2;
	letter-spacing: 1px;
	font-weight: 400;
	text-align: left;
	color: var(--text-color);
	border-bottom: 1px solid #cbcbcb;
	padding: 30px 0;
}
.mainSection.company > .organization_group li dl {
	display: flex;
	flex-wrap: wrap;
}
.mainSection.company > .organization_group li dl dt {
	width: 350px;
}
.mainSection.company > .organization_group li dl dd {
	width: 350px;
}
.mainSection.company > .organization_group li div {
	width: 100%;
	margin-top: 15px;
}
.mainSection.company > .organization_group li a.more {
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: 'Montserrat', sans-serif;
	font-size: 13px;
	line-height: 1;
	letter-spacing: 1px;
	font-weight: 500;
	text-decoration: none;
	color: #ffffff;
	background-color: #00529c;
	border-radius: 5px;
	width: 160px;
	height: 35px;
}
.mainSection.company > .organization_group li a.more:hover {
	opacity: 0.5;
}
.mainSection.company > .organization_group li a.more.blank::after {
	content: '';
	background-image: url(../../img/icon_blank_w.svg);
	background-size: auto;
	background-repeat: no-repeat;
	background-position: center center;
	width: 12px;
	height: 12px;
	margin-left: 10px;
}
@media screen and (min-width:  0px) and (max-width: 767px) {
	.organization_map {
		margin: 0 auto 75px auto;
	}
	.mainSection.company > .organization th {
		display: block;
		font-size: 18px;
		width: 100%;
		padding: 30px 0 0 0;
	}
	.mainSection.company > .organization tr:first-child th {
		padding: 0;
	}
	.mainSection.company > .organization td {
		display: block;
		width: 100%;
		padding: 15px 0 30px 1em;
	}
	.mainSection.company > .organization tr:first-child td {
		padding: 15px 0 30px 1em;
	}
	.mainSection.company > .organization dl dt {
		font-weight: 500;
		width: 100%;
	}
	.mainSection.company > .organization dl dd {
		width: 100%;
		padding: 0 0 1em 0;
	}
	.mainSection.company > .organization dl dd:last-child {
		padding: 0 0 0 0;
	}
	.mainSection.company > .organization_group li:first-child {
		border-bottom: none;
		padding: 50px 0 30px 0;
		margin: 0;
	}
	.mainSection.company > .organization_group li {
		margin: 0 0 0 1em;
	}
	.mainSection.company > .organization_group li dl dt {
		width: 100%;
	}
	.mainSection.company > .organization_group li dl dd {
		width: 100%;
		margin-top: 10px;
	}
}

/* group */
.mainSection.company > div.group_image {
	margin: 35px 0 0 0;
}
.mainSection.company > h4.group_title {
	font-size: 18px;
	line-height: 1.5;
	letter-spacing:1px;
	font-weight: 500;
	color: #ffffff;
	background-color: #003770;
	padding: 3px 15px 5px 15px;
	margin: 35px 0 10px 0;
}
.mainSection.company > .group {
	width: 100%;
}
.mainSection.company > .group tr {
	border-bottom: 1px solid #cbcbcb;
}
.mainSection.company > .group th {
	font-size: 15px;
	line-height: 1.75;
	letter-spacing: 1px;
	font-weight: 500;
	text-align: left;
	color: var(--text-color);
	width: 165px;
}
.mainSection.company > .group td {
	font-size: 15px;
	line-height: 1.75;
	letter-spacing: 1px;
	font-weight: 400;
	text-align: left;
	color: var(--text-color);
	width: auto;
	padding: 25px 0;
}
.mainSection.company > .group td strong {
	font-weight: 500;
}
.mainSection.company > .group .shop:not(:last-child) {
	border-bottom: 1px solid #cbcbcb;
	padding: 0 0 25px 0;
	margin: 0 0 25px 0;
}
.mainSection.company > .group a.map {
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: 'Montserrat', sans-serif;
	font-size: 13px;
	line-height: 1;
	letter-spacing: 1px;
	font-weight: 500;
	text-decoration: none;
	color: #ffffff;
	background-color: #333333;
	border-radius: 5px;
	width: 150px;
	height: 30px;
	margin-top: 8px;
}
.mainSection.company > .group a.map::before {
	content: '';
	background-image: url(../../img/icon_map.svg);
	background-size: auto;
	background-repeat: no-repeat;
	background-position: center center;
	width: 12.34px;
	height: 17.55px;
	margin-right: 10px;
}
.mainSection.company > .group a.map:hover {
	opacity: 0.5;
}
.mainSection.company > .group dl {
	display: flex;
	flex-wrap: wrap;
}
.mainSection.company > .group dl dt {
	width: 155px;
}
.mainSection.company > .group dl dd {
	width: 380px;
}
.mainSection.company > .group dl.history dt:not(:first-of-type) ,
.mainSection.company > .group dl.history dd:not(:first-of-type) {
	border-top: 1px solid #cbcbcb;
	padding: 25px 0 0 0;
	margin: 25px 0 0 0;
}
@media screen and (min-width:  0px) and (max-width: 767px) {
	.mainSection.company > .group th {
		display: block;
		width: 100%;
		padding: 30px 0 0 0;
	}
	.mainSection.company > .group th br {
		display: none;
	}
	.mainSection.company > .group td {
		display: block;
		width: 100%;
		padding: 15px 0 30px 1em;
	}
	.mainSection.company > .group dl dt {
		font-weight: 500;
		width: 100%;
	}
	.mainSection.company > .group dl dd {
		width: 100%;
		padding: 0 0 1em 0;
	}
	.mainSection.company > .group dl dd:last-child {
		padding: 0 0 0 0;
	}
	.mainSection.company > .group dl.history dt ,
	.mainSection.company > .group dl.history dd {
		border-top: none;
		padding: 0 0 0 0;
		margin: 0 0 0 0;
	}
	.mainSection.company > .group dl.history dt:not(:first-of-type) {
		border-top: none;
		padding: 0 0 0 0;
		margin: 1em 0 0 0;
	}
	.mainSection.company > .group dl.history dd:not(:first-of-type) {
		border-top: none;
		padding: 0 0 0 0;
		margin: 0 0 0 0;
	}
}

/* group_facebook */
.mainSection.company > .group_facebook {
	position: relative;
	border: 1px solid #003770;
	width: 100%;
	padding: 50px 20px;
	margin: 100px auto 0 auto;
}
.mainSection.company > .group_facebook > h4 {
	position: absolute;
	top: -14px;
	left: 0;
	right: 0;
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	line-height: 2;
	letter-spacing: 2.5px;
	font-weight: 500;
	text-align: center;
	color: #003770;
	background-color: #ffffff;
	width: 200px;
	margin: 0 auto;
}
.mainSection.company > .group_facebook > ul {
	list-style-type: none;
	max-width: 500px;
	margin: 0 auto;
}

/* group_form */
.mainSection.company > .group_form {
	margin: 100px auto 0 auto;
}
.mainSection.company > .group_form h4.title {
	font-size: 18px;
	line-height: 1.5;
	letter-spacing:1px;
	font-weight: 500;
	color: #ffffff;
	background-color: #003770;
	padding: 3px 15px 5px 15px;
}
.mainSection.company > .group_form p.read {
	font-size: 15px;
	line-height: 1.75;
	letter-spacing: 1px;
	font-weight: 400;
	text-align: left;
	color: var(--text-color);
	margin: 20px 0 0 0;
}

/* form_table */
.form_table {
	width: 100%;
}
.form_table th ,
.form_table td {
	display: block;
	font-size: 15px;
	line-height: 2;
	letter-spacing: 1px;
	font-weight: 400;
	text-align: left;
	color: var(--text-color);
	width: 100%;
}
.form_table th {
	margin: 30px 0 5px 0;
}
.form_table th.required::after {
	content: '必須';
	font-size: 13px;
	line-height: 1;
	letter-spacing: 1px;
	font-weight: 300;
	color: #ffffff;
	background-color: #00529c;
	border-radius: 15px;
	padding: 1px 11px 2px 11px;
	margin-left: 10px;
}
.form_table input {
	font-size: 15px;
	line-height: 2;
	letter-spacing: 1px;
	font-weight: 400;
	color: var(--text-color);
	background-color: #ffffff;
	border: 1px solid #cbcbcb !important;
	border-radius:5px;
	width:100%;
	height:50px;
	padding:0 15px;
	margin: 0;
}
.form_table textarea {
	font-size: 15px;
	line-height: 2;
	letter-spacing: 1px;
	font-weight: 400;
	color: var(--text-color);
	background-color: #ffffff;
	border: 1px solid #cbcbcb !important;
	border-radius:5px;
	width:100%;
	height:300px;
	padding:15px 15px;
	margin: 0;
}
.form_table input::placeholder ,
.form_table textarea::placeholder {
	font-size: 15px;
	line-height: 2;
	letter-spacing: 1px;
	font-weight: 400;
	color: #cbcbcb;
}
.form_table input:focus,
.form_table textarea:focus {
	background-color: #eeeeee;
	border: 1px solid #cbcbcb !important;
	outline: none !important;
	box-shadow:none !important;
}
/* checkbox */
.form_table input[type="checkbox"] {
	display: none;
}
.form_table input[type="checkbox"] + span {
	display: inline-block;
	position:relative;
	padding-left: 36px;
	margin: 0 30px 10px 0;
	cursor: pointer;
}
.form_table input[type="checkbox"] + span::before {
	display: block;
	content: '';
	position: absolute;
	top: 2px;
	left: 0;
	width: 26px;
	height: 26px;
	background-color: #ffffff;
	border: 2px solid #cccccc;
	border-radius: 0px;
}
.form_table input[type="checkbox"]:checked + span::before{
	background-color: #00529c;
	border: 2px solid #00529c;
}
.form_table input[type="checkbox"]:checked + span::after{
	display: block;
	content: '';
	position: absolute;
	top: 6px;
	left: 9px;
	width: 8px;
	height: 15px;
	transform: rotate(40deg);
	border-bottom: 3px solid #ffffff;
	border-right: 3px solid #ffffff;
}
/* radio */
.form_table input[type="radio"] {
	display: none;
}
.form_table input[type="radio"] + span {
	display: inline-block;
	position:relative;
	padding-left: 36px;
	margin: 0 30px 10px 0;
	cursor: pointer;
}
.form_table input[type="radio"] + span::before {
	display: block;
	content: '';
	position: absolute;
	top: 2px;
	left: 0;
	width: 28px;
	height: 28px;
	background-color: #ffffff;
	border: 2px solid #cccccc;
	border-radius: 50%;
}
.form_table input[type="radio"]:checked + span::before{
	background-color: #ffffff;
	border: 2px solid #00529c;
}
.form_table input[type="radio"]:checked + span::after{
	display: block;
	content: '';
	position: absolute;
	top: 8px;
	left: 6px;
	width: 16px;
	height: 16px;
	background-color: #00529c;
	border-radius: 50%;
}
@media screen and (min-width:  0px) and (max-width: 575px) {
	.form_table .wpcf7-list-item {
		display: block;
	}
}
/* form_button */
.form_button {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	margin-top: 20px;
}
.form_button > p {
	margin-bottom: 10px;
}
.form_button > p > a {
	color:var(--link-color);
	text-decoration: underline;
}
.form_button input[type="submit"] {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 15px;
	line-height: 2;
	letter-spacing: 1px;
	font-weight: 500;
	text-align: center;
	text-decoration: none;
	color: #ffffff;
	background-color: #00529c;
	border-radius: 5px;
	border: none !important;
	outline: none !important;
	box-shadow: none !important;
	width: 220px;
	max-width: 100%;
	height: 55px;
	margin: 0 auto;
	transition:all 0.4s ease;
	cursor: pointer;
}
.form_button input[type="submit"]:hover {
	opacity: 0.5;
}
/* wpcf7 エラーメッセージ */
.wpcf7 .wpcf7-form-control-wrap {
	display: block;
	position: relative;
}
.wpcf7 .wpcf7-form-control-wrap input:has(+ .wpcf7-not-valid-tip) ,
.wpcf7 .wpcf7-form-control-wrap textarea:has(+ .wpcf7-not-valid-tip) {
	background-color: #fce5e8 !important;
}
.wpcf7 .wpcf7-form-control-wrap input:has(+ .wpcf7-not-valid-tip):focus ,
.wpcf7 .wpcf7-form-control-wrap textarea:has(+ .wpcf7-not-valid-tip):focus {
	background-color: #eeeeee !important;
}
.wpcf7 .wpcf7-not-valid-tip {
	position: absolute;
	top: -20px;
	right: 5px;
	display: inline-block;
	font-size: 10px;
	line-height: 2;
	letter-spacing:1px;
	font-weight: 400;
	color: #ffffff;
	background-color: #eb6877;
	border-radius: 5px;
	padding: 4px 5px 4px 15px;
	margin: 0;
}
.wpcf7 .wpcf7-not-valid-tip:before {
	content: "";
	position: absolute;
	bottom: -20px;
	right: 20px;
	border: 10px solid transparent;
	border-top: 10px solid #eb6877;
}
.wpcf7 form .wpcf7-response-output {
	font-size:16px;
	line-height:1.7;
	letter-spacing:0px;
	font-weight: 500;
	text-align: center;
	color:#000000;
	margin: 40px auto 0 auto;
	padding: 10px 20px;
	border: 2px solid #00a0d2;
	background-color: #00a0d2;
}
.wpcf7 form.init .wpcf7-response-output {
	display: none;
}
.wpcf7 form.sent .wpcf7-response-output {
	display: none;
}
.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output {
	border-color: #dc3232;
	background-color: #dc3232;
}
.wpcf7 form.spam .wpcf7-response-output {
	border-color: #f56e28;
	background-color: #f56e28;
}
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output {
	border-color: #ffb900;
	background-color: #ffb900;
}
@media screen and (min-width:  0px) and (max-width:1040px) {
	#contact .box_form {
		width: 600px;
		margin: 30px auto 0 auto;
	}
	#contact textarea {
		height:200px;
	}
}
@media screen and (min-width:  0px) and (max-width: 575px) {
	#contact input[type="submit"] {
		font-size:18px;
		height: 75px;
	}
	.form_table input[type="radio"] + span {
		display: block;
	}
}

/* news_list */
.mainSection.news > .news_list {
	list-style-type: none;
	width: 100%;
	margin: 0 auto;
}
.mainSection.news > .news_list a {
	display: block;
	font-size:15px;
	line-height:2;
	letter-spacing:1px;
	font-weight: 400;
	text-decoration: none;
	color: var(--text-color);
	background-image: url(../../img/round_arrow_off.svg);
	background-size: 17px 17px;
	background-repeat: no-repeat;
	background-position: center right 15px;
	border-bottom: 1px solid #cbcbcb;
	padding: 10px 45px 15px 15px;
	margin: 0 0 20px 0;
	transition:all 0.3s ease;
}
.mainSection.news > .news_list a:hover {
	color: var(--link-color);
	background-color: #eeeeee;
	background-image: url(../../img/round_arrow_on.svg);
	border-bottom: 1px solid var(--link-color);
}
.mainSection.news > .news_list time {
	display: inline-block;
	font-family: 'Montserrat', sans-serif;
	font-size: 13px;
	line-height: 2;
	letter-spacing: 1px;
	font-weight: 400;
	width: 100px;
}
.mainSection.news > .news_list span.tag {
	font-size: 13px;
	line-height: 2;
	letter-spacing: 1px;
	font-weight: 400;
	color: #ffffff;
	background-color: #003770;
	border-radius: 15px;
	padding: 0px 17px 1px 17px;
}
.mainSection.news > .news_list span.news    { color: #ffffff; background-color: #00529c; }
.mainSection.news > .news_list span.recruit { color: #ffffff; background-color: #003770; }

/* news_box */
.mainSection.news > .news_box {
	position: relative;
	border: 1px solid #003770;
	width: 100%;
	padding: 10%;
}
.mainSection.news > .news_box > h4 {
	position: absolute;
	top: -14px;
	left: 0;
	right: 0;
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	line-height: 2;
	letter-spacing: 2.5px;
	font-weight: 500;
	text-align: center;
	color: #003770;
	background-color: #ffffff;
	width: 200px;
	margin: 0 auto;
}
/* entry-title */
.mainSection.news > .news_box > .entry-title {
	border-bottom: 1px solid #cbcbcb;
	padding: 0 0 30px 0;
}
.mainSection.news > .news_box > .entry-title time {
	display: inline-block;
	font-family: 'Montserrat', sans-serif;
	font-size: 13px;
	line-height: 2;
	letter-spacing: 1px;
	font-weight: 400;
	width: 100px;
}
.mainSection.news > .news_box > .entry-title span.tag {
	font-size: 13px;
	line-height: 2;
	letter-spacing: 1px;
	font-weight: 400;
	color: #ffffff;
	background-color: #003770;
	border-radius: 15px;
	padding: 0px 17px 1px 17px;
}
.mainSection.news > .news_box > .entry-title span.news    { color: #ffffff; background-color: #00529c; }
.mainSection.news > .news_box > .entry-title span.recruit { color: #ffffff; background-color: #003770; }
.mainSection.news > .news_box > .entry-title h3 {
	font-size: 18px;
	line-height:1.75;
	letter-spacing:1px;
	font-weight: 600;
	text-align: left;
	color: var(--link-color);
	margin-top: 10px;
}
/* entry-content */
.mainSection.news > .news_box > .entry-content {
	font-size: 15px;
	line-height:1.75;
	letter-spacing:1px;
	font-weight: 400;
	text-align: left;
	color: var(--text-color);
	margin:30px 0 0 0;
	overflow: hidden;
}
.mainSection.news > .news_box > .entry-content p {
	margin:20px 0 0 0;
}
#news .enrty_post strong {
	font-weight: 600;
}
.mainSection.news > .news_box > .entry-content h1 ,
.mainSection.news > .news_box > .entry-content h2 ,
.mainSection.news > .news_box > .entry-content h3 ,
.mainSection.news > .news_box > .entry-content h4 ,
.mainSection.news > .news_box > .entry-content h5 ,
.mainSection.news > .news_box > .entry-content h6 {
	font-size: 24px;
	line-height:1.5;
	letter-spacing:1px;
	font-weight: 600;
	text-align: left;
	color: var(--link-color);
	margin:20px 0 0 0;
}
.mainSection.news > .news_box > .entry-content blockquote ,
.mainSection.news > .news_box > .entry-content iframe {
	width: 100%;
	margin:20px 0 0 0;
}
.mainSection.news > .news_box > .entry-content ul ,
.mainSection.news > .news_box > .entry-content ol {
	padding:0;
	margin:20px 0 20px 20px;
}
.mainSection.news > .news_box > .entry-content ul li ,
.mainSection.news > .news_box > .entry-content ol li {
	margin:20px 0;
}
.mainSection.news > .news_box > .entry-content img {
	max-width: 100%;
	height: auto;
}
.mainSection.news > .news_box > .entry-content img.aligncenter { 
	display: block;
	margin-left: auto;
	margin-right: auto;
}
.mainSection.news > .news_box > .entry-content img.alignright {
	float: right;
	margin-left: 1em;
}
.mainSection.news > .news_box > .entry-content img.alignleft {
	float: left;
	margin-right: 1em;
}
.mainSection.news > .news_box > .entry-content table {
	border-top: 1px solid #cccccc;
	width: 100%;
	margin:20px 0 0 0;
}
.mainSection.news > .news_box > .entry-content table tr {
	border-bottom: 1px solid #cccccc;
}
.mainSection.news > .news_box > .entry-content table th ,
.mainSection.news > .news_box > .entry-content table td {
	font-size: 15px;
	line-height:1.75;
	letter-spacing:1px;
	font-weight: 400;
	text-align: left;
	padding: 20px 0px;
	margin: 0;
}
.mainSection.news > .news_box > .entry-content .youtube {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
.mainSection.news > .news_box > .entry-content .youtube iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}
.mainSection.news > .news_box > .entry-content a {
	color: var(--link-color);
	text-decoration: underline;
}
.mainSection.news > .news_box > .entry-content a:hover {
	color: var(--link-color);
	text-decoration: none;
}

/* nav_box */
.mainSection.news > .nav_box {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: 40px 0 0 0;
}
/* nav_list */
.mainSection.news > .nav_box .nav_list {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 140px;
	height: 18px;
}
.mainSection.news > .nav_box .nav_list .nav_center {
	font-family: 'Montserrat', sans-serif;
	flex: 1;
	font-size: 12px;
	line-height:1;
	letter-spacing:1px;
	font-weight: 500;
	text-align: center;
	white-space: nowrap;
	color: var(--text-color);
}
.mainSection.news > .nav_box .nav_list .nav_left ,
.mainSection.news > .nav_box .nav_list .nav_right {
	width: 18px;
	height: 18px;
}
.mainSection.news > .nav_box .nav_list .nav_left a {
	display: block;
	content: '';
	background-image: url(../../img/round_arrow_l_off.svg);
	background-size: 18px 18px;
	background-repeat: no-repeat;
	background-position: center center;
	width: 18px;
	height: 18px;
	transition:all 0.3s ease;
}
.mainSection.news > .nav_box .nav_list .nav_right a {
	display: block;
	content: '';
	background-image: url(../../img/round_arrow_off.svg);
	background-size: 18px 18px;
	background-repeat: no-repeat;
	background-position: center center;
	width: 18px;
	height: 18px;
	transition:all 0.3s ease;
}
.mainSection.news > .nav_box .nav_list .nav_left a:hover {
	background-image: url(../../img/round_arrow_l_on.svg);
}
.mainSection.news > .nav_box .nav_list .nav_right a:hover {
	background-image: url(../../img/round_arrow_on.svg);
}
/* nav_list_single */
.mainSection.news > .nav_box .nav_list_single {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 160px;
	height: 18px;
}
.mainSection.news > .nav_box .nav_list_single .nav_left ,
.mainSection.news > .nav_box .nav_list_single .nav_right {
	width: 50%;
}
.mainSection.news > .nav_box .nav_list_single .nav_left a ,
.mainSection.news > .nav_box .nav_list_single .nav_right a {
	display: flex;
	align-items: center;
	font-family: 'Montserrat', sans-serif;
	font-size: 12px;
	line-height:1;
	letter-spacing:1px;
	font-weight: 500;
	text-decoration: none;
	color: var(--text-color);
	white-space: nowrap;
}
.mainSection.news > .nav_box .nav_list_single .nav_right a {
	justify-content: flex-end;
	border-left: 1px dotted #bbbbbb;
}
.mainSection.news > .nav_box .nav_list_single .nav_left a::before {
	content: '';
	background-image: url(../../img/round_arrow_l_off.svg);
	background-size: 18px 18px;
	background-repeat: no-repeat;
	background-position: center center;
	width: 18px;
	height: 18px;
	margin-right: 10px;
	transition:all 0.3s ease;
}
.mainSection.news > .nav_box .nav_list_single .nav_right a::after {
	content: '';
	background-image: url(../../img/round_arrow_off.svg);
	background-size: 18px 18px;
	background-repeat: no-repeat;
	background-position: center center;
	width: 18px;
	height: 18px;
	margin-left: 10px;
	transition:all 0.3s ease;
}
.mainSection.news > .nav_box .nav_list_single .nav_left a:hover ,
.mainSection.news > .nav_box .nav_list_single .nav_right a:hover {
	color: var(--link-color);
}
.mainSection.news > .nav_box .nav_list_single .nav_left a:hover::before {
	background-image: url(../../img/round_arrow_l_on.svg);
}
.mainSection.news > .nav_box .nav_list_single .nav_right a:hover::after {
	background-image: url(../../img/round_arrow_on.svg);
}
/* more */
.mainSection.news > .nav_box a.more {
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: 'Montserrat', sans-serif;
	font-size: 15px;
	line-height: 2;
	letter-spacing: 1px;
	font-weight: 500;
	text-decoration: none;
	color: var(--text-color);
	background-color: #ffffff;
	border: 1px solid #dddddd;
	border-radius: 5px;
	width: 160px;
	height: 55px;
	transition:all 0.3s ease;
}
.mainSection.news > .nav_box a.more:hover {
	opacity: 0.5;
}



/* subSection */
.subSection {
	width: 200px;
	max-width: 100%;
}
.subSection > ul {
	list-style-type: none;
	position: sticky;
	top: 170px;
}
.subSection > ul a {
	display: block;
	text-decoration: none;
	color: var(--text-color);
	background-image: url(../../img/round_arrow_off.svg);
	background-size: 17px 17px;
	background-repeat: no-repeat;
	background-position: top 7px right;
	border-bottom: 1px solid #cbcbcb;
	padding: 0 25px 15px 0;
	margin: 0 0 20px 0;
	transition:all 0.3s ease;
}
.subSection > ul a h6 {
	font-size:15px;
	line-height:2;
	letter-spacing:1px;
	font-weight: 500;
}
.subSection > ul a p {
	font-size:11px;
	line-height:1.5;
	letter-spacing:1px;
	font-weight: 400;
}
.subSection > ul a:hover {
	color: var(--link-color);
	background-image: url(../../img/round_arrow_on.svg);
	border-bottom: 1px solid var(--link-color);
}
.subSection > ul a.blank::after {
	content: '';
	display: inline-block;
	background-image: url(../../img/icon_blank.svg);
	background-size: auto;
	background-repeat: no-repeat;
	background-position: center center;
	width: 12px;
	height: 12px;
	margin-left: 5px;
}
@media screen and (min-width:  0px) and (max-width:1020px) {
	.subSection {
		display: none;
	}
}

/* company */
.subSection.company a {
	padding: 0 25px 7px 0;
	margin: 0 0 14px 0;
}
.subSection.company .group a {
	border-bottom: 1px dotted #cbcbcb;
}
.subSection.company .group a:hover {
	border-bottom: 1px dotted var(--link-color);
}
.subSection.company .group ul {
	list-style-type: none;
}
.subSection.company .group ul a {
	padding-left: 1em;
}

/* news */
.subSection.news > .sticky {
	list-style-type: none;
	position: sticky;
	top: 170px;
}
.subSection.news > .sticky h5 {
	font-size: 13px;
	line-height: 1.5;
	letter-spacing:1px;
	font-weight: 500;
	color: #ffffff;
	background-color: #003770;
	padding: 5px 15px 5px 15px;
}
.subSection.news > .sticky h5:not(:first-child) {
	margin-top: 55px;
}
.subSection.news > .sticky ul {
	list-style-type: none;
	margin-top: 25px;
}
.subSection.news > .sticky ul a {
	display: block;
	font-size:15px;
	line-height:1;
	letter-spacing:1px;
	font-weight: 500;
	text-decoration: none;
	color: var(--text-color);
	background-image: url(../../img/round_arrow_off.svg);
	background-size: 17px 17px;
	background-repeat: no-repeat;
	background-position: top right;
	border-bottom: 1px solid #cbcbcb;
	padding: 0 25px 15px 0;
	margin: 20px 0 0 0;
	transition:all 0.3s ease;
}
.subSection.news > .sticky ul a:hover {
	color: var(--link-color);
	background-image: url(../../img/round_arrow_on.svg);
	border-bottom: 1px solid var(--link-color);
}
@media screen and (min-width:  0px) and (max-width:1020px) {
	.subSection.news {
		display: block;
		width: 700px;
		max-width: 100%;
		margin: 55px auto 0 auto;
	}
}



/* quality */
#quality {
	background-color: #ffffff;
	padding: 75px 20px 125px 20px;
}
#quality .quality_wrap {
	width: 1000px;
	max-width: 100%;
	margin: 0 auto;
}
#quality .title {
	font-size: 18px;
	line-height: 1.5;
	letter-spacing:1px;
	font-weight: 500;
	color: #ffffff;
	background-color: #003770;
	padding: 3px 15px 5px 15px;
}
#quality .title:not(:first-of-type) {
	margin: 110px 0 0 0;
}
#quality .doc {
	list-style-type: none;
	display: flex;
	justify-content: center;
	margin: 50px auto 0 auto;
}
#quality .doc li:not(:first-child) {
	margin-left: 6%;
}
#quality .read {
	font-size: 18px;
	line-height: 1.5;
	letter-spacing: 1px;
	font-weight: 500;
	text-decoration: none;
	color: var(--text-color);
	margin: 50px 0 0 0;
}
#quality .point {
	margin: 40px 0 0 20px;
}
#quality .point li {
	font-size:15px;
	line-height:2;
	letter-spacing:1px;
	font-weight: 400;
	color: var(--text-color);
	margin: 0;
}
#quality .text {
	font-size:15px;
	line-height:2;
	letter-spacing:1px;
	font-weight: 400;
	color: var(--text-color);
	margin: 30px 0 0 0;
}
#quality .iso {
	border-top: 1px solid #cbcbcb;
	width: 100%;
	margin: 40px 0 0 0;
}
#quality .iso tr {
	border-bottom: 1px solid #cbcbcb;
}
#quality .iso th {
	font-size: 15px;
	line-height: 1.75;
	letter-spacing: 1px;
	font-weight: 500;
	text-align: left;
	color: var(--text-color);
	width: 160px;
}
#quality .iso td {
	font-size: 15px;
	line-height: 1.75;
	letter-spacing: 1px;
	font-weight: 400;
	text-align: left;
	color: var(--text-color);
	width: auto;
	padding: 25px 0;
}
#quality .more a {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 15px;
	line-height: 2;
	letter-spacing: 1px;
	font-weight: 500;
	text-decoration: none;
	color: var(--text-color);
	background-color: #ffffff;
	border: 1px solid #dddddd;
	border-radius: 5px;
	width: 160px;
	height: 55px;
	margin: 45px 0 0 auto;
	transition:all 0.3s ease;
}
#quality .more a:hover {
	opacity: 0.5;
}
@media screen and (min-width:  0px) and (max-width: 767px) {
	#quality .iso th {
		display: block;
		width: 100%;
		padding: 30px 0 0 0;
	}
	#quality .iso td {
		display: block;
		width: 100%;
		padding: 15px 0 30px 1em;
	}
}
@media screen and (min-width:  0px) and (max-width: 575px) {
	#quality .more a {
			margin: 45px auto 0 auto;
	}
}



/* contact */
#contact {
	background-color: #ffffff;
	padding: 75px 20px 125px 20px;
}
#contact .contact_wrap {
	width: 1000px;
	max-width: 100%;
	margin: 0 auto;
}
#contact .more a {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 15px;
	line-height: 2;
	letter-spacing: 1px;
	font-weight: 500;
	text-decoration: none;
	color: var(--text-color);
	background-color: #ffffff;
	border: 1px solid #dddddd;
	border-radius: 5px;
	width: 160px;
	height: 55px;
	margin: 100px 0 0 auto;
	transition:all 0.3s ease;
}
#contact .more a:hover {
	opacity: 0.5;
}
@media screen and (min-width:  0px) and (max-width: 575px) {
	#contact .more a {
			margin: 100px auto 0 auto;
	}
}



/* privacy */
#privacy {
	background-color: #ffffff;
	padding: 75px 20px 125px 20px;
}
#privacy .privacy_wrap {
	width: 1000px;
	max-width: 100%;
	margin: 0 auto;
}
#privacy .read {
	font-size:15px;
	line-height:2;
	letter-spacing:1px;
	font-weight: 400;
	color: var(--text-color);
}
#privacy .text {
	margin: 70px 0 0 20px;
}
#privacy .text li {
	font-size:15px;
	line-height:2;
	letter-spacing:1px;
	font-weight: 400;
	color: var(--text-color);
	margin: 35px 0 0 0;
}
#privacy .more a {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 15px;
	line-height: 2;
	letter-spacing: 1px;
	font-weight: 500;
	text-decoration: none;
	color: var(--text-color);
	background-color: #ffffff;
	border: 1px solid #dddddd;
	border-radius: 5px;
	width: 160px;
	height: 55px;
	margin: 100px 0 0 auto;
	transition:all 0.3s ease;
}
#privacy .more a:hover {
	opacity: 0.5;
}
@media screen and (min-width:  0px) and (max-width: 575px) {
	#privacy .more a {
			margin: 100px auto 0 auto;
	}
}



/* link */
#link {
	background-color: #ffffff;
	padding: 75px 20px 125px 20px;
}
#link .link_wrap {
	width: 1000px;
	max-width: 100%;
	margin: 0 auto;
}
#link .list {
	list-style-type: none;
	display: flex;
	flex-wrap: wrap;
}
#link .list li {
	width: 23.5%;
	margin: 0 2% 35px 0;
}
#link .list li:nth-child(4n) {
	margin: 0 0 35px 0;
}
#link .list li > a {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 15px;
	line-height: 1.5;
	letter-spacing: 1px;
	font-weight: 500;
	text-align: center;
	text-decoration: none;
	color: var(--text-color);
	background-color: #ffffff;
	border: 1px solid #003770;
	border-radius: 5px;
	width: 100%;
	height: 85px;
}
#link .list li > a:hover {
	color: #ffffff;
	background-color: #003770;
	border: 1px solid #003770;
}
#link .more a {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 15px;
	line-height: 2;
	letter-spacing: 1px;
	font-weight: 500;
	text-decoration: none;
	color: var(--text-color);
	background-color: #ffffff;
	border: 1px solid #dddddd;
	border-radius: 5px;
	width: 160px;
	height: 55px;
	margin: 100px 0 0 auto;
	transition:all 0.3s ease;
}
#link .more a:hover {
	opacity: 0.5;
}
@media screen and (min-width:  0px) and (max-width:1020px) {
	#link .list li {
		width: 32%;
		margin: 0 2% 35px 0;
	}
	#link .list li:nth-child(4n) {
		margin: 0 2% 35px 0;
	}
	#link .list li:nth-child(3n) {
		margin: 0 0 35px 0;
	}
}
@media screen and (min-width:  0px) and (max-width: 767px) {
	#link .list li {
		width: 49%;
		margin: 0 2% 35px 0;
	}
	#link .list li:nth-child(4n) ,
	#link .list li:nth-child(3n) {
		margin: 0 2% 35px 0;
	}
	#link .list li:nth-child(2n) {
		margin: 0 0 35px 0;
	}
}
@media screen and (min-width:  0px) and (max-width: 575px) {
	#link .list {
		max-width: 300px;
		margin: 0 auto;
	}
	#link .list li {
		width: 100%;
		margin: 0 0 15px 0;
	}
	#link .list li:nth-child(4n) ,
	#link .list li:nth-child(3n) ,
	#link .list li:nth-child(2n) {
		margin: 0 0 15px 0;
	}
	#link .more a {
			margin: 100px auto 0 auto;
	}
}



/* sitemap */
#sitemap {
	background-color: #ffffff;
	padding: 75px 20px 125px 20px;
}
#sitemap .sitemap_wrap {
	width: 1000px;
	max-width: 100%;
	margin: 0 auto;
}
#sitemap .inner{
	display: flex;
	flex-wrap: wrap;
}
#sitemap ul {
	list-style-type: none;
	width: 25%;
	max-width: 100%;
}
#sitemap ul li {
	margin: 0 0 10px 0;
}
#sitemap ul li a {
	font-size: 18px;
	line-height: 2;
	letter-spacing: 1px;
	font-weight: 500;
	text-decoration: none;
	color: var(--text-color);
}
#sitemap ul li a.blank::after {
	content: '';
	display: inline-block;
	background-image: url(../../img/icon_blank.svg);
	background-size: auto;
	background-repeat: no-repeat;
	background-position: center center;
	width: 12px;
	height: 12px;
	margin-left: 5px;
}
#sitemap ul li a:hover {
	opacity: 0.5;
}
#sitemap ol {
	list-style-type: none;
	margin:  10px 0 30px 20px;
}
#sitemap ol li {
	margin: 0;
}
#sitemap ol li a {
	font-size: 15px;
	line-height: 2;
	letter-spacing: 1px;
	font-weight: 500;
	text-decoration: none;
	color: var(--text-color);
}
#sitemap ol li a.blank::after {
	content: '';
	display: inline-block;
	background-image: url(../../img/icon_blank.svg);
	background-size: auto;
	background-repeat: no-repeat;
	background-position: center center;
	width: 12px;
	height: 12px;
	margin-left: 5px;
}
#sitemap ol li a:hover {
	opacity: 0.5;
}
#sitemap .more a {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 15px;
	line-height: 2;
	letter-spacing: 1px;
	font-weight: 500;
	text-decoration: none;
	color: var(--text-color);
	background-color: #ffffff;
	border: 1px solid #dddddd;
	border-radius: 5px;
	width: 160px;
	height: 55px;
	margin: 100px 0 0 auto;
	transition:all 0.3s ease;
}
#sitemap .more a:hover {
	opacity: 0.5;
}
@media screen and (min-width:  0px) and (max-width:1020px) {
	#sitemap .inner{
		width: 500px;
		margin: 0 auto;
	}
	#sitemap ul {
		width: 50%;
	}
}
@media screen and (min-width:  0px) and (max-width: 575px) {
	#sitemap .inner{
		display: block;
		width: 300px;
		margin: 0 auto;
	}
	#sitemap ul {
		width: 100%;
	}
	#sitemap .more a {
		margin: 100px auto 0 auto;
	}
}



/* notfound */
#notfound {
	background-color: #ffffff;
	padding: 75px 20px 125px 20px;
}
#notfound .notfound_wrap {
	width: 1000px;
	max-width: 100%;
	margin: 0 auto;
}
#notfound .message > h3 {
	font-size: 22px;
	line-height: 1.2;
	letter-spacing: 4px;
	font-weight: 600;
	text-align: center;
	color: var(--text-color);
}
#notfound .message > p {
	font-size: 15px;
	line-height:2;
	letter-spacing:1px;
	font-weight: 400;
	text-align: center;
	color: var(--text-color);
	margin-top: 50px;
}
#notfound .message > a.more {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 15px;
	line-height: 2;
	letter-spacing: 1px;
	font-weight: 500;
	text-decoration: none;
	color: var(--text-color);
	background-color: #ffffff;
	border: 1px solid #dddddd;
	border-radius: 5px;
	width: 160px;
	height: 55px;
	margin: 40px auto 0 auto;
	transition:all 0.3s ease;
}
#notfound .message > a.more:hover {
	opacity: 0.5;
}
@media screen and (min-width:  0px) and (max-width: 575px) {
	#notfound .message > p {
		text-align: left;
	}
}

