@charset "utf-8";
/* ACCORDER Inc. */
/* Base Style
----------------------- */
*, body { font-family:"Hiragino Kaku Gothic ProN","メイリオ",Meiryo,Arial,Verdana,"ＭＳ Ｐゴシック",sans-serif; letter-spacing:1px; }
.clearfix:after { content:"."; display:block; height:0px; clear:both; visibility:hidden; } /* Crearfix for Modern Browsers including Firefox, Opera, Safari, etc */
.clearfix { display:inline-block; } /* For Windows IE7 and Mac IE5 */
* html .clearfix{ height:1px; } /* For Windows IE5/IE6: Hides from IE-mac */
.clearfix { display:block; }
.clear { clear:both; } /* End hide from IE-mac */
img { -ms-interpolation-mode:bicubic; image-rendering:optimizequality; vertical-align:bottom; } /* Better images when resized for IE7, FF3.5+ */
a { text-decoration:none; }
a.hover { text-decoration:none; opacity:0.7; }
html,body { background:#fff; height:100%; }
html { color: #333; }
/* wrapper  ----------------------- */
#wrapper {
	position:relative;
    overflow: hidden;
}
#wrapper.top {
	overflow:hidden;
	border:5px #fff solid;
}
.content {
	width:88%;
	max-width:1220px;
	margin:0 auto;
}

/* color  ----------------------- */

/* font  ----------------------- */
.font_heebo_m {
	font-weight:500;
	font-size:15px;
	font-family: 'Heebo', sans-serif;
}
.bold { font-weight: 600; }
.animation {
    background: #FFF;
    width: 100vw;
    height: 100vh;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 15;
}
.animation img { width: 100%; }
.animation_logo_w,
.animation_logo_g {
	width: 60%;
	max-width: 358px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	transition: all .5s;
}
.animation_logo_w {
	opacity: 0;
}
.animation_logo_g {
	opacity: 0;
	transition: all .5s;
}
.animation_screen {
    background: linear-gradient(90deg, rgba(125,213,179,1) 0%, rgba(0,182,96,1) 100%);
    position: absolute;
    width: 0;
    height: 100%;
    transition: .6s cubic-bezier(.075, .82, .165, 1);
}
.animation.anim1 .animation_logo_g { opacity: 1; }
.animation.anim2 .animation_screen { width: 100%; }
.animation.anim3 .animation_logo_w { opacity: 1; }
.animation.anim1.anim3 .animation_logo_g { opacity: 0; }

.top #header { display: none; }
.top_mv_text_sec,
.top_mv_news,
.top_mv_slide_small_sec,
.top_mv_follow,
.top_mv_scroll { opacity: 0; transition: all .6s; }
#wrapper.anim_over .top_mv_text_sec,
#wrapper.anim_over .top_mv_news,
#wrapper.anim_over .top_mv_slide_small_sec,
#wrapper.anim_over .top_mv_follow,
#wrapper.anim_over .top_mv_scroll { opacity: 1; }


