@charset "UTF-8";
/*------------------------------------------------------------------
common
--------------------------------------------------------------------*/
html {
	font-size: 16px;
	color: #000;
	line-height: 1.6;
	overflow-y: scroll;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	word-spacing: normal;
}
body, input, button, textarea, select {
	font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	/*font-family: 'Noto Sans', 'Noto Sans CJK JP', 'Noto Sans CJK JP Subset', sans-serif;*/
	font-weight: 400;
}
/* IEだけに適応 */
/*_:lang(x)::-ms-backdrop, .selector {
	font-family: "Segoe UI", Meiryo, sans-serif;
}*/
img {
	max-width: 100%;
	height: auto;
}
.sp {
	display: none;
}
.pc {
	display: block;
}
.tab {
	display: none;
}
.common_container {
	overflow: hidden;
}
/*------------------------------------------------------------------
txt、box 汎用
--------------------------------------------------------------------*/
.common_inner {
	max-width: 1200px;
	width: 94%;
}
.common_inner02 {
	max-width: 980px;
	width: 94%;
}
.common_tx_c {
	text-align: center;
}
.common_flex {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
}
.common_en_01 {
	font-family: 'Roboto', sans-serif;
}
.common_txt01 {
	font-size: 16px;
	line-height: 2.0;
}
.common_txt01_center {
	font-size: 16px;
	line-height: 2.0;
	text-align: center;
}
.common_txt02 {
	font-size: 14px;
	letter-spacing: 0.03em;
	line-height: 1.8;
}
.common_ank {
	padding-top: 73px;
	margin-top: -73px;
}
.panel{
	display: none;
}
.panel.is-show{
	display: block;
}
/*------------------------------------------------------------------
title 汎用
--------------------------------------------------------------------*/
.common_ttl01 {
	text-align: center;
	padding-bottom: 25px;
	margin-bottom: 30px;
	position: relative;
}
.common_ttl01::before {
	border-bottom: 1px solid #ccc;
	position: absolute;
	bottom: 0;
	left: 50%;
	content: "";
	width: 125px;
	height: 1px;
	-webkit-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
}
.common_ttl01::after {
	border-bottom: 3px solid #1d569b;
	position: absolute;
	bottom: -2px;
	left: 50%;
	content: "";
	width: 45px;
	height: 3px;
	-webkit-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
}
.common_ttl01 .h2_ttl {
	font-size: 30px;
	font-weight: 700;
	letter-spacing: 0.05em;
}
.common_ttl01 .common_en_01 {
	color: #999999;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.05em;
}
/*------------------------------------------------------------------
btn 汎用
--------------------------------------------------------------------*/
.common_more_btn_s, .common_more_btn_m, .common_more_btn_m_l, .common_more_btn_l, .common_more_btn_xl, .common_bl_btn_s, .common_bl_btn_m, .common_bl_btn_m_l, .common_bl_btn_l, .common_bl_btn_xl, .common_wh_btn_l {
	width: 100%;
}
.common_more_btn_s a, .common_more_btn_m a, .common_more_btn_m_l a, .common_more_btn_l a, .common_more_btn_xl a, .common_bl_btn_s a, .common_bl_btn_m a, .common_bl_btn_m_l a, .common_bl_btn_l a, .common_bl_btn_xl a {
	text-decoration: none;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #FFF;
	position: relative;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	transition: 0.3s;
	width: 100%;
	height: 100%;
	overflow: hidden;
}
.common_wh_btn_l a {
	text-decoration: none;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #303c45;
	position: relative;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	transition: 0.3s;
	width: 100%;
	height: 100%;
	overflow: hidden;
}
.common_more_btn_s a, .common_more_btn_m a, .common_more_btn_m_l a, .common_more_btn_l a, .common_more_btn_xl a {
	background-color: #303c45;
}
.common_bl_btn_s a, .common_bl_btn_m a, .common_bl_btn_m_l a, .common_bl_btn_l a, .common_bl_btn_xl a {
	background-color: #1d569b;
}
.common_wh_btn_l a {
	background-color: #fff;
}
.common_more_btn_s a:hover::before, .common_more_btn_m a:hover::before, .common_more_btn_m_l a:hover::before, .common_more_btn_l a:hover::before, .common_more_btn_xl a:hover::before, .common_bl_btn_s a:hover::before, .common_bl_btn_m a:hover::before,.common_bl_btn_m_l a:hover::before, .common_bl_btn_l a:hover::before, .common_bl_btn_xl a:hover::before {
	position: absolute;
	top: 0;
	left: 0;
	content: "";
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.3);
	z-index: 1;
	transition: 0.3;
}
.common_more_btn_s a::after, .common_more_btn_m a::after, .common_more_btn_m_l a::after, .common_more_btn_l a::after, .common_more_btn_xl a::after, .common_bl_btn_s a::after, .common_bl_btn_m a::after, .common_bl_btn_m_l a::after, .common_bl_btn_l a::after, .common_bl_btn_xl a::after {
	width: 5px;
	height: 5px;
	border: 1.5px solid;
	border-color: #FFF #FFF transparent transparent;
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	right: 30px;
	content: "";
	margin-top: -5px;
	transition: 0.3s;
	z-index: 1;
}
.common_wh_btn_l a span::after {
	width: 5px;
	height: 5px;
	border: 1.5px solid;
	border-color: #303c45 #303c45 transparent transparent;
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	right: 0;
	content: "";
	margin-top: -5px;
	transition: 0.3s;
	z-index: 1;
}
.common_more_btn_s a:hover::after, .common_more_btn_m a:hover::after, .common_more_btn_m_l a:hover::after, .common_more_btn_l a:hover::after, .common_more_btn_xl a:hover::after, .common_bl_btn_s a:hover::after, .common_bl_btn_m a:hover::after, .common_bl_btn_m_l a:hover::after, .common_bl_btn_l a:hover::after, .common_bl_btn_xl a:hover::after {
	right: 25px;
	transition: 0.3s;
}
.common_wh_btn_l a:hover span::after {
	right: -5px;
}
.common_more_btn_s a span, .common_more_btn_m a span, .common_more_btn_m_l a span, .common_more_btn_l a span, .common_more_btn_xl a span, .common_bl_btn_s a span, .common_bl_btn_m a span, .common_bl_btn_m_l a span, .common_bl_btn_l a span, .common_bl_btn_xl a span, .common_wh_btn_l a span {
	position: relative;
	z-index: 2;
}
.common_wh_btn_l a span {
	padding-right: 20px;
}
.common_more_btn_s, .common_bl_btn_s {
	max-width: 190px;
	height: 40px;
}
.common_more_btn_s a, .common_bl_btn_s a {
	-moz-border-radius: 20px;
	-webkit-border-radius: 20px;
	-o-border-radius: 20px;
	-ms-border-radius: 20px;
	border-radius: 20px;
}
.common_more_btn_s a span, .common_bl_btn_s a span {
	font-size: 15px;
}
.common_more_btn_m, .common_bl_btn_m {
	max-width: 262px;
	height: 36px;
}
.common_more_btn_m a, .common_bl_btn_m a {
	-moz-border-radius: 18px;
	-webkit-border-radius: 18px;
	-o-border-radius: 18px;
	-ms-border-radius: 18px;
	border-radius: 18px;
}
.common_more_btn_m a span, .common_bl_btn_m a span {
	font-size: 14px;
}
.common_bl_btn_m_l {
	max-width: 420px;
	height: 45px;
}
.common_more_btn_m_l {
	max-width: 262px;
	height: 45px;
}
.common_more_btn_m_l a,.common_bl_btn_m_l a {
	-moz-border-radius: 23px;
	-webkit-border-radius: 23px;
	-o-border-radius: 23px;
	-ms-border-radius: 23px;
	border-radius: 23px;
}
.common_more_btn_m_l span,.common_bl_btn_m_l span {
	font-size: 16px;
}
.common_more_btn_l, .common_bl_btn_l {
	max-width: 280px;
	height: 55px;
}
.common_wh_btn_l {
	max-width: 280px;
	height: 50px;
}
.common_more_btn_l a, .common_bl_btn_l a {
	-moz-border-radius: 28px;
	-webkit-border-radius: 28px;
	-o-border-radius: 28px;
	-ms-border-radius: 28px;
	border-radius: 28px;	
}
.common_more_btn_l a span, .common_bl_btn_l a span {
	font-size: 18px;
}
.common_wh_btn_l a {
	-moz-border-radius: 25px;
	-webkit-border-radius: 25px;
	-o-border-radius: 25px;
	-ms-border-radius: 25px;
	border-radius: 25px;
}
.common_more_btn_xl, .common_bl_btn_xl {
	max-width: 400px;
	height: 70px;
}
.common_more_btn_xl a, .common_bl_btn_xl a {
	-moz-border-radius: 35px;
	-webkit-border-radius: 35px;
	-o-border-radius: 35px;
	-ms-border-radius: 35px;
	border-radius: 35px;
}
.common_more_btn_xl a span, .common_bl_btn_xl a span {
	font-size: 22px;
	font-weight: 700;
}
/*------------------------------------------------------------------
header
--------------------------------------------------------------------*/
.hd_sp {
	display: none;
}
.hd_pc {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	height: 73px;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 99;
	width: 100%;
	background-color: #fff;
}
.hd_block_01.bb_line .hd_pc {
	border-bottom: 1px solid #DDD;
}
.hd_logo {
	width: 185px;
	height: 38px;
	margin-left: 55px;
}
.hd_logo a {
	transition: 0.3s;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	color: #000;
	text-decoration: none;
}
.hd_pc .hd_logo a:hover {
	opacity: 0.7;
	transform: 0.3s;
}
.hd_logo a .hd_logo_name {
	font-size: 16px;
	font-weight: 500;
	margin-left: 15px;
	display: block;
}
.hd_pc_right {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
.hd_nav01 > ul {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}
.hd_nav01 > ul > li {
	margin-right: 50px;
}
.hd_nav01 ul li a {
	color: #000;
	text-decoration: none;
	font-size: 16px;
	letter-spacing: 0.05em;
	position: relative;
}
.hd_nav01 > ul > li > a::after, .hd_nav01 > ul > li span::after {
	position: absolute;	
	left: 0;
	content: '';
	width: 100%;
	height: 2px;
	background: #04287e;
	transform: scale(0, 1);
	transform-origin: left top;
	transition: transform .3s;
}
.hd_nav01 > ul > li > a::after{
	bottom:-10px;
}
.hd_nav01 > ul > li span::after {
	bottom: -5px;
}
.hd_nav01 > ul > li > a:hover::after, .hd_nav01 > ul > li.active > a::after, .hd_nav01 > ul > li span:hover::after {
	transform: scale(1, 1);
}
.menu_mega > span {
	display: block;
	cursor: pointer;
	padding-right: 20px;
	position: relative;
	/* font-weight:bold; */
}
.menu_mega > span::before {
	width: 7px;
	height: 7px;
	border: 1.5px solid;
	border-color: transparent #9b9b9b #9b9b9b transparent;
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	right: 0;
	content: "";
	margin-top: -7px;
	transition: 0.3s;
	z-index: 1;
}
.menu_mega > span:hover::before {
	transform: rotate(225deg);
	margin-top: 0;
}
.menu_mega div.menu_second_level {
	visibility: hidden;
	opacity: 0;
	padding: 40px 0;
	background: #f5f5f6;
	position: absolute;
	top: 63px;
	left: 0;
	width: 100%;
	-webkit-transition: all 0.2s ease;
	transition: all 0.2s ease;
	z-index: 0;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
}
.menu_mega:hover div.menu_second_level {
	top: 73px;
	visibility: visible;
	opacity: 1;
	z-index: 1;
}
.menu_mega div.menu_second_level .menu_inbox {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.menu_mega div.menu_second_level .menu_inbox .menu_title {
	width: 300px;
}
.menu_mega div.menu_second_level .menu_inbox .menu_title p {
	font-size: 24px;
	font-weight: 700;
	position: relative;
	padding-bottom: 10px;
}
.menu_mega div.menu_second_level .menu_inbox .menu_title p::after {
	border-bottom: 1px solid #1d569b;
	position: absolute;
	bottom: 0;
	left: 0%;
	content: "";
	width: 72px;
	height: 1px;
}
.menu_mega div.menu_second_level .menu_inbox ul {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	width: calc(100% - 300px);
}
.menu_mega div.menu_second_level .menu_inbox ul li {
	width: calc(100% / 3);
	margin-bottom: 15px;
}
.menu_mega div.menu_second_level .menu_inbox ul li a {
	font-size: 16px;
	position: relative;
	padding-left: 20px;
}
.menu_mega div.menu_second_level .menu_inbox ul li a::before {
	width: 5px;
	height: 5px;
	border: 1.5px solid;
	border-color: #1d569b #1d569b transparent transparent;
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	left: 0;
	content: "";
	margin-top: -3px;
	transition: 0.3s;
	z-index: 1;
}
.menu_mega div.menu_second_level .menu_inbox li a:hover {
	opacity: 0.7;
}
.hd_ct_document, .hd_ct_catalog, .hd_ct_contact {
	width: 110px;
	height: 73px;
}
.hd_ct_document, .hd_ct_catalog {
	margin-right: 1px;
}
.hd_ct_document a, .hd_ct_catalog a, .hd_ct_contact a {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	width: 100%;
	height: 100%;
	text-decoration: none;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	padding-top: 3px;
	transition: 0.3s;
	position: relative;
}
.hd_ct_document a {
	background-color: #1d569b;
}
.hd_ct_catalog a {
	background-color: #1d569b;
}
.hd_ct_contact a {
	background-color: #04287e;
}
.hd_ct_document a:hover::before, .hd_ct_catalog a:hover::before, .hd_ct_contact a:hover::before {
	position: absolute;
	top: 0;
	left: 0;
	content: "";
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.3);
	z-index: 1;
	transition: 0.3;
}
.hd_ct_document a span, .hd_ct_catalog a span, .hd_ct_contact a span {
	color: #FFF;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.1;
	display: block;
	text-align: center;
	position: relative;
	z-index: 2;
}
.hd_ct_document a span {
	background: url(../images/common/hd_ct01.png) no-repeat center top;
	padding-top: 36px;
}
.hd_ct_catalog a span {
	background: url(../images/common/hd_ct02.png) no-repeat center 2px;
	padding-top: 36px;
}
.hd_ct_contact a span {
	background: url(../images/common/hd_ct03.png) no-repeat center top;
	padding-top: 35px;
}

/* header 幅対応 */
@media (max-width: 1680px) {
.hd_nav01 > ul > li {
	margin-right: 30px;
}
}

@media (max-width: 1480px) {
.hd_logo {
	margin-left: 10px;
}
.hd_logo a {
	display: block;
	padding-top: 7px;
}
.hd_logo a .hd_logo_name {
	font-size: 14px;
}
.hd_nav01 > ul > li {
	margin-right: 20px;
}
.menu_mega div.menu_second_level .menu_inbox ul li a {
	font-size: 14px;
}
}

@media (max-width: 1280px) {
.hd_nav01 > ul > li a, .hd_nav01 > ul > li span {
	font-size: 14px;
}
.hd_ct_document, .hd_ct_catalog, .hd_ct_contact {
	width: 90px;
}
.hd_nav01 > ul > li {
	margin-right: 10px;
}
}

@media (max-width: 1023px) {
.hd_pc {
	display: none;
}
.hd_sp {
	display: block;
}
.hd_sp {
	width: 100%;
	height: 73px;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 99;
	background-color: #fff;
}
.hd_sp .common_flex {
	align-items: center;
	justify-content: space-between;
}
.hd_sp .hd_logo_sp {
	margin-left: 20px;
}
.hd_sp .hd_logo_sp a {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	align-items: center;
	text-decoration: none;
	color: #000;
}
.hd_sp .hd_logo_sp .hd_logo_sp_name {
	font-size: 12px;
	margin-left: 15px;
}
.hd_sp_right {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
}
.hd_ct_document_sp {
	margin-right: 1px;
}
.hd_ct_document_sp a, .hd_ct_catalog_sp a, .hd_ct_contact_sp a {
	text-decoration: none;
	height: 73px;
	width: 73px;
	display: block;
}
.hd_ct_catalog_sp {
	margin-right: 1px;
}
.nav_toggle {
	width: 73px;
	height: 73px;
	position: relative;
	z-index: 99;
	cursor: pointer;
}
.nav_toggle.active {
	background: url(../images/common/nav_toggle_close.png) no-repeat left top;
	background-size: 73px 73px;
	position: relative;
	z-index: 999;
	width: 73px;
	height: 73px;
}
.nav_toggle.active img {
	display: none;
}
nav.global_menu_sp {
	position: fixed;
	z-index: 999;
	top: 73px;
	left: 0;
	background: rgba(0,0,0,0.5);
	transform: translateY(-110%);
	transition: all 0.6s;
	width: 100%;
	height: 100%;
	display: none;
	overflow: scroll;
}
nav.global_menu_sp.db {
	display: block;
}
nav.global_menu_sp .global_menu_sp_list {
	background: #fff;
	margin: 0 auto;
	width: 100%;
	padding: 0 0 0 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
nav.global_menu_sp .global_menu_sp_list > ul > li {
	border-bottom: 1px solid #ddd;
}
nav.global_menu_sp .global_menu_sp_list > ul > li > a {
	display: block;
	background-color: #f5f5f6;
	color: #000;
	padding: 15px 35px 15px 15px;
	text-decoration: none;
	font-size: 15px;
	position: relative;
	letter-spacing: 0.05em;
}
nav.global_menu_sp .global_menu_sp_list > ul > li > a::after {
	width: 6px;
	height: 6px;
	border: 1px solid;
	border-color: #04287e #04287e transparent transparent;
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	right: 25px;
	content: "";
	margin-top: -3px;
	transition: 0.3s;
	z-index: 1;
}
nav.global_menu_sp .global_menu_sp_list > ul > li > .acctit {
	background-color: #f5f5f6;
	display: block;
	padding: 15px 35px 15px 15px;
	position: relative;
	cursor: pointer;
}
nav.global_menu_sp .global_menu_sp_list > ul > li > .acctit span {
	background: url(../images/common/global_menu_sp_plus.png) no-repeat left top;
	background-size: 12px 12px;
	position: absolute;
	top: 50%;
	right: 22px;
	content: "";
	width: 12px;
	height: 12px;
	margin-top: -6px;
}
nav.global_menu_sp .global_menu_sp_list > ul > li > .acctit.open {
	background-color: #04287e;
	color: #FFF;
}
nav.global_menu_sp .global_menu_sp_list > ul > li > .acctit.open span {
	background: url(../images/common/global_menu_sp_minus.png) no-repeat left top;
	background-size: 12px 2px;
	position: absolute;
	top: 50%;
	right: 20px;
	content: "";
	width: 12px;
	height: 2px;
	margin-top: -1px;
}
nav.global_menu_sp .global_menu_sp_list > ul > li .accct {
	display: none;
}
nav.global_menu_sp .global_menu_sp_list > ul > li .accct li:not(:last-child) {
	border-bottom: 1px solid #ddd;
}
nav.global_menu_sp .global_menu_sp_list > ul > li .accct li a {
	display: block;
	text-decoration: none;
	background-color: #fff;
	padding: 10px 35px 10px 43px;
	font-size: 14px;
	color: #000;
	background: url(../images/common/global_menu_sp_arrow.png) no-repeat 15px center;
	background-size: 18px 18px;
}
nav.global_menu_sp.active {
	transform: translateY(0%);
}
}
/*------------------------------------------------------------------
fotter
--------------------------------------------------------------------*/
.pagetop {
	position: fixed;
	right: 20px;
	bottom: 110px;
	z-index: 99;
}
.pagetop a {
	display: block;
	transition: 0.3s;
}
.pagetop a:hover {
	opacity: 0.7;
	transition: 0.3s;
}
.ft_ct {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
}
.ft_ct > div {
	width: calc((100% - 3px) / 3);
}
.ft_ct > div:not(:last-child) {
	margin-right: 1px;
}
.ft_ct > div a {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	align-items: center;
	text-decoration: none;
	height: 110px;
	position: relative;
	overflow: hidden;
}
.ft_ct > div span {
	color: #FFF;
	font-size: 20px;
	font-weight: 700;
	position: relative;
	z-index: 2;
}
.ft_ct > div a::after {
	position: absolute;
	bottom: 0;
	left: 0;
	content: "";
	width: 100%;
	height: 110px;
	transition: 0.3s;
}
.ft_ct .ft_ct_document a::after {
	background: url(../images/common/ft_ct_01.jpg) no-repeat center top;
	background-size: cover;
}
.ft_ct .ft_ct_catalog a::after {
	background: url(../images/common/ft_ct_02.jpg) no-repeat center top;
	background-size: cover;
}
.ft_ct .ft_ct_contact a::after {
	background: url(../images/common/ft_ct_03.jpg) no-repeat center top;
	background-size: cover;
}
.ft_ct a:hover::after {
	transition: 0.3s;
	-moz-transform: scale(1.2);
	-webkit-transform: scale(1.2);
	-ms-transform: scale(1.2);
	transform: scale(1.2);
}
.ft_ct a:hover::before {
	position: absolute;
	top: 0;
	left: 0;
	content: "";
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.3);
	z-index: 1;
	transition: 0.3;
}
footer a {
	transition: 0.3s;
}
footer a:hover {
	opacity: 0.7;
	transition: 0.3s;
}
.ft_block_01 {
	padding: 60px 0;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
}
.ft_block_01 .common_inner {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
}
.ft_block01_left01 {
	margin-bottom: 20px;
}
.ft_block01_left01 a {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	align-items: center;
	text-decoration: none;
	color: #000;
}
.ft_block01_left01 .ft_logo_name {
	padding-left: 20px;
	font-size: 16px;
	font-weight: 500;
	display: block;
}
footer .f_logo {
	margin-bottom: 20px;
}
footer .f_logo a {
	transition: 0.3s;
}
footer .f_logo a:hover {
	opacity: 0.7;
	transition: 0.3s;
}
footer .ft_block01_add {
	width: 360px;
	height: 125px;
	font-size: 14px;
	letter-spacing: 0.05em;
}
footer .ft_block01_right {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
}
.ft_block01_menu01 {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
}
.ft_block01_menu01 ul {
	margin-right: 50px;
}
.ft_block01_menu01 > ul > li:not(last-child) {
	margin-bottom: 15px;
}
.ft_block01_menu01 > ul > li > a {
	font-size: 16px;
	text-decoration: none;
	color: #000;
	position: relative;
	padding-left: 23px;
	font-weight: 500;
}
.ft_block01_menu01 > ul > li > ul {
	margin-top: 5px;
}
.ft_block01_menu01 > ul > li > ul > li:not(last-child) {
	margin-left: 23px;
}
.ft_block01_menu01 > ul > li > ul > li > a {
	font-size: 14px;
	text-decoration: none;
	color: #000;
}
.ft_block01_menu01 > ul > li > a::before {
	border-top: 1px solid #04287e;
	width: 13px;
	height: 1px;
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
}
.ft_block01_outlink01 {
	width: 190px;
}
.ft_block01_outlink01 a {
	text-decoration: none;
	color: #000;
}
.ft_block01_outlink01 a span {
	font-size: 14px;
	display: inline-block;
	margin-top: 5px;
	background: url(../images/common/icon_outlink.png) no-repeat right center;
	padding-right: 24px;
}
.ft_block_02 {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	border-top: 1px solid #ddd;
	padding: 20px 0;
}
.ft_block_02 .common_inner {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
}
.ft_block_02 .ft_block02_left ul {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
}
.ft_block_02 .ft_block02_left ul li:not(:last-child) {
	margin-right: 20px;
}
.ft_block_02 .ft_block02_left ul li a {
	text-decoration: none;
	font-size: 14px;
	color: #000;
}
.ft_block_02 .ft_block02_right address {
	font-size: 12px;
}

/* fotter 幅対応 */
@media (max-width: 1280px) {
.ft_block01_menu01 ul {
	margin-right: 10px;
}
.ft_block01_menu01 > ul > li > a {
	font-size: 15px;
}
.ft_block01_left01 a {
	display: block;
}
.ft_block01_left01 .ft_logo_name {
	padding-left: 10px;
	font-size: 14px;
}
}

@media (max-width: 1023px) {
.ft_block01_menu01 {
	display: none;
}
}
/*------------------------------------------------------------------
top
--------------------------------------------------------------------*/
/* top main*/
.top_main_bg {
	padding-top: 73px;
}
.top_slider_img {
	height: 400px;
}
.top_slider_img.slide01 {
	background: url(../images/top/top_mainimg01.jpg) no-repeat 80% top;
	background-size: cover;
}
.top_slider_img.slide02 {
	background: url(../images/top/top_mainimg02.jpg) no-repeat 80% top;
	background-size: cover;
}
.top_slider_img.slide03 {
	background: url(../images/top/top_mainimg04.jpg) no-repeat 80% top;
	background-size: cover;
}
.top_slider_img .common_inner {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	height: 400px;
	margin: 0 auto;
}
.top_slider_img a{
	text-decoration: none;
	color:#000;
}
.top_main_catch .common_en_01 {
	color: #1d569b;
	border-bottom: 1px solid #1d569b;
	font-size: 1.4vw;
	font-weight: 700;
	display: inline-block;
	margin-bottom: 20px;
	padding-bottom: 5px;
}
.top_main_catch .top_main_catch01 {
	font-size: 2.1vw;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0.05em;
	margin-bottom: 20px;
}
.top_main_catch .top_main_catch02 {
	font-size: 0.95vw;
	font-weight: 500;
	line-height: 1.8;
	letter-spacing: 0.05em;
}
.top_slider .slick-dots {
	bottom: 15px;
}
.top_slider.slick-dotted.slick-slider {
	margin-bottom: 0;
}
.top_slider .slick-dots li button:before {
	font-size: 12px;
	opacity: 1;
	color: #f5f5f6;
}
.slick-dots li.slick-active button:before {
	opacity: 1;
	color: #1d569b;
}
/* top news*/
.top_news_bg {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	background-color: #f5f5f6;
	padding: 15px 0;
}
.top_news_bg .common_inner {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.top_news_bg ul li a {
	text-decoration: none;
}
.top_news_bg ul li a .common_en_01 {
	color: #888888;
	font-size: 16px;
	margin-right: 25px;
}
.top_news_bg ul li a .top_news_ttl {
	color: #000;
	font-size: 15px;
	letter-spacing: 0.05em;
}
/* top product*/
.top_content01_bg {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	padding: 65px 0 35px 0;
	text-align: center;
}
.top_content01_inner {
	width: calc(100% - 40px);
}
.top_content01_box {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin-top: 30px;
}
.top_content01_box_in {
	width: calc((100% - 41px) / 3);
	border: 1px solid #DDD;
	margin-bottom: 20px;
	background-color: #fff;
}
.top_content01_box_in:not(:nth-child(3n+0)) {
	margin-right: 20px;
}
.top_content01_box_in::last-child {
	margin-right: 0;
}
.top_content01_box_in figure {
	padding: 25px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	align-items: center;
}
.top_content01_box_in .top_content01_box_disc {
	background-color: #f5f5f6;
	padding: 20px 20px;
}
.top_content01_box_in .top_content01_box_ttl {
	font-size: 24px;
	font-weight: 700;
	position: relative;
	padding-bottom: 15px;
	margin-bottom: 15px;
}
.top_content01_box_in .top_content01_box_ttl::after {
	border-bottom: 1px solid #1d569b;
	position: absolute;
	bottom: 0;
	left: 50%;
	content: "";
	width: 72px;
	height: 1px;
	-webkit-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
}
.top_content01_box_in .common_flex {
	margin-top: 15px;
	justify-content: center;
}
.top_content01_box_in .common_flex > div {
	width: calc(50% - 5px);
	min-width: 200px;
}
.top_content01_box_in .common_flex > div a {
	padding-right: 20px;
}
.top_content01_box_in .common_flex > div:first-child {
	margin-right: 10px;
}

@media (max-width: 1480px) {
.top_content01_box_in .common_flex > div:first-child {
	margin: 0 0 10px 0;
}
.top_content01_box_in .common_flex > div a::after {
	right: 20px;
}
.top_content01_box_in .common_flex > div a:hover::after {
	right: 15px;
}
}
/* top link*/
.top_content02_bg {
	padding-bottom: 15px;
}
.top_content02_box {
	text-align: center;
	padding: 75px 0 80px 0;
	margin-bottom: 45px;
}
.top_content02_box .common_ttl01 .h2_ttl, .top_content02_box .common_txt01 {
	color: #FFF;
}
.top_content02_box .common_wh_btn_l {
	margin: 20px auto 0 auto;
}
.top_content02_box.box01 {
	background: url(../images/top/top_content02_img01.jpg) no-repeat center top;
	background-size: cover;
}
.top_content02_box.box02 {
	background: url(../images/top/top_content02_img02.jpg) no-repeat center top;
	background-size: cover;
}
.top_content02_box.box03 {
	background: url(../images/top/top_content02_img03.jpg) no-repeat center top;
	background-size: cover;
}

/*------------------------------------------------------------------
sub 共通
--------------------------------------------------------------------*/
.common_sub_main_bg {
	margin-top: 73px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 400px;
	background: url(../images/custom_existingfacility/custom_existingfacility_mainimg.jpg) no-repeat 80% bottom;
    background-size: cover;
}
.common_sub_main_ttl {
	font-size: 42px;
	line-height: 1.3;
	font-weight: 700;
	letter-spacing: 0.05em;
}
.common_sub_main_txt {
	font-size: 18px;
	font-weight: 300;
	letter-spacing: 0.05em;
	line-height: 1.5;
	margin-top: 10px;
}
.common_sub_main_box {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
.common_sub_main_box .common_inner {
	margin-right: -42px;
}
.common_sub_main_left {
	width: 47.5%;
}
.common_sub_main_right {
	width: 52.5%;
}
.common_sub_main_box .common_flex {
	justify-content: space-between;
	margin-top: 30px;
}
.common_sub_main_bg .common_flex.sp {
	display: none;
}
.common_sub_main_box .common_flex .common_more_btn_l, .common_sub_main_box .common_flex .common_bl_btn_l {
	max-width: 49%;
}

@media (max-width: 1280px) {
.common_sub_main_box .common_flex .common_more_btn_l a, .common_sub_main_box .common_flex .common_bl_btn_l a {
	padding-right: 20px;
}
.common_sub_main_box .common_flex .common_more_btn_l a span, .common_sub_main_box .common_flex .common_bl_btn_l a span {
	font-size: 16px;
}
}

@media (max-width: 1023px) {
.common_sub_main_ttl {
	font-size: 38px;
}
.common_sub_main_txt {
	font-size: 16px;
}
.common_sub_main_box .common_flex .common_more_btn_l a, .common_sub_main_box .common_flex .common_bl_btn_l a {
	padding-right: 0;
}
.common_sub_main_box .common_flex .common_more_btn_l a span, .common_sub_main_box .common_flex .common_bl_btn_l a span {
	font-size: 14px;
}	
.common_sub_main_box .common_flex .common_more_btn_l a::after, .common_sub_main_box .common_flex .common_bl_btn_l a::after {
	display: none;
}
}

/*ぱんくず*/
.common_bread{
	padding: 15px 0;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
}
.common_bread ul{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
}
.common_bread li{
	font-size: 14px;
	letter-spacing: 0.05em;
	position: relative;	
}
.common_bread li:not(:first-child){
	padding-left: 20px;	
}
.common_bread li:not(:last-child){
	margin-right: 10px;
}
.common_bread li:not(:first-child)::before{
	width: 5px;
    height: 5px;
    border: 1.5px solid;
    border-color: #303c45 #303c45 transparent transparent;
    transform: rotate(45deg);
    position: absolute;
    top: 7px;
    left: 0;
    content: "";
    transition: 0.3s;
    z-index: 1;
}
.common_bread a{
	color:#114696;
	text-decoration: none;
	font-size: 14px;
	letter-spacing: 0.05em;
}
.useful_page_bread{
	margin-top: 73px;
}

.common_sub_content01_bg{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	padding: 60px 0;
}
/*------------------------------------------------------------------
xray 共通
--------------------------------------------------------------------*/
.common_xray_content01_bg {
	padding: 60px 0;
	background-color: #f5f5f6;
	width: 100%;
}
.common_xray_content01_inner {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	padding: 0 60px;
	width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.common_xray_content01_inner.second{
	justify-content: flex-start;
	margin-top: 60px;
}
.common_xray_content01_box {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	width: 100%;
	max-width: 1490px;
	align-items: flex-end;
	min-height: 480px;
	margin-top: 25px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.common_xray_content01_box_left {
	max-width: 650px;
	width: 43.3%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	position: relative;
	z-index: 1;
}
.common_xray_content01_box_left .common_xray_content01_disc {
	background-color: #fff;
	padding: 50px 50px 85px 50px;
	min-height: 350px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.common_xray_content01_box_left .common_en_01 {
	font-size: 80px;
	font-weight: 500;
	letter-spacing: 0.05em;
	color: rgba(153,153,153,0.35);
	text-align: right;
	display: block;
	margin-bottom: 10px;
}
.common_xray_content01_inner.second .common_xray_content01_box_left .common_en_01{
	text-align: left;
}
.common_xray_content01_img {
	max-width: 940px;
	width: 62.6%;
	margin-bottom: 30px;
	margin-left: -5.9%;	
	height: 450px;
}
.common_xray_content01_inner.second .common_xray_content01_img{
	margin-left: 0;
	margin-right: -5.9%;	
}
.common_xray_content01_disc_ttl {
	font-size: 24px;
	letter-spacing: 0.05em;
	font-weight: 700;
	position: relative;
	padding-bottom: 10px;
	margin-bottom: 20px;
}
.common_xray_content01_disc_ttl::after {
	border-bottom: 1px solid #1d569b;
	position: absolute;
	bottom: 0;
	left: 0;
	content: "";
	width: 72px;
	height: 1px;
}

@media (max-width: 1480px) {
.common_xray_content01_box_left .varios_content01_disc {
	background-color: #fff;
	padding: 40px;
}
.common_xray_content01_box_left .common_en_01 {
	font-size: 64px;
	margin-bottom: 0;
	line-height: 1.0;
    padding-top: 15px;
}
.common_xray_content01_disc_ttl {
	font-size: 22px;
	margin-bottom: 15px;
}
}

@media (max-width: 1180px) {
.common_xray_content01_box {
	margin-top: 0;
}
}

@media (max-width: 1023px) {
.common_xray_content01_box_left {
	max-width: inherit;
	width: 92.6%;
	margin-right: 7.4%;
	order: 0;
}
.common_xray_content01_inner.second .common_xray_content01_img {
    margin-right: 0;
}
.common_xray_content01_img {
	max-width: inherit;
	width: 92.6%;
	height: 400px;
	order: 1;
	position: relative;
    z-index: 2;
}
.common_xray_content01_disc {
	margin: -50px 0;
}
}
.common_xray_content02_bg {
	padding: 70px 0 60px 0;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
}
.common_xray_content02_bg .common_ttl01{
	margin-bottom: 50px;
}
.common_xray_content02_box{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.common_xray_content02_box_in{
	width: calc((100% - 80px) / 3);
}
.common_xray_content02_box_txt{
	font-size: 18px;
	margin: 10px 0 0 0;
	text-align: center;
}
@media (max-width: 1023px) {
.common_xray_content02_box_txt {
    font-size: 16px;
}
}
.common_xray_content03_bg {
	padding: 50px 0 60px 0;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	background-color: #04287e;
}
.common_xray_content03_txt{
	font-size: 18px;
	font-weight: 700;
	color:#FFF;
	letter-spacing: 0.05em;
	text-align: center;
	line-height: 2.0;
}
.common_xray_content03_box{
	background-color: #fff;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	padding: 30px 0;
	-moz-border-radius:5px;
	-webkit-border-radius:5px;
	-o-border-radius:5px;
	-ms-border-radius:5px;
	border-radius:5px;
	max-width: 920px;
	margin: 25px auto 0 auto;
}
.common_xray_content03_box .common_bl_btn_xl{
	margin-right: 20px;
}
@media (max-width: 880px) {
.common_xray_content03_box .common_bl_btn_xl{
	margin: 0 0 20px 0;
}
}
.common_xray_content04_bg {
	padding: 60px 0 50px 0;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
}
.common_xray_content04_box{
	margin: 50px 0;
}
.common_xray_content04_box .common_flex{
	justify-content: space-between;
}
.common_xray_content04_ttl{
	font-size: 24px;
	letter-spacing: 0.05em;
	position: relative;
	padding-left: 35px;
	margin-bottom: 10px;
}
.common_xray_content04_ttl::before{
	border-top: 3px solid #1d569b;
	position: absolute;
	left:0;
	top:50%;
	width: 25px;
	height: 3px;
	content: "";
	margin-top: -1px;
}
.common_xray_content04_left{
	width:calc(50% - 25px);
}
.common_xray_content04_right{
	width:calc(50% - 25px);
}
.common_xray_content04_tbl table{
	width: 100%;
}
.common_xray_content04_tbl + .common_xray_content04_ttl{
	margin-top: 20px;
}
.common_xray_content04_tbl table th{
	border: 1px solid #DDD;
	background-color: #f0f5f5;
	font-size: 16px;
	padding: 20px 30px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;	
	vertical-align: top;
}
.common_xray_content04_tbl table th.th01{
	width: 220px;
}
.common_xray_content04_tbl table th.th02{
	width: calc(100% / 3);
}
.common_xray_content04_tbl table td{
	border: 1px solid #DDD;
	font-size: 16px;
	padding: 0 30px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.common_xray_content04_tbl table span{
	font-size: 14px;
}
.common_xray_content04_tbl table span.ml01{
	margin-left: 20px;
}
.common_xray_content04_tbl table td.td01{
	width: 220px;
}
.common_xray_content04_tbl table td.td02{
	width: calc(100% / 3);
}
.common_xray_content04_tbl table td.td03{
	width: calc((100% / 3) * 2);
}
.common_xray_content04_arrow a{
	background-color: #303c45;
	-moz-border-radius:5px;
	-webkit-border-radius:5px;
	-o-border-radius:5px;
	-ms-border-radius:5px;
	border-radius:5px;
	height: 70px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	align-items: center;
	color:#FFF;
	font-size: 22px;
	font-weight: 700;
	position: relative;
	margin-bottom: 70px;
  text-decoration: none;
}
.common_xray_content04_arrow a::after{
	/*background: url(../images/common/icon_under_arrow.png) no-repeat center bottom;*/
	background: no-repeat center bottom;
	position: absolute;
	bottom: -70px;
	left: 50%;
	content: "";
	width: 89px;
	height: 50px;
	margin-left: -45px;
}
/*------------------------------------------------------------------
xray
--------------------------------------------------------------------*/
.common_sub_main_bg.xray_main{
	background: none;
}
.xray_main .common_sub_main_right{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.common_xray_content01_img.xray_img01{
	background: #FFF;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	padding: 0 100px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.common_xray_content01_img.xray_img02{
	background: #FFF;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	padding: 0 100px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.common_xray_content01_img.xray_img02 img{
	max-height: 395px;
	width: auto;
	max-width: inherit;
}
@media (max-width: 1480px){
.common_xray_content01_img.xray_img01,.common_xray_content01_img.xray_img02 {
    padding:  0 6.2%;
}
.common_xray_content01_inner.second .xray_left02 .common_en_01 {
    font-size: 54px;
}
.common_xray_content01_img.xray_img02 img {
    max-height: 320px;
}
}
/*------------------------------------------------------------------
twod_ct
--------------------------------------------------------------------*/
.common_sub_main_bg.twod_ct_main{
	background: none;
}
.twod_ct_main .common_sub_main_right{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.common_xray_content01_img.twod_ct_img01{
	background: #000;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	padding: 0 50px 0 120px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.common_xray_content01_img.twod_ct_img02{
	background: #000;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
@media (max-width: 1480px){
.common_xray_content01_img.twod_ct_img01 {
    padding: 0 3.1% 0 8%;
}
}
/*------------------------------------------------------------------
varios
--------------------------------------------------------------------*/
.common_sub_main_bg.varios_main{
	background: none;
}
.varios_main .common_inner {
	margin-right: -42px;
}
.common_xray_content01_img.varios_img01{
	background: url(../images/varios/varios_img01.jpg) no-repeat right top;
	background-size: cover;
}
.varios_original_box {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-bottom: 70px;
}
.varios_original_box_left {
	width: calc(50% - 30px);
}
.varios_original_box_left .common_bl_btn_l {
	margin: 15px auto 0 auto;
}
.varios_original_box_ttl {
	font-size: 24px;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-align: center;
	position: relative;
	padding-bottom: 15px;
	margin-bottom: 20px;
	margin-top: 30px;
}
.varios_original_box_ttl::after {
	border-bottom: 1px solid #1d569b;
	position: absolute;
	bottom: 0;
	left: 50%;
	content: "";
	width: 72px;
	height: 1px;
	margin-left: -36px;
}
.varios_original_box_right {
	width: calc(50% - 30px);
}
.varios_original_box_ttl02 {
	margin-top: 20px;
	border: 3px solid #1d569b;
	background-color: #fff;
	color: #1d569b;
	-moz-border-radius: 30px;
	-webkit-border-radius: 30px;
	-o-border-radius: 30px;
	-ms-border-radius: 30px;
	border-radius: 30px;
	height: 60px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 24px;
	font-weight: 700;
	letter-spacing: 0.05em;
	position: relative;
	margin-bottom: 30px;
}
.varios_original_box_ttl02::after {
	position: absolute;
	bottom: -14px;
	left: 50%;
	content: "";
	width: 0;
	height: 0;
	border-left: 7px solid transparent;
	border-right: 7px solid transparent;
	border-top: 11px solid #1d569b;
	margin-left: -6px;
}
.varios_original_box_right_movie {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
}
.varios_original_box_right_movie iframe {
	border: none;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.varios_original_box_list li {
	background: url(../images/common/icon_check.png) no-repeat left top;
	min-height: 34px;
	font-size: 20px;
	font-weight: 700;
	padding-left: 52px;
	line-height: 34px;
	margin-bottom: 20px;
}
.varios_original_box_ttl03 {
	font-size: 28px;
	font-weight: 700;
	letter-spacing: 0.05em;
	display: table;
	border-bottom: 3px solid #1d569b;
	position: relative;
	margin: 0 auto 40px auto;
}
.varios_original_box_ttl03::after {
	position: absolute;
	bottom: -14px;
	left: 50%;
	content: "";
	width: 0;
	height: 0;
	border-left: 7px solid transparent;
	border-right: 7px solid transparent;
	border-top: 11px solid #1d569b;
	margin-left: -6px;
}
@media (max-width: 1023px) {
.varios_original_box_ttl {
    font-size: 18px;
}
.varios_original_box_ttl02 {
    font-size: 20px;
	height: 50px;
}
.varios_original_box_ttl03 {
    font-size: 24px;
}
.varios_original_box_list li {
    font-size: 18px;
}
}
/*------------------------------------------------------------------
excillum
--------------------------------------------------------------------*/
/*背景*/
.excillum_main {
	background: url(../images/excillum/excillum_mainimg.webp) no-repeat right bottom;
	background-size: cover;
}
@media (max-width: 1480px){
	.excillum_main {
		background: url(../images/excillum/excillum_mainimg.webp) no-repeat 60% bottom;
		background-size: cover;
	}
}
.excillum_main .common_sub_main_right {
	display: none;
}
.excillum_content_defo_bg {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	padding: 60px 0 30px 0;
}
.excillum_content_defo_bg  .common_txt01{
	margin-bottom: 50px;
}
.excillum_content_defo_bg  .common_txt01_center{
	margin-bottom: 50px;
}
.excillum_content_defo_bg  .common_txt02{
	text-align: left;
	margin-bottom: 50px;
}
.excillum_content_faq_bg {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	padding: 60px 0 30px 0;
}

/*チェックボックス付きコンテンツ*/
.excillum_content01_box{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 45px;
	margin-bottom: 25px;
    gap: 40px 0px;
}
.excillum_content01_box_in{
	width: calc((100% - 20px) / 2);
	position: relative;
	background-color: #f5f5f6;
}
.excillum_content01_box_in .common_en_01{
	font-size: 70px;
	font-weight: 500;
	color:rgba(4,40,126,0.5);
	position: absolute;
	left:25px;
	top:-30px;
	line-height: 1.0;
}
.excillum_content01_disc{
	background-color: #f5f5f6;
	padding: 30px 20px 10px 20px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 135px;
}
.excillum_content01_txt{
	background: url(../images/common/icon_check.png) no-repeat left top;
	min-height: 34px;
	line-height: 34px;
	font-size: 20px;
	font-weight: 700;
	padding: 0 0 0 50px;
}
.excillum_content01_supple{
        padding: 0 20px 30px 30px;
}
.excillum_content01_supple p{
	font-size: 14px;
}

/*製品仕様*/
.excillum_spec_container{
	display:flex;
	gap:50px;
	align-items:flex-start;
	flex-wrap:wrap;
	margin-bottom: 25px;
}
.excillum_spec_image{
	flex:0;
	min-width:280px;
}
.excillum_spec_image img{
	border-radius:8px;
}
.excillum_credit{
	font-size:12px;
	color:#777;
	text-align: center;
	margin-top:6px;
}
.excillum_spec_info{
	flex:1;
	min-width:320px;
}
.excillum_spec_item{
	background:white;
	border-radius:10px;
	box-shadow:0 8px 20px rgba(0,0,0,0.08);
	padding:22px;
	margin-bottom:20px;
	transition:0.3s;
}
.excillum_spec_item_ttl{
	color:#1d569b;
	margin-bottom:10px;
}
.excillum_spec_item ul{
	padding-left:18px;
	line-height:1.7;
}

/*導入ケースカード*/
.excillum_case_card{
	margin-top: 50px;
	margin-bottom: 50px;
	position: relative;
}
.excillum_case_card_in{
	background:white;
	border-radius:10px;
	box-shadow:0 8px 25px rgba(0,0,0,0.08);
	overflow:hidden;
}
.excillum_case_card .common_en_01{
	font-size: 40px;
	font-weight: 500;
	color:rgba(4,40,126,0.5);
	position: absolute;
	left:25px;
	top:-20px;
	line-height: 1.0;
}
.excillum_case_header{
	background:#f5f5f6;
	padding:25px 30px;
}
.excillum_case_header_ttl{
	display:inline;
	font-size: 20px;
	margin-left:40px;
}
.excillum_case_content{
	display:flex;
	flex-wrap:wrap;
	padding:30px;
	gap:40px;
	align-items:flex-start;
}
.excillum_case_image{
	flex:0 0 280px;
}
.excillum_case_image img{
	width:100%;
	height:auto;
	border-radius:6px;
}
.excillum_credit{
	font-size:12px;
	text-align: center;
	color:#777;
	margin-top:5px;
}
.excillum_case_text{
	flex:1;
	min-width:280px;
}
.excillum_case_item{
	margin-bottom:25px;
}
.excillum_case_item_ttl{
	font-size:18px;
	color:#1d569b;
	margin-bottom:8px;
	border-left:4px solid #1d569b;
	padding-left:10px;
}
/*------------------------------------------------------------------
plant
--------------------------------------------------------------------*/
.plant_main {
	background: url(../images/plant/plant_mainimg.jpg) no-repeat right bottom;
	background-size: cover;
}
@media (max-width: 1480px){
.robot_main {
	background: url(../images/plant/plant_mainimg.jpg) no-repeat 60% bottom;
	background-size: cover;
}
}
.plant_main .common_sub_main_right {
	display: none;
}
.plant_original_content01_bg{
	padding: 60px 0 70px 0;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
}
.plant_original_content01_inner {
    width: calc(100% - 40px);
}
.plant_original_content01_box {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin-top: 40px;
}
.plant_original_content01_box_in {
	width: calc((100% - 41px) / 3);
	background-color: #f5f5f6;
}
.plant_original_content01_box_in:nth-child(1), .plant_original_content01_box_in:nth-child(2) {
	margin-right: 20px;
}
.plant_original_content01_box_in .plant_original_content01_disc {
    padding: 20px 50px 30px 50px;
}
.plant_original_content01_ttl{
	font-size: 24px;
	font-weight: 700;
	text-align: center;
	position: relative;
	padding-bottom: 10px;
	margin-bottom: 15px;
	line-height: 1.4;
}
.plant_original_content01_ttl::after{
	border-bottom: 1px solid #1d569b;
	position: absolute;
	left:50%;
	bottom:0;
	height: 1px;
	width: 72px;
	content: "";
	margin-left: -36px;
}
.plant_original_content01_box_in .common_bl_btn_m_l{
	margin: 15px auto 0 auto;
}
.common_xray_content01_img.plant_img01{
	background: url(../images/plant/plant_img04.jpg) no-repeat right top;
	background-size: cover;
}
.common_xray_content01_img.plant_img02{
	background: url(../images/plant/plant_img05.jpg) no-repeat left top;
	background-size: cover;
}
@media (max-width: 1480px){
.common_xray_content01_inner .plant_left01 .common_en_01,.common_xray_content01_inner .plant_left02 .common_en_01 {
    font-size: 54px;
}
.plant_original_content01_box_in .common_bl_btn_m_l a span{
	font-size: 14px;
}
}
@media (max-width: 1023px){
.plant_original_content01_box_in .plant_original_content01_disc {
    padding: 20px 20px 30px 20px;
}
.plant_original_content01_ttl{
	font-size: 20px;
}
.plant_original_content01_box_in .common_bl_btn_m_l a::after{
	display: none;
}
}
/*------------------------------------------------------------------
robot
--------------------------------------------------------------------*/
.robot_main {
	background: url(../images/robot/robot_mainimg.jpg) no-repeat right bottom;
	background-size: cover;
}
@media (max-width: 1480px){
.robot_main {
	background: url(../images/robot/robot_mainimg.jpg) no-repeat 60% bottom;
	background-size: cover;
}
}
.robot_main .common_sub_main_right {
	display: none;
}
.common_xray_content01_img.robot_img01{
	background: url(../images/robot/robot_img01.png) no-repeat right top;
	background-size: cover;
}
.common_xray_content01_img.robot_img02{
	background: url(../images/robot/robot_img02.jpg) no-repeat right top;
	background-size: cover;
}
.robot_original_box{
	text-align: center;
}
.robot_original_box .robot_original_box_img{
	margin-bottom: 20px;
}
/*------------------------------------------------------------------
contract_inspection
--------------------------------------------------------------------*/
.contract_inspection_main {
	background: url(../images/contract_inspection/contract_inspection_mainimg.jpg) no-repeat right bottom;
	background-size: cover;
}
@media (max-width: 1480px){
.contract_inspection_main {
	background: url(../images/contract_inspection/contract_inspection_mainimg.jpg) no-repeat 80% bottom;
	background-size: cover;
}
}
.contract_inspection_main .common_sub_main_right {
	display: none;
}
.contract_inspection_content01_bg{
	padding: 60px 0 70px 0;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
}
.contract_inspection_content01_inner {
    width: calc(100% - 40px);
}
.contract_inspection_content01_box {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin-top: 40px;
}
.contract_inspection_content01_box_in {
	width: calc((100% - 41px) / 3);	
	text-align: center;
	background-color: #f5f5f6;
}
.contract_inspection_content01_box_in:nth-child(1), .contract_inspection_content01_box_in:nth-child(2) {
	margin-right: 20px;
}
.contract_inspection_content01_txt{
	font-size: 22px;
	font-weight: 500;
	padding: 30px 0;
	text-align: center;	
}
.contract_inspection_remarks_txt{
	font-size: 12px;
	font-weight: 100;
	/* padding: 5px 0;  */
	padding-bottom:30px;
	text-align: center;	
}
.contract_inspection_content02_bg{
	padding: 60px 0 70px 0;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
}
.contract_inspection_content02_box{
	margin-top: 50px;
}
.contract_inspection_content02_box_list{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.contract_inspection_content02_box_list li{
	width: calc((100% - 100px) / 3);
	text-align: center;
	cursor: pointer;
	opacity: 0.55;
}
.contract_inspection_content02_box_list li.is-active{
	opacity: 1;
}
.contract_inspection_content02_box_list + .common_txt02{
	text-align: left;
	margin-top: 20px;
}
.contract_inspection_content02_box_tbl{
	position: relative;
	margin-top: 20px;
}
.contract_inspection_content02_box_tbl::before{
	position: absolute;
	content: "";	
	top:-15px;
	border-right: 10px solid transparent;
	border-bottom: 15px solid #1d569b;
	border-left: 10px solid transparent;
}
.contract_inspection_content02_box_ct .panel:nth-child(1) .contract_inspection_content02_box_tbl::before{
	left:11%;
}
.contract_inspection_content02_box_ct .panel:nth-child(2) .contract_inspection_content02_box_tbl::before{
	left:45%;
}
.contract_inspection_content02_box_ct .panel:nth-child(3) .contract_inspection_content02_box_tbl::before{
	left:80%;
}
.contract_inspection_content02_box_tbl table{
	width: 100%;
}
.contract_inspection_content02_box_tbl table thead th{
	background-color: #1d569b;
	color:#FFF;
	font-size: 16px;
	font-weight: 700;
	padding: 20px 40px;
	width: 250px;
	border-right: 1px solid #dddddd;
	vertical-align: top;
}
.contract_inspection_content02_box_tbl table thead td{
	background-color: #1d569b;
	color:#FFF;
	font-size: 16px;
	font-weight: 700;
	padding: 20px 40px;
}
.contract_inspection_content02_box_tbl table tbody th{
	background-color: #f0f5f5;
	width: 250px;
	border-right: 1px solid #dddddd;
	border-bottom: 1px solid #dddddd;
	font-size: 16px;
	font-weight: 700;
	padding: 20px 40px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	vertical-align: top;
}
.contract_inspection_content02_box_tbl table tbody td{
	border-right: 1px solid #dddddd;
	border-bottom: 1px solid #dddddd;
	font-size: 16px;
	font-weight: 700;
	padding: 20px 40px;
	width: calc(100% - 250px);
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
/*------------------------------------------------------------------
feature
--------------------------------------------------------------------*/
.feature_main {
	align-items: center;
	background: url(../images/feature/feature_mainimg.jpg) no-repeat 90% bottom;
	background-size: cover;
}
.feature_content01_bg {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	padding: 60px 0 0 0;
}
.feature_content01_bg  .common_txt01{
	text-align: center;
	margin-bottom: 50px;
}
.feature_content01_flow{
	position: relative;
	margin-bottom: 150px;
}
.feature_content01_flow::before{
	background-color: #1d569b;
	width: 150px;
	height: 100%;
	position: absolute;
	top: 60px;
	left: 50%;
	content: "";
	margin-left: -75px;
}
.feature_content01_flow::after{
	position: absolute;
	content: "";	
	left:50%;
	botom:-60px;
	border-right: 230px solid transparent;
	border-top: 90px solid #1d569b;
	border-left: 230px solid transparent;
	margin-left: -230px;
}
.feature_content01_sec01,.feature_content01_sec02{
	margin-bottom: 40px;
}
.feature_content01_sec03{
	margin-bottom: 60px;
}
.feature_content01_flow .common_flex{
	justify-content: center;
}
.feature_content01_box{
	width: calc((100% - 15px) / 4);
	position: relative;
	z-index: 1;
	background-color: #f5f5f7;
}
.feature_content01_box:not(:last-child){
	margin-right: 5px;
}
.feature_content01_ttl{
	font-size: 24px;
	font-weight: 700;
	color:#1d569b;
	border: 3px solid #1d569b;
	width: 420px;
	height: 60px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	align-items: center;
	/* -moz-border-radius:30px;
	-webkit-border-radius:30px;
	-o-border-radius:30px;
	-ms-border-radius:30px;
	border-radius:30px; */
	margin: 0 auto;
	margin-bottom: 40px;
}
.feature_content01_ttl02{
	font-size: 18px;
	font-weight: 700;
	text-align: center;
	color:#1d569b;
	margin-bottom: 10px;
}
.feature_content01_disc{
	padding: 20px 20px 25px 20px;
}
.feature_content01_under{
	background: url(../images/feature/feature_img08.jpg) no-repeat center top;
	background-size:cover; 
	height: 404px;
	margin-top: -230px;
}
.feature_content01_under_txt{
	color:#FFF;
	text-align: center;
	padding-top: 260px;
	font-size: 36px;
	font-weight: 700;
}
@media (max-width: 1023px){
.feature_content01_disc {
    padding: 10px 10px 15px 10px;
}
.feature_content01_under_txt{
	font-size: 30px;
}
}

/*------------------------------------------------------------------
feature custom 流れ　共通
--------------------------------------------------------------------*/
.common_flow_bg{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	padding: 60px 0 30px 0;
}
.common_flow_box{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
}
.common_flow_box_in{
	width: calc((100% - 120px) / 4);
	margin-bottom: 40px;
	position: relative;
}
.common_flow_box_in:not(:nth-child(4n+0)){
	margin-right: 40px;
}
.common_flow_box_in:not(:nth-child(4n+0))::after{
	position: absolute;
	top: 85px;
	right: -24px;
	content: "";
	width: 15px;
	height: 15px;
	border: 2.5px solid;
	border-color: #ccc #ccc transparent transparent;
	transform: rotate(45deg);
}
@media (max-width: 1480px){
.common_flow_box_in:not(:nth-child(4n+0))::after{
	top: 6.5vw;
}
}
.common_flow_box_in .common_en_01{
	color:#1d569b;
	font-size: 40px;
	font-weight: 700;
	text-align: center;
	display: block;
	line-height: 1.0;
	margin: 10px 0;
}
.common_flow_box_in .common_flow_ttl{
	color:#1d569b;
	font-size: 18px;
	font-weight: 700;
	
	min-height: 2.8em;   /* タイトル2行分を確保 */
	line-height: 1.4;

	display:flex;
	align-items:center;      /* 縦中央揃え */
	justify-content:center;  /* 横中央揃え */

	text-align: center;
	margin-bottom: 5px;
}
.common_flow_box_in .common_flow_desc{
	font-size:14px;
	line-height:1.6;
	color:#555;
	margin-top:0;
}

/*------------------------------------------------------------------
custom_existingfacility
--------------------------------------------------------------------*/
.custom_existingfacility_main {
	background: url(../images/custom_existingfacility/custom_existingfacility_mainimg.jpg) no-repeat right bottom;
	background-size: cover;
}
@media (max-width: 1480px){
.custom_existingfacility_main {
	background: url(../images/custom_existingfacility/custom_existingfacility_mainimg.jpg) no-repeat 80% bottom;
	background-size: cover;
}
}
.custom_existingfacility_main .common_sub_main_right {
	display: none;
}
.custom_existingfacility_main .common_sub_main_left {
	width: 100%;
}
.custom_existingfacility_main .common_sub_main_left .common_flex.pc{
	max-width: 570px;
}
.custom_existingfacility_content01_bg{
	padding: 60px 0 70px 0;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
}
.custom_existingfacility_content01_inner{
	width: calc(100% - 40px);
}
.custom_existingfacility_content01_box{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 45px;
	margin-bottom: 25px;
        gap: 40px 0px;
}
.custom_existingfacility_content01_box_in{
	width: calc((100% - 40px) / 3);
	position: relative;
	background-color: #f5f5f6;
}
.custom_existingfacility_content01_box_in .common_en_01{
	font-size: 70px;
	font-weight: 500;
	color:rgba(4,40,126,0.5);
	position: absolute;
	left:25px;
	top:-30px;
	line-height: 1.0;
}
.custom_existingfacility_content01_disc{
	background-color: #f5f5f6;
	padding: 30px 20px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
}
.custom_existingfacility_content01_txt{
	background: url(../images/common/icon_check.png) no-repeat left top;
	min-height: 34px;
	line-height: 34px;
	font-size: 20px;
	font-weight: 700;
	padding: 3px 0 0 50px;
}
.custom_existingfacility_content01_supple{
        padding: 0 20px 10px 30px;
}
@media (max-width: 1023px){
.custom_existingfacility_content01_txt{
    font-size: 18px;
}
.custom_existingfacility_content01_box_in .common_en_01{
	font-size: 50px;
}
}
.custom_existingfacility_img01{
	background: url(../images/custom_existingfacility/custom_existingfacility_img04.jpg) no-repeat center top;
	background-size:cover; 
}
.custom_existingfacility_img02{
	background-color: #2f2e23;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	padding: 0 129px 0 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
@media (max-width: 1480px){
.custom_existingfacility_img02{
    padding:  0 8% 0 0;
}
}

/*------------------------------------------------------------------
faq
--------------------------------------------------------------------*/
.faq_main {
	align-items: center;
	background: url(../images/faq/faq_mainimg.jpg) no-repeat 90% bottom;
	background-size: cover;
}
.faq_content01_bg {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	padding: 70px 0 100px 0;
	background-color: #f5f5f6;
}
.faq_content01_list {
	background-color: #303c45;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	-o-border-radius: 5px;
	-ms-border-radius: 5px;
	border-radius: 5px;
	margin-bottom: 40px;
}
.faq_content01_list ul {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 17px 0 17px 0;
}
.faq_content01_list ul li:not(:last-child) {
	position: relative;
	padding-right: 35px;
	margin-right: 35px;
}
.faq_content01_list ul li:not(:last-child)::after {
	border-right: 1px solid rgba(255,255,255,0.5);
	position: absolute;
	top: 50%;
	right: 0;
	content: "";
	width: 1px;
	height: 18px;
	margin-top: -9px;
}
.faq_content01_list ul li a {
	color: #FFF;
	text-decoration: none;
	line-height: 1.0;
	transition: 0.3s;
}
.faq_content01_list ul li a:hover {
	opacity: 0.7;
	transition: 0.3s;
}
.faq_content01_insec {
	padding-top: 30px;
	margin-bottom: 40px;
}
.faq_content01_ttl {
	font-size: 24px;
	font-weight: 700;
	letter-spacing: 0.05em;
	padding-bottom: 10px;
	margin-bottom: 20px;
	border-bottom: 1px solid #1d569b;
}
.faq_content01_box {
	margin-bottom: 20px;
}
.faq_content01_box_q {
	background-color: #fff;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	-o-border-radius: 5px;
	-ms-border-radius: 5px;
	border-radius: 5px;
	padding: 15px 30px 17px 30px;
	border: 1px solid #ddd;
	cursor: pointer;
	position: relative;
}
.faq_content01_box_q::after {
	width: 9px;
	height: 9px;
	border: 2px solid;
	border-color: transparent #1d569b #1d569b transparent;
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	right: 30px;
	content: "";
	margin-top: -9px;
	transition: 0.3s;
	z-index: 1;
}
.faq_content01_box_q.open::after {
	transform: rotate(225deg);
	margin-top: -3px;
	border-color: transparent #fff #fff transparent;
}
.faq_content01_box_q.open {
	background-color: #1d569b;
	-moz-border-radius: 5px 5px 0 0;
	-webkit-border-radius: 5px 5px 0 0;
	-o-border-radius: 5px 5px 0 0;
	-ms-border-radius: 5px 5px 0 0;
	border-radius: 5px 5px 0 0;
}
.faq_content01_ttl02 {
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0.05em;
	position: relative;
	padding-left: 50px;
}
.faq_content01_box_q.open .faq_content01_ttl02 {
	color: #FFF;
}
.faq_content01_ttl02:before {
	position: absolute;
	top: 0;
	left: 0;
	content: "Q";
	width: 35px;
	height: 35px;
	background-color: #1d569b;
	color: #fff;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	-o-border-radius: 50%;
	-ms-border-radius: 50%;
	border-radius: 50%;
	text-align: center;
	line-height: 33px;
	font-family: 'Roboto', sans-serif;
	font-size: 20px;
	font-weight: 700;
}
.faq_content01_box_q.open .faq_content01_ttl02:before {
	color: #1d569b;
	background-color: #fff;
}
.faq_content01_box_a {
	background-color: #fff;
	-moz-border-radius: 0 0 5px 5px;
	-webkit-border-radius: 0 0 5px 5px;
	-o-border-radius: 0 0 5px 5px;
	-ms-border-radius: 0 0 5px 5px;
	border-radius: 0 0 5px 5px;
	padding: 15px 30px 17px 80px;
	position: relative;
	border-left: 1px solid #ddd;
	border-right: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	display: none;
}
.faq_content01_box_a::before {
	position: absolute;
	top: 20px;
	left: 30px;
	content: "A";
	width: 35px;
	height: 35px;
	background-color: #303c45;
	color: #fff;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	-o-border-radius: 50%;
	-ms-border-radius: 50%;
	border-radius: 50%;
	text-align: center;
	line-height: 35px;
	font-family: 'Roboto', sans-serif;
	font-size: 20px;
	font-weight: 700;
}
.faq_content01_box_a a{
	color:#1d569b;
	transition: 0.3s;
}
.faq_content01_box_a a:hover{
	text-decoration: none;
	transition: 0.3s;
}
/*------------------------------------------------------------------
wordpress
--------------------------------------------------------------------*/
/*------------------------------------------------------------------
アーカイブ 共通
--------------------------------------------------------------------*/
.common_tag_list01{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	margin: 40px 0 25px 0;
}
.common_tag_list01 ul{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
}
.common_tag_list01 ul li{
	margin-bottom: 10px;
}
.common_tag_list01 ul li a{
	text-decoration: none;
	background-color: #e8eef5;
	border:1px solid #1d569b;
	display: block;
	padding: 8px 20px;
	color:#1d569b;
	line-height: 1.0;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.05em;
	-moz-border-radius:20px;
	-webkit-border-radius:20px;
	-o-border-radius:20px;
	-ms-border-radius:20px;
	border-radius:20px;
	transition: 0.3s;
	/* 0822追加 */
	width: 120px;
	white-space:nowrap;
	overflow:hidden;
	text-overflow:ellipsis;
	text-align: center
}
.common_tag_list01 ul li a:hover{
	background-color: #1d569b;
	color:#FFF;
	transition: 0.3s;
}
.common_tag_list01 ul li:not(:last-child){
	margin-right: 10px;
}
.common_article_list01_inner{
	width: calc(100% - 40px);
}
.common_article_list01{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;	
}
.common_article_list01_in{
	width: calc((100% - 40px) / 3);
	background-color: #f5f5f6;
	margin-bottom: 20px;
}
.common_article_list01 .post_none{
	text-align: center;
	width: 100%;
	margin-bottom: 30px;
}
.common_article_list01_in .common_article_list01_img{
	overflow: hidden;
	transition: 0.3s;
	position: relative;
}
.common_article_list01_in a .common_article_list01_img img{
	transition: 0.3s;
	-moz-transform: scale(1);
	-webkit-transform: scale(1);
	-ms-transform: scale(1);
	transform: scale(1);	
}
.common_article_list01_in a{
	text-decoration: none;
	color:#000;
	transition: 0.3s;
}
.common_article_list01_in a:hover{
	transition: 0.3s;
}
.common_article_list01_in a:hover .common_article_list01_img img{
	transition: 0.3s;
	-moz-transform: scale(1.1);
	-webkit-transform: scale(1.1);
	-ms-transform: scale(1.1);
	transform: scale(1.1);	
}
.common_article_list01_in a:hover .common_article_list01_img::before {
	position: absolute;
	top: 0;
	left: 0;
	content: "";
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.3);
	z-index: 1;
	transition: 0.3;
}
.common_article_list01_in:not(:nth-child(3n+0)){
	margin-right: 20px;
}
.common_article_list01_disc{
	background-color: #f5f5f6;
	padding: 20px 40px 30px 20px;
}
.common_article_list01_ttl{
	font-size: 24px;
	font-weight: 700;
	text-align: center;
	letter-spacing: 0.05em;
	position: relative;
	padding-bottom: 15px;
	line-height: 1.4;
	margin-bottom: 15px;
}
@media (max-width: 1023px){
.common_article_list01_disc{
	padding: 20px 20px 30px 20px;
}
.common_article_list01_ttl {
    font-size: 20px;
	line-height: 1.3;
}
}
.common_article_list01_ttl::after{
	border-bottom: 1px solid #1d569b;
	position:  absolute;
	bottom: 0;
	left: 50%;
	content: "";
	width: 72px;
	height: 1px;
	margin-left: -36px;
}
.common_article_list01_tag{
	margin-top: 15px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
}
.common_article_list01_tag li{
	color:#1d569b;
	font-size: 14px;
}
.common_article_list01_tag li::before{
	content: "#";
}
.common_article_list01_tag li:not(:last-child){
	margin-right: 15px;
}

/*------------------------------------------------------------------
シングル記事　共通
--------------------------------------------------------------------*/
.common_article_page_tag{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 15px;
}
.common_article_page_tag li{
	text-decoration: none;
	background-color: #e8eef5;
	border:1px solid #1d569b;
	display: block;
	padding: 8px 20px;
	color:#1d569b;
	line-height: 1.0;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.05em;
	-moz-border-radius:20px;
	-webkit-border-radius:20px;
	-o-border-radius:20px;
	-ms-border-radius:20px;
	border-radius:20px;
	transition: 0.3s;
}
.common_article_page_tag li:not(:last-child){
	margin-right: 10px;
}
.common_article_page_ttl{
	font-size: 30px;
	font-weight: 700;
	letter-spacing: 0.05em;
	padding-bottom: 10px;
	margin-bottom: 25px;
	border-bottom: 2px solid #1d569b;
}
.common_article_page_date{
	text-align: right;
	font-size: 16px;
	font-family: 'Roboto', sans-serif;
}
.common_article_page_entry img{
	margin: 30px 0 25px 0;
}
.common_article_page_entry img.alignright {
  display: block;
  margin: 30px 0 25px auto;
}
.common_article_page_entry img.alignleft {
  display: block;
  margin: 30px auto 25px 0;
}
.common_article_page_entry img.aligncenter {
  display: block;
  margin: 30px auto 25px auto;
}
.common_article_page_entry p{
	font-size: 16px;
	line-height: 2.0;
}
.common_article_page_entry p + p{
	margin-top: 10px;
}
.common_article_page_entry h2{
	font-size: 24px;
	font-weight: 700;
	letter-spacing: 0.05em;
	border-left: 6px solid #1d569b;
	padding: 5px 0 5px 20px;
	line-height: 1.4;
	margin-bottom: 20px;
	margin-top: 40px;
}
.common_article_page_entry h3{
	margin-top: 40px;
	position: relative;
	font-size: 22px;
	font-weight: 700;
	letter-spacing: 0.05em;
	padding-left: 28px;
	margin-bottom: 10px;
	line-height: 1.4;
}
.common_article_page_entry h3::before{
	border-top: 2px solid #1d569b;
	position: absolute;
	top: 50%;
	left: 0;
	content: "";
	width: 18px;
	height: 2px;
	margin-top: -1px;
}
.common_article_page_entry h4{
	margin-top: 40px;
	line-height: 1.4;
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0.05em;
	padding-bottom: 10px;
	margin-bottom: 10px;
	border-bottom: 1px solid #DDD;
}
.common_article_page_entry ol{
	counter-reset: item;
	margin: 30px 0;
	padding: 0;
	list-style-type: none;
}
.common_article_page_entry ol li{
	position: relative;
	padding-left: calc(23px + 0.5em);
}
.common_article_page_entry ol li:not(:last-child){
	margin-bottom: 10px;
}
.common_article_page_entry ol li:before {
	position: absolute;
	left:0;
	top:2px;
  	counter-increment: item;
  	content: counter(item);
	width: 23px;
	height: 23px;
	background-color: #1d569b;
	color:#FFF;
	-moz-border-radius:50%;
	-webkit-border-radius:50%;
	-o-border-radius:50%;
	-ms-border-radius:50%;
	border-radius:50%;
	text-align: center;
	display: inline-block;
	line-height: 23px;
	font-size: 14px;
	font-weight: 700;
	font-family: 'Roboto', sans-serif;
	margin-right: 0.5em;
}
.common_article_page_entry ul{
	margin: 30px 0;
	padding: 0;
	list-style-type: none;	
}
.common_article_page_entry ul li{
	position: relative;
	padding-left: calc(23px + 0.5em);
}
.common_article_page_entry ul li::before{
	position: absolute;
	left:7px;
	top:5px;
	content: "●";
	font-size: 10px;
	color:#1d569b;
}
.common_article_page_entry ul li:not(:last-child){
	margin-bottom: 10px;
}
.common_article_page_entry .mokuji_box{
	border:2px solid #1d569b;
	background-color: #f5f5f6;
	padding: 20px 35px;
}
.common_article_page_entry .mokuji_ttl{
	background-color: #1d569b;
	text-align: center;
	padding: 8px 0;
	line-height: 1.4;
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0.05em;
	color:#FFF;
	margin-top: 40px;
}
.common_article_page_entry .mokuji_list{
	text-indent: -2.2em;
    padding-left: 2.2em;
}
.common_article_page_entry .mokuji_list li{
	font-size: 16px;
	padding-left: 0;
}
.common_article_page_entry .mokuji_list li:before {
  	content: '0'counter(item)'.';
	font-size: 18px;
	color:#184d9b;
	font-family: 'Roboto', sans-serif;
	margin-right: 0.5em;
	background: none;
	display: inline;
	position: relative;
}
.common_article_page_entry .ollist_en li{
	text-indent: -0.4em;
    padding-left: 0.4em;
	margin-left: 1.5em;
}
.common_article_page_entry .ollist_en li::marker{
	color:#184d9b;
	font-family: 'Roboto', sans-serif;
	font-weight: 700;
}
.common_article_page_entry .ollist_en li::before{
	position: relative;	
	content:"";
	background: none;
	display: inline;
}
.common_article_page_entry .ullist_check li::before{
	background: url(../images/common/icon_check.png) no-repeat left top;
	background-size: 24px 20px;
	content:"";
	width: 24px;
	height: 20px;
	left:0;
	top:2px;
}
.common_article_page_entry blockquote{
	background-color: #f5f5f6;
	margin: 30px 0 40px 0;
	padding: 40px 40px 30px 90px;
	position: relative;
}
.common_article_page_entry blockquote::before{
	background: url(../images/common/icon_blockquote.png) no-repeat left top;
	position: absolute;
	top: 25px;
	left: 35px;
	content: "";
	width: 39px;
	height: 31px;
}
.common_article_page_entry blockquote em{
	color:#888;
}
.common_article_page_entry blockquote a{
	color:#888888;
	border-bottom: 1px solid #888888;
	padding-bottom: 5px;
	text-decoration: none;
}
.common_article_page_entry .common_xray_content04_arrow{
	margin-top: 80px;
}
.common_article_page_entry .tab_comment_ttl{
	display: inline-block;
	-moz-border-radius:5px 5px 0 0;
	-webkit-border-radius:5px 5px 0 0;
	-o-border-radius:5px 5px 0 0;
	-ms-border-radius:5px 5px 0 0;
	border-radius:5px 5px 0 0;
	background-color: #1d569b;
	padding: 8px 20px;
	line-height: 1.4;
	color:#FFF;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.05em;
	margin: 40px 0 0 0;
}
.common_article_page_entry .tab_comment_box{
	border:2px solid #1d569b;
	padding: 20px 30px;
	margin: 0 0 40px 0;
}
.common_article_page_entry .w_50per{
	width: 50%;
	padding-right: 5%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
/*------------------------------------------------------------------
ページング
--------------------------------------------------------------------*/
.wp-pagenavi {
	clear: both;
	text-align: center;
	margin-top: 30px;
}
.wp-pagenavi a, .wp-pagenavi span {
	font-family: 'Roboto', sans-serif;
    font-size: 20px;
    text-decoration: none !important;
    border: 1px solid #1d569b !important;
    color: #1d569b !important;
    padding-top: 5px !important;
    padding-right: 12px !important;
    padding-bottom: 5px !important;
    padding-left: 12px !important;
    margin-right: 10px !important;
    margin-left: 10px !important;
    font-weight: 700;
}
.wp-pagenavi a.last{
	font-size: 16px;
	padding-top: 8px !important;
    padding-bottom: 7px !important;
}
.wp-pagenavi a:hover, .wp-pagenavi span.current {
	color: #FFFFFF !important;
	background-color: #1d569b !important;
	border-top-color: #1d569b !important;
	border-right-color: #1d569b !important;
	border-bottom-color: #1d569b !important;
	border-left-color: #1d569b !important;
	text-decoration: none !important;
}
.wp-pagenavi span.current {
	font-weight: 700;
	color: #FFF;
}
.blog_pagenavi {
	padding: 60px 0 0 0;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
}
.blog_pagenavi a {
	text-decoration: none;
}
.pagenavi_prev {
	max-width: 300px;
	width: 38%;
}
.pagenavi_next {
	max-width: 300px;
	width: 38%;
}
.pagenavi_tolist{
	margin-top: 30px;
}
.pagenavi_tolist a {
	background-color: #303c45;
	color: #FFFFFF;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	align-items: center;
	-moz-border-radius:19px;
	-webkit-border-radius:19px;
	-o-border-radius:19px;
	-ms-border-radius:19px;
	border-radius:19px;
	width: 136px;
	height: 38px;
	line-height: 1.0;
	text-decoration: none;
	transition: 0.3s;
}
.pagenavi_tolist a:hover{
	background-color: #17272e;
	transition: 0.3s;
}
.pagenavi_prev_arrow{
	color:#000;
	font-size: 16px;
	position: relative;
	padding-left: 18px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	align-items: center;
}
.pagenavi_next_arrow{
	color:#000;
	font-size: 16px;
	position: relative;
	padding-right: 18px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: flex-end;
	align-items: center;
}
.pagenavi_prev a,.pagenavi_next a{
	transition: 0.3s;
	display: block;
}
.pagenavi_prev a:hover,.pagenavi_next a:hover{
	opacity: 0.7;
	transition: 0.3s;
}
.pagenavi_prev_arrow::before{
	width: 7px;
    height: 7px;
    border: 1.5px solid;
    border-color: transparent transparent #1d569b #1d569b;
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    left: 0;
    content: "";
    margin-top: -4px;
    transition: 0.3s;
    z-index: 1;
}
.pagenavi_next_arrow::before{
	width: 7px;
    height: 7px;
    border: 1.5px solid;
    border-color: #1d569b #1d569b transparent transparent;
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    right: 0;
    content: "";
    margin-top: -4px;
    transition: 0.3s;
    z-index: 1;
}
.blog_pagenavi_imgbox{
	border: 1px solid #ddd;
	margin-top: 10px;
	padding: 15px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.blog_pagenavi_imgbox_img{
	width: 100px;
}
.blog_pagenavi_imgbox_img img{
	margin: 0!important;
}
.blog_pagenavi_imgbox_ttl{
	width: calc(100% - 115px);
	font-size: 14px!important;
	color:#000;
	line-height: 1.6!important;
}

@media (max-width: 1023px){
.pagenavi_prev {
	width: 32%;
}
.pagenavi_next {
	width: 32%;
}
.blog_pagenavi_imgbox_img{
	width: 100%;
	order: 0;
	text-align: center;
	margin-bottom: 10px;
}
.blog_pagenavi_imgbox_ttl{
	width: 100%;
	order: 1;
}
}

.blog_pagenavi.news_pagenavi{
	justify-content: center;
}
.blog_pagenavi.news_pagenavi .pagenavi_tolist{
	margin-top: 0;
}
.blog_pagenavi.news_pagenavi .pagenavi_prev{
	width: auto;
	max-width: inherit;
	margin-right: 20px;
}
.blog_pagenavi.news_pagenavi .pagenavi_next{
	width: auto;
	max-width: inherit;
	margin-left: 20px;
}
/*------------------------------------------------------------------
custom_custommade
--------------------------------------------------------------------*/
.custom_custommade_main {
	background: url(../images/custom_custommade/custom_custommade_mainimg.jpg) no-repeat right bottom;
	background-size: cover;
}
@media (max-width: 1480px){
.custom_custommade_main {
	background: url(../images/custom_custommade/custom_custommade_mainimg.jpg) no-repeat 90% bottom;
	background-size: cover;
}
}
.custom_custommade_main .common_sub_main_right {
	display: none;
}
.custom_custommade_main .common_sub_main_left {
	width: 100%;
}
.custom_custommade_main .common_sub_main_left .common_flex.pc{
	max-width: 570px;
}
.custom_custommade_content01_bg{
	padding: 60px 0 70px 0;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
}
.custom_custommade_left .common_more_btn_m_l{
	margin-top: 20px;
}
.custom_custommade_img01{
	background: url(../images/custom_custommade/custom_custommade_img07.jpg) no-repeat center top;
	background-size:cover; 
}
.custom_custommade_img02{
	background: url(../images/custom_custommade/custom_custommade_img08.jpg) no-repeat center top;
	background-size:cover; 
}

/*------------------------------------------------------------------
useful
--------------------------------------------------------------------*/
.useful_main {
	background: url(../images/useful/useful_mainimg.jpg) no-repeat right bottom;
	background-size: cover;
}
.useful_content01_bg{
	padding: 20px 0 60px 0;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
}

/*------------------------------------------------------------------
useful_detail
--------------------------------------------------------------------*/
.useful_detail_content01_bg{
	padding: 65px 0 95px 0;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
}
.useful_detail_content01_bg .common_inner{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.useful_detail_content01_left{
	width: 73.3%;
}
.useful_detail_content01_right{
	width: 20%;
}
.useful_detail_content01_right_ttl{
	background-color: #1d569b;
	color: #fff;
	padding: 10px;
	text-align: center;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1.4;
	margin-bottom: 20px;
}
.common_article_page_right_list01 li{
	margin-bottom: 15px;
}
.common_article_page_right_list01 li.post_none{
	text-align: center;
}
.common_article_page_right_list01 li a{
	color:#000;
	text-decoration: none;
}
.common_article_page_right_list01_ttl{
	font-size: 14px;
	font-weight: 700;
}
.common_article_page_right_list01_img{
	margin-bottom: 10px;
}

/*------------------------------------------------------------------
news
--------------------------------------------------------------------*/
.news_content01_list{
	margin-bottom:50px;
}
.news_content01_list li{
	border-bottom: 1px solid #dddddd;
	padding: 15px 20px;
}
.news_content01_list li.post_none{
	border-bottom: none;
	text-align: center;
}
.news_content01_list li a{
	text-decoration: none;
	transition: 0.3s;
}
.news_content01_list li a:hover{
	opacity: 0.7;
	transition: 0.3s;
}
.news_content01_list li .common_en_01{
	color: #888888;
	margin-right: 40px;
}
.news_content01_list li .news_content01_list_ttl{
	color:#000;
}

/*------------------------------------------------------------------
sitemap
--------------------------------------------------------------------*/
.sitemap_content01_box{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.sitemap_content01_box_in{
	width: calc(50% - 20px);
}
.sitemap_content01_box_ttl{
	background-color: #f5f5f5;
	font-size: 16px;
	padding: 15px 25px;
	line-height: 1.4;
	margin-bottom: 20px;
}
.sitemap_content01_box_link a{
	background-color: #f5f5f5;
	font-size: 16px;
	padding: 15px 25px;
	line-height: 1.4;
	margin-bottom: 30px;
	display: block;
	color:#000;
	text-decoration: none;
}
.sitemap_content01_box_link02{
	margin: 0 25px 30px 25px;
}
.sitemap_content01_box_link02 li{
	margin-bottom: 15px;
}
.sitemap_content01_box_link02 a{
	position: relative;
	text-decoration: none;
	padding-left: 20px;
	color:#000;
	display: block;
}
.sitemap_content01_box_link02 a::before {
    border-top: 1px solid #04287e;
    width: 13px;
    height: 1px;
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
}
.sitemap_content01_box a{
	transition: 0.3s;
}
.sitemap_content01_box a:hover{
	transition: 0.3s;
	opacity: 0.7;
}
.sitemap_content01_box_link + .sitemap_content01_box_link02{
	margin-top: -10px;
}

/*------------------------------------------------------------------
notfound
--------------------------------------------------------------------*/
.notfound_box{
	text-align: center;
}
.notfound_box .common_more_btn_l{
	margin: 40px auto 0 auto;
}

/*------------------------------------------------------------------
privacy
--------------------------------------------------------------------*/
.privacy_main {
	align-items: center;
	background: url(../images/feature/feature_mainimg.jpg) no-repeat 90% bottom;
	background-size: cover;
}
.privacy_lead{
	text-align: right;
	margin-bottom: 40px;
}
.privacy_ttl{
	margin-top: 40px;
    line-height: 1.4;
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 0.05em;
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: 1px solid #DDD;
}
.privacy_fix{
	margin-top: 40px;
	font-size: 16px;
}
.privacy_fix_ttl{
	margin-bottom: 10px;
}
.privacy_btn{
	margin-top: 40px;
}
.privacy_btn a{
	color:#1d569b;
}

/*------------------------------------------------------------------
news
--------------------------------------------------------------------*/
.news_main {
	align-items: center;
	background: url(../images/news/news_mainimg.jpg) no-repeat 90% bottom;
	background-size: cover;
}

/*------------------------------------------------------------------
contact
--------------------------------------------------------------------*/
.contact_main {
	align-items: center;
	background: url(../images/contact/contact_mainimg.jpg) no-repeat 90% bottom;
	background-size: cover;
}

/*------------------------------------------------------------------
request
--------------------------------------------------------------------*/
.request_main {
	align-items: center;
	background: url(../images/request/request_mainimg.jpg) no-repeat 90% bottom;
	background-size: cover;
}
.request_box ul {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
}
.request_box ul li{
	width: calc((100% - 160px) / 4);
	margin-bottom: 40px;
}
.request_box ul li:not(:nth-child(4n+0)){
	margin-right: calc(160px / 3);
}
.request_box ul li a{	
	text-decoration: none;
	transition: 0.3s;
}
.request_box ul li img{
	border: 1px solid #ddd;
	width: 100%;
	height: auto;
}
.request_box ul li a:hover img{
	opacity: 0.7;
	transition: 0.3s;
}
.request_box_ttl{
	color:#000;
	margin-top: 15px;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.6;
	text-align:center;
}
.request_box ul li .common_bl_btn_s{
	margin: 10px auto 0 auto;
}
@media (max-width: 1024px) {
.request_box ul li{
	width: calc((100% - 90px) / 4);
}
.request_box ul li:not(:nth-child(4n+0)){
	margin-right: calc(90px / 3);
}
}
.common_sub_main_ttl .fs_s{
	font-size: 32px;
	display: block;
	margin-bottom: 5px;
}
/*------------------------------------------------------------------
catalog
--------------------------------------------------------------------*/
.catalog_main {
	align-items: center;
	background: url(../images/catalog/catalog_mainimg.jpg) no-repeat 90% bottom;
	background-size: cover;
}

/*------------------------------------------------------------------
custom_custommade single
--------------------------------------------------------------------*/
.custom_custommade_detail_content01_bg{
	padding: 65px 0 95px 0;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
}

/*------------------------------------------------------------------
cookie wp pragin
--------------------------------------------------------------------*/
#cookie-notice a{
	color:#FFF;
}
/*------------------------------------------------------------------
アンダーライン　マーカー
--------------------------------------------------------------------*/
.marker_blue {
	background: linear-gradient(transparent 55%, #d6e4ed 55%);
}
.marker_yellow {
	background: linear-gradient(transparent 55%, #fffb93 55%);
}
.marker_green {
	background: linear-gradient(transparent 55%, #b8f2b7 55%);
}
.marker_pink {
	background: linear-gradient(transparent 55%, #fdd5c9 55%);
}

/*------------------------------------------------------------------
問い合わせありがとうございましたページ用
--------------------------------------------------------------------*/
.inq_heading {
	/* text-indent:50px; */
	/*position: 50px; ボックスの位置を指定する */
	position: relative;
	top: 0px;
	left: 8%;
	width: 70%;
	/* 要素の横幅を指定する */
	padding: 7px 50px 7px 18px;
	/* ボックス内側余白を指定する(上:右:下:左) */
	border-left: 6px solid #326693;
	/* ボーダー左側のスタイルを指定する */
	border-bottom: 1px solid #AAAAAA;
	/* ボーダー下部のスタイルを指定する */
}       

.inq {
	position: relative;
	top: 0px;
	left: 20%;
	font-size: 17px;
}
.inq p {
	margin-top: 20px;
	margin-bottom: 20px;
} 
.box {
	margin-left: auto;
	margin-right: auto;
}

.box a {
	display: flex;
	display: block;
	margin-left: auto;
	margin-right: auto;
	height: 50px;
	width: 200px;
	line-height: 50px;
	background: rgb(48, 60, 69);
	color: #fff;
	border-radius: 25px;
	box-shadow: 0 0px 0 rgb(2, 2, 2);
	text-decoration: none;
	text-align: center;
}

/*------------------------------------------------------------------
カタログダウンロード画面用
--------------------------------------------------------------------*/
.catalog-wrapper {
	height: 500px;
	text-align: center;
}

.catalogs {
	display: flex;
	flex-direction: row;
	justify-content: center;
}

.catalog_img {
	margin: 20px;
}

.catalog_title {
	/* text-indent:50px; */
	 /*position: 50px; ボックスの位置を指定する */
	position: relative; top:0px; left: 8%; 
	width: 70%; /* 要素の横幅を指定する */
	padding: 7px 50px 7px 18px; /* ボックス内側余白を指定する(上:右:下:左) */
	border-left: 6px solid #326693; /* ボーダー左側のスタイルを指定する */
	border-bottom: 1px solid #AAAAAA; /* ボーダー下部のスタイルを指定する */
}

.catalog_dl {
	margin-left: auto;
    margin-right: auto;
}