.header_search_wrapper .field { background: #94e1be; width: 100%; padding: 13px 45px 13px 15px; border: none; border-radius: 9px; }
.header_search_wrapper .field::placeholder { color: #57bb8f; font-size: 12px; }
.header_search_input { position: relative; }
.header_search_input .ok {
	background: #FFF url(../images/all_magni.png) no-repeat center / 25px;
	height: 100%;
	width: 50px;
	position: relative;
	display: block;
	border: none;
	border-radius: 0;
	border-top-right-radius: 9px;
	border-bottom-right-radius: 9px;
	box-shadow: none;
	position: absolute;
	top: 0;
	right: 0;
	cursor: pointer;
	transition: all .3s;
}
.header_search_input .ok:hover { opacity: .8;}

textarea,
input.text,
input[type="text"],
input[type="button"],
input[type="submit"] { -webkit-appearance: none; }
.search_box {
    background: rgb(0,182,96);
    background: linear-gradient(90deg, rgba(0,182,96,1) 0%, rgba(125,213,179,1) 100%);
    width: 100%;
    padding: 173px 0 84px;
    position: absolute;
    top: -57px;
    left: 0;
    transition: all .4s;
    transform: translateY(-100%);
    opacity: 0;
}
.search_box.search_active {
	transform: translateY(0);
	opacity: 1;
}
.search_box_inner { max-width: 670px; margin: 0 auto; }

.search_box_close {
	content: "";
	background: url(../images/search_close.png) no-repeat center / contain;
	width: 26px;
	height: 26px;
	position: absolute;
	bottom: 30px;
	right: 45px;
}
.header_search_wrapper_ttl {
	margin-bottom: 22px;
    line-height: 1;
    letter-spacing: 2px;
    font-family: 'Poppins', sans-serif;
    text-align: left;
    font-size: 46px;
    font-weight: 400;
    color: #FFF;
}
.header_search_sp {
     display: block !important;
}
.header_search_key {
    margin-top: 16px;
    padding-left: 171px;
    position: relative;
}
.header_search_key_head {
    position: absolute;
    left: 7px;
    top: 15px;
    font-family: 'Heebo', sans-serif;
    font-weight: 300;
    font-size: 13px;
    color: #FFF;
    letter-spacing: 1.8px;
}
.header_search_key_list {
    text-align: left;
    letter-spacing: 0;
    font-size: 0;
}
.header_search_key_list li {
    width: 145px;
    display: inline-block;
    margin-right: 10px;
    margin-top: 10px;
}
.header_search_key_list li a {
	padding: 4px 0;
    border: 1px solid #B2DDCA;
    display: block;
    border-radius: 3px;
    letter-spacing: 0;
    text-align: center;
    font-size: 13px;
    font-weight: 300;
    color: #FFF;
}
/*共通  ----------------------- */
.all_new_line { display:inline-block; letter-spacing:inherit; font-family:inherit; }

.all_text {
	font-size:14px;
}
.all_text_strong {
	font-weight:600;
	font-size:16px;
}
.all_button_sec {
	margin-top:60px;
}
.all_button_center .all_button {
	margin:0 auto;
}
.all_button {
	background:#fff;
	width:241px;
	max-width:100%;
	position:relative;
	border:1px #fff solid;
	border-radius:26px;
	display:block;
	text-align:center;
	letter-spacing:2px;
	line-height:48px;
	font-weight:600;
	font-size:15px;
	color:#333;
	transition: all .4s;
}
.all_button:after {
    content:"";
    background:url(../images/all_bg_arrow.png) no-repeat center right / 100% 100%;
    width:8px;
    height:14px;
    position:absolute;
    right:22px;
    top:calc(50% - 7px);
    display:block;
	transition: all .4s;
}
@media(min-width: 1025px){
	.all_button:hover { background: #0CAD63; border:1px #0CAD63 solid; opacity: 1; color:#FFF; }
	.all_button:hover:after { background-image: url(../images/all_bg_arrow_white.png); right:15px; }

    .all_btn_strength .all_button:hover { background: #FFF; border: 1px solid #FFF;  opacity: 1; color: #333;  }
    .all_button:hover:after { background-image: url(../images/all_bg_arrow.png); right:15px; }
}
.all_banner_list_sec {
	background:#F8F8F8;
	padding:75px 0 51px;
	position: relative;
}
.all_banner_list {
	text-align:center;
	letter-spacing:0;
	font-size:0;
}
.all_banner_list li {
	width:30.7%;
	display:inline-block;
	vertical-align:middle;
}
.all_banner_list li:nth-child(n+2) {
	margin-left:3.9%;
}
.all_banner_list img { width:100%; }
@media(min-width: 1025px){
    .all_banner_list li a { transition: all .3s; }
}

.all_sub_mv { background-repeat: no-repeat; background-size: cover; background-position: center; height: 550px; margin-top: 103px; position: relative; }
.message .all_sub_mv { background-image: url(../images/mv_message.jpg); }
.access .all_sub_mv { background-image: url(../images/mv_access.jpg); }
.manual .all_sub_mv { background-image: url(../images/mv_manual.jpg); }
.product_search .all_sub_mv { background-image: url(../images/mv_product.jpg); }
.tokusyu .all_sub_mv { background-image: url(../images/mv_tokusyu.jpg); }
.case_search .all_sub_mv { background-image: url(../images/mv_case.jpg); }
.history .all_sub_mv { background-image: url(../images/mv_history.jpg); }
.sdg.policy .all_sub_mv { background-image: url(../images/mv_sdg_policy.jpg); }
.sdg.risk_management .all_sub_mv { background-image: url(../images/mv_sdg_risk_management.jpg); }
.sdg.respect_for_human .all_sub_mv { background-image: url(../images/mv_sdg_respect_for_human.jpg); }
.sdg.social_initiatives .all_sub_mv { background-image: url(../images/mv_sdg_social_initiatives.jpg); }
.sdg.corporate_governance .all_sub_mv { background-image: url(../images/mv_sdg_corporate_governance.jpg); }
.sdg.compliance .all_sub_mv { background-image: url(../images/mv_sdg_compliance.jpg); }
.sdg.material_procurement .all_sub_mv { background-image: url(../images/mv_sdg_material_procurement.jpg); }
.sdg.respect_for_human_rights .all_sub_mv { background-image: url(../images/mv_sdg_respect_for_human_rights.jpg); }
.sdg.environmental_initiatives .all_sub_mv { background-image: url(../images/mv_sdg_environmental_initiatives.jpg); }

.all_sub_mv_pan {
    background: #FFF;
    width: 90%;
    max-width: 1400px;
    padding: 43px 50px 33px 0;
    position: absolute;
    bottom: -18px;
    left: 0;
}
.all_sub_mv_pan ul { float: right; letter-spacing: 0; font-size: 0; }
.all_sub_mv_pan li { position: relative; display: inline-block; font-size: 13px; color: #020202; }
.all_sub_mv_pan li:nth-child(n+2) {  }
.all_sub_mv_pan li a { position: relative; font-size: 13px; color: #BABABA; }
.all_sub_mv_pan li:nth-child(n-2) a { padding-right: 27px; }
.all_sub_mv_pan li:nth-child(n-2) a:after {
    content: "";
    background: url(../images/all_arrow_g_thin.png) no-repeat center right / 100% 100%;
    width: 8px;
    height: 14px;
    position: absolute;
    right: 8px;
    top: calc(50% - 7px);
    display: block;
}

.all_subbed_ttl { margin-top: 42px; position: relative; border-bottom: 1px solid #E2E0E0; line-height: 1; font-weight: 600; font-size: 29px; }
.all_subbed_ttl:after {
	content: "";
	background: #47AA7B;
	width: 48px;
	height: 1px;
	position: absolute;
	bottom: -1px;
}
.all_subbed_ttl_en { margin: 9px 0 31px; display: block; font-family: 'Poppins', sans-serif; font-size: 14px; font-weight: 100; color: #47AA7B; }
.nomv .all_subbed_ttl { margin-top: 78px; }

.all_banner_contact { background: rgb(42,192,124); background: linear-gradient(90deg, rgba(42,192,124,1) 0%, rgba(119,212,175,1) 100%); width: 95%; max-width: 1000px; margin: 0 auto; }
.all_banner_contact a { padding: 104px 0 87px; position: relative; display: block; letter-spacing: 0; font-size: 0; text-decoration: none; }
.all_banner_contact a:after { content: ""; background: url(../images/all_bg_arrow_white.png) no-repeat center / contain; width: 13px; height: 22px; position: absolute; top: 50%; right: 4.6%; transform: translateY(-50%); transition: all .3s; }
.all_banner_contact a:hover { opacity: 1; }
@media(min-width: 1025px){
    .all_banner_contact { background-size: 150%; background-position: 50%; transition: all .3s; }
    .all_banner_contact:hover { background-position: 0%; }
    .all_banner_contact a:hover:after { right: 3.6%; }
}
.all_banner_contact_l { width: 240px; padding-left: 60px; display: inline-block; vertical-align: middle; }
.all_banner_contact_en { line-height: 1; font-family: 'Poppins', sans-serif; font-size: 42px; color: #FFF; }
.all_banner_contact_main { margin-top: 9px; line-height: 1; font-size: 16px; color: #FFF; }
.all_banner_contact_r { width: calc(100% - 240px); padding: 0 60px 0 6.4%; display: inline-block; vertical-align: middle; }
.all_banner_contact_r > p { font-size: 15px; color: #FFF; }

.all_banner_list_sec_contact { margin-top: 154px; padding: 162px 0 57px; }
.all_banner_list_sec_contact .all_banner_contact {
	position: absolute;
	top: -154px;
	left: 50%;
	transform: translateX(-50%);
}
.grey_fix.all_banner_list_sec_contact .all_banner_contact { top: -142px; }
.grey_fix.all_banner_list_sec_contact { background: #FFF; margin-top: 0; padding: 172px 0 57px; }

.all_tableA { width: 100%; }
.all_tableA tr { border-bottom: 1px solid #E9E9E9; }
.all_tableA tr th { background: #F4F4F4; width: 25%; vertical-align: middle; text-align: center; font-size: 15px; font-weight: 700; }
.all_tableA tr td { background: #FAFAFA; padding: 20px 40px 20px 36px; font-weight: 300; font-size: 15px; }

.all_table_listA { margin-top: -16px; }
.all_table_listA li {
	padding: 16px 105px 14px 0;
    position: relative;
    border-bottom: 1px dashed #E9E9E9;
}
.all_table_listA li p { font-size: 15px; }
.all_table_listA li p a { font-size: 15px; color: #333; }

.all_map_btn { width: 92px; position: absolute; top: 50%; right: 0; transform: translateY(-50%); }
.all_map_btn a { background: #109458; padding: 6px 0; border-radius: 3px; position: relative; display: block; line-height: 1; text-align: center; font-size: 12px !important; font-weight: 600; color: #FFF !important; }
.all_map_btn a:after {
	content: "";
    background: url(../images/all_bg_arrow_white.png) no-repeat center / contain;
    width: 5px;
    height: 12px;
    position: absolute;
    top: 50%;
    right: 7px;
    transform: translateY(-50%);
    transition: all .3s;
}
.all_map_btn a:hover { opacity: 1; }
@media(min-width: 1025px){
    .all_map_btn a:hover:after { right: 3px; }
}
.all_ttlA { margin-bottom: 30px; padding-left: 26px; border-left: 1px solid #109458; line-height: 1.3; font-size: 22px; font-weight: 600; }
.all_ttlB { padding-left: 26px; border-left: 1px solid #109458; line-height: 1.3; font-size: 22px; font-weight: 600; }

.all_txtA { margin-bottom: 28px; line-height: 2.2; letter-spacing: 0; font-size: 17px; font-weight: 300; }
.all_txtA._last { margin-bottom: 40px; }

.all_sub_nomv { margin-top: 103px; border-bottom: 1px solid #E2E0E0; }
.all_sub_nomv .all_sub_mv_pan { max-width: 1200px; margin: 0 auto; padding: 26px 0 24px 0; position: static; left: 0; }

.all_contents_grey {
    background: #F8F8F8;
    padding: 70px 0 328px;
}
.all_contents_grey_inner { background: #FFF; padding: 84px 108px; }

.mb0 { margin-bottom: 0 !important; }

.all_more { width: 218px; }
.all_more a { position: relative; display: block; border: 1px solid #05C068; border-radius: 75px; line-height: 49px; text-align: center; font-weight: 500; font-size: 15px; color: #05C068; transition: all.3s; }
.all_more a .plus { height: 9px; width: 9px; position: absolute; top: 50%; right: 19px; transform: translateY(-50%); }
.all_more a .plus:before { content: ""; background: #05C068; border-radius: 9px; height: 3px; width: 9px; position: absolute; left: 0; top: 3px; transform: rotate(90deg); transition: all .3s; }
.all_more a .plus:after { content: ""; background: #05C068; border-radius: 9px; height: 3px; width: 9px; position: absolute; left: 0; top: 3px; transition: all .3s; }

@media (min-width: 1025px){
    .all_more a:hover { background: #05C068; color: #FFF; }
    .all_more a:hover .plus:before,
    .all_more a:hover .plus:after { background: #FFF; }
}

.all_side_nav_checkbox_check { display: none; }
.all_side_nav_checkbox_check:checked + .all_side_nav_checkbox_text:before { border: 1px #109458 solid; }
.all_side_nav_checkbox_text:before { content: ""; background: #EDFBF4; width: 21px; height: 21px; position: absolute; left: 0; top: 50%; transform: translateY(-50%); display: block; }
.all_side_nav_checkbox_check:checked + .all_side_nav_checkbox_text:after { content: ""; width: 7px; height: 10px; position: absolute; left: 7px; top: 50%; transform: translateY(-60%) rotate(45deg); border-bottom: 2px #109458 solid; border-right: 2px #109458 solid; display: block; }
.all_side_nav_checkbox_text { padding-left: 33px; position: relative; display: inline-block; line-height: inherit; letter-spacing: inherit; font-size: inherit; font-weight: 200; color: #192429; }

.radio_check { display: none; }
.radio_text:before { content: ""; background: #FFF; width: 17px; height: 17px; position: absolute; left: 0; top: 50%; transform: translateY(-50%); display: block; border: 1px solid #E2E0E0; border-radius: 25px; }
.radio_check:checked + .radio_text:after { content: ""; background: #05C068; width: 9px; height: 9px; position: absolute; border-radius: 20px; top: 50%; left: 4px; transform: translateY(-50%); display: block; }
.radio_text { padding-left: 24px; position: relative; display: inline-block; line-height: inherit; letter-spacing: inherit; font-size: inherit; color: #192429; }

.all_side_nav .product_search_form_bottom { display: none; }
.all_side_nav_head_sp { display: none; }

.tel_link { color: #333; }
.access_telfax { display: inline-block; }

.all_youtube {
    overflow: hidden;
	position: relative;
	width: 100%;
	height: 0;
	padding-top: 56.25%;
}
.all_youtube + .all_youtube {
	margin-top: 60px;
}
.all_youtube iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
	border: none;
}

.all_search_result_loader {
	height: 200px !important;
	padding-top: 20px !important;
}

.all_search_result_loader span,
.all_search_result_loader span:before,
.all_search_result_loader span:after {
	width: 25px !important;
	height: 25px !important;
	border-radius: 50% !important;
	animation: searchloader 1.8s infinite ease-in-out;

	animation-fill-mode: both;
}

.all_search_result_loader span {
	display: block !important;
	position: relative !important;
	margin: 0 auto !important;
	text-indent: -9999em !important;
	color: #7DD5B3 !important;
	font-size: 10px !important;
	transform: translateZ(0) !important;
	animation-delay: -.16s !important;
}

.all_search_result_loader span:before,
.all_search_result_loader span:after {
	position: absolute !important;
	top: 0 !important;
	content: '' !important;
}

.all_search_result_loader span:before {
	left: -40px !important;
	animation-delay: -.32s !important;
}

.all_search_result_loader span:after {
	left: 40px !important;
}

.all_search_img_loader {
	position: absolute !important;
	top: 50% !important;
	left: 50% !important;
	width: 44px !important;
	height: 44px !important;
	background-image: url(../images/search_result_loading.svg) !important;
	transform: translate(-50%, -50%) !important;
}

@keyframes searchloader {
	0%,
	80%,
	100% {
		box-shadow: 0 2.5em 0 -1.3em;
	}
	40% {
		box-shadow: 0 2.5em 0 0;
	}
}

.all_btnA { position: relative; }
.all_btnA a { background-image: linear-gradient(to right, #7DD5B3, #00B660); width: 171px; margin: 0 auto; position: relative; display: block; transition:  all .4s; border-radius: 30px; text-align: center; line-height: 45px; }
.all_btnA a span { position: relative; z-index: 1; display: block; color:#fff; border-radius:30px; border: 2px solid transparent; transition: all .4s; font-size: 16px; font-weight: 600; }
@media(min-width: 1025px){
	.all_btnA a:after { content: ""; background: #FFF; position: absolute; left: 1px; top: 1px; right: 1px; bottom: 1px; border-radius: 30px; opacity: 0; transition: all .4s; }
	.all_btnA a span { position: relative; z-index: 1; display: block; color:#fff; border-radius:30px; border: 2px solid transparent; transition: all .4s; font-size: 16px; font-weight: 600; }
}
.all_btnA.search_active a { background: #FFF; }
.all_btnA.search_active a span { color: #05C068; }
.all_btnA a:hover { opacity: 1; }
.all_btnA a:hover:after { opacity: 1; }
.all_btnA a:hover span { color: #000; border: 2px solid #04c067; }

.all_custom_banner { padding-top: 80px; }
.all_custom_banner p { text-align: center; }
.all_custom_banner img { max-width: 100%; height: auto; }
.all_custom_banner p a { transition: all .4s; }
.products_details_intro + .all_custom_banner { padding-top: 66px; }
.mid_contact + .all_custom_banner { padding: 0px 0 80px; }

.all_img_block { margin-bottom: 60px; padding-bottom: 60px; border-bottom: 1px solid #E2E0E0;}
.all_img_block:last-of-type { margin-bottom: 0; padding-bottom: 0; border: none;}
.all_img_block_ttl { margin-bottom: 50px; color: #00893F; line-height: 1.3; font-size: 22px; font-weight: 600; }
.all_img_block_list { display: flex; justify-content: space-between; }
.all_img_block_list li { width: 47.5%; }
.all_img_block_list li img { width: 100%; height: auto; }
.all_img_block_list li figcaption { margin-top: 20px; color: #000; line-height: 1.3; font-size: 17px; font-weight: 600; }


.all_toc_inner {
	margin-top: 50px;
	padding: 25px;
    border: 1px solid #C4C4C4;
    border-radius: 5px;
}
.all_toc_hdg {
	margin-bottom: 25px;
	padding-bottom: 10px;
	border-bottom: 1px solid #C4C4C4;
	font-size: 18px;
	font-weight: 700;
}
.all_toc_list_item {
	letter-spacing: .1em;
	padding-left: 1.5em;
	text-indent: -1.5em;
}
.all_toc_list_item a {
	font-weight: 700;
	color: #00893F;
	font-size: 17px !important;
	font-weight: 700 !important;
	word-break: break-all;
	text-decoration: none !important;
	transition: .3s;
}
.all_toc_list_item_3 {
	letter-spacing: .1em;
	margin-top: 5px;
	padding-left: 1em;
	text-indent: -1em;
}
.all_toc_list_item_3 a {
	font-weight: 500;
	color: #00893F;
	font-size: 15px !important;
	font-weight: 500 !important;
}
.all_toc_list_item_3 ul {
	margin-bottom: 5px;
}
.all_toc_list_item_4 {
	letter-spacing: .1em;
	margin-top: 5px;
	padding-left: 1em;
	text-indent: -1em;
}
.all_toc_list_item_4 a {
	font-weight: 500;
	color: #00893F;
	font-size: 15px !important;
	font-weight: 500 !important;
}
.all_toc_list_item:not(:first-of-type) {
	margin-top: 15px;
}

.all_toc_list_item a:hover {
	opacity: .7;
}


/* #header ヘッダー
=========================================== */
#header {
	width:100%;
	height:103px;
	position:fixed;
	left:0;
	top:0;
	z-index:10;
}
.header_logo {
	width:148px;
	position:absolute;
	left:57px;
	top:25px;
	z-index:2;
}
.header_content {
	background: #FFF;
	width: 100%;
	text-align: center;
}
.top .header_content {
	background: transparent;
    width: 100%;
}
.header_list {
    padding-right: 340px;
    position: relative;
    z-index: 1;
    text-align: right;
    letter-spacing: 0;
    font-size: 0;
}
.header_list > li {
	display: inline-block;
	vertical-align: top;
}
.header_list > li:nth-child(n+2) {
	margin-left: 51px;
}
.header_link_cont > a {
	padding: 40px 0;
    display: block;
	letter-spacing: 2px;
	font-weight: 600;
	font-size: 15px;
	color: #1A1A1A;
}
#header.sticky {
    height: 75px;
}
.top .header_link_cont > a {
    text-shadow: rgba(0,0,0,0.88) 0 0 4px;
    color: #fff;
}
@media(min-width: 1025px) {
    #header.sticky .header_link_cont > a {
        padding: 27px 0;
    }
    .top #header.sticky .header_link_cont > a {
        text-shadow: none;
        color: #1A1A1A;
    }
}

.header_list_sub_sec {
	display: none;
    background: #FFF;
    width: 90%;
    max-width: 1220px;
    margin-top: 20px;
    padding: 55px 50px 70px 50px;
    position: absolute;
    top: 80px;
    left: 50%;
    transform: translateX(-50%);
    text-align: left;
    letter-spacing: 0;
    font-size: 0;
}
#header.sticky .header_list_sub_sec {
    top: 52px;
}
.header_list_sub_suggest_business { width: calc(100% - 275px); padding-right: 4%; display: inline-block; vertical-align: top; }
.header_list_sub_suggest_head { padding-bottom: 15px; position:relative; border-bottom:1px #EDEDED solid; }
.header_list_sub_suggest_head:after { content:""; background:#009454; width:32px; height:1px; position:absolute; left:0; bottom:-1px; display:block; }
.header_list_sub_suggest_head a { padding-right:15px; position:relative; display:inline-block; font-weight:600; font-size:17px; color:#333; }
.header_list_sub_suggest_head a:after { content:""; background:url(../images/all_bg_arrow.png) no-repeat center / 100% 100%; width:8px; height:14px; position:absolute; right: 0; top:calc(50% - 7px); display:block; }
.header_list_sub_suggest_list { margin-top: 33px; letter-spacing: 0; font-size: 0; }
.header_list_sub_suggest_list li { width: 30.2%; margin-right: 4.7%; vertical-align: top; display: inline-block; }
.header_list_sub_suggest_list li:nth-child(n+4) { margin-top: 25px; }
.header_list_sub_suggest_list li:nth-child(3n+3) { margin-right: 0; }
.header_list_sub_suggest_list li a { display: block; letter-spacing: 0; font-size: 0; }

.header_list_sub_suggest_list_head { width: 106px; margin-right: 12px; display: inline-block; vertical-align: middle; }
.header_list_sub_suggest_list_head img { width: 100%; border-radius: 5px; }
.header_list_sub_suggest_list_txt { width: calc(100% - 118px); display: inline-block; vertical-align: middle; letter-spacing: 0; font-weight: 600; font-size: 15px; color: #000; }
.header_list_sub_suggest_right { width: 275px; display: inline-block; vertical-align: top; }
.header_list_sub_suggest_right_list { margin-top: 33px; letter-spacing: 0; font-size: 0; }
.header_list_sub_suggest_right_list li { width: 50%; display: inline-block; vertical-align: top; }
.header_list_sub_suggest_right_list li:nth-child(n+3) { margin-top: 16px; }
.header_list_sub_suggest_right_list li:nth-child(2n+1) { width: 55.5%; }
.header_list_sub_suggest_right_list li:nth-child(2n+2) { width: 44.5%; }
.header_list_sub_suggest_right_list li a { display: block; font-size: 15px; font-weight: 600; color: #000; }


.header_list_sub_sec_sp { display: none; }
.header_list_sub_sec_sp_list { display: none; }
.header_list > li > a {

}
.header_link_cont { position: relative; }
.header_sp_sub2 {
    width: 60px;
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 2;
}

.header_sp_sub2:after {
    content: "";
    background: url(../images/all_bg_arrow_white.png) no-repeat center / contain;
    width: 7px;
    height: 12px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    transition: all .4s;
}
.header_list > li.on .header_sp_sub:after { transform: translate(-50%,-50%) rotate(90deg); }
.header_list_sub_sec_sp > ul > li.on .header_sp_sub2:after { transform: translate(-50%,-50%) rotate(90deg); }
.header_list_sub_sec_sp ul {  }
.header_list_sub_sec_sp > ul > li {  }
.header_list_sub_sec_sp > ul > li .header_link_cont { border-bottom: 1px solid #418667; border-top: 1px solid #418667; }
.header_list_sub_sec_sp ul > li .header_link_cont > a {
    background: #24724F;
    padding: 20px 34px;
    display: block;
    font-weight: 400;
    position: relative;
    font-size: 14px;
    color: #FFF;
    text-shadow: none;
}

.header_list_sub_sec_sp_list {
    background: #24724F;
}
.header_list_sub_sec_sp_list > li {  }
.header_list_sub_sec_sp_list > li > a {
    background: #24724F;
    padding: 16px 0 16px 35px;
    border-bottom: 1px solid #ffffff0d;
    display: block;
    text-align: left;
    font-weight: 200;
    font-size: 13px;
    color: #FFF;
}

.header_list_sub_company ul { letter-spacing: 0; font-size: 0; }
.header_list_sub_company ul li { width: 22.4%; margin-left: 3.45%; display: inline-block; vertical-align: top; }
.header_list_sub_company ul li:nth-child(4n+1) { margin-left: 0; }
.header_list_sub_company ul li:nth-child(n+5) { margin-top: 24px; }
.header_list_sub_company ul li a { display: block; }
.header_list_sub_company ul li p.header_list_sub_company_head a { padding-right:20px; position:relative; display:inline-block; font-weight:600; font-size:23px; color:#333; }
.header_list_sub_company_head a:after { content:""; background:url(../images/all_bg_arrow.png) no-repeat center / 100% 100%; width:8px; height:14px; position:absolute; right: 0; top:12px; display:block; }
.header_list_sub_company_head span { margin-top: 1px; display: block; font-family: 'Poppins', sans-serif; font-size: 13px; font-weight: 200; color: #109458; }
.header_list_sub_company_img { display: block; }
.header_list_sub_company_img img { width: 100%; border-radius: 5px; }
.header_list_sub_company_txt { margin-top: 14px; padding-right: 15px; position:relative; display:inline-block; font-weight:600; font-size:16px; color:#333; }
.header_list_sub_company_txt:after { content:""; background:url(../images/all_bg_arrow.png) no-repeat center / 100% 100%; width:8px; height:14px; position:absolute; right: 0; top:calc(50% - 7px); display:block; }
.header_list_sub_company_txt._blank:after {
	background:url(../images/all_blank.svg) no-repeat center / 100% 100%;
	width:14px;
	height:12px;
	position:absolute;
	right: -5px;
	top: calc(50% - 7px);
	display:block;
}
.menu_overlay { display: none; position: fixed; height: 100vh; width: 100vw; left: 0; top: 0; background: rgba(0,0,0,.5); z-index: 5 }
.header_sp_info { display: none; }

@media (min-width: 1025px) {
	.header_list_sub_company ul li a,
	.header_list_sub_company_head a:after,
	.header_list_sub_company_txt:after,
	.header_list_sub_suggest a,
	.header_list_sub_suggest_head a:after { transition: all .4s; }

	.header_list_sub_company ul li a:hover:after,
	.header_list_sub_company ul li a:hover .header_list_sub_company_txt:after,	
	.header_list_sub_suggest_head a:hover:after { right: -5px; }
}

.header_logo img {
	width:100%;
}
.header_search {
	width:45px;
	height: 45px;
	position:absolute;
	right:238px;
	top:50%;
	transform:translateY(-50%);
	z-index: 1;
}
.header_search_sp { display: none; }
.header_search a {
	background: #FFF;
	height: 100%;
	display:block;
	border-radius:50%;
	box-shadow:rgba(0,0,0,0.15) 0 0 5px;
}
.header_search:after {
	content: "";
	background: url(../images/all_magni_g.png) no-repeat center / contain;
	width: 19px;
	height: 20px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	cursor: pointer;
}
@media(min-width: 1025px){
	.header_search a { transition: all .3s; }
	.header_search:hover a { background: #05C068; transform: scale(1.3); opacity: 1; }
	.header_search:hover:after { background: url(../images/all_magni_w.png) no-repeat center / contain; }

}
.header_contact {
	position:absolute;
	right:45px;
	top:50%;
	transform:translateY(-50%);
	z-index: 1;
}
.header_contact a {
	background-image:linear-gradient(to right, #7DD5B3, #00B660);
	width:171px;
	display:block;
	transition: all .4s;
	border-radius:30px;
	text-align:center;
	line-height:45px;
}
@media(min-width: 1025px){
	.header_contact a:after {
	    content: "";
	    background: #FFF;
	    position: absolute;
	    left: 1px;
	    top: 1px;
	    right: 1px;
	    bottom: 1px;
	    border-radius: 30px;
	    opacity: 0;
	    transition: all .4s;
	}
	.header_contact a span {
		position: relative;
		z-index: 1;
		display: block;
		color:#fff;
		border-radius:30px;
		border: 2px solid transparent;
		transition: all .4s;
	}
}
.header_contact.search_active a {
    background: #FFF;
}
.header_contact.search_active a span {
    color: #05C068;
}
.header_contact a:hover { opacity: 1; }
.header_contact a:hover:after {
	opacity: 1;
}
.header_contact a:hover span {
	color: #000;
	border: 2px solid #04c067;
}


@media(max-width: 1024px) {
    .top #header.sticky .header_content { top: 0 !important; }
}

#header { transition: all .3s; }
#header .header_logo { transition: all .3s; }

.header_logo.search_active .header_logo_w { display: block !important; }
.header_logo.search_active .header_logo_g { display: none !important; }

.top #header .header_logo_g { display: none; }
.top #header.sticky .header_logo_w { display: none; }
.top #header.sticky .header_logo_g { display: block; }


#header .header_link_cont > a:hover { opacity: 1; }
@media(min-width: 1025px){
    #header .header_link_cont > a { position: relative; z-index: 2; transition: all .2s; }
    #header .header_link_cont > a:after { content: ""; background: #109458; height: 2px; width: 0; position: absolute; bottom: 0; left: 0; transition: all .3s; }
    #header .header_link_cont > a:hover:after { width: 100%; }
    #header .header_list > li.active .header_link_cont > a:after { width: 100%; }
}



.top #header .header_logo_w { display: block; }
.top #header.sticky { background: #FFF; }
#header.sticky .header_logo { top: 15px; }
#header .header_logo_w { display: none; }
#header .header_logo_g { display: block; }

/* #top　トップページ
=========================================== */
.top_mv {
	width:100%;
	height:100vh;
	position:relative;
	z-index:2;
}
.top_mv_slide_big_sec {
	width:100%;
	height:100%;
	position:absolute;
	left:0;
	top:0;
}
.top_mv_slide_big_sec .slick-list,
.top_mv_slide_big_sec .slick-track { height:100%; }
.top_mv_slide_big {
	width:100%;
	height:100%;
	outline:none;
    position: relative;
}
.top_mv_slide_big:after {
    content:"";
    background:linear-gradient(to bottom, rgba(170,208,255,0) , rgba(184,209,246,100));
    width:100%;
    height:216px;
    position:absolute;
    left:0;
    bottom:0;
    display:block;
}
.top_mv_slide_big_impression {
	background:url(../images/top_bg_mv_impression.jpg) no-repeat center / cover;
}
.top_mv_slide_big_60 {
	background:url(../images/top_bg_mv_60.jpg) no-repeat center / cover;
}
.top_mv_anniversary_logo {
	height:17vh;
	margin-bottom:9vh;	
}
.top_mv_anniversary_logo img { width:auto; height:100%; }

.top_mv_text_sec {
	width:50%;
	position:absolute;
	left:11%;
	bottom:16.5vh;
	z-index:2;
}
.top_mv_head {
	text-shadow:rgba(0,0,0,0.87) 0 0 3px;
	letter-spacing:2px;
	color:#fff;
}
.top_mv_title {
	margin-top:8px;
	text-shadow:rgba(0,0,0,0.87) 0 0 3px;
	letter-spacing:3px;
	font-weight:600;
	font-size:36px;
	color:#fff;
}
.top_mv_text_sec .all_text_strong {
	margin-top:8px;
	text-shadow:rgba(0,0,0,0.87) 0 0 3px;
	line-height:2.2;
	color:#fff;
}
.top_mv_slide_small_sec {
	width:26.4%;
	max-width:397px;
	position:absolute;
	right:3.3%;
	bottom:130px;
	z-index: 1;
}
.top_mv_slide_small_number {
	position:relative;
}
.top_mv_slide_small_number_nb {
	line-height:1;
	font-weight:700;
	font-size:30px;
	font-family: 'Heebo', sans-serif;
	color:#fff;
}
.top_mv_slide_small_number_timer {
    content:"";
    background:#CBCBCB;
    width:calc(100% - 140px);
    height:1px;
    position:absolute;
    right:95px;
    top:50%;
    display:block;
}
.top_mv_slide_small_number_timer .progress {
    width: 0;
    height: 100%;
    background: #2AC07C;
    position: absolute;
    top: 0;
    left: 0;
}
.top_mv_slide_small_inner {
	margin-top:22px;
	opacity: 0;
	transition: all .4s;
}
.top_mv_slide_small_inner.slick-initialized {
	opacity: 1;
}
.top_mv_slide_small {
	position:relative;
	outline:none;
	border-radius:5px;
	overflow:hidden;
}
.top_mv_slide_small a {
	position: relative;
	display: block;
}
.top_mv_slide_small a:after {
    content:"";
    background:rgba(0,0,0,0.5);
    width:100%;
    height:100%;
    position:absolute;
    left:0;
    top:0;
    display:block;
}
.top_mv_slide_small_img {
	overflow: hidden;
}
.top_mv_slide_small img { width:100%; transition: all .3s; }
@media(min-width: 1025px){
	.top_mv_slide_small a:hover { opacity: 1; }
	.top_mv_slide_small a:hover img { transform: scale(1.05); }
}
.top_mv_slide_small_inner .slick-prev {
	background:url(../images/top_bg_mv_slide_prev.png) no-repeat center / cover;
	width:34px;
	height:34px;
	top:-38px;
	right:45px;
	left:auto;
}
.top_mv_slide_small_inner .slick-next {
	background:url(../images/top_bg_mv_slide_next.png) no-repeat center / cover;
	width:34px;
	height:34px;
	right:0;
	top:-38px;
}
.top_mv_slide_small_inner .slick-prev:before,
.top_mv_slide_small_inner .slick-next:before { display:none; }
.top_mv_slide_small_text {
	position:absolute;
	left:32px;
	bottom:20px;
	z-index:2;
	color:#fff;
}
.top_mv_slide_small_text span:nth-child(1) {
	display:block;
	font-size:13px;
}
.top_mv_slide_small_text span:nth-child(2) {
	margin-top:2px;
	display:block;
	font-weight:600;
	font-size:17px;
}


.top_mv_news {
	background:#fff;
	width:95%;
	max-width:880px;
	padding:27px 70px 27px 35px;
	position:absolute;
	right:0;
	bottom:0;
	z-index:2;
	border-radius:5px 0 0 5px;
	letter-spacing:0;
	font-size:0;
}
.top_mv_news_head {
	width:72px;
	display:inline-block;
	vertical-align:middle;
	border-right:1px #D7D3D3 solid;
	letter-spacing:2px;
	color:#009454;
}
.top_mv_news_list {
	width:calc(100% - 72px);
	padding-left:20px;
	display:inline-block;
	vertical-align:top;
}
.top_mv_news_list li {
	width:100%;
	display:block;
}
.top_mv_news_list a {
	max-width:100%;
	padding-right:20px;
	position:relative;
	display:inline-block;
	overflow:hidden;
}
.top_mv_news_list a:after {
    content:"";
    background:url(../images/all_bg_arrow.png) no-repeat center right / 100% 100%;
    width:8px;
    height:14px;
    position:absolute;
    right:0;
    top:calc(50% - 7px);
    display:block;
}
.top_mv_news_list a > span {
	width:100%;
	display:block;
	overflow:hidden;
	text-overflow: ellipsis;
    white-space: nowrap;
}
.top_mv_news_list_date {
	margin-right:15px;
	color:#9FA29E;
}
.top_mv_news_list_title {
	display: inline-block;
	position: relative;
	color:#333;
}
.top_mv_news_list_title:after {
	content: "";
	background: #000;
	width: 0;
	height: 1px;
	position: absolute;
	left: 0;
	bottom: 0;
	transition: all .3s;
}
@media(min-width: 1025px){
	.top_mv_news_list a:hover { opacity: 1; }
	.top_mv_news_list a:hover .top_mv_news_list_title:after {
		width: 100%;
	}
}
.top_mv_news_all {
	position:absolute;
	right:22px;
	top:50%;
	transform:translateY(-50%);
}
.top_mv_news_all a {
	background:url(../images/top_bg_mv_news_all.png) no-repeat center top / 13px;
	padding:20px 0 0 2px;
	display:block;
	letter-spacing:2px;
	line-height:1;
	font-size:11px;
	color:#515151;
    transition: all .4s;
}

.top_mv_follow {
	position:absolute;
	left:60px;
	top:50%;
	z-index:2;
	transform:translateY(-50%);
	text-align:center;
}
.top_mv_follow_head {
	padding-bottom:45px;
	position:relative;
}
.top_mv_follow_head:after {
    content:"";
    background:#D5D5D5;
    width:1px;
    height:34px;
    position:absolute;
    left:50%;
    bottom:0;
    display:block;
}
.top_mv_follow_list {
	margin-top:12px;
}
.top_mv_follow_list li:nth-child(n+2) {
	margin-top:12px;
}
.top_mv_follow a {
	display:block;
	font-size:0;
}
.top_mv_follow img {
	vertical-align:top
}
.top_mv_scroll {
	position:absolute;
	left:58px;
	top:calc(100% - 160px);
	z-index:2;
}
.top_mv_scroll_text { position: relative; left: -2px; }
.top_mv_scroll_border {
	background:#B7DDFF;
	width:1px;
	height:223px;
	margin-top:7px;
	position:relative;
}
.top_mv_scroll_border:after {
    content:"";
    background:#fff;
    width:7px;
    height:7px;
    position:absolute;
    left:calc(50% - 4px);
    top:0;
    display:block;
    border-radius:50%;
    animation:scroll_indic 3s ease infinite;
}
@keyframes scroll_indic {
	0% {
		transform: translateY(0);
	}
	70% {
		opacity: 1;
	}
	100% {
		transform: translateY(220px);
		opacity: 0;
	}
}
.top_title {
	position:relative;
	color:#005B84;
    z-index: 1;
}
.top_case_ttl_sp { display: none; }
.top_title_number {
	position:absolute;
	left:-25px;
	top:50%;
	transform:translateY(-65%);
	line-height:1;
	font-size:155px;
	font-family: 'Oswald', sans-serif;
	color:#96D0FF;
}
.top_title_head {
	position:relative;
	z-index:2;
	line-height:1;
	font-size:46px;
	font-family: 'Poppins', sans-serif;
}
.top_title_main {
	position:relative;
	z-index:2;
	margin-top:18px;
	letter-spacing:2px;
	font-weight:300;
	font-size:13px;
}
.top_strength {
	padding:75px 0 90px;
	position:relative;
}
.top_strength:before {
    content:"";
    background:linear-gradient(to bottom, rgba(184,209,246,100),rgba(170,208,255,0));
    width:100%;
    height:168px;
    position:absolute;
    left:0;
    top:0;
    z-index:1;
    display:block;
}
.top_strength:after {
    content:"";
    background:url(../images/top_bg_strength.jpg) no-repeat center / cover;
    width:100%;
    height:79.2vw;
    position:absolute;
    right:0;
    bottom:0;
    display:block;
}
.top_strength .content {
	position:relative;
	z-index:3;
}
.top_strength_list {
	margin-top:55px;
	letter-spacing:0;
	font-size:0;
}
.top_strength_list li {
	width:32%;
	display:inline-block;
	vertical-align:top;
}
.top_strength_list li:nth-child(n+2) {
	margin-left:2%;
}
.top_strength_list a {
	width:100%;
	height:207px;
	padding:85px 10px 0;
	display:block;
	border:2px #fff solid;
	text-align:center;
	position: relative;
	opacity: 1 !important;
}
.top_strength_list_info_bg {
	width: 100%;
	height: 100%;
	position: absolute;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: -1;
}
.top_strength_list_info .top_strength_list_info_bg {
	background:url(../images/top_bg_strength_list_info.jpg) no-repeat center / cover;
}
.top_strength_list_suggest .top_strength_list_info_bg {
	background:url(../images/top_bg_strength_list_suggest.jpg) no-repeat center / cover;
}
.top_strength_list_develop .top_strength_list_info_bg {
	background:url(../images/top_bg_strength_list_develop.jpg) no-repeat center / cover;
}
@media(min-width: 1025px) {
	.top_strength_list a { overflow: hidden; }
	.top_strength_list a .top_strength_list_info_bg { transition: all .3s; }
	.top_strength_list a:hover { opacity: 1; }
	.top_strength_list a:hover .top_strength_list_info_bg { transform: translate(-50%,-50%) scale(1.1); }
}
.top_strength_list_main {
	text-shadow:rgba(0,0,0,0.55) 0 0 3px;
	letter-spacing:3px;
	font-weight:600;
	font-size:21px;
	color:#fff;
}
.top_strength_list_sub {
	margin-top:2px;
	letter-spacing:2px;
	font-size:13px;
	color:#AEAEAE;
}
.top_bg_sec {
	background:#E4E8EB;
}
.top_case {
	background:#fff;
	position:relative;
}
.top_case .content {
	padding:200px 0 115px;
	position:relative;
}
.top_case .content:before {
    content:"";
    background:url(../images/top_bg_case_bottom.png) no-repeat center top / cover;
    width:calc(68vw);
    height:calc((68vw - 125px) * 0.593);
    position:absolute;
    left:38%;
    top:100%;
    display:block;
}
.top_case .content:after {
    content:"";
    background:linear-gradient(to bottom, #2AC07C, #77D4AF);
    width:100vw;
    height:calc(100% + 415px);
    position:absolute;
    right:62%;
    top:0;
    display:block;
}
.top_case .top_title_number {
	top:55px;
	left:-100px;
	z-index:2;
	transform:none;
	color:#28B374;
}
.top_case_img {
	width:44.9%;
	height:100%;
	position:absolute;
	left:0;
	top:95px;
	z-index:2;
}
.top_case_img div:nth-child(1) {
	background:url(../images/top_bg_case_1.jpg) no-repeat right top / cover;
	width:100%;
	height:74%;
	border-radius:5px;
	box-shadow:rgba(0,0,0,0.23) -10px 20px 64px;
}
.top_case_img div:nth-child(2) {
	background:url(../images/top_bg_case_2.jpg) no-repeat right top / cover;
	width:85.7%;
	height:33.6%;
	position:relative;
	right:-17%;
	margin:-26% 0 0 auto;
	border-radius:5px;
	box-shadow:rgba(0,0,0,0.23) -11px 22px 70px;
}
.top_case_title {
	position:relative;
	left:-17px;
	z-index:2;
	transform-origin:left bottom;
	transform:rotate(90deg) translateY(100%);
	color:#fff;
}
.top_case_title .top_title_head {
	display:inline-block;
	vertical-align:middle;
}
.top_case_title .top_title_main {
	margin-top:0.5em;
	display:inline-block;
	vertical-align:middle;
}
.top_case_content {
	width:41.8%;
	padding:0 30px;
	margin-left:auto;
	position:relative;
	z-index:2;
}
.top_case_number_sec span { vertical-align:middle; }
.top_case_number_total {
	margin-right:15px;
	letter-spacing:2px;
	font-weight:500;
	font-size:32px;
	font-family: 'Oswald', sans-serif;
}
.top_case_number_block {
	background:#FAFAFA;
	width:55px;
	height:91px;
	margin:-35px 5px 0 0;
	padding-top:3px;
	display:inline-block;
	border:1px #EAE6E6 solid;
	border-radius:3px;
	vertical-align:top;
	text-align:center;
	line-height:1;
	letter-spacing:0;
	font-weight:500;
	font-size:80px;
	font-family: 'Oswald', sans-serif;
	color:#0CAD63;
}
.top_case_number_big {
	margin:0 8px 0 5px;
	font-weight:600;
	font-size:28px;
	color:#333;
}
.top_case_number_small {
	font-weight:600;
	font-size:18px;
	color:#333;
}
.top_case_content .all_text_strong {
	margin-top:30px;
	line-height:2.1;
}
.top_case_search_list_sp { display: none; }
.top_case_search_list {
	margin-top:70px;
	letter-spacing:0;
	font-size:0;
}
.top_case_search_list li {
	width:48.2%;
	display:inline-block;
	vertical-align:top;
}
.top_case_search_list li:nth-child(2) {
	margin-left:3.6%;
}
.top_case_search_list .all_button {
	border:1px #BFBFBF solid;
	letter-spacing:1px;
}
.top_case_search_list .all_button:after {
	right:15px;
}
@media(min-width: 1025px) {
	.top_case_search_list .all_button:hover:after { right:10px; }
}
.top_case_search_sub {
	margin-top:55px;
	padding-top:30px;
	border-top:1px #DADADA dashed; 
}
.top_case_search_sub_title {
	font-size:17px;
}
.top_case_search_sub_list {
	margin-top:8px;
	letter-spacing:0;
	font-size:0;
}
.top_case_search_sub_list li {
	width:32.6%;
	display:inline-block;
	vertical-align:top;
}
.top_case_search_sub_list li:nth-child(n+2) {
	margin-left:1.1%;
}
.top_case_search_sub_list li:nth-child(3n-2) {
	margin-left:0;
}
.top_case_search_sub_list li:nth-child(n+4) {
	margin-top:1.1%;
}
.top_case_search_sub_list a {
	padding:5px;
	display:block;
	border:1px #B2DDCA solid;
	border-radius:3px;
	text-align:center;
	font-weight:600;
	font-size:13px;
	color:#007241;
	transition: all .4s;
}
@media(min-width: 1025px) {
	.top_case_search_sub_list a:hover {
		background: #007241;
		opacity: 1;
		color: #FFF;
	}
}
.top_product {
	padding:115px 0 85px;
	position:relative;
	z-index:2;
}
.top_product .top_title_number {
	color:#75DBB1;
}
.top_product .top_title {
	color:#fff;
}
.top_product_tab {
	margin-top:50px;
	padding-bottom: 20px;
	overflow: auto;
	white-space: nowrap;
	letter-spacing:0;
	font-size:0;
}
.top_product_tab li {
	margin-right:40px;
	display:inline-block;
	vertical-align:top;
}
.top_product_tab li:last-child {
	margin-right:0;
}
.top_product_tab a {
	position:relative;
	display:block;
	font-weight:600;
	font-size:15px;
	color:#020202;
}
.top_product_tab a:after {
    content:"";
    background:#fff;
    width:0;
    height:2px;
    position:absolute;
    right:0;
    bottom:-10px;
    display:block;
    opacity:1;
    transition: width 0.4s ease;
}
.top_product_tab a.on:after,
.top_product_tab a.hover:after {
	width:100%;
	left:0;
}
.top_product_tab a.hover { opacity:1; }

.top_product_bloc_hidden { display: none; }
.top_product_list {
	margin-top:50px;
	letter-spacing:0;
	font-size:0;
}
.top_product_list li {
	width: 20%;
	display: inline-block;
	vertical-align: top;
}
.top_product_list li a {
    display: block;
    letter-spacing: 0;
    font-size: 0;
    color: #333;
}
.top_product_list li:nth-child(n+2) {
    margin-left: 6.6%;
}
.top_product_list li:nth-child(4n-3) {
	margin-left: 0;
}
.top_product_list li:nth-child(n+5) {
	margin-top: 55px;
}
.top_product_list .top_product_list_image {
	background: #FFF;
	width:100%;
	display:block;
	border-radius:5px;
	box-shadow:rgba(123,145,162,0.28) 0 1px 24px;
	position: relative;
	overflow: hidden;
}
.top_product_list .top_product_list_image span {
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	padding-top: 100%;
	display: block;
}
.top_product_list .all_text_strong {
	margin-top:20px;
	letter-spacing:0;
	color:#020202;
}
.top_product_list .all_text_strong span {
	display: inline-block;
	position: relative;
}
.top_product_list .all_text_strong span:after {
	content: "";
	background: #000;
	width: 0;
	height: 1px;
	position: absolute;
	bottom: 0;
	left: 0;
	transition: all .3s;
}
@media(min-width: 1025px) {
	.top_product_list .top_product_list_image span {
		transition: all .3s;
	}
	.top_product_list li a:hover {
		opacity: 1;
	}
	.top_product_list li a:hover .top_product_list_image span {
		transform: scale(1.1);
	}
	.top_product_list li a:hover .all_text_strong span:after {
		width: 100%;
	}
}
.top_product_list .all_text {
	margin-top:2px;
	display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
	line-height:1.7;
	font-weight:300;
}
.top_product_button {
	margin-top:70px;
}
.top_product_button .all_button { width:221px; }

.content_magazine { width: 85%; max-width: 1220px; margin: 0 auto; }
.top_magazine { background: url(../images/top_bg_magazine.jpg) no-repeat center / cover; margin-top: 5px; padding: 80px 0 65px; }
.top_magazine .top_title { text-align: center; color: #fff; }
.top_magazine .top_title_number { left: 50%; top: 50%; transform: translate(-50%,-82%); font-size: 145px; color: #fff; opacity: 0.1; }
.top_magazine_slide_sec_wrapper { position: relative; }
.top_maga_nav { background-size: 10px; background-repeat: no-repeat; background-position: center; width: 42px; height: 42px; position: absolute; top: 50%; transform: translateY(-50%); z-index: 5; display: inline-block; border: 1px rgba(255,255,255,0.5) solid; border-radius: 50%; cursor: pointer; }
.top_maga_nav svg { position: absolute; left: -1px; top: -1px; transform: rotate(-90deg); opacity: 0; }
.top_maga_nav circle { fill: transparent; stroke: #fff; stroke-width: 2; }
.top_maga_nav:hover svg { opacity:1; }
.top_maga_nav:hover circle { animation: circle 1s ; opacity:1; }
.slick-arrow { display: none !important; }
@keyframes circle {
  0% { stroke-dasharray: 0 377; }
  100%,to { stroke-dasharray: 377 377; }
}
.top_maga_prev { background-image: url(../images/top_maga_arrow_l.png);  left: -6.3%; }
.top_maga_next { background-image: url(../images/top_maga_arrow_r.png);  right: -6.3%; }

.top_magazine_slide_sec { margin: 40px -13px 0; }
.top_magazine_slide { width: 25%; padding: 0 13px; outline: none; }
.top_magazine_slide_inner { background: #fff; border-radius: 5px; }
.top_magazine_slide_img {
	width: 100%;
	height: 200px;
	display: block;
	border-radius: 5px 5px 0 0;
	box-shadow: rgba(123,145,162,0.28) 0 1px 24px;
	position: relative;
	overflow: hidden;
}
.top_magazine_slide_img span {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
    transition: all .3s;
}
.top_magazine_slide img { width: 100%; border-radius: 5px; border-bottom-right-radius:  0; border-bottom-left-radius:  0; transition: all .3s; }
.top_magazine_slide a { display: block; }
.top_magazine_slide a:hover { opacity: 1; }
.top_magazine_slide_title { padding: 20px 20px 0; font-weight: 600; color: #000; }
.top_magazine_slide_text { padding: 20px 20px 12px; font-weight: 300; font-size: 12px; color: #989898; color: #000; }
.top_magazine_slide_sec .slick-prev { background: url(../images/top_bg_magazine_prev.png) no-repeat center / cover; width: 41px; height: 41px; left: -5%; }
.top_magazine_slide_sec .slick-next { background: url(../images/top_bg_magazine_next.png) no-repeat center / cover; width: 41px; height: 41px; right: -5%; }
.top_magazine_slide_sec .slick-prev:before,
.top_magazine_slide_sec .slick-next:before { display:none; }
.top_magazine_button { margin-top: 40px; }
.top_magazine_button .all_button { background: none; width: 221px; padding-left: 30px; border: 1px #CBCBCB solid; text-align: left; color: #fff; }
@media(min-width: 1025px) {
	.top_magazine_button .all_button:hover {
		background: #0CAD63;
		border:1px #0CAD63 solid;
	}
    .top_magazine_slide_img { display: block; overflow: hidden; }
    .top_magazine_slide a:hover span { transform: scale(1.1); }
}
.top_company { padding: 115px 0 0; }
.top_company .top_title { color: #333; }
.top_company .top_title_number { color: #F6F6F6; }
.top_company_list_sec { margin-top: 75px; padding-bottom: 90px; position: relative; }
.top_company_list_sec:after { content: ""; background: linear-gradient(to right, #2AC07C, #77D4AF); width: 100%; height: calc(100% - 40px); position: absolute; left: 0; bottom: 0; display: block; }
.top_company_list { position: relative; z-index: 2; letter-spacing: 0; font-size: 0; }
.top_company_list li { width: 46.7%; display: inline-block; vertical-align: top; }
.top_company_list li:nth-child(2) { margin-left: 6.6%; }
.top_company_list img { width:100%; transition: all .4s; }
.top_company_list_sec_img { overflow: hidden; box-shadow:rgba(0,0,0,0.23) -11px 22px 70px; }
.top_company_list span { margin-top:22px; padding-right:22px; position:relative; display:inline-block; vertical-align:top; letter-spacing:0; font-weight: 600; font-size:20px; color:#fff; }
.top_company_list span:after { content: ""; background: url(../images/all_bg_arrow_white.png) no-repeat center / cover; width: 8px; height: 14px; position: absolute; right: 0; top: calc(50% - 7px); display: block; }
.top_company_list_recruit span:after { background:url(../images/all_bg_blank.png) no-repeat center / cover; width:12px; height:12px; position:absolute; top:calc(50% - 6px); }
.top_company_list span:before { content: ""; background: #FFF; height: 2px; width: 0; position: absolute; left: 0; bottom: -2px; transition: all .3s; }
@media(min-width: 1025px) {
	.top_company_list li:hover img {
		transform: scale(1.1);
	}
	.top_company_list li:hover a {
		opacity: 1;
	}
	.top_company_list li:hover span:before {
		width: 100%;
	}
}



/* global
=========================================== */
.contents { width: 90%; max-width: 1200px; margin: 0 auto; }
.search_results { padding-bottom: 222px; }
.company_table { padding-bottom: 210px; }
.message_video { padding-bottom: 215px; }
.manual_content { padding-bottom: 217px; }
.company_top_list { padding-bottom: 180px; margin-top: -190px; position: relative; z-index: 1; }
.sdg_csr_list_sec { padding-bottom: 207px; }
.product_section { margin-top:92px; padding-bottom: 200px; }
.sdg_content { margin-top: 65px; padding-bottom: 100px; }

/* company
=========================================== */

/*index*/
.company_top_list ul { letter-spacing: 0; font-size: 0; }
.company_top_list ul li a { display: block; }
.company_top_list ul li { width: 30.8%; margin-left: 3.7%; display: inline-block; vertical-align: top; }
.company_top_list ul li:nth-child(3n+1) { margin-left: 0; }
.company_top_list ul li:nth-child(n+4) { margin-top: 64px; }
.company_top_list_img { display: block; border-radius: 5px; overflow: hidden; }
.company_top_list_img img { width: 100%; transition: all .3s; }
.company_top_list ul li a:hover { opacity: 1; }
@media (min-width: 1025px) {
    .company_top_list ul li a:hover .company_top_list_img img { transform: scale(1.1); }
}
.company_top_list_ttl { margin-top: 20px; padding-right: 20px; position: relative; display: inline-block; letter-spacing: 0; font-weight: 600; font-size: 17px; color: #333; }
.company_top_list_ttl:after { content: ""; background: url(../images/all_bg_arrow.png) no-repeat center / 100% 100%; width: 9px; height: 16px; position: absolute; right: 0; top: calc(50% - 8px); display: block; }
.company_top_list_ttl._blank:after {
	background:url(../images/all_blank.svg) no-repeat center / 100% 100%;
	width:16px;
	height:14px;
	position:absolute;
	right: -5px;
	top: calc(50% - 7px);
	display:block;
}
.company_top_list_ttl .company_top_ttl_inner { position: relative; display: inline-block; letter-spacing: inherit; line-height: inherit; font-size: inherit; font-weight: inherit; }
.company_index_intro_img { width: 90%; max-width: 398px; display: block; margin: 0 auto 38px; vertical-align: middle; }
.company_index_intro { margin: 0; padding: 160px 0 0; margin-bottom: 100px; letter-spacing: 0; font-size: 0; position: relative; }
.company_index_intro:after { content: ""; background: linear-gradient(0deg, rgba(255,255,255, 0) 0%, rgba(255,255,255,1) 100%); height: 200px; width: 100%; position: absolute; top: 0; left: 0; }
.company_index_intro_img img { width: 100%; }
.company_index_intro_inner { position: relative; z-index: 1; }
.company_index_intro_txt { width: 90%; margin: 0 auto; line-height: 1.6; letter-spacing: 1.5px; text-align: center; font-size: 24px; font-weight: 500; color: #020202; }

/*about*/
.about_contents { width: 100%; max-width: 1050px; margin: 0 auto; }
.about_mv {  }
.about_mv img { width: 100%; }
.about_ttl { padding-top: 60px; position: relative; z-index: 1; text-align: center; }
.about_ttl_nb { position: absolute; bottom: -3px; left: 50%; z-index: -1; transform: translateX(-50%); line-height: 1; font-family: 'Oswald', sans-serif; font-size: 155px; font-weight: 400; color: #D5FFEB; }
.about_ttl_main { display: block; font-weight: 600; font-size: 32px; color: #000; }
.about_ttl_green { margin-left: 11px; display: inline-block; line-height: 1; font-weight: 600; font-size: 38px; color: #05C068;	 }
.about_ttl_en { margin-top: 7px; display: block; line-height: 1.4; letter-spacing: 1.7px; font-family: 'Heebo', sans-serif; font-size: 13px; color: #AEAEAE; }
.about_ttl_w .about_ttl_nb { opacity: .22; }
.about_ttl_w .about_ttl_main,
.about_ttl_w .about_ttl_green,
.about_ttl_w .about_ttl_en { color: #FFF; }

.about_intro {margin: 82px 0 105px;text-align: center; }
.about_intro_main {margin-bottom: 16px;line-height: 1.5;font-weight: 600;font-size: 28px;color: #1A1A1A; }
.about_intro_txt {line-height: 1.7;font-size: 18px;font-weight: 500;color: #1A1A1A; }

.about_merits {letter-spacing: 0;font-size: 0; }
.about_merits_l {display: inline-block;width: 42.4%;vertical-align: top; }
.about_merits_r {margin-left: 15.2%;display: inline-block;width: 42.4%;vertical-align: top; }
.about_merits_unit {

}
.about_merits_unit:nth-child(n+2) {margin-top: 58px; }
.about_merits_head {background: #E3F8EE;padding: 9px 0 5px;line-height: 1.4;text-align: center;font-size: 22px;font-weight: 600;color: #1A1A1A; }
.about_merits_img {margin-top: 7px;text-align: center; }
.about_merits_img img {width: 100%; }
.about_merits_img_02 img {width: 100%;max-width: 300px;margin: 0 auto; }
.about_merits_img_03 img {width: 100%;max-width: 284px;margin: 0 auto; }
.about_merits_img_04 img {width: 100%;max-width: 189px;margin: 0 auto; }
.about_merits_txt {margin-top: 15px;line-height: 1.8;letter-spacing: 0;font-weight: 300;font-size: 17px;color: #1A1A1A; }
.about_merits_list {margin-top: 34px;letter-spacing: 0;font-size: 0; }
.about_merits_list li {width: 29.2%;margin-left: 6.2%;display: inline-block;vertical-align: top; }
.about_merits_list li:nth-child(3n+1) {margin-left: 0; }
.about_merits_list li:nth-child(n+4) {margin-top: 18px; }
.about_merits_list li img {width: 100%; }
.about_merits_list_caption {margin-top: 9px;line-height: 1.4;letter-spacing: 0;text-align: center;font-weight: 600;font-size: 13px;color: #1A1A1A; }
.about_logo {margin-top: 75px;padding: 76px 0 10px;border-top: 1px solid #E2E0E0;letter-spacing: 0;font-size: 0; }
.about_logo_l { width: 39.6%; display: inline-block; vertical-align: top; letter-spacing: 0; font-size: 0; }
.about_logo_r { width: 49%; margin-left: 11.4%; display: inline-block; vertical-align: top; }
.about_logo_l img { width: 100%; }
.about_logo_gp { width: 58.6%; max-width: 278px; display: inline-block; vertical-align: middle; }
.about_logo_as { width: 29.1%; max-width: 138px; margin-left: 12.3%; display: inline-block; vertical-align: middle; }
.about_logo_ttl { margin-bottom: 15px; line-height: 1.4; font-weight: 600; font-size: 28px; color: #00893F; }
.about_logo_txt { line-height: 1.8; letter-spacing: 0; font-weight: 300; font-size: 17px; color: #1A1A1A; }

.about_section_green { background: rgb(119,212,175); background: linear-gradient(140deg, rgba(119,212,175,1) 0%, rgba(42,192,124,1) 100%); margin-bottom: 337px; padding: 265px 0 220px; position: relative; text-align: center; overflow: hidden; }
.about_section_1 { padding: 100px 0 95px; }
.about_section_1 .contents { position: relative; }
.about_section_1 .contents:before { content: ""; background: url(../images/about_diagram.png) no-repeat center / contain; width: 795px; height: 497px; position: absolute; top: -30px; left: -5%; opacity: 0.04; }

.about_section_2 .contents { position: relative; }
.about_section_2 .contents:before { content: ""; background: url(../images/about_diagram.png) no-repeat center / contain; width: 795px; height: 497px; position: absolute; top: -100px; left: -15%; opacity: .04; }

.about_section_green .contents { position: relative; }
.about_section_green .contents:before { content: ""; background: url(../images/about_diagram_w.png) no-repeat center / contain; width: 795px; height: 497px; position: absolute; top: -115px; left: -15%; opacity: .13; }
.about_mid_visual {
    background: url(../images/about_mid_visual.jpg) no-repeat center top / cover;
    width: 100%; max-width: 1500px; height: 616px; margin: 0 auto; position: relative; overflow: hidden; }
.about_mid_visual img { width: 100%; }
.about_mid_visual .triangle { height: 103px; width: 1500px; }
.about_mid_visual:after { content: ""; background: #FFF; width: 90%; height: 100px; position: absolute; bottom: -6px; left: 0; }
.triangle { height: 175px; width: 2600px; position: absolute; top: 0; left: 50%; transform: translateX(-50%); }
.triangle img { width: 100%; height: 100%; }
.about_section_green_intro { margin-top: 70px; }
.about_section_green_intro_top { line-height: 1.4; letter-spacing: 2px; font-size: 28px; font-weight: 600; color: #FFF; }
.about_section_green_intro_bot { line-height: 1.4; letter-spacing: 2.8px; font-size: 40px; font-weight: 600; color: #FFF; }
.about_section_green_total { margin: 63px auto 95px; }


.about_section_green_total_nb { font-size: 28px; color: #FFF; }
.about_section_green_total_nb span { display: inline-block; line-height: 1; }
.about_section_green_total_nb_en { position: relative; top: 1px; letter-spacing: 1.5px; font-family: 'Oswald', sans-serif; font-weight: 500; font-size: 32px; color: #FFF; }
.about_section_green_total_nb_nb { margin: 0 -2px 0 -2px; letter-spacing: -5px; font-family: 'Poppins', sans-serif; font-size: 108px; font-weight: 600; color: #FFF; }
.about_section_green_total_nb_jp { position: relative; top: -4px; font-size: 29px; font-weight: 600; color: #FFF; }
.about_section_green_total_txt { max-width: 640px; margin: 24px auto 0; line-height: 1.7; letter-spacing: 1.4px; font-size: 18px; font-weight: 400; color: #FFF; }
.about_section_green_slider_ttl { margin-bottom: 62px; padding-bottom: 14px; position: relative; font-weight: 500; font-size: 24px; color: #FFF; }
.about_section_green_slider_ttl:after { content: ""; background: #FFF; width: 76px; height: 2px; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); }
.all_btn_strength { margin-top: 50px; }
.about_slider .slick-list { overflow: visible; }
.about_slider_unit { background: #FFF; max-width: 925px; margin: 0 42px; position: relative; border: 1px solid #C4C4C4; border-radius: 5px; border-top-left-radius: 0; text-align: left; opacity: .27; transition: opacity .3s; }
.about_slider_unit.slick-current { opacity: 1; }
.about_slider_unit a { display: inline-block; }
.about_slider_unit a:hover { opacity: 1; }
.about_slider_ribbon { background: url(../images/ribbon_grey.png) no-repeat left bottom / contain; width: 109px; height: 29px; position: absolute; left: -1px; top: -29px; line-height: 2.2; text-align: center; text-indent: -14px; font-family: 'Poppins', sans-serif; font-size: 14px; font-weight: 600; color: #1A1A1A; }
.about_slider_inner { width: 92%; padding: 53px 0 55px; margin: 0 auto; position: relative; letter-spacing: 0; font-size: 0; }
.about_slider_img { width: 330px; height: 210px; position: relative; display: inline-block; vertical-align: top; overflow: hidden; }
.about_slider_img span { background-position: center; background-repeat: no-repeat; background-size: cover; width: 100%; height: 100%; position: absolute; transition: all .3s; }
@media (min-width: 1025px){
    .about_slider_unit a:hover .about_slider_img span { transform: scale(1.1); }
}

.about_slider_content { width: calc(100% - 330px); padding-left: 2.6%; display: inline-block; vertical-align: top; text-align: left; }
.about_slider_ttl { padding-left: 13px; border-left: 2px solid #00893F; line-height: 1.4; letter-spacing: 0; font-weight: 600; font-size: 22px; color: #00893F; }
.about_slider_ttl_top { margin-bottom: 2px; display: block; line-height: 1; letter-spacing: 0; font-size: 13px; font-weight: 600; color: #333; }
.about_slider_keys { margin-top: 8px; letter-spacing: 0; font-size: 0; }
.about_slider_keys li { background: #05C068; margin-right: 7px; margin-top: 7px; padding: 2px 9px 1px; display: inline-block; letter-spacing: 0; font-size: 12px; font-weight: 400; color: #FFF; }
.about_slider_txt { margin-top: 26px; }
.about_slider_txt_main { margin-bottom: 6px; font-size: 12px; font-weight: 600; color: #333; }
.about_slider_txt_content { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; line-height: 1.8; letter-spacing: 0; font-weight: 300; font-size: 14px; color: #020202; }
.about_slider_wrapper { position: relative; }
.about_slider_nav {
    margin: 0 auto;
    width: 1050px;
    display: flex;
    justify-content: space-between;
    letter-spacing: 0;
    font-size: 0;
    position: relative;
}
.about_slider_nav li {
    background: url(../images/about_nav_w.png) no-repeat center left 15px / 8px;
    width: 41px;
    height: 41px;
    position: absolute;
    top: -175px;
    display: inline-block;
    border: 1px solid #FFF;
    border-radius: 100px;
    cursor: pointer;
    transition: all .3s;
}
.about_slider_nav li.next {
    transform: rotate(180deg);
    right: 0;
}
.about_slider_nav li.prev {
    left: 0;
}
@media( min-width: 1025px ){
    .about_slider_nav li:hover {
        background: #FFF url(../images/about_nav_g.png) no-repeat center left 15px / 8px;
    }
}


.about_mv { position: relative; overflow: hidden; }
.about_mv:after {
    content: "";
    background: url(../images/about_mv_diagram.png) no-repeat center / contain;
    width: 24%;
    padding-top: 16%;
    position: absolute;
    bottom: 0;
    left: 3.3%;
    opacity: 0.6;
}
.about_mv_pic_pc { display: block; }
.about_mv_pic_sp { display: none; }

.about_mv_comp_txt,
.about_mv_comp_txt span {
    font-family: 'Poppins', sans-serif;
    mix-blend-mode: difference;
    line-height: 1;
    color: #fff;
}
.comp_txt1 {
    position: absolute;
    top: 9%;
    left: 11%;
}
.comp_txt1_1 {
    font-size: 29px;
    font-weight: 600;
    letter-spacing: 2px;
    display: block;
}
.comp_txt1_2 .comp_nb {
    font-size: 161px;
    font-weight: 600;
    letter-spacing: -0.2px;
    position: relative;
    left: -5px;
}
.comp_txt1_2 .comp_tx {
    font-size: 69px;
    font-weight: 600;
    position: relative;
    left: -15px;
    top: -4px;
}
.comp_txt2 {
    position: absolute;
    left: 59.3%;
    top: -8.6%;
}
.comp_txt2_1 {
    position: relative;
    top: 0px;
    left: 4px;
    display: inline-block;
    writing-mode: tb-rl;
    font-size: 69px;
    font-weight: 600;
}
.comp_txt2_2 .comp_nb {
    font-size: 303px;
    font-weight: 600;
}
.comp_txt2_2 .comp_tx {
    position: relative;
    top: -125px;
    left: -7px;
    font-size: 69px;
    font-weight: 600;
}
.comp_txt3 {
    position: absolute;
    top: 79.7%;
    left: 36%;
}
.comp_txt3_1 {
    display: block;
    font-size: 25px;
    font-weight: 600;
}
.comp_txt3_2 .comp_nb {
    letter-spacing: 0;
    font-size: 80px;
    font-weight: 600;
}
.comp_txt3_2 .comp_tx {
    position: relative;
    left: -2px;
    top: -2px;
    font-size: 35px;
    font-weight: 600;
}
.comp_txt4 {
    position: absolute;
    top: 70%;
    left: 63.9%;
}
.comp_txt4_1 {
    display: block;
    letter-spacing: 2px;
    font-size: 29px;
    font-weight: 600;
}
.comp_txt4_2 .comp_nb {
    letter-spacing: 0;
    font-size: 161px;
    font-weight: 600;
}
.comp_txt4_2 .comp_tx {
    position: relative;
    left: -5px;
    top: -4px;
    font-size: 69px;
    font-weight: 600;
}
@media(max-width: 1500px){
    .comp_txt1_1 { font-size: 1.95vw; }
    .comp_txt1_2 .comp_nb { font-size: 10.75vw; }
    .comp_txt1_2 .comp_tx { font-size: 4.6vw; }

    .comp_txt2_1 { font-size: 4.6vw; }
    .comp_txt2_2 .comp_nb { font-size: 20.2vw; }
    .comp_txt2_2 .comp_tx { font-size: 4.6vw; }

    .comp_txt3_1 { font-size: 1.7vw; }
    .comp_txt3_2 .comp_nb { font-size: 5.3vw; }
    .comp_txt3_2 .comp_tx { font-size: 2.4vw; }

    .comp_txt4_1 { font-size: 1.93vw; }
    .comp_txt4_2 .comp_nb { font-size: 10.7vw; }
    .comp_txt4_2 .comp_tx { font-size: 4.6vw; }
}

/*search*/
.search_results_recap { margin-bottom: 54px; padding-bottom: 7px; border-bottom: 1px solid #E2E0E0; }
.search_results_recap_txt.right { float: right; }
.search_grey { display: inline-block; line-height: 1; letter-spacing: 0; font-size: 17px; font-weight: 300; color: #707070; }
.search_results_recap_txt.right .search_grey { margin-left: 5px; }
.search_results_recap_txt { display: inline-block; line-height: 1.6; font-size: 20px; font-weight: 600; color: #109458; }
.search_results_list li { padding-bottom: 50px; border-bottom: 1px solid #f7f7f7; }
.search_results_list li:nth-child(n+2) { padding-top: 54px; }
.search_results_list li a { letter-spacing: 0; font-size: 0; }
.search_results_list_bg { position: relative; width: 335px; height: 237px; display: inline-block; vertical-align: top; overflow: hidden; }
.search_results_list_bg_img { display: block; width: 100%; height: 100%; background-position: center; background-size: cover; transition: all .3s; border: 1px solid #e6e6e6; }
.search_results_list_content { width: calc(100% - 335px); padding: 10px 0 0 3.2%; display: inline-block; vertical-align: top; }
.search_results_list_ttl { margin-bottom: 6px; letter-spacing: 0; font-size: 20px; font-weight: 600; color: #109458; }
.search_results_list_txt { line-height: 2.2; letter-spacing: 0; font-weight: 300; font-size: 15px; color: #000; }
.search_results_list_link { margin-top: 20px; word-break: break-all; font-size: 10px; font-weight: 300; font-family: 'Poppins', sans-serif; color: #c1c1c1; }
.search_results_list_bg_sp { display: none; }
.search_results_list li a:hover { opacity: 1; }
@media(min-width: 1025px){
	.search_results_list li a:hover .search_results_list_bg_img {
		transform: scale(1.1);
	}
}

.search_bar { max-width: 1000px; width: 100%; margin: 53px auto 87px; text-align: center; }
.search_bar_input { margin-bottom: 15px; position: relative; }
.search_field { background: #ebf9f3; width: 100%; padding: 17px 70px 17px 44px; border: none; border-radius: 5px; line-height: 1; font-size: 17px; }
.search_btn {
    background: #05C068 url(../images/all_search_icon.png) no-repeat center;
    height: 100%;
    width: 60px;
    position: absolute;
    top: 0;
    right: 0;
    border: none;
    border-top-right-radius: 7px;
    border-bottom-right-radius: 7px;
    font-size: 0;
	cursor: pointer;
	transition: all .3s;
}
.search_btn:hover { opacity: .8;}

.search_bar_keys { letter-spacing: 0; font-size: 0; }
.search_bar_keys_head { width: 170px; padding-left: 10px; position: relative; top: 5px; display: inline-block; vertical-align: middle; line-height: 1; text-align: left; font-family: 'Heebo', sans-serif; font-weight: 500; font-size: 13px; color: #109458; }
.search_bar_keys_list { width: calc(100% - 170px); display: inline-block; vertical-align: middle; letter-spacing: 0; font-size: 0; text-align: left; }
.search_bar_keys_list li { width: 147px; margin-right: 12px; margin-top: 10px; display: inline-block; border: 1px solid #109458; border-radius: 3px; }
.search_bar_keys_list li a { padding: 9px 0; display: block; line-height: 1; text-align: center; font-size: 13px; color: #109458; transition: all .3s; }
.search_bar_keys_list li a:hover { opacity: 1; }
@media(min-width: 1025px){
    .search_bar_keys_list li a:hover { background: #109458; color: #FFF; }
}


/*message*/
.message_ttl { margin: 73px 0 32px; }
.message_ttl span { margin: 0 0 1px 17px; display: inline-block; vertical-align: bottom; line-height: 1; letter-spacing: 5px; font-weight: 500; font-size: 21px; color: #020202; }
.message_content { margin-bottom: 86px; }
.message_txt p:nth-child(n+2) { margin-top: 13px; }
.message_txt p { line-height: 2.2; letter-spacing: 0; font-weight: 300; font-size: 17px; }
.message_txt p:nth-child(n+2).message_txt_sign { margin-top: 6px; }
.message_txt_sign span { float: right; }
.message_video { margin: 0 auto; text-align: center; }
.message_video img { width: 100%; }

.company_table { margin-top: 60px; }

/*manual*/
.manual_content { margin-top: 65px; }
.manual_txt { line-height: 1.8; letter-spacing: 0px; font-size: 17px; font-weight: 300; }
.manual_txtA { margin-bottom: 27px; margin-top: 9px; }
.manual_txtB { margin-bottom: 15px; padding-left: 85px; position: relative; }
.manual_txtB span { position: absolute; left: 0; top: 0; display: block; }
.manual_content_list { margin-bottom: 23px; }
.manual_content_list li { line-height: 1.8; letter-spacing: 0px; font-size: 17px; font-weight: 300; }

.manual_main_list { margin-top: 10px; }
.manual_main_list > li { padding-left: 20px; }
.manual_main_list_ttl { margin-bottom: 10px; font-size: 17px; font-weight: 400;  }
.manual_main_list > li:nth-child(n+2) { margin-top: 30px; }
.manual_sub_list {  }
.manual_sub_list > li { padding-left: 25px; position: relative; line-height: 1.8; font-size: 17px; font-weight: 300; }
.manual_sub_list > li:after {
    content: "・";
    position: absolute;
    top: 1px;
    left: 1px;
    line-height: 1;
    letter-spacing: 0;
    font-size: 28px;
    color: black;
}
.manual_sub_list > li:nth-child(n+2) { margin-top: 5px; }

/*sdg*/
.sdg_mv { background: url(../images/sdg_bg.jpg) no-repeat center bottom / cover; width: 100%; height: 777px; position: relative; }
.sdg_mv_content { width: 100%; position: absolute; top: 35.5%; left: 0; transform: translateY(-50%); text-align: center; }
.sdg_mv_content_img { width: 90%; max-width: 782px; margin: 0 auto 36px; }
.sdg_mv_content_img img { width: 100%; }
.sdg_mv_content_hdg { margin-bottom: 40px; }
.sdg_mv_content_hdg .ja { display: block; font-size: 40px; font-weight: 700; color: #1489d2; line-height: 1.5; }
.sdg_mv_content_hdg .en { display: block; font-size: 20px; font-weight: 600; color: #1489d2; line-height: 1.5; font-family: 'Poppins', sans-serif; }
.sdg_mv_content_txt { width: 85%; margin: 0 auto; line-height: 1.6; font-size: 16px; color: #020202; }
.sdg_mv_content_txt span { display: block; }
.sdg_listA { margin: 44px 0 125px; }
.sdg_listA > li { padding: 85px 0 120px; letter-spacing: 0; font-size: 0; }
.sdg_listA > li:nth-child(2n+1) .sdg_listA_content { padding-left: 4.2%; }
.sdg_listA > li:nth-child(2n+2) .sdg_listA_content { padding-right: 3.5%; }
.sdg_listA > li:nth-child(n+2) { border-top: 1px solid #E2E0E0; }
.sdg_listA_content { width: 52.5%; position: relative; top: 6px; display: inline-block; vertical-align: middle; }
.sdg_listA_ttl_wrapper { margin-bottom: 26px; letter-spacing: 0; font-size: 0; }
.sdg_listA_ttl_wrapper_inner { width: calc(100% - 54px); display: inline-block; }
.sdg_listA_ttl { letter-spacing: 0; font-size: 22px; font-weight: 600; color: #1A1A1A; line-height: 1.5; }
.sdg_listA_ttl_nb { width: 54px; display: inline-block; vertical-align: top; line-height: 1; font-family: 'Oswald', sans-serif; font-size: 40px; font-weight: 400; color: #05C068; }
.sdg_listA_ttl_en { margin-bottom: 0; margin-top: -3px; line-height: 1.4; font-family: 'Poppins', sans-serif; font-size: 14px; color: #e6e6e6; }
.sdg_listA_ttl_txt { max-width: 470px; line-height: 1.8; letter-spacing: 0; font-size: 15px; font-weight: 300; }
.sdg_listA_img { width: 47.5%; position: relative; display: inline-block; vertical-align: middle; }
.sdg_listA_img_img {  }
.sdg_listA_img_img img { width: 100%; }
.sdg_listA_img_list { position: absolute; bottom: -40px; left: 9.7%; letter-spacing: 0; font-size: 0; }
.sdg_listA_img_list li { width: 84px; display: inline-block; }
.sdg_listA_img_list li img { width: 100%; }
.sdg_listA_img_list li:nth-child(n+2) { margin-left: 9px; }
.sdg_listA_img_pc { display: inline-block; }
.sdg_listA_img_sp { display: none; }
.sdg_listA > li .all_round_btn { margin-top: 42px; }
.sdg_csr_list { margin: 75px auto 0; letter-spacing: 0; font-size: 0; }
.sdg_csr_list_sec { margin-top: 88px; }
.sdg_csr_list li { width: 30.8%; margin-left: 3.8%; display: inline-block; vertical-align: top; }
.sdg_csr_list li:nth-child(3n+1) { margin-left: 0; }
.sdg_csr_list li:nth-child(n+4) { margin-top: 105px; }
.sdg_csr_list li:nth-child(n+4) .sdg_csr_list_ttl { text-align: left; }
.sdg_csr_list li:nth-child(n+4) .sdg_csr_list_ttl:after { left: 0; transform: none; }
.sdg_csr_list_ttl { margin-bottom: 20px; padding-bottom: 13px; position: relative; letter-spacing: 0; text-align: center; font-size: 22px; font-weight: 600; }
.sdg_csr_list_ttl:after { content: ""; background: #47AA7B; width: 48px; height: 1px; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); }
.sdg_csr_list_ttl_img { width: 95%; margin: 32px auto 20px; }
.sdg_csr_list_ttl_img img { width: 100%; }
.sdg_csr_list_ttl_txt { line-height: 1.8; letter-spacing: 0; font-weight: 300; font-size: 14px; }
.sdg_mid_banner { background: url(../images/sdg_banner.jpg) no-repeat center top / cover; width: 100%; height: 636px; margin-bottom: -18px; position: relative; }
.sdg_mid_banner:after { content: ""; background: #FFF; width: 92%; height: 90px; position: absolute; bottom: 0; left: 0; }

.sdg_csr_list_ttl_nb {
    background: rgb(21,208,120);
    background: radial-gradient(circle, rgba(21,208,120,1) 0%, rgba(0,137,63,1) 100%);
    background-position: left 100% top 100%;
    background-size: 200% 200%;
    width: 70%;
    padding-top: 70%;
    margin: 32px auto 33px;
    position: relative;
    border-radius: 300px;
    line-height: 1;
    font-family: 'Poppins', sans-serif;
    font-size: 3.7vw;
    font-weight: 600;
    color: #FFF;
}
.sdg_csr_list_ttl_nb_main {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    font-family: inherit;
    font-weight: 700;
    line-height: 1;
    display: inline-block;
}
.sdg_csr_list_ttl_nb_small {
    font-size: 6.4vw;
    margin-right: 2px;
    display: inline;
    font-family: inherit;
}
@media( min-width: 1350px ){
    .sdg_csr_list_ttl_nb_small { font-size: 87px; }
    .sdg_csr_list_ttl_nb { font-size: 56px; }
}

.all_subbed_ttlB { padding-left: 16px; position: relative; font-size: 29px; font-weight: 600; color: #1A1A1A; }
.all_subbed_ttlB:after { content: ""; background: #47AA7B; width: 1px; height: calc(100% - 6px); position: absolute; left: 0; bottom: 0; }
.all_subbed_ttlB_en { display: block; line-height: 1.2; font-family: 'Poppins', sans-serif; font-size: 14px; font-weight: 300; color: #109458; }

.all_round_btn { width: 218px; }
.all_round_btn a { background: rgb(125,213,178); background: linear-gradient(120deg, rgba(125,213,178,1) 0%, rgba(71,170,123,1) 100%); padding: 18px 0 18px; position: relative; display: block; border-radius: 150px; box-shadow: rgba(26,26,26,.3) 0px 2px 10px; line-height: 1; text-align: center; font-size: 15px; font-weight: 600; color: #FFF; }
.all_round_btn a:after { content: ""; background: url(../images/all_bg_arrow_white.png) no-repeat center / contain; width: 8px; height: 14px; position: absolute; top: 50%; right: 12px; transform: translateY(-50%); }
@media(min-width: 1025px){
	.all_round_btn a { transition: all .3s; }
	.all_round_btn a:after { transition: all .3s; }
	.all_round_btn a:hover { opacity: 1; }
	.all_round_btn a:hover:after { right: 7px; }
}

.sdg_iconlist {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	padding-top: 40px;
}
.sdg_iconlist li {
	width: 32%;
	margin-right: 2%;
	margin-bottom: 2%;
}
.sdg_iconlist li:nth-of-type(3n) {
	margin-right: 0%;
}
.sdg_iconlist li a {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	padding: 55px 30px;
	border-radius: 6px;
	background: #fff;
	border: 1px solid #47aa7b;
}
.sdg_iconlist li a .icon {
	position: relative;
	width: 100%;
	width: 64px;
	height: 64px;
	margin-bottom: 20px;
	text-align: center;
	z-index: 10;
}
.sdg_iconlist li a .icon img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	transition: opacity .4s;
}
.sdg_iconlist li a .icon img:last-of-type {
	opacity: 0;
}
.sdg_iconlist li a .txt {
	position: relative;
	width: 100%;
	text-align: center;
	font-weight: 600;
	font-size: 20px;
	line-height: 1.3;
	color: #020202;
	transition: .4s;
	z-index: 10;
}
.sdg_iconlist li a .bg {
	position: absolute;
	width: 100%;
	height: 100%;
	z-index: 1;
	opacity: 0;
	transition: opacity .4s;
}
.sdg_iconlist li a .bg img {
	position: absolute;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 6px;
}
.sdg_iconlist li a .txt::after {
	display: inline-block;
	content: '';
	width: 10px;
	height: 10px;
	border-top: solid 2px #47AA7B;
	border-right: solid 2px #47AA7B;
	position: relative;
	top: -2px;
	left: 10px;
	transform: rotate(45deg);
	transition: .4s;
}
.sdg_iconlist li a:hover {
	opacity: 1;
	border: 1px solid #fff;
}
.sdg_iconlist li a:hover .bg {
	opacity: 1;
}
.sdg_iconlist li a:hover .icon img {
	opacity: 0;
}
.sdg_iconlist li a:hover .icon img:last-of-type {
	opacity: 1;
}
.sdg_iconlist li a:hover .txt {
	color: #fff;
}
.sdg_iconlist li a:hover .txt::after {
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	left: 15px;
}

@media (max-width: 1100px) {
	.sdg_iconlist li a {
		padding: 45px 20px;
	}
	.sdg_iconlist li a .txt {
		font-size: 18px;
	}
}

@media (max-width: 1024px) {
	.sdg_iconlist li a {
		padding: 35px 10px;
	}
	.sdg_iconlist li a .txt {
		font-size: 15px;
	}
}

@media(max-width: 768px){
	.sdg_iconlist li {
		width: 47.5%;
		margin-right: 5%;
		margin-bottom: 5%;
	}
	.sdg_iconlist li:nth-of-type(3n) {
		margin-right: 5%;
	}
	.sdg_iconlist li:nth-of-type(2n) {
		margin-right: 0%;
	}
}
@media(max-width: 600px){
	.sdg_iconlist li {
		width: 100%;
		margin-right: 0;
		margin-bottom: 5%;
	}
	.sdg_iconlist li:nth-of-type(3n) {
		margin-right: 0;
	}
}

/* #social_initiatives
=========================================== */
.sdg .social_nav { margin: 56px 0 80px; }
.sdg .social_nav ul { letter-spacing: 0; font-size: 0; }
.sdg .social_nav ul li { width: 20%; display: inline-block; }
.sdg .social_nav ul li:nth-child(n+2) { border-left: 3px solid #FFF; }
.sdg .social_nav ul li a { background: #F2F2F2; padding: 16px 0 16px; display: block; line-height: 1.6; text-align: center; font-size: 15px; font-weight: 500; color: #05C068; letter-spacing: 0; transition: all .3s; }
.sdg .social_nav ul li a:hover { opacity: 1; }
@media(min-width: 1025px) {
    .sdg .social_nav ul li:not(.active) a:hover { background: #FFF; box-shadow: 0 5px 20px rgb(0 0 0 / 10%); }
}
.sdg .social_nav ul li.active a { background: linear-gradient(#77d4af 0%, #2ac07c 100%); color: #FFF; }

.sdg .social_block_txt_inner {
	margin-bottom: 40px;
	padding: 80px;
	background-color: #F6F6F6;
}
.sdg .social_block_txt_inner:last-of-type {
	margin-bottom: 0px;
}
.sdg .social_block_txt_inner .social_block_hdgA { margin-bottom: 24px; color: #00893F; line-height: 1.3; font-size: 22px; font-weight: 600; }
.sdg .social_block_txt_inner .social_block_txtA { margin-bottom: 28px; line-height: 2.2; letter-spacing: 0; font-size: 17px; font-weight: 300; }
.social_block_txt_inner .social_block_listA { margin-top: 50px; }
.social_block_txt_inner .social_block_listA > li { margin-bottom: 50px;}
.social_block_txt_inner .social_block_listA > li:last-of-type { margin-bottom: 0;}
.social_block_txt_inner .social_block_listA > li .social_block_txtA:last-of-type { margin-bottom: 0;}
.social_block_txt_inner .social_block_hdgB  { margin-bottom: 24px; color: #000; line-height: 1.3; font-size: 20px; font-weight: 600; }
.social_block_txt_inner .social_block_listB {}
.social_block_txt_inner .social_block_listB > li { margin-top: 38px; }
.social_block_txt_inner .social_block_hdgC  { margin-bottom: 20px; color: #000; line-height: 1.3; font-size: 17px; font-weight: 600; }

.sdg .social_block .sdg_listA {
	margin-bottom: 0;
}
.sdg .social_block .sdg_listA > li:first-of-type {
	padding-top: 0;
}

@media (max-width: 768px) {

}

/* #privacy
=========================================== */
.privacy_ttl { margin-bottom: 8px; letter-spacing: 0; font-size: 18px; font-weight: 600; color: #00893F; }
.privacy_ttlB { margin-bottom: 8px; letter-spacing: 0; font-size: 22px; font-weight: 600; }
.privacy_ttlB_top { margin-bottom: 45px; }
.privacy_txt { margin-bottom: 24px; letter-spacing: 0; font-size: 17px; font-weight: 300; }
.privacy_txtB { margin-bottom: 28px; line-height: 2.2; letter-spacing: 0; font-size: 17px; font-weight: 300; }
.privacy_list { margin-bottom: 23px; }
.privacy_list li:nth-child(n+2) { margin-top: 14px; }
.privacy_list_ttl { margin-bottom: 1px; font-size: 17px; font-weight: 600; }
.privacy_list_txt { font-size: 17px; font-weight: 300; }
.privacy_list_txt.mb { margin-bottom: 6px; }
.privacy_bold { margin: 26px 0 8px; font-size: 18px; font-weight: 600; }
.privacy_txt_last { margin-bottom: 0; }
.privacy_txt_last a { color: #333; }
.privacy_bot { margin-top: 53px; }
.privacy_bot_sp { display: none; }
.privacy_bot_slash { margin: 0 15px; display: inline-block; }
.privacyB .all_ttlB { margin-bottom: 4px; }

/* #contact
=========================================== */
.contact .all_contents_grey_inner { padding: 54px 108px 115px; }
.contact_step { text-align: center; letter-spacing: 0; font-size: 0; }
.contact_step ul { padding-top: 50px; position: relative; display: inline-block; }
.contact_step li { position: relative; display: inline-block; vertical-align: bottom; letter-spacing: 0; font-size: 14px; color: #CECECE; }
.contact_step li.on { color: #000; }
.contact_step li.on:before { content: ""; background: #47AA7B; width: 40px; height: 40px; position: absolute; left: 50%; top: -57px; z-index: 2; display: block; transform: translateX(-50%); border-radius: 50%; opacity: 0.29; }
.contact_step li:after { content: ""; background: #CAE6D9; width: 16px; height: 16px; position: absolute; left: 50%; top: -45px; z-index: 3; display: block; transform: translateX(-50%); border-radius: 50%; }
.contact_step li.on:after { background: #47AA7B; }
.contact_step li:nth-child(n+2) { margin-left: 110px; }
.contact_step ul:after { content: ""; background: #47AA7B; width: calc(100% - 60px); height: 1px; position: absolute; left: 30px; top: 12px; display: block; opacity: .16; }
.contact_step_intro { margin: 64px 0 75px; letter-spacing: 0; text-align: center; font-size: 15px; font-weight: 300; }
.contact_form {  }
.contact_form table { width: 100%; }
.contact_form_radio { background: #FFF; margin: 0; padding: 0; border: none; letter-spacing: 0; font-size: 0; }
.contact_form_radio li { margin-right: 8.1%; display: inline-block; font-size: 15px; font-weight: 300; }
.contact_form_radio li:nth-child(n+2) { border-top: none; }
.contact_form_radio li label { letter-spacing: 0; }
.contact_form_radio li input { margin-right: 6px; }
.contact_form_radio li:last-child { margin-right: 0; }
.contact_form tr {  }
.contact_form tr th { width: 240px; position: relative; padding-top: 47px; vertical-align: top; }
.contact_form tr.padding_fix th { padding-top: 28px; }
.contact_form tr td { padding: 28px 0 28px 28px; }
.contact_form tr td .input_field { width: 100%; padding: 16px 20px; border: 1px solid #E2E0E0; border-radius: 3px; line-height: 1; font-size: 15px; font-weight: 300; }
.contact_form tr td .input_275 { max-width: 275px; }
.contact_form tr td .input_320 { max-width: 320px; }
.contact_form tr td .input_field::placeholder { color: #E1E1E1; }
.contact_form_head { position: relative; display: block; font-size: 15px; font-weight: 500; }
.input_head { margin-bottom: 9px; display: block; line-height: 1; font-size: 12px; font-weight: 500; }
.input_post { width: 17px; margin-right: 13px; display: inline-block; position: relative; top: 5px; line-height: 1; font-size: 16px; }
.address_sync { background: #FFF; width: 92px; margin-left: 14px; padding: 8px 0; display: inline-block; border: 1px solid #47AA7B; border-radius: 3px; line-height: 1; font-size: 12px; font-weight: 500; color: #47AA7B; }
.contact_form_address_list li { letter-spacing: 0; font-size: 0; }
.contact_form_address_list li:nth-child(n+2) { margin-top: 33px; }
.contact_form tr td textarea.input_field { height: 140px; resize: vertical; }
.contact_form_select { background: transparent; position: relative; overflow: hidden; border: 1px solid #e2e0e0; border-radius: 3px; line-height: 1; }
.contact_form_select:after { content: ""; background: url(../images/all_arrow_down.png) no-repeat center / contain; width: 11px; height: 7px; position: absolute; top: 50%; right: 15px; transform: translateY(-50%); z-index: 0; }
.contact_form_select select { background: transparent; width: 115%; padding: 21px 0 21px 20px; position: relative; z-index: 1; border: none; line-height: 1; font-size: 15px; font-weight: 300; -webkit-appearance: none; }
.contact_form tr .req { background: #F43C3C; width: 33px; padding: 5px 0; position: absolute; top: 50%; right: 0; transform: translateY(-50%); line-height: 1; text-align: center; font-size: 10px; font-weight: 300; color: #FFF; }
.contact_form_note { font-size: 13px; font-weight: 300; color: #020202; }
.contact_form_note_red { display: inline-block; color: #F43C3C; }
.contact_form_grey { background: #F8F8F8; margin-top: 50px; padding: 34px 10% 22px; }
.contact_form_grey_unit:nth-child(n+2) { margin-top: 46px; }
.contact_form_grey_unit p { line-height: 1.9; letter-spacing: 0; font-size: 15px; font-weight: 300; color: #020202; }
.contact_form_grey_unit p .red { color: #F43C3C; }
.contact_form_grey_unit p:nth-child(n+2) { margin-top: 10px; }

.contact_form_grey_ttl { margin-bottom: 23px; padding-left: 15px; position: relative; line-height: 1.4; letter-spacing: 0; font-size: 16px; font-weight: 500; color: #020202; }
.contact_form_grey_ttl:after{ content: ""; background: #47AA7B; width: 2px; height: 17px; position: absolute; top: 2px; left: 0; }
.contact_form_list { font-size: 15px; font-weight: 300; }
.contact_form_list li { position: relative; padding-left: 12px; line-height: 1.9; letter-spacing: 0; color: #020202; }
.contact_form_list li:after { content: ""; background: #C8E7DB; height: 6px; width: 6px; border-radius: 20px; position: absolute; top: 12px; left: 0; }
.contact_form_list li:nth-child(n+2) {}
.contact_form_grey_link { display: inline-block; text-decoration: underline; font-weight: 600; color: #47AA7B; }
.contact_form_submit { background-image: linear-gradient(to right, #7DD5B2, #47AA7B); width: 100%; position: relative; display: block; border-radius: 30px; cursor: pointer; border: none; font-size: 16px; text-align: center; line-height: 50px; color: #fff; }
.contact_form_submit_box { margin-top: 83px; text-align: center; }
.contact_form_submit_box_label {  }
.contact_form_submit_box_label input { position: relative; top: -1px; }
.contact_form_submit_wapper { width: 240px; margin: 48px auto; position: relative; }
.contact_form_submit_wapper:after { content: ""; background: url(../images/all_bg_arrow_white.png) no-repeat center / contain; width: 8px; height: 14px; position: absolute; top: 50%; right: 15px; transform: translateY(-50%); }
.contact_form_submit_box_txt { display: inline; line-height: 1.4; font-size: 16px; font-weight: 300; color: #000; }
.contact .all_banner_list_sec_contact { margin-top: 0; padding: 75px 0 50px; }
.contact .all_contents_grey { padding-bottom: 0; }
.contact_thanks { margin-top: 100px; }
.contact_thanks_ttl { margin-bottom: 45px; line-height: 1; text-align: center; font-family: 'Poppins', sans-serif; font-size: 40px; font-weight: 300; color: #109458; }
.contact_thanks_txt { line-height: 2; letter-spacing: 0; text-align: center; font-size: 15px; font-weight: 300; }
.contact_thanks_txt_bottom { margin-top:40px; }
.contact_thanks_txt a { color:#00893F; }
.contact_thanks_btn a { background-image: linear-gradient(to right, #7DD5B2, #47AA7B); width: 240px; margin: 50px auto 0; position: relative; position: relative; display: block; border-radius: 30px; cursor: pointer; border: none; font-size: 16px; text-align: center; line-height: 50px; color: #fff; }
.contact_thanks_btn a:after { content: ""; background: url(../images/all_bg_arrow_white.png) no-repeat center / contain; width: 8px; height: 14px; position: absolute; top: 50%; right: 15px; transform: translateY(-50%); }

.contact_confirm .contact_form { margin-top: 72px; }
.contact_confirm .contact_form tr { border-bottom: 1px solid #E2E0E0; }
.contact_confirm .contact_form tr th { width: 205px; padding-top: 25px; position: relative; line-height: 1.9; }
.contact_confirm .contact_form th:after { content: ""; background: #05C068; height: 1px; width: 100%; position: absolute; bottom: -1px; left: 0; }
.contact_confirm .contact_form tr td { padding: 25px 16px 25px 8.8%; font-weight: 300; line-height: 1.9; letter-spacing: 0; }
.contact_confirm .contact_form_submit_box { margin-top: 93px; text-align: center; }
.contact_confirm .contact_form_submit_box_inner { position: relative; display: inline-block; }
.contact_confirm .contact_form_submit_wapper { margin: 0 auto; }
.contact_confirm .contact_form_back { position: absolute; top: 50%; left: -165px; transform: translateY(-50%); }
.contact_confirm .contact_form_back a { text-decoration: underline; font-size: 12px; color: #47AA7B; }

/* #product
=========================================== */

.all_tri_nav { margin: 68px 0 92px; border-bottom: 1px solid #E2E0E0; }
.all_tri_nav ul { width: 100%; max-width: 1200px; margin: 0 auto; letter-spacing: 0; font-size: 0; }
.all_tri_nav ul li { width: 33.3333%; border-right: 1px solid #FFF; display: inline-block; }
.all_tri_nav ul li:last-child { border-right: none; }
.all_tri_nav ul li.on { border-right: none; }
.all_tri_nav ul li.on a { background-image: linear-gradient(to right, #77D4AF, #2AC07C); color: #FFF; }
.all_tri_nav ul li a { background: #F2F2F2; padding: 23px 0 13px; display: block; line-height: 1.5; text-align: center; font-weight: 500; font-size: 18px; color: #05C068; }
.all_tri_nav ul li a span { display: inline-block; }
.all_tri_nav ul li.search a span { background: url(../images/all_magni_green.png) no-repeat center left / 19px; padding-left: 24px; }
.all_tri_nav ul li.on.search a span { background: url(../images/all_magni_w.png) no-repeat center left / 19px; }
.all_tri_nav ul li a:hover { opacity: 1; }
@media(min-width: 1025px){
    .all_tri_nav ul li a { transition: all .3s; }
    .all_tri_nav ul li:not(.on) a:hover { background: #FFF; box-shadow: 0 5px 20px rgba(0,0,0,.1); }
}

.product_section { letter-spacing: 0; font-size: 0; }
.product_section:nth-child(n+2) { display: none; }
.all_side_nav { width: 225px; margin-right: 50px; display: inline-block; vertical-align: top; }
.product_search_content { width: calc(100% - 275px); display: inline-block; vertical-align: top; }

.all_side_nav .patternA { border-bottom: 1px solid #EFEFEF; }
.all_side_nav .patternA li {  }
.all_side_nav .patternA li:nth-child(n+2) { border-top: 1px solid #EFEFEF; }
.all_side_nav .patternA li a { padding: 13px 10px 13px 0; position: relative; display: block; line-height: 1.6; font-size: 16px; font-weight: 400; color: #1A1A1A; }
.all_side_nav .patternA li a:after { content: ""; background: url(../images/all_bg_arrow.png) no-repeat center / contain; width: 6px; height: 12px; position: absolute; top: 50%; right: 0; transform: translateY(-50%); transition: all .3s; }
.all_side_nav .patternA li a:hover,
.all_side_nav .patternC li a:hover { opacity: 1; }
@media(min-width: 1025px){
    .all_side_nav .patternA li a span { position: relative; display: inline-block; }
    .all_side_nav .patternA li a span:after { content: ""; background: #109458; width: 0; height: 1px; position: absolute; left: 0; bottom: 1px; transition: all .3s; }
    .all_side_nav .patternA li a:hover span:after { width: 100%; }
    .all_side_nav .patternA li a:hover:after { right: -5px; }

    .all_side_nav .patternC li a span { position: relative; display: inline-block; }
    .all_side_nav .patternC li a span:after { content: ""; background: #109458; width: 0; height: 1px; position: absolute; left: 0; bottom: 1px; transition: all .3s; }
    .all_side_nav .patternC li a:hover span:after { width: 100%; }
    .all_side_nav .patternC li a:hover:after { right: -5px; }
}

.all_side_nav .patternB { letter-spacing: 0; font-size: 0; }
.all_side_nav .patternB li { margin: 8px 10px 0 0; display: inline-block; }
.all_side_nav .patternB li a { padding: 6px 7px; display: block; border-radius: 10px; border: 1px solid #109458; line-height: 1; letter-spacing: 0; font-weight: 500; font-size: 12px; color: #109458; }

.all_side_nav .patternC { padding-top: 5px; margin-bottom: 61px; }
.all_side_nav .patternC li:nth-child(n+2) { width: 100%; margin-top: 8px; }
.all_side_nav .patternC li a { letter-spacing: 0; font-size: 16px; font-weight: 400; color: #1A1A1A; }

.all_side_nav .all_side_nav_ttl { margin-bottom: 19px; }
.all_side_nav_ttl { padding-bottom: 8px; border-bottom: 1px solid #109458; font-weight: 600; font-size: 18px; color: #1A1A1A; }
.all_side_nav_submit { position: relative; }
.all_side_nav_submit input { background: #05C068 url(../images/all_magni_w.png) no-repeat center left 5% / 18px; width: 100%; border: none; border-radius: 100px; line-height: 55px; letter-spacing: 0; text-align: center; font-size: 14px; font-weight: 500; color: #FFF; cursor: pointer; transition: all .3s; }
.all_side_nav_submit input:hover { opacity: .8; }
.all_side_nav_submit input:disabled { cursor: default; opacity: .4; }
.all_side_nav_submit input:disabled:hover { opacity: .4; }

.product_search_content {  }
.product_search_filter_sp { display: none; }
.product_search_content_head { position: relative; }
.product_search_content_ttl { margin-bottom: 36px; border-left: 1px solid #109458; line-height: 1.2; padding-left: 19px; font-weight: 600; font-size: 22px; color: #020202; }
.product_search_content_list { letter-spacing: 0; font-size: 0; }
.product_search_content_list li { width: 47.4%; display: inline-block; vertical-align: top; }
.product_search_content_list li:nth-child(2n+2) { margin-left: 5.2%; }
.product_search_content_list li:nth-child(n+3) { margin-top: 27px; }
.product_search_content_list li a { display: block; }
.product_search_content_list_img { width: 100%; height: 260px; margin-bottom: 13px; border-radius: 5px; position: relative; overflow: hidden; }
.product_search_content_list_img span { background-repeat: no-repeat; background-position: center; background-size: cover; position: absolute; top: 0; right: 0; bottom: 0; left: 0; transition: all .3s; }
.product_search_content_list li a:hover { opacity: 1; }
@media( min-width: 1025px ){
    .product_search_content_list li a:hover .product_search_content_list_img span { transform: scale(1.1); }
}
.product_search_content_list_ttl { margin-bottom: 5px; position: relative; display: inline-block; line-height: 1.5; font-weight: 600; font-size: 17px; color: #020202; }
.product_search_content_list_ttl:after { content: ""; background: url(../images/all_bg_arrow.png) no-repeat center / contain; width: 8px; height: 14px; position: absolute; top: 50%; right: -16px; transform: translateY(-50%); }
.product_search_content_list_desc { font-weight: 300; font-size: 15px; color: #020202; }


.product_search_content_listB { letter-spacing: 0; font-size: 0; }
.product_search_content_listB li { width: 46.5%; display: inline-block; vertical-align: top; }
.product_search_content_listB li:nth-child(2n+2) { margin-left: 7%; }
.product_search_content_listB li:nth-child(n+3) { margin-top: 20px; }
.product_search_content_listB li a { display: block; }
.product_search_content_listB_img { width: 100%; margin-bottom: 13px; border-radius: 5px; border: 1px solid #ececec; overflow: hidden; position: relative; }
.product_search_content_listB_img span { background-repeat: no-repeat; background-position: center; background-size: contain; width: 100%; padding-top: 100%; transition: all .3s; display: block; }
.product_search_content_listB_img._tokusyu span { background-size: cover; padding-top: 0; aspect-ratio: 290 / 185; }
.product_search_content_listB li a:hover { opacity: 1; }
@media( min-width: 1025px ){
    .product_search_content_listB li a:hover .product_search_content_listB_img span { transform: scale(1.1); }
}
.product_search_content_listB_ttl { margin-bottom: 5px; padding-right: 22px; position: relative; display: inline-block; line-height: 1.5; font-weight: 600; font-size: 18px; color: #020202; }
.product_search_content_listB_ttl:after { content: ""; background: url(../images/all_bg_arrow.png) no-repeat center / contain; width: 8px; height: 14px; position: absolute; top: 50%; right: 0; transform: translateY(-50%); }
.product_search_content_listB_desc { font-weight: 300; font-size: 15px; color: #020202; }
.product_search_content_listB_txt { line-height: 1.7; letter-spacing: 0; font-size: 14px; font-weight: 300; color: #333; }

.product_search_form_inner { border: 3px solid #05C068; border-radius: 15px; overflow: hidden; }
.product_search_form_ttl { background: url(../images/all_magni_green_b.png) no-repeat center left / 32px; margin-bottom: 35px; padding-left: 40px; letter-spacing: 0; font-size: 22px; font-weight: 600; }
.product_search_form_section_head { background: #eefaf5; position: relative; border-top: 1px solid #E2E0E0; border-bottom: 1px solid #E2E0E0; }
.product_search_form_section_head_txt { padding: 27px 60px 15px 37px; position: relative; z-index: 1; display: block; font-size: 22px; font-weight: 600; letter-spacing: 0; color: #1A1A1A; }
.product_search_form_section_head_tool { padding-top: 17px; position: absolute; bottom: 12px; right: 24px; font-size: 10px; font-weight: 600; z-index: 0; color: #109458; }
.product_search_form_section_head_tool:after { content: ""; background: url(../images/all_bg_arrow.png) no-repeat center / contain; width: 10px; height: 14px; position: absolute; top: 0; left: 50%; transform: translateX(-50%) rotate(-90deg); transition: all .3s; }
.product_search_form_section_head_tool_on { letter-spacing: 0; display: inline-block; }
.product_search_form_section_head_tool_off { letter-spacing: 0; display: none; }
.product_search_form_section.hidden .product_search_form_section_head_tool_on { display: none; }
.product_search_form_section.hidden .product_search_form_section_head_tool_off { display: block; }
.product_search_form_section.hidden .product_search_form_section_head_tool:after { transform: translateX(-50%) rotate(90deg); }
.product_search_form_section_head_tool.on .product_search_form_section_head_tool_on { display: none; }
.product_search_form_section_head_tool.on .product_search_form_section_head_tool_off { display: inline-block; }
.product_search_form_section_content_head { margin-bottom: 13px; font-size: 18px; font-weight: 600; }
.product_search_form_section_content_head label { letter-spacing: 0; }
.product_search_form_section_content_head input { margin-right: 10px; position: relative; top: -2px; }
.product_search_form_section_content_head .all_side_nav_checkbox_text { padding-left: 0;}
.product_search_form_section_content_head .all_side_nav_checkbox_text:before { content: none; }
.product_search_form_section_content_sub { padding-left: 16px; }
.product_search_form_section_content_bloc:nth-child(n+2) { margin-top: 29px; }
.product_search_form_section_content_inner { padding: 35px 3.1% 42px 3.1%; }
.product_search_form_section_content li { width: 180px; margin-top: 10px; display: inline-block; }
.product_search_form_section_content li label { line-height: 1.5; letter-spacing: 0; font-size: 18px; font-weight: 300; color: #1A1A1A; }
.product_search_form_section_content li label input { margin-right: 10px; position: relative; top: -2px; }
.product_search_form_section_content_vertical { letter-spacing: 0; font-size: 0; }
.product_search_form_section_content_vertical ul { width: 25%; padding: 27px 0 44px 3.1%; display: inline-block; vertical-align: top; border-right: 1px dashed #E2E0E0; }
.product_search_form_section_content_vertical ul:nth-child(4) { border-right: none; }
.product_search_form_section_content_vertical ul li { width: 100%; display: block; }


.product_search_input { width: 93%; max-width: 740px; padding-left: 37px; margin: 34px 0 51px; position: relative; }
.product_search_input input { background: #FFF; width: 100%; padding: 17px 70px 17px 44px; border: 1px solid #E8E8E8; border-radius: 9px; line-height: 1; font-size: 15px; }
.product_search_input input::placeholder { font-weight: 300; color: #c4c4c4; }
.product_search_input_btn { background: #05C068; height: 100%; width: 120px; position: absolute; top: 0; right: 0; border-top-right-radius: 9px; border-bottom-right-radius: 9px; line-height: 56px; text-align: center; font-size: 16px; color: #FFF; cursor: pointer; border: none; transition: all .3s; }
.product_search_input_btn:hover { opacity: .8; }
.product_search_form_bottom { padding: 46px 3.1% 60px 3.1%; border-top: 1px solid #05C068; }
.product_search_form_bottom_inner { position: relative; }
.product_search_form_bottom_txt { display: inline-block; vertical-align: middle; line-height: 1; font-size: 16px; font-weight: 600; color: #1A1A1A; }
.product_search_form_bottom_txt span { margin: 0 9px 0 6px; display: inline-block; line-height: 1; font-size: 30px; font-weight: 600; color: #109458; }
.product_search_form_bottom_btn { background: #05C068; width: 270px; padding: 21px 0; margin-left: 26px; display: inline-block; border: none; border-radius: 100px; line-height: 1; font-size: 20px; font-weight: 500; color: #FFF; cursor: pointer; transition: all .3s; }
.product_search_form_bottom_btn:hover { opacity: .8; }
.product_search_form_bottom_btn:disabled { cursor: default; opacity: .4; }
.product_search_form_bottom_btn:disabled:hover { opacity: .4; }
.product_search_form_bottom_reset { display: inline-block; position: absolute; top: 60%; right: 0; transform: translateY(-50%); }
.product_search_form_bottom_reset a { text-decoration: underline; font-size: 16px; font-weight: 600; color: #707070; }

.typeB .products_details_intro_video { margin: 80px 0 100px; padding: 0 30px; }
.typeC .products_details_intro_video { margin: 75px 0 88px; padding: 0 30px; }
.products_list_numbered {}
.products_list_numbered li { letter-spacing: 0; font-size: 0; }
.products_list_numbered li:nth-child(n+2) { margin-top: 55px; }
.products_list_numbered li:nth-child(n+2) { margin-top: 27px; padding-top: 27px; border-top: 1px solid #E2E0E0; }
.products_list_numbered_l { width: 52.9%; padding-top: 14px; display: inline-block; vertical-align: top; }
.products_list_numbered_r { width: 42.6%; margin-left: 4.5%; float: right; display: inline-block; vertical-align: top; }
.products_list_numbered_main { margin-bottom: 22px; padding-left: 48px; position: relative; line-height: 1.6; letter-spacing: 0; font-weight: 400; font-size: 17px; color: #020202; }
.products_list_numbered_nb { width: 29px; height: 29px; position: absolute; top: -1px; left: 0; border-radius: 70px; border: 1px solid #05C068; line-height: 27px; text-indent: 1px; font-family: 'Poppins', sans-serif; font-size: 18px; text-align: center; color: #05C068; }
.isIE .products_list_numbered_nb { line-height: 29px; }
.products_list_numbered_txt { line-height: 1.6; letter-spacing: 0; font-size: 14px; font-weight: 400; color: #020202; }
.products_list_numbered_img img { width: 100%; }
.products_list_numbered li.nopic .products_list_numbered_l { width: 100%; }
.products_list_numbered li.nopic .products_list_numbered_r { display: none; }

.products_details .product_section { margin-top: 78px; padding-bottom: 150px; }

.product_search_content_listB_wrapper { margin-top: 86px; }
.info_details_relatedA_wrapper { margin-top: 32px; }

.products_details_intro { background: #F9FFFC; padding: 78px 30px 88px; border: 1px solid #47AA7B; border-radius: 5px; }
.products_details_intro_top { margin-bottom: 50px; letter-spacing: 0; font-size: 0; }
.products_details_intro_l { width: 44%; display: inline-block; vertical-align: top; }
.products_details_intro_r { width: 45%; padding-right:5%; margin-left: 7%; float: right; display: inline-block; vertical-align: top; }
.products_details_intro_cate { background: #05C068; margin-bottom: 7px; padding: 2px 7px 1px; display: inline-block; letter-spacing: 0; font-size: 12px; font-weight: 500; color: #FFF; }
.products_details_intro_ttl { margin-bottom: 28px; letter-spacing: 0; font-size: 24px; font-weight: 600; color: #00893F; }
.products_details_intro_head { margin-bottom: 18px; letter-spacing: 0; font-size: 16px; font-weight: 500; color: #020202; }
.products_details_intro_txt { line-height: 1.7; letter-spacing: 0; font-size: 14px; font-weight: 500; color: #020202; }
.products_details_intro_img,
.products_details_intro_img img { width: 100%; position: relative; }
.products_details_intro_video { width: 100%; }
.products_details_intro_video img { width: 100%; }
.products_details_intro_video video { width: 100%; }
.products_details_nav { margin: 66px 0 60px; }
.products_details_nav_inner { border-bottom: 1px solid #E2E0E0; }
.products_details_nav ul { padding-bottom: 6px; letter-spacing: 0; font-size: 0; }
.typeA .products_details_nav li { width: 25%; position: relative; display: inline-block; }
.typeB .products_details_nav li { width: 20%; position: relative; display: inline-block; }
.typeC .products_details_nav li { width: 20%; position: relative; display: inline-block; }

/* products btns add 24/11/22 */
.products_details_intro.is_btns { position: relative; padding-bottom: 38px; }
.products_details_intro.is_btns .products_details_intro_top { margin-bottom: 0px; }
.products_details_intro_btns {
	position: relative;
	left: -15%;
	display: none;
	gap: 0 2%;
	margin-top: 25px;
	justify-content: center;
	width: 130%;
}
.products_details_intro_r .products_details_intro_btns {
	display: flex;
}
.products_details_intro_btns_item {
	width: 28%;
}
.products_details_intro_btns_item a {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 40px;
	background-color: #f00;
	color: #fff;
	font-size: 12px;
	border-radius: 100px;
	box-sizing: border-box;
	transition: .2s;
}
.products_details_intro_btns_item._download a {
	background-color: #05C068;
	border: 1px solid #05C068;
}
.products_details_intro_btns_item._download a:hover {
	background-color: #fff;
	color: #05C068;
}
.products_details_intro_btns_item._sample a {
	background-color: #F58347;
	border: 1px solid #F58347;
}
.products_details_intro_btns_item._sample a:hover {
	background-color: #fff;
	color: #F58347;
}
.products_details_intro_btns_item._demo a {
	background-color: #8FC120;
	border: 1px solid #8FC120;
}
.products_details_intro_btns_item._demo a:hover {
	background-color: #fff;
	color: #8FC120;
}

.products_details_sdgs_wrapper { width: 100%; margin: 0 auto; display: block; }
.products_details_sdgs { width: 100%; margin: 45px auto 20px; display: flex; flex-wrap: wrap; letter-spacing: 0; text-align: center; font-size: 0; }
.products_details_sdgs li { width: 111px; margin: 6px 11px 0 0; display: inline-block; }
.products_details_sdgs li:last-child { margin-right: 0; }
.products_details_sdgs li img { width: 100%; }
.products_details_sdgs_txt { padding-bottom: 20px; }
.products_details_sdgs_txt p { line-height: 1.6; letter-spacing: 0; font-weight: 500; font-size: 14px; }

.products_details_intro_top.nopic .products_details_intro_r { display: none; }
.products_details_intro_top.nopic .products_details_intro_l { width: 100%; }

@media( max-width: 360px){
    .typeA .products_details_nav_inner { overflow: scroll; white-space: nowrap; }
    .typeA .products_details_nav li { width: auto; }
    .typeA .products_details_nav li a { padding: 0 25px 14px; }
}
@media( max-width: 480px){
    .typeB .products_details_nav_inner { overflow: scroll; white-space: nowrap; }
    .typeB .products_details_nav li { width: auto; }
    .typeB .products_details_nav li a { padding: 0 25px 14px; }
}
@media( max-width: 600px){
    .typeC .products_details_nav_inner { overflow: scroll; white-space: nowrap; }
    .typeC .products_details_nav li { width: auto; }
    .typeC .products_details_nav li a { padding: 0 25px 14px; }
}
.products_details_nav li:nth-child(n+2):after { content: ""; background: #E2E0E0; width: 1px; height: 18px; position: absolute; top: 50%; left: 0; transform: translateY(-50%); }
.products_details_nav li a { padding-bottom: 14px; position: relative; display: block; text-align: center; font-weight: 400; font-size: 15px; color: #00893F; }
.products_details_nav li a:after { content: ""; background: url(../images/all_bg_arrow.png) no-repeat center / contain; width: 10px; height: 14px; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%) rotate(90deg); transition: all .3s; }
.products_details_nav li a:hover { opacity: 1; }
@media(min-width: 1025px){
    .products_details_nav li a:hover:after { bottom: -4px; }
}

.products_section { margin-top: 60px; }
.typeB .products_section .related_list_ttl,
.typeC .products_section .related_list_ttl { margin-bottom: 20px; }
.typeB .products_details_intro_top,
.typeC .products_details_intro_top  { margin-bottom: 0; }
.typeB .products_details_intro_l,
.typeC .products_details_intro_l { width: 48%; display: inline-block; vertical-align: top; }
.typeB .products_details_intro_r,
.typeC .products_details_intro_r {
    width: 45%;
    padding-right: 5%;
    margin-left: 7%;
    display: inline-block;
    vertical-align: top;
}

.products_details .mid_contact { margin: 74px auto 84px; }
.products_section .related_list_ttl { margin-bottom: 70px; }
.product_section_unit { padding: 50px 30px 0; border: 1px solid #47AA7B; border-radius: 5px; border-top-left-radius: 0; position: relative; }
.product_section_unit:nth-child(n+2) { margin-top: 80px; }
.product_section_unit_ribbon { background: url(../images/ribbon_green_long.png) no-repeat left top / contain; width: 141px; height: 29px; padding-top: 5px; position: absolute; transform: translateY(-100%); left: -1px; top: -1px; text-align: center; font-size: 10px; font-family: 'Poppins', sans-serif; font-weight: 700; font-size: 14px; text-indent: -11px; color: #FFF; }
.product_section_unit_intro { margin-bottom: 30px; letter-spacing: 0; font-size: 0; }
.product_section_unit_intro_l { width: 53%; display: inline-block; vertical-align: top; }
.product_section_unit_intro_r { width: 47%; padding-right: 20px; display: inline-block; vertical-align: top; float: left; }
.product_section_unit_intro_l .all_ttl_border18 { margin-bottom: 20px; }
.product_section_unit_intro.nopic .product_section_unit_intro_r { display: none; }
.product_section_unit_intro.nopic .product_section_unit_intro_l { width: 100%; }

.all_ttl_border18 { border-left: 2px solid #47AA7B; letter-spacing: 0; font-size: 18px; font-weight: 500; color: #020202; line-height: 1.2; padding-left: 12px; }
    
.product_section_unit_intro_head { margin-bottom: 20px; line-height: 1.6; letter-spacing: 0; font-size: 14px; font-weight: 500; color: #1A1A1A; }
.product_section_unit_intro_point {  }
.product_section_unit_intro_point_unit {  }
.product_section_unit_intro_point_unit:nth-child(n+2) { margin-top: 18px; }
.product_section_unit_intro_point_ttl { margin-bottom: 8px; font-size: 12px; font-weight: 500; color: #1A1A1A; }
.product_section_unit_intro_img,
.product_section_unit_intro_img img { width: 100%; }
.product_section_unit_intro_point_list { background: #e8f7ef; padding: 16px 20px 11px 0; }
.product_section_unit_intro_point_list li { padding-left: 27px; position: relative; letter-spacing: 0; font-size: 12px; font-weight: 400; color: #1A1A1A; }
.product_section_unit_intro_point_list li:nth-child(n+2) { margin-top: 7px; }
.product_section_unit_intro_point_list li:after { content: ""; background: #0cad63; width: 6px; height: 6px; border-radius: 15px; position: absolute; top: 7px; left: 12px; }
.product_section_unit_video {  }
.product_section_unit_video img { width: 100%; }
.product_section_unit_video video { width: 100%; }
.product_section_unit_accordion_list { padding: 35px 15px 65px; }
.product_section_unit_accordion_list .all_ttl_border18 { margin-bottom: 31px; }
.accordion_wrapper {
}
.product_section_unit_accordion:nth-child(n+2) { margin-top: 25px; }
.product_section_unit_accordion_head {

}
.product_section_unit_accordion_head a { border: 1px solid #47AA7B; padding: 20px 25px 16px 25px; position: relative; display: block; font-size: 15px; font-weight: 600; color: #020202; }
.product_section_unit_accordion_head a .plus { height: 15px; width: 15px; position: absolute; top: 50%; right: 19px; transform: translateY(-50%); }
.product_section_unit_accordion_head a .plus:before { content: ""; background: #05C068; height: 2px; width: 15px; position: absolute; left: 0; top: 6px; transform: rotate(90deg); }
.product_section_unit_accordion_head a .plus:after { content: ""; background: #05C068; height: 2px; width: 15px; position: absolute; left: 0; top: 6px; }

.product_section_unit_accordion .product_tableA { width: 100%; }
.product_table_wrapper { display: none; border: 1px solid #47AA7B; border-top: none; }
.product_tableA { width: 100%; }
.product_tableA tr th {
    width: 165px;
    background: #F3FCF8;
    padding: 11px 2px;
    letter-spacing: 0;
    text-align: center;
    font-weight: 600;
    font-size: 13px;
    color: #327656;
}
.product_tableA tr td { padding: 11px 5px; border-top: 1px solid #C8E7DB; text-align: center; font-size: 13px; font-weight: 300; color: #020202; }
.product_tableA tr th { border-top: 1px solid #C8E7DB; }
.product_tableA tr:nth-child(1) th,
.product_tableA tr:nth-child(1) td { border-top: none; }
.product_tableA tr th:nth-child(n+2),
.product_tableA tr td:nth-child(n+2) { border-left: 1px solid #C8E7DB; }


.product_section_unit_accordion .product_tableB { width: 100%; border-top: none; }
.product_table_wrapper { display: none; }
.product_tableB_wrapper { overflow: auto; }
.product_tableB { width: 100%; }
.product_tableB tr th { background: #F3FCF8; min-width: 70px; padding: 11px 5px; text-align: center; font-weight: 600; font-size: 14px; color: #327656; }
.product_tableB tr td { padding: 11px 5px; border-top: 1px solid #C8E7DB; text-align: center; font-size: 13px; font-weight: 300; color: #020202; }
.product_tableB tr th:last-child { min-width: 200px; }
.product_tableB tr th:nth-child(n+2),
.product_tableB tr td:nth-child(n+2) { border-left: 1px solid #C8E7DB; }

.product_table_img_wrapper {
	border-bottom: 1px solid #47AA7B;
}
.product_table_img {
    padding: 58px 22px 34px;
    text-align: center;
    letter-spacing: 0;
    font-size: 0;
    text-align: center;
}
.product_table_img_duo li {
	width: 49%;
	display: inline-block;
}
.product_table_img_duo li:nth-child(n+2) {
	margin-left: 2%;
}
.product_table_img_mono li {
	width: 100%;
	max-width: 385px;
	margin: 0 auto;
}
.product_table_img li img {
	width: 100%;
}
.product_table_note {
    padding: 18px 22px 18px;
    border-top: 1px solid #47aa7b;
}
.product_table_note li {
    display: block;
    line-height: 1.8;
	letter-spacing: 0;
    font-weight: 200;
    font-size: 13px;
    color: #020202;
}
.product_table_note li:nth-child(n+2) {
	margin-top: 12px;
}


.products_details .info_details_relatedA li{ margin-left: 2.9%; }
.products_details .info_details_relatedA li:nth-child(3n+1) { margin-left: 0; }
.products_details .info_details_relatedA li:nth-child(n+4) { margin-top: 42px; }
.products_details_info_details_related { margin-top: 88px; }
.accordion_wrapperB {

}
.product_section_unit_accordionB { border: 1px solid #47AA7B; }
.product_section_unit_accordionB:nth-child(n+2) { margin-top: 22px; }
.product_section_unit_accordionB_body { padding: 18px 28px 34px 28px; letter-spacing: 0; font-size: 0; }
.product_section_unit_accordionB_img img { width: 100%; }
.product_section_unit_accordionB_head {
	
}
.product_section_unit_accordionB_head a { padding: 21px 28px 17px 73px; position: relative; display: block; font-size: 15px; font-weight: 600; color: #020202; }
.product_section_unit_accordionB_head a .plus { height: 15px; width: 15px; position: absolute; top: 50%; right: 22px; transform: translateY(-50%); }
.product_section_unit_accordionB_head a .plus:before { content: ""; background: #47AA7B; height: 2px; width: 15px; position: absolute; left: 0; top: 6px; transform: rotate(90deg); }
.product_section_unit_accordionB_head a .plus:after { content: ""; background: #47AA7B; height: 2px; width: 15px; position: absolute; left: 0; top: 6px; }
.nb { width: 29px; height: 29px; position: absolute; left: 30px; top: 16px; background: #05C068; border-radius: 70px; text-align: center; padding: 1px 0; text-indent: 1px; color: #FFF; font-family: 'Poppins', sans-serif; font-weight: 400; font-size: 18px; }
.isIE .nb { padding: 2px 0; }
.product_section_unit_accordionB_l { width: 37%; margin-right: 4%; display: inline-block; vertical-align: top; }
.product_section_unit_accordionB_r { width: 59%; display: inline-block; vertical-align: top; padding-right: 4%; }
.product_section_unit_accordionB_ttl { margin-bottom: 20px; padding-left: 0; letter-spacing: 0; font-weight: 500; font-size: 17px; color: #020202; }
.product_section_unit_accordionB_txt { line-height: 1.7; letter-spacing: 0; font-weight: 400; font-size: 14px; color: #020202; }

.product_section_unit_accordionB_body.nopic .product_section_unit_accordionB_l { display: none; } 
.product_section_unit_accordionB_body.nopic .product_section_unit_accordionB_r { width: 100%; }

.news_filter { background: #FFF; padding: 27px 15px 25px; border-bottom: 1px solid #F2F2F2; text-align: center; }
.news_filter_unit { display: inline-block; }
.news_filter_unit:nth-child(n+2) { margin-left: 84px; }
.news_filter_head { display: inline-block; vertical-align: middle; line-height: 1; letter-spacing: 0; font-size: 15px; font-weight: 500; color: #1A1A1A; }
.news_filter_select { width: 265px; position: relative; display: inline-block; vertical-align: middle; border: 1px solid #E2E0E0; overflow: hidden; line-height: 1; }
.news_filter_select:after { content: ""; background: url(../images/all_bg_arrow.png) no-repeat center / contain; width: 10px; height: 14px; position: absolute; top: 50%; right: 18px; transform: translateY(-50%); }
.news_filter_select select { background: #FFF; width: 120%; padding: 14px 13px; border: none; line-height: 1; font-size: 15px; font-weight: 300; color: #161616; -webkit-appearance: none; }
.news_list {  }
.news_list li { border-bottom: 1px solid #F2F2F2; }
.news_list li:nth-child(n+2) {  }
.news_list li a { padding: 35px 30px 28px 0; display: block; position: relative; letter-spacing: 0; font-size: 0; color: #333; transition: all .3s; }
.news_list li a:after { content: ""; background: url(../images/all_bg_arrow.png) no-repeat center / contain; width: 10px; height: 14px; position: absolute; top: 50%; right: 13px; transform: translateY(-50%); transition: all .3s; }
.news_list_head { width: 165px; display: inline-block; vertical-align: top; letter-spacing: 0; font-size: 0; }
.news_list_date { font-family: 'Heebo', sans-serif; letter-spacing: 0; display: inline-block; font-weight: 400; font-size: 15px; color: #9FA29E; }
.news_list_cate { background: #f4f4f4; width: 62px; padding: 5px 0; float: right; display: inline-block; border-radius: 50px; text-align: center; line-height: 1; letter-spacing: 0; font-size: 12px; font-weight: 400; }
.news_list_txt { width: calc(100% - 165px); padding-left: 10px; display: inline-block; vertical-align: top; font-size: 15px; font-weight: 300; letter-spacing: 0; }
.news_list_txt span {
    background-image: -webkit-gradient(linear,left top,left bottom,from(#1a1a1a),to(#1a1a1a));
    background-image: -webkit-linear-gradient(#1a1a1a,#1a1a1a);
    background-image: linear-gradient(#1a1a1a,#1a1a1a);
    padding-bottom: .25em;
    background-position: 100% 100%;
    background-size: 100% 1px;
    background-repeat: no-repeat;
    text-decoration: none;
    letter-spacing: inherit;
    line-height: inherit;
    font-size: inherit;
}
@-webkit-keyframes line {
    0%{ background-position:right bottom; background-size:100% 1px; }
    50%{ background-position:right bottom; background-size:0% 1px; }
    51%{ background-position:left bottom; background-size:0% 1px; }
    100%{background-position:left bottom; background-size:100% 1px; }
}
@keyframes line{
    0%{ background-position:right bottom; background-size:100% 1px; }
    50%{ background-position:right bottom; background-size:0% 1px; }
    51%{ background-position:left bottom; background-size:0% 1px; }
    100%{ background-position:left bottom; background-size:100% 1px; }
}
.news_list li a:hover { opacity: 1; }
@media(min-width: 1025px){
    .news_list li a:hover .news_list_txt span { -webkit-animation: line .8s cubic-bezier(.165,.84,.44,1); animation: line .8s cubic-bezier(.165,.84,.44,1); }
    .news_list li a:hover:after { right: 7px; }
}
.news_more.all_more { margin: 70px auto 40px; }
.news_article_none { margin: 40px auto 40px; text-align: center; }

.news_details_head { background: #FFF; border-bottom: 1px solid #F2F2F2; padding: 65px 108px 23px; }
.news_details_head_inner { padding-left: 17px; border-left: 5px solid #05C068; }
.news_details_head_info { margin: 3px 0 2px; display: inline-block; }
.news_details_head_info_date { margin-right: 16px; display: inline-block; line-height: 1; letter-spacing: 0; font-family: 'Heebo', sans-serif; font-size: 16px; font-weight: 500; color: #05C068; }
.news_details_head_info_cate { background: #f4f4f4; width: 62px; padding: 5px 0; float: right; display: inline-block; border-radius: 50px; text-align: center; line-height: 1; letter-spacing: 0; font-size: 12px; font-weight: 400; }
.news_details_head_ttl { line-height: 1.6; letter-spacing: 0; font-size: 26px; font-weight: 600; color: #020202; }
.news_details_ttlA { margin-bottom: 17px; letter-spacing: 0; font-size: 22px; font-weight: 600; color: #020202; }
.news_details_txt { margin-bottom: 5px; line-height: 2.2; letter-spacing: 0; font-size: 17px; font-weight: 300; }
.news_img { margin: 24px 0 52px; letter-spacing: 0; font-size: 0; }
.news_img li { display: inline-block; }
.news_imgA li { width: 100%; }
.news_imgB li { width: 49.2%; }
.news_imgB li:nth-child(n+2) { margin-left: 1.6%; }
.news_imgB li img { width: 100%; }
.news_detailslink_info { margin-top: 30px; position: relative; }
.news_detailslink_info_head { margin-right: 10px; display: inline-block; font-size: 16px; font-weight: 300; color: #262626; }
.news_detailslink_info a { display: inline-block; font-size: 16px; font-weight: 600; color: #00893F; word-break: break-all; }

.news_details_nav { background: #FFF; border-top: 1px solid #F2F2F2; letter-spacing: 0; font-size: 0; }
.news_details_nav li { width: 33.3333%; display: inline-block; }
.news_details_nav li:nth-child(1) { text-align: left; }
.news_details_nav li:nth-child(2) { text-align: center; border-left: 1px solid #F2F2F2; border-right: 1px solid #F2F2F2; }
.news_details_nav li:nth-child(3) { text-align: right; }
.news_details_nav li a { padding: 44px 0 47px; position: relative; display: block; letter-spacing: 0; font-size: 16px; font-weight: 300; color: #00893F; }
.news_details_nav li a span { display: inline; line-height: inherit; letter-spacing: inherit; font-size: inherit; }
.news_details_nav li a:hover { opacity: 1; }
.news_details_nav li a.nolink { pointer-events: none; opacity: 0.4; }
.news_details_nav li:nth-child(1) a { padding-left: 65px; }
.news_details_nav li:nth-child(1) a:after{ content: ""; background: url(../images/all_bg_arrow.png) no-repeat center / contain; height: 14px; width: 8px; position: absolute; top: 50%; left: 34px; transform: translateY(-50%) rotate(180deg); transition: all.3s; }
.news_details_nav li:nth-child(3) a { padding-right: 65px; }
.news_details_nav li:nth-child(3) a:after{ content: ""; background: url(../images/all_bg_arrow.png) no-repeat center / contain; height: 14px; width: 8px; position: absolute; top: 50%; right: 34px; transform: translateY(-50%); transition: all.3s; }
.news_details .all_contents_grey_inner { padding-bottom: 64px; }
@media (min-width: 1025px){
    .news_details_nav li:nth-child(1) a:hover:after{ left: 29px; }
    .news_details_nav li:nth-child(3) a:hover:after{ right: 29px; }
    .news_details_nav li a span.news_details_nav_line { position: relative; display: inline-block; }
    .news_details_nav li a span.news_details_nav_line:after {
        content: "";
        background: #00893F;
        width: 0;
        height: 1px;
        position: absolute;
        bottom: -1px;
        left: 0;
        transition: all .3s;
    }
    .news_details_nav li a:hover span.news_details_nav_line:after { width: 100%; }
}

/* #seminar
=========================================== */
.seminar_content {
	padding-bottom: 195px;
}
.seminar_list {
	margin-top: 50px;
	letter-spacing: 0;
	font-size: 0;
}
.seminar_list li {
	width: 31%;
	margin-left: 3.5%;
	display: inline-block;
	vertical-align: top;
	position: relative;
}
.seminar_list li:nth-child(3n+1) {
	margin-left: 0;
}
.seminar_list li:nth-child(n+4) {
	margin-top: 60px;
}
.seminar_list li._new:after {
	content: "NEW";
	background: #E0140B;
	width: 48px;
	height: 48px;
	padding: 16px 0;
	position: absolute;
	top: -21px;
	left: -24px;
	border-radius: 100%;
	line-height: 1;
	letter-spacing: 0;
	text-align: center;
	text-indent: 2px;
	font-family: 'Poppins', sans-serif;
	font-weight: 500;
	font-size: 16px;
	color: #FFF;
}
.seminar_list li a {
	display: block;
}
.seminar_list ._img {
	width: 100%;
	height: 260px;
	margin-bottom: 32px;
	position: relative;
	overflow: hidden;
}
.seminar_list ._img span {
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	transition: all .3s;
}
.seminar_list ._cate {
	padding: 0 8px;
	letter-spacing: 0;
	font-weight: 600;
	font-size: 13px;
	color: #333;
}
.seminar_list ._date {
	margin-left: 15px;
	padding-left: 8px;
	border-left: 1px solid #D9D9D9;
	font-weight: 300;
	font-size: 12px;
	color: #989898;
}
.seminar_list ._ttl {
	margin: 11px 0 38px;
	padding: 0 8px;
	letter-spacing: .05em;
	font-weight: 600;
	font-size: 16px;
	color: #020202;
}
.seminar_list ._link {
	padding: 0 35px 5px 10px;
    position: relative;
    font-weight: 500;
    font-size: 15px;
    color: #05C068;
}
.seminar_list ._link:after {
	content: "";
	background: #05C068;
	width: 100%;
	height: 1px;
	position: absolute;
	bottom: 0;
	left: 0;
}
.seminar_list ._link:before {
	content: "";
	background: url(../images/seminar_link.jpg) no-repeat center / contain;
	width: 31px;
	height: 31px;
	position: absolute;
	bottom: 0;
	right: 0;
}
.seminar_more {
	margin: 120px auto 0;
}
.seminar_filter {
	margin: 70px auto 40px;
	padding-right: 270px;
	position: relative;
	letter-spacing: 0;
	font-size: 0;
}
.seminar_filter ._el {
    width: 47%;
    max-width: 405px;
    display: inline-block;
    letter-spacing: 0;
    font-size: 0;
}
.seminar_filter ._el._select ._input select {
	width: calc(100% + 50px);
}
.seminar_filter ._el._select ._input {
    position: relative;
    overflow: hidden;
}
.seminar_filter ._el._select ._input:after {
	content: "";
	background: url(../images/all_arrow_down.svg) no-repeat center / contain;
	width: 14px;
	height: 9px;
	position: absolute;
	top: 50%;
	right: 15px;
	transform: translateY(-50%);
}
.seminar_filter ._el:nth-child(1) {
	margin-right: 3%;
}
.seminar_filter ._el span {
	width: 100px;
	display: inline-block;
	vertical-align: middle;
	letter-spacing: 0;
	font-weight: 600;
	font-size: 16px;
	color: #23C068;
}
.seminar_filter ._input {
	width: calc(100% - 100px);
	display: inline-block;
	vertical-align: middle;
	border: 1px solid #E8E8E8;
	border-radius: 8px;
	font-weight: 300;
	font-size: 15px;
}
.seminar_filter ._input input {
	background: transparent;
	width: 100%;
	padding-left: 20px;
	border: none;
	line-height: 51px;
	font-weight: 300;
	font-size: 15px;
}
.seminar_filter ._input select {
	background: transparent;
	width: 100%;
	padding: 16px 0 16px 20px;
	position: relative;
	z-index: 1;
	border: none;
	line-height: 51px;
	font-weight: 300;
	font-size: 15px;
}
.seminar_filter ._btn {
	background: #05C068;
	width: 270px;
	position: absolute;
	right: 0;
	top: 1px;
	display: inline-block;
	vertical-align: middle;
	border-radius: 50px;
	text-align: center;
}
.seminar_filter ._btn button {
	display: block;
	width: 100%;
	line-height: 51px;
	font-weight: 600;
	font-size: 16px;
	color: #FFF;
	border: none;
	background-color: transparent;
	cursor: pointer;
	transition: all .3s;
}
.seminar_filter ._btn button:hover {
	opacity: .6;
}

/* #information
=========================================== */
.info_section { margin-top: 64px; }
.information_content_list {}
.information_content_list > li { padding: 48px 0; border-bottom: 1px solid #E2E0E0; letter-spacing: 0; font-size: 0; }
.information_content_list > li:first-child { padding-top: 4px; }
.information_content_list_content { width: calc(100% - 290px); padding-left: 3.7%; display: inline-block; vertical-align: top; }
.information_content_list_content_head { margin-bottom: 22px; }
.information_content_list_content_date { border-right: 1px solid #D9D9D9; padding-right: 18px; margin-right: 17px; display: inline-block; line-height: 1; letter-spacing: .5px; font-size: 12px; color: #989898; font-weight: 300; display: none; }
.information_content_list_content_cate { display: inline-block; line-height: 1; font-size: 13px; font-weight: 600; color: #333; }
.information_content_list_img { width: 290px; height: 185px; border-radius: 5px; display: inline-block; position: relative; overflow: hidden; }
.information_content_list_img a { width: 100%; height: 100%; display: block; }
.information_content_list_img span { background-size: cover; background-repeat: no-repeat; background-position: center; width: 100%; height: 100%; position: absolute; transition: all .4s; }
.information_content_list_img a:hover { opacity: 1; }
@media(min-width: 1025px){
    .information_content_list > li.activ .information_content_list_img span { transform: scale(1.1); }
}
.information_content_list_ttl { margin-bottom: 44px; line-height: 1.7; font-size: 20px; font-weight: 600; color: #1A1A1A; }
.information_content_list_tag { letter-spacing: 0; font-size: 0; }
.information_content_list_tag li { margin: 8px 10px 0 0; display: inline-block; }
.information_content_list_tag li a { padding: 6px 10px; display: block; border-radius: 10px; border: 1px solid #109458; line-height: 1; letter-spacing: 0; font-weight: 500; font-size: 12px; color: #109458; }
.info_more { margin: 73px auto 0; }

.info_filter { display: none; }
.info_details .all_contents_grey_inner { padding: 18px 108px 64px; }
.info_details_section_wrapper {  }
.info_details_section { padding: 58px 0 40px; }
.info_details_section:nth-child(n+2) { border-top: 1px solid #F2F2F2; }
.info_details_section p:nth-child(n+3) { margin-top: 15px; }
.info_details_txt_wrapper {  }
.info_details_txt { font-size: 17px; font-weight: 300; line-height: 2.2; letter-spacing: 0; }
.info_details_txt strong { font-weight: 500; }
.info_details_txt:nth-child(n+2) { margin-top: 37px; }
.info_details_strange_list {  }
.info_detail_main_img { margin-bottom: 22px; padding-top: 10px; }
.info_detail_main_img img { width: 100%; }
.info_details_ttlA { margin-bottom: 20px; padding: 1px 0 0 24px; border-left: 1px solid #109458; line-height: 1.3; letter-spacing: 0; font-weight: 600; font-size: 22px; color: #020202; }
.info_details_ttlA_fix { margin-top: 25px; margin-bottom: 45px; }
.info_details_head_info_cate { padding: 7px 0; float: right; display: inline-block; text-align: center; line-height: 1; letter-spacing: 0; font-size: 10px; font-weight: 500; color: #00893F; }
.info_details_strange_list li { letter-spacing: 0; font-size: 17px; font-weight: 300; line-height: 2.2; } 
.info_details_strange_list_arrow { padding-top: 36px; position: relative; }
.info_details_strange_list_arrow:after { content: "↓"; position: absolute; left: -2px; top: 9px; letter-spacing: 0; line-height: 1; font-size: 18px; font-weight: 300; }
.info_details_link { margin-top: 75px; }
.info_details_link a { display: inline-block; text-decoration: underline; font-weight: 600; font-size: 16px; color: #00893F; }

.info_details_ttlB { padding-bottom: 9px; border-bottom: 1px solid #109458; font-size: 18px; font-weight: 600; }

.info_details .all_contents_grey_inner.info_details_related { padding: 59px 85px 78px; }
.info_details_related_wrapperA { margin-top: 64px; }
.info_details_related_wrapperB { margin-top: 108px; }

.info_details_relatedA { width: 100%; max-width: 920px; margin: 30px auto 0; letter-spacing: 0; font-size: 0; }
.info_details_relatedA li { width: 31.4%; margin-left: 2.9%; display: inline-block; vertical-align: top; }
.info_details_relatedA li:nth-child(3n+1) { margin-left: 0; }
.info_details_relatedA li:nth-child(n+4) { margin-top: 72px; }
.info_details_relatedA_img { position: relative; width: 100%; border: 1px solid #D8D8D8; overflow: hidden; }
.info_details_relatedA_img p { background-size: contain; background-repeat: no-repeat; background-position: center; width: 100%; padding-top: 100%; transition: all .3s; }
.info_details_relatedA li a:hover .info_details_relatedA_img p { transform: scale(1.1); }
.info_details_relatedA_body {}
.info_details_relatedA_cate { background: #05C068; margin: 21px 0 5px; padding: 5px 7px 4px 7px; display: inline-block; letter-spacing: 0; line-height: 1; font-size: 12px; font-weight: 500; color: #FFF; }
.info_details_relatedA_ttl { margin-bottom: 4px; font-size: 16px; font-weight: 600; color: #020202; }
.info_details_relatedA_txt { overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; line-height: 1.7; letter-spacing: 0; font-size: 14px; font-weight: 300; color: #333; }

.info_details_relatedA_extra { width: 100%; max-width: 920px; margin: 49px auto 0; padding-top: 48px; border-top: 1px solid #EAEAEA; letter-spacing: 0; font-size: 0; }
.info_details_relatedA_extra li { width: 31.4%; display: inline-block; vertical-align: top; }
.info_details_relatedA_extra li:nth-child(n+2) { margin-left: 2.9%; }
.info_details_relatedA_extra_ttl { margin-bottom: 9px; padding-left: 6px; border-left: 1px solid #05C068; font-size: 16px; font-weight: 500; color: #020202; }
.info_details_relatedA_extra_txt { overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; line-height: 1.7; letter-spacing: 0; font-size: 14px; font-weight: 300; color: #333; }

.info_details_relatedB {}
.info_details_relatedB li { border-bottom: 1px solid #E2E0E0; }
.info_details_relatedB li a { padding: 24px 0 24px; display: block; letter-spacing: 0; font-size: 0; }
.info_details_relatedB_img { width: 185px; height: 120px; display: inline-block; vertical-align: top; overflow: hidden; }
.info_details_relatedB_img p { width: 100%; height: 100%; background-size: cover; background-repeat: no-repeat; background-position: center; transition: all .3s; }
.info_details_relatedB li a:hover { opacity: 1; }
@media (min-width: 1025px){
    .info_details_relatedB li a:hover .info_details_relatedB_img p { transform: scale(1.1); }
}
.info_details_relatedB_body { width: calc(100% - 185px); margin-top: 4px; padding-left: 7.7%; display: inline-block; vertical-align: top; }
.info_details_relatedB_date { display: inline-block; vertical-align: middle; line-height: 1; letter-spacing: 0; font-size: 12px; font-weight: 300; color: #989898; }
.info_details_relatedB_cate { background: #e7f8f0; margin-left: 14px; padding: 3px 16px; display: inline-block; vertical-align: middle; border-radius: 40px; line-height: 1; letter-spacing: 0; font-size: 12px; font-weight: 500; color: #00893F; }
.info_details_relatedB_ttl { margin-top: 14px; line-height: 1.7; font-size: 20px; font-weight: 600; color: #1A1A1A; }
.info_details_ttlB_link { float: right; margin: 30px 0 10px; }
.info_details_ttlB_link a { padding-right: 25px; position: relative; display: block; line-height: 1; font-size: 16px; color: #00893F; }
.info_details_ttlB_link a:after { content: ""; background: url(../images/all_bg_arrow.png) no-repeat center / contain; height: 14px; width: 8px; position: absolute; top: 50%; right: 0; transform: translateY(-50%); }
.info_details_ttlB_link a:hover { opacity: 1; }
@media (min-width: 1025px){
    .info_details_ttlB_link a span { position: relative; display: inline-block; }
    .info_details_ttlB_link a span:after {
        content: "";
        background: #00893F;
        width: 0;
        height: 1px;
        position: absolute;
        bottom: -4px;
        left: 0;
        transition: all .3s;
    }
    .info_details_ttlB_link a:hover span:after { width: 100%; }
}

.info_details_relatedC_wrapper { background: #fcfcfc; margin-bottom: 300px; padding: 86px 0 80px; border-top: 1px solid #E2E0E0; border-bottom: 1px solid #E2E0E0; }
.info_details_relatedC_wrapper_inner { width: 85%; max-width: 1222px; margin: 0 auto; }
.info_details_relatedC { width: 100%; letter-spacing: 0; font-size: 0; }
.info_details_relatedC li { margin: 0 11px; display: inline-block; }
.info_details_relatedC_img { width: 100%; border: 1px solid #D8D8D8; overflow: hidden; }
.info_details_relatedC_img p { background-size: contain; background-repeat: no-repeat; background-position: center; width: 100%; padding-top: 100%; transition: all .3s; }
@media( min-width: 1025px) {
    .info_details_relatedC li a:hover .info_details_relatedC_img p { transform: scale(1.1); }
}
.info_details_relatedC_body {}
.info_details_relatedC_cate { background: #05C068; margin: 21px 0 5px; padding: 5px 7px 4px 7px; display: inline-block; letter-spacing: 0; line-height: 1; font-size: 12px; font-weight: 500; color: #FFF; }
.info_details_relatedC_ttl { margin-bottom: 4px; font-size: 16px; font-weight: 500; color: #020202; }
.info_details_relatedC_txt { overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; line-height: 1.7; letter-spacing: 0; font-size: 14px; font-weight: 300; color: #333; }
.info_details_relatedC_wrapper .related_list_ttl { margin: 0 0 45px 11px; }

.info_details_relatedC .slick-next { right: -12px; transform: translate(100%, -100%); }
.info_details_relatedC .slick-prev { left: -12px; transform: translate(-100%, -100%); }
.info_details_relatedC .slick-arrow { background: #00893F; border-radius: 50px; width: 41px; height: 41px; display: inline-block !important; }
.info_details_relatedC .slick-arrow:before { content: ""; background: url(../images/all_bg_arrow_white.png) no-repeat center / contain; height: 13px; width: 8px; position: absolute; top: 50%; left: 50%; z-index: 1; opacity: 1; font-size: 0; transform: translate(-50%,-50%); }
.info_details_relatedC .slick-prev:before { transform: translate(-50%,-50%) rotate(180deg); }
.info_details_relatedC .slick-next:before {  }

.info_details_section p {
	line-height: 1.7;
	font-size: 17px;
	font-weight: 300;
	color: #333;
}

.wp-block-table { margin: 0 0 65px 0; border: 1px solid #47AA7B; }
.wp-block-table table { width: 100%; }
.wp-block-table table tr:nth-child(n+2) { border-top: 1px solid #C8E7DB; }
/*.wp-block-table table tr:nth-child(1) td { background: #F3FCF8; padding: 13px 0; text-align: center; font-weight: 600; font-size: 14px; color: #327656; }*/
.wp-block-table table tr:nth-child(1) td { background: #F3FCF8; padding: 13px 22px; text-align: center; font-weight: 600; font-size: 14px; color: #327656; }
.wp-block-table table tr:nth-child(1) td.has-text-align-left { text-align: left; }
/*.wp-block-table.is-style-regular table tr:nth-child(1) td:nth-child(n+2) { padding: 13px 24px; }*/
.wp-block-table table tr:nth-child(1) td:nth-child(n+2) { border-left: 1px solid #C8E7DB; }
/*.wp-block-table table tr:nth-child(n+2) td { padding: 11px 0; text-align: center; font-weight: 300; font-size: 13px; }*/
.wp-block-table table tr:nth-child(n+2) td { padding: 11px 22px; text-align: center; font-weight: 300; font-size: 13px; }
.wp-block-table table tr:nth-child(n+2) td.has-text-align-left { text-align: left; }

/*.wp-block-table.is-style-regular table tr:nth-child(n+2) td:first-child { padding: 11px 5px; white-space: nowrap; }*/
/*.wp-block-table.is-style-regular table tr:nth-child(n+2) td:nth-child(n+2) { padding: 11px 24px; }*/

.wp-block-table table tr:nth-child(n+2) td:nth-child(n+2) { border-left: 1px solid #C8E7DB; }
.wp-block-table figcaption { display: none; }
.info_details_section_wrapper ul._ul { background: #F9FFFC; margin-top: 32px; padding: 13px 30px 12px; border: 1px solid #47AA7B; }
.info_details_section_wrapper ul._ul > li { padding: 18px 0 18px 43px; position: relative; line-height: 1.6; font-size: 17px; font-weight: 500; color: #020202; }
.info_details_section_wrapper ul._ul > li:after { content: ""; background: #05C068; height: 15px; width: 15px; position: absolute; left: 2px; top: 24px; border-radius: 50px; }
.info_details_section_wrapper ul._ul > li:nth-child(n+2) { border-top: 1px dashed #05C068; }

.info_details_section_wrapper .wp-block-button {
	width: 100%;
	max-width: 270px;
}
.info_details_section_wrapper a.wp-block-button__link {
    background: #05C068;
    width: 100%;
    padding: 0;
    margin-top: 48px;
    border-radius: 100px;
    display: block;
    transition: all .3s;
    line-height: 63px;
    letter-spacing: 0;
    text-align: center;
    text-decoration: none;
    font-size: 16px;
    font-weight: 500;
    color: #FFF;
}
.info_details_section_wrapper a.wp-block-button__link:hover { opacity: 1; }


.info_details_section_wrapper a {
	text-decoration: underline;
	font-weight: 500;
	font-size: 17px;
	color: #00893F;
	word-break: break-all;
}

.wp-block-quote { margin-top: 48px; }
.wp-block-quote p { line-height: 1.4; font-size: 15px; font-weight: 300; color: #999; }
.wp-block-quote cite { display: inline-block; word-break: break-all; line-height: 1.5; font-size: 15px; font-weight: 300; color: #999; }

.info_details_section h2 {
    margin-top: 25px;
    margin-bottom: 45px;
    padding: 1px 0 0 24px;
    border-left: 1px solid #109458;
    line-height: 1.3;
    letter-spacing: 0;
    font-weight: 700;
    font-size: 22px;
    color: #020202;
}
.info_details_section h3 {
    margin-top: 20px;
    margin-bottom: 30px;
    line-height: 1.3;
    letter-spacing: 0;
    font-weight: 600;
    font-size: 20px;
    color: #020202;
}
.info_details_section h4 {
    margin-top: 15px;
    margin-bottom: 20px;
    padding: 0;
    line-height: 1.3;
    letter-spacing: 0;
    font-weight: 600;
    font-size: 18px;
    color: #020202;
}
.info_details_section p strong {
	font-weight: 600;
	-webkit-font-smoothing:antialiased;
	-moz-osx-font-smoothing:grayscale;
}
.info_details_section ol {
    counter-reset: numCounter;
    margin-top: 50px;
}
.info_details_section ol li {
    padding-bottom: 16px;
    border-bottom: 1px dashed #05C068;
    font-weight: 500;
    font-size: 17px;
    counter-increment: numCounter;
}
.info_details_section ol li:nth-child(n+2) {
    margin-top: 26px;
}
.info_details_section ol li::before {
    content: counter(numCounter) "　";
    position: relative;
    top: 2px;
    line-height: 1;
    font-family: 'Poppins', sans-serif;
    font-style: italic;
    font-weight: 500;
    font-size: 20px;
    color: #00893F;
}

@media( min-width: 1025px) {
    .info_details_link_bloc_btn a:hover { transform: translateY(-5px); }
}
/* #case
=========================================== */

.all_side_nav_ttl.patternD { cursor: pointer; position: relative; }
.all_side_nav_ttl.patternD:after { content: ""; background: url(../images/all_bg_arrow.png) no-repeat center / contain; height: 14px; width: 8px; position: absolute; top: 39%; right: 4px; transform: translateY(-50%) rotate(90deg); transition: transform .3s; }
.all_side_nav_ttl.patternD.toggled:after { transform: translateY(-50%) rotate(0deg); }
.result_count { margin-bottom: 42px; }
.result_count_ttl { margin-bottom: 14px; font-size: 14px; font-weight: 600; color: #1A1A1A; }
.result_count_number {  }
.result_count_number_inner { display: inline-block; letter-spacing: 0; font-size: 0; }
.result_count_number_inner span { background: linear-gradient(0deg, #FAFAFA 0%, #FFF 100%); width: 35px; display: inline-block; border: 1px solid #EAE6E6; border-radius: 4px; text-align: center; font-family: 'Oswald', sans-serif; font-weight: 500; font-size: 31px; color: #0CAD63; }
.result_count_number_inner span:nth-child(n+2) { margin-left: 8px; }
.result_count_number_txt { margin-left: 5px; display: inline-block; vertical-align: bottom; line-height: 1; font-size: 18px; font-weight: 600; color: #1A1A1A; }
.all_side_nav ul.patternD { padding-top: 5px; margin-bottom: 61px; }
.all_side_nav ul.patternD li:nth-child(n+2) { width: 100%; margin-top: 12px; }
.all_side_nav ul.patternD li label { letter-spacing: 0; font-size: 16px; font-weight: 300; color: #1A1A1A; }
.all_side_nav ul.patternD li label input { position: relative; top: -2px; margin-right: 11px; }

.case_search .product_section { padding-bottom: 128px; margin-top: 76px; }

.case_search_list { padding-top: 10px; letter-spacing: 0; font-size: 0; }
.case_search_list > li { width: 30.7%; display: inline-block; vertical-align: top; margin-left: 3.9%; }
.case_search_list > li:nth-child(3n+1) { margin-left: 0; }
.case_search_list > li:nth-child(n+4) { margin-top: 70px; }
.case_search_list > li > a { display: block; }
.case_search_list_img { position: relative; width: 100%; height: 180px; border: 1px solid #D8D8D8; overflow: hidden; }
.case_search_list_img p { background-size: cover; background-repeat: no-repeat; background-position: center; width: 100%; height: 100%; transition: all .3s; }
.case_search_list > li > a:hover { opacity: 1; }
@media (min-width: 1025px){
    .case_search_list > li > a:hover .case_search_list_img p { transform: scale(1.1); }
}
.case_search_list_cate { background: #05C068; margin: 12px 0 4px; padding: 5px 9px 4px 9px; display: inline-block; letter-spacing: 0; line-height: 1; font-size: 12px; font-weight: 500; color: #FFF; }
.case_search_list_cate:nth-child(2n) { margin-left: 5px;}
.case_search_list_ttl { margin-bottom: 4px; font-size: 16px; font-weight: 600; color: #020202; }
.case_search_list_tags { margin-top: 8px; letter-spacing: 0; font-size: 0; }
.case_search_list_tags li { display: inline-block; margin: 7px 6px 0 0; }
.case_search_list_tags li a { padding: 6px 10px; display: block; border-radius: 10px; line-height: 1; letter-spacing: 0; font-weight: 500; font-size: 12px; border: 1px solid #109458; color: #109458; }
.case_more.all_more { margin: 93px auto 0; }

.product_search_content_ttl { position: relative; }
.product_search_content_ttl_count { position: absolute; top: 50%; right: 0; transform: translateY(-50%); letter-spacing: 0; font-size: 9px; font-weight: 600; color: #000000; }
.product_search_content_ttl_count span { letter-spacing: 0; font-size: 11px; font-weight: 600; color: #109458; }

.case_details_tags { padding: 4px 0 0 40px; position: relative; }
.case_details_tags_head { position: absolute; top: 22px; left: 0; font-size: 12px; font-weight: 500; color: #020202; letter-spacing: 0; }
.case_search_list_tags {

}

.case_details_head_info_cate { margin-bottom: 8px; display: inline-block; text-align: center; line-height: 1; letter-spacing: 0; font-size: 16px; font-weight: 600; color: #05C068; }
.case_details_head_inner { padding-left: 17px; border-left: 5px solid #05C068; }
.case_details_head_ttl { line-height: 1.3; letter-spacing: 0; font-size: 26px; font-weight: 600; color: #020202; }

.section_beforeafter { position: relative; margin-top: 100px; }
.section_beforeafter.before { margin-top: 78px; border: 1px solid #C4C4C4; border-radius: 5px; border-top-left-radius: 0; }
.section_beforeafter.after { margin-top: 160px; margin-bottom: 144px; border: 1px solid #47AA7B; border-radius: 5px; border-top-left-radius: 0; }
.section_beforeafter_ribbon { background-repeat: no-repeat; background-size: contain; background-position: left top; font-size: 10px; font-family: 'Poppins', sans-serif; font-weight: 700; font-size: 14px; width: 109px; height: 29px; position: absolute; transform: translateY(-100%); left: -1px; top: -1px; padding-top: 5px; text-align: center; text-indent: -11px; }
.section_beforeafter.before .section_beforeafter_ribbon { background: url(../images/ribbon_grey.png); color: #1A1A1A; }
.section_beforeafter.after .section_beforeafter_ribbon { background: url(../images/ribbon_green.png); color: #FFF; }
.section_beforeafter_inner { padding: 38px 31px 42px 31px; letter-spacing: 0; font-size: 0; }
.section_beforeafter_l { width:46%; display: inline-block; vertical-align: top; }
.section_beforeafter_l img { width: 100%; }
.section_beforeafter_r { width:54%; display: inline-block; vertical-align: top; }
.section_beforeafter_ttl { padding-left: 14px; border-left: 2px solid #47AA7B; line-height: 1; letter-spacing: 0; font-weight: 600; font-size: 18px; color: #020202; }
.section_beforeafter_txt { margin-top: 15px; letter-spacing: 0; font-size: 15px; font-weight: 300; line-height: 1.9; color: #020202; }
.section_beforeafter.before .section_beforeafter_r { margin-top: 6%; padding-left: 24px; }
.section_beforeafter.after .section_beforeafter_r { margin-top: 12px; padding-left: 24px; }
.section_voice_list { margin-top: 20px; }
.section_voice_list li { padding-left: 14px; position: relative; letter-spacing: 0; font-size: 15px; font-weight: 600; color: #020202; }
.section_voice_list li:nth-child(n+2) { margin-top: 9px; }
.section_voice_list li span { letter-spacing: 0; }
.section_voice_list li .red { color: #B70D00; }
.section_voice_list li:after { content: ""; width: 6px; height: 6px; background: #C8E7DB; border-radius: 15px; position: absolute; top: 9px; left: 0; }
.section_beforeafter.nopic .section_beforeafter_l { display: none; }
.section_beforeafter.nopic .section_beforeafter_r { width: 100%; }
.section_beforeafter.before.nopic .section_beforeafter_r { margin-top: 0; padding-left: 0; }
.section_beforeafter.after.nopic .section_beforeafter_r { margin-top: 0; padding-left: 0; }

.section_beforeafter_video img { width: 100%; }
.section_beforeafter_video { width: 100%; margin-top: 38px; }

.section_point { background: #F9FFFC; margin-top: 84px; border: 1px solid #47AA7B; border-radius: 5px; }
.section_point_inner { padding: 45px 31px 44px 31px; }
.section_point .section_beforeafter_ttl { margin-bottom: 18px; }
.section_point_list {  }
.section_point_list li { padding: 20px 0 18px 46px; position: relative; }
.section_point_list li:nth-child(n+2) { border-top: 1px dashed #05C068; }
.section_point_list li p { line-height: 1.6; letter-spacing: 0; font-size: 17px; font-weight: 500; color: #020202; }
.section_point_list li span { width: 29px; height: 29px; position: absolute; top: 18px; left: 0; border-radius: 70px; border: 1px solid #05C068; line-height: 27px; text-indent: 1px; font-family: 'Poppins', sans-serif; font-size: 18px; text-align: center; color: #05C068; }
 
.mid_contact { background: #F9FFFC; margin: 166px 0 82px; padding: 54px 0 52px; position: relative; border: 1px solid #47AA7B; border-radius: 5px; }
.mid_contact:after { content: "Contact"; position: absolute; top: 42%; left: 50%; transform: translate(-50%,-50%); line-height: 1; font-family: 'Poppins', sans-serif; font-size: 164px; color: #E6FFF3; z-index: 0; }
.mid_contact_inner { width: 90%; max-width: 550px; text-align: center; margin: 0 auto; position: relative; z-index: 1; }
.mid_contact_txt { padding: 0 49px; position: relative; display: inline-block; letter-spacing: 0; font-size: 18px; font-weight: 500; color: #020202; }
.mid_contact_txt:before,
.mid_contact_txt:after { content: ""; background: #05C068; width: 3px; height: calc(100% - 10px); position: absolute; bottom: -1px; }
.mid_contact_txt:after { right: 18px; transform: rotate(25deg); }
.mid_contact_txt:before { left: 18px; transform: rotate(-25deg); }
.mid_contact_btn { margin-top: 17px; }
.mid_contact_btn a { background: linear-gradient(130deg, #07D584 0%, #47AA7B 100%); padding: 28px 0; position: relative; display: block; border-radius: 5px; border: 2px solid #FFF; box-shadow: rgb(0 0 0 / 0.21) 0px 4px 21px; letter-spacing: 0; font-size: 18px; font-weight: 600; color: #FFF; }
.mid_contact_btn a:after { content: ""; background: url(../images/all_arrow_white_thin.png) no-repeat center / contain; width: 14px; height: 19px; position: absolute; top: 50%; right: 23px; transform: translateY(-50%); transition: all .3s;}
.mid_contact_btn a:hover { opacity: 1; }
.all_custom_banner + .mid_contact { margin-top: 80px; }
@media(min-width: 1025px){
    .mid_contact_btn a { background-size: 150%; transition: all .3s; }
    .mid_contact_btn a:hover { background-position: 100%; }
    .mid_contact_btn a:hover:after { right: 15px; }
}

.related_list_ttl { margin-bottom: 40px; border-left: 1px solid #109458; line-height: 1.2; padding-left: 19px; letter-spacing: 0; font-weight: 600; font-size: 22px; color: #020202; }
.case_search .info_details_relatedA { margin-top: 0; }
.case_search .case_search_list { padding-top: 0; }

.case_movie { margin-top: 120px; }


/* #footer フッター
=========================================== */
#footer{
	background: #fff;
}
.footer_wrap {
    width: 90%;
    max-width: 1320px;
    margin: 0 auto;
    padding-top: 56px;
    padding-bottom: 48px;
}
.footer_upper_sec{
	display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    position: relative;
}
.footer_logo_area{
	width: 400px;
}
.footer_content{
	width: 650px;
}
.footer_logo a { transition: all .3s; }
.footer_logo{
	width: 149px;
	margin-right: 63px;
}
.footer_logo img{
	width: 100%;
}
.footer_address {
    margin-top: 18px;
    display: block;
    letter-spacing: 0;
    font-size: 14px;
    font-weight: 400;
}
.footer_address_sp { display: none; }
.footer_list {
    margin-top: -5px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.footer_list_sp { display: none !important; }

.footer_list a {
	position: relative;
	display: block;
	letter-spacing: 0;
	font-size: 15px;
	font-weight: 600;
	color: #202020;
}
.footer_list a:after {
	content: "";
	background: #119458;
	width: 0;
	height: 2px;
	position: absolute;
	bottom: -2px;
	left: 0;
	transition: all .4s;
}
@media(min-width: 1025px) {
	.footer_list a:hover {
		opacity: 1;
	}
	.footer_list a:hover:after {
		width: 100%;
	}
}
.footer_lower_sec {
    margin-top: 40px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.footer_copyright {
	display: inline-block;
	letter-spacing: 0.05em;
	font-size: 14px;
	color: #b7b7b7;
}
.footer_info_list {
    width: 240px;
	display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.footer_info_list li {
	display: inline-block;
}
.footer_info_list a {
	display: block;
	letter-spacing: 0;
	font-size: 12px;
	color: #333;
	position: relative;
}
.footer_info_list a:after {
	content: "";
	background: #119458;
	width: 0;
	height: 2px;
	position: absolute;
	bottom: -3px;
	left: 0;
	transition: all .4s;
}
@media(min-width: 1025px) {
	.footer_info_list a:hover {
		opacity: 1;
	}
	.footer_info_list a:hover:after {
		width: 100%;
	}
}



.top_mouse_stalker {
    width: 116px;
    height: 116px;
    left: -80px;
    top: -100px;
    position: fixed;
    z-index: 5;
    display: none;
    border: 1px rgba(255,255,255,0.5) solid;
    border-radius: 50%;
    text-align: center;
    line-height: 114px;
    font-size: 14px;
    color: #fff;
    pointer-events: none;
}


.top_interview_slide_btn {
    position: fixed;
    top: -200px;
    left: -200px;
    z-index: 99;
    font-family: 'Oswald', sans-serif;
    font-size: 16px;
    font-weight: 700;
}
.top_interview_slide_btn a {
    display: -ms-flexbox;
    display: flex;
    width: 128px;
    height: 128px;
    border: 1px solid #fff;
    border-radius: 50%;
    color: #fff;
    transform: scale(.6);
    opacity: 0;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    transition: all 0.8s ease;
}



.faded { opacity: 0; transform: translateY(40px); transition: all .7s cubic-bezier(0.25, 0.46, 0.45, 0.94); }
.faded.faded_active { opacity: 1; transform: translateY(0); }

#history_tableA {  }
#history_tableB { display: none; }
#history_tableC { display: none; }
.history_contents { width: 90%; max-width: 1200px; margin: 0 auto; }

.history_navA { margin: 48px auto 38px; display: none; border-bottom: 1px solid #E2E0E0; }
.history_navA ul { width: 90%; margin: 0 auto; padding: 0; letter-spacing: 0; font-size: 0; }
.history_navA ul li { width: 50%; display: inline-block; }
.history_navA ul li a { background: #F2F2F2; padding: 13px 0 12px; display: block; line-height: 1; text-align: center; font-family: 'Poppins', sans-serif; font-weight: 400; font-size: 15px; color: #109458; }
.history_navA ul li.active a { background: rgb(42,192,124); background: linear-gradient(120deg, rgba(42,192,124,1) 0%, rgba(119,212,175,1) 100%); color: #FFF; }

.history_navB { margin: 56px 0 3px; }
.history_navB ul { letter-spacing: 0; font-size: 0; }
.history_navB ul li { width: 33.3333%; display: inline-block; }
.history_navB ul li:nth-child(n+2) { border-left: 3px solid #FFF; }
.history_navB ul li a { background: #D1F4E4; padding: 16px 0 16px; display: block; line-height: 1.6; text-align: center; font-size: 15px; font-weight: 500; color: #109458; letter-spacing: 0; transition: all .3s; }
.history_navB ul li a:hover { opacity: 1; }
@media(min-width: 1025px) {
    .history_navB ul li:not(.active) a:hover { background: #FFF; box-shadow: 0 5px 20px rgb(0 0 0 / 10%); }
}
.history_navB ul li.active a { background: #109458; color: #FFF; }

.history_table { background: #F6F6F6; margin-bottom: 370px; }
.history_table_unit { padding: 0 39px 0 35px; }
.history_table_unit table { width: 100%; }
.history_table_unit thead tr {  }
.history_table_unit thead th { padding: 37px 0 54px; line-height: 1; text-align: center; font-family: 'Poppins', sans-serif; font-weight: 400; font-size: 22px; color: #109458; }
.history_table_unit thead th:nth-child(n+3) { border-left: 1px solid #DFDFDF; }
.history_table_unit tbody tr {  }
.history_table_unit tbody th { min-width: 65px; max-width: 65px; vertical-align: top; }
.history_table_unit tbody th span { position: relative; top: 1px; transform: translateY(-50%); display: block; line-height: 1; font-size: 13px; font-weight: 600; letter-spacing: 0; }
.history_table_unit tbody td { width: 50%; height: 48px; padding: 3px 0; border-top: 1px dashed #DFDFDF; vertical-align: top;s }
.history_table_unit tbody td:nth-child(n+3) { border-left: 1px solid #DFDFDF; }
.history_table_unit tbody td p { background: #FFF; width: calc(92% - 0px); margin: 0 auto; padding: 11px 20px 9px 28px; position: relative; top: -25px; border-radius: 5px; box-shadow: rgba(0,0,0,.08) 0px 3px 12px; line-height: 1.5; letter-spacing: 0; font-size: 15px; font-weight: 400; }
.history_table_unit tbody td p:after { content: ""; background: #109458; width: 12px; height: 12px; border-radius: 20px; position: absolute; top: 15px; left: 0; transform: translateX(-50%); z-index: 1; }
.history_table_unit tbody td p .multi { display: block; line-height: inherit; letter-spacing: inherit; font-size: inherit;  }
.history_table_unit tbody td p .multi:nth-child(n+2) { margin-top: 5px; }
.history_table_unit tbody td p a {
    display: inline-block;
    text-decoration: underline;
    color: #00893F;
}
.histo_img p { letter-spacing: 0 !important; font-size: 0 !important; }
.histo_imgA { width: calc(100% - 113px); padding-right: 7%; display: inline-block; vertical-align: middle; letter-spacing: 0; font-size: 15px; }
.histo_imgB { width: 113px; display: inline-block; vertical-align: middle; }
.histo_imgB img { width: 100%; }


.about_merits_nb_wrapper {
    margin: 28px 0 35px;
    letter-spacing: 0;
    text-align: center;
    font-size: 0;
    display: block;
}
.about_merits_nb {
    display: inline-block;
    line-height: 1;
    letter-spacing: -7px;
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 9.2vw;
    color: #05C068;
}
.about_merits_tx {
    margin-left: 4px;
    display: inline-block;
    line-height: 1;
    letter-spacing: 0;
    text-align: left;
    font-weight: 700;
    font-size: 3.6vw;
    color: #000;
}
.about_merits_tx span {
    display: block;
    line-height: 1;
    font-size: 2.4vw;
    font-weight: 700;
}
@media(min-width: 1170px){
    .about_merits_nb { font-size: 108px; }
    .about_merits_tx { font-size: 42px; }
    .about_merits_tx span { font-size: 28px; }
}
@media(max-width: 768px){
    .about_merits_nb { letter-spacing: -3px; }
}
@media(max-width: 600px){
    .about_merits_nb { letter-spacing: -3px; }
    .about_merits_nb { font-size: 17.5vw; }
    .about_merits_tx { font-size: 7.2vw; margin-left: 0; }
    .about_merits_tx span { font-size: 4vw; }
}



.all_side_copy {
    position: absolute;
    bottom: 13px;
    left: 20px;
    z-index: 2;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    font-family: 'Poppins', sans-serif;
    font-size: 14px;
    line-height: 1;
    color: #73C8A2;
}
.all_side_copy_special {
    color: #FFF;
    top: 75px;
    bottom: auto;
    left: 34px;
}
.all_side_copy_mv {
    color: #FFF;
}
.all_side_copy span {
    display: inline-block;
    font-weight: inherit;
    font-size: inherit;
    letter-spacing: inherit;
    line-height: inherit;
}
.all_side_copy span.all_side_copy_symbol {
    margin-bottom: 2px;
    display: inline-block;
    letter-spacing: 0;
    font-size: 20px;
}
.all_side_copy span.all_side_copy_g {
    color: #73C8A2;
}
.all_side_copy_special span.all_side_copy_g {
    color: #FFF;
}


.all_top_ret { position: fixed; right: 1.6%; bottom: 75px; opacity: 0; transition: all .3s; }
.all_top_ret.appear { opacity: 1; }
.all_top_ret a { background: #FFF; height: 49px; width: 49px; padding-top: 24px; display: block; border: 1px solid #F4F4F4; border-radius: 100px; text-align: center; font-size: 10px; font-family: 'Poppins', sans-serif; color: #109458; transition: all .3s; }
.all_top_ret a:after { content: ""; background: url(../images/all_btn_top.png) no-repeat center / contain; width: 14px; height: 10px; position: absolute; top: 14px; left: 16px; transition: all .3s; }

@media(min-width: 1025px){
    .all_top_ret a:hover { background: #05C068; opacity: 1; color: #FFF; }
    .all_top_ret a:hover:after { background: url(../images/all_btn_top_w.png) no-repeat center / contain; }
}

.top_product_tab_swipe {
    position: relative;
}
.top_product_tab_swipe_el {
    background: rgb(12 173 99 / 90%);
    width: 115%;
    height: calc(100% + 30px);
    position: absolute;
    bottom: -5px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1;
    opacity: 0;
}
.top_product_tab_swipe_el:after {
    content: "";
    background: url(../images/all_bg_swipe.png) no-repeat center / contain;
    width: 250px;
    height: 65px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    z-index: 1;
}


.all_tri_nav_swipe {
    position: relative;
}
.all_tri_nav_swipe_el {
    background: rgb(12 173 99 / 90%);
    width: 100%;
    height: calc(100% + 20px);
    position: absolute;
    bottom: -10px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1;
    opacity: 0;
}
.all_tri_nav_swipe_el:after {
    content: "";
    background: url(../images/all_bg_swipe.png) no-repeat center / contain;
    width: 160px;
    height: 55px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    z-index: 1;
}


.all_multi_photo_caption {
    background: linear-gradient(0deg, rgba(128,128,128,1) 0%, rgba(255,255,255,0) 100%);
    width: 100%;
    padding: 13.3% 5px 6px 10px;
    position: absolute;
    bottom: 0;
    left: 0;
    font-size: 12px;
    color: #FFF;
}
.all_multi_photo_list {
	margin-top: 20px;
	letter-spacing: 0;
	font-size: 0;
}
.all_multi_photo_list li {
	width: 14.8%;
	display: inline-block;
	vertical-align: top;
	opacity: .25;
	border: 1px solid #DEDEDE;
}
.all_multi_photo_list li img { width: 100%; }
.products_details_intro_bg {
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	padding-top: 100%;
	display: block;
	border: 1px solid #DEDEDE;
}
.all_multi_photo_list li:nth-child(n+2) {
    margin-left: 2.2%;
}
.all_multi_photo_list li.all_multi_photo_selected {
	opacity: 1;
}

.all_multi_photo_list li span {
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
	padding-top: 100%;
	display: block;
}

.cb {
	position: relative;
}
.cb:after {
	content: "";
	background: url(../images/all_zoom_icon.svg) no-repeat center / contain;
	width: 55px;
	height: 24px;
	position: absolute;
	bottom: 7px;
	right: 5px;
}

.product_search_error { margin-top: 180px; }
.product_search_error_txt { margin-bottom: 38px; text-align: center; font-weight: 600; font-size: 16px; color: #109458; }

.search_error { max-width: 540px; margin: 142px auto 0; }
.search_error_result { margin-bottom: 36px; font-weight: 600; text-indent: -10px; font-size: 18px; color: #109458; }
.search_error_result span { font-weight: 300; font-size: 17px; color: #1A1A1A; }
.search_error_ttl { margin-bottom: 28px; padding-left: 15px; position: relative; line-height: 1; font-weight: 500; font-size: 18px; color: #020202; }
.search_error_ttl:after { content: ""; background: #47AA7B; height: 20px; width: 2px; position: absolute; top: 0; left: 0; }
.search_error_list li { padding-left: 20px; position: relative; font-weight: 500; font-size: 17px; color: #020202;	 }
.search_error_list li:after { content: ""; background: #05C068; width: 8px; height: 8px; position: absolute; top: 9px; left: 0; border-radius: 15px; }
.search_error_list li:nth-child(n+2) { margin-top: 13px; }

.maintenance {
	height: 100vh;
}
.maintenance_wrapper {
	text-align: center;
	width: 90%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%); 
}
.maintenance_logo {
    width: 300px;
    margin: 0 auto 71px;
}
.maintenance_logo img {
	width: 100%;
}
.maintenance_ttl {
	margin-bottom: 10px;
	font-size: 38px;
	font-weight: 600;
	color: #333;
}
.maintenance_red {
    margin-bottom: 65px;
    font-size: 24px;
    font-weight: 600;
    color: #C00505;
}
.maintenance_txt {
    line-height: 2.1;
    font-size: 18px;
    font-weight: 600;
    color: #333;
}

/*WP fix*/
figure {
	margin: 0;
}
figure.wp-block-embed {
	margin-top: 32px;
}
.wp-block-embed figcaption {
	text-align: center;
}
.wp-block-media-text .wp-block-media-text__media { margin-right: 8% !important; }
.wp-block-media-text.has-media-on-the-right .wp-block-media-text__media { margin-left: 8% !important; margin-right: 0 !important; }
.wp-block-media-text .wp-block-media-text__content { padding: 0 !important; }
@media(max-width: 600px){
	.wp-block-media-text .wp-block-media-text__media { margin-right: 0 !important; margin-bottom: 15px !important; }
	.wp-block-media-text.has-media-on-the-right .wp-block-media-text__media { margin-left: 0 !important; }
}

.isIE .wp-block-media-text.alignwide.is-stacked-on-mobile {
	-ms-grid-columns: auto;
}

.wp-block-embed-youtube {
	max-width: 800px;
    margin: 0 auto;
}
.wp-block-embed-youtube iframe {
	max-width: 100%;
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
}