@charset "utf-8";
/* CSS Document */
body {font-size: clamp(6px,0.833vw,16px);
    font-family: "Noto Sans JP", sans-serif;margin: 0 auto;padding: 0;line-height: 1.8;-webkit-text-size-adjust: 100%;position: relative;color: #000;letter-spacing: 0;inline-size: min(1920px,100%);background-color: #fff;}
html {scroll-behavior: smooth;}
:target { scroll-margin-top: var(--h-size);}
main {inline-size: 100%;overflow: hidden;background-attachment: fixed;background-position: left 2.25em top 18%;background-size: 94.791666666%;background-repeat: no-repeat;background-image: url('../img/top/fix_illust.webp');}
section {inline-size: 100%;position: relative;z-index: 1;}
img {border: none;vertical-align: middle;height: auto;}
a {text-decoration: none;cursor: pointer;transition: .2s;}
ul {padding-inline-start: 0;}
ul li{list-style-type: none;}
dd {margin-inline-start: 0;}
em {font-style: normal;}
address {font-style: normal;}
*, *:before, *:after {box-sizing: border-box;}
/* チェック用 未入力時ハイライト*/
/*img[alt=""] { outline: 3px solid #c143c5; }*/
/*a[href=""] { outline: 3px solid #31a115; } */
/********************************* float **********************************************/
.c-both {clear: both;}
.left,.in_left {float: left;}
.right,.in_right {float: right;}
.center {display: block;margin-inline: auto;text-align: center;}
.table,.in_table {display: table;}
.table > dt,.table > dd,.in_table > dt,.in_table > dd{display: table-cell;}
/************* display *************/
.flex,.in_flex {display: flex;justify-content: space-between;flex-wrap: wrap;}
.re_flex {flex-direction: row-reverse;}
.db {display: block;}
.dib {display: inline-block;}
.df {display: flow-root;}
/************************************** inline-size ****************************************/
.inner {inline-size: min(1860px,96.875%);margin-inline: auto;}
.middle_inner {inline-size: min(1560px,81.25%);margin-inline: auto;}
.lower_inner {inline-size: min(1320px,68.75%);margin-inline: auto;}
.heading {inline-size: 100%;}
.half {inline-size: 50%;}
.sp {display: none;}
.pc {display: block;}
.ofh {overflow: hidden;}
/**************************************position**************************************/
.pr {position: relative;}
.pa {position: absolute;}
.pf {position: fixed;}
.vat {vertical-align: top;}
.vab {vertical-align: bottom;}
.vam {vertical-align: middle;}
.tal {text-align: left;}
.tar {text-align: right;}
.tac {text-align: center;}
/************************************ color *******************************************/
:root {
--blue1 : #01389d;
--blue2 : #1c60a7;
--l_blue1 : #e8eff6;
--gray1 : #f4f4f4;
--gray2 : #e2e5e8;
--h-size : 5.3em;
}
/*黒*/
.bk {color: #000;}
.bk_bg {background-color: #000;}
/*白*/
.wh {color: #FFF;}
.wh_bg {background-color: #FFF;}
/*青*/
.bu1 {color: var(--blue1);}
.bu1_bg {background-color: var(--blue1);}
.bu2 {color: var(--blue2);}
.bu2_bg {background-color: var(--blue2);}
.lbu1_bg {background-color: var(--l_blue1);}

.bu_grad1 {background: linear-gradient(to right, #1f63a9, #4e98cc);}
.bu_grad2 {background: linear-gradient(150deg,#e5e5e5 0%,#eff5fa 25%,#deeaf5 50%,#bcd1e7 75%,#b6cee6 100%);}


.gr1 {color: var(--gray1);}
.gr1_bg {background-color: var(--gray1);}
.gr2_bg {background-color: var(--gray2);}


.red {color: #dc3545;}
.red_bg {background-color: #c43d4f;}
a {opacity: 1;transition: all 0.25s}
span.error { display: block; color: #dc3545; font-size: 0.8em; }
/*************************************** font ****************************************/
.rbt {font-family: "Roboto Condensed", sans-serif;}
.noto {font-family: "Noto Sans JP", sans-serif;}
.fb {font-weight: bold;}
.fn {font-weight: normal;}
.ls3 {letter-spacing: 0.03em;}
.ls5 {letter-spacing: 0.05em;}
.itl {font-style: italic;}
.tr_text {writing-mode: tb-rl;}
/************************************* js ****************************************/
.fade_in, .fade {opacity: 0;transition: opacity 0.8s ease, transform 0.8s ease;}
.fade_in {transform: translateY(2em);}
.fade_in.active {opacity: 1;transform: translateY(0);}
.d025s {transition-delay: 0.25s !important;}
.d05s {transition-delay: 0.5s !important;}
.d075s {transition-delay: 0.75s !important;}

/*********************************** BLOCK **************************************/
.hex_cut {clip-path: polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%);}
/*********************************** BLOCK **************************************/
#header {inset : 0 0 auto 0;z-index: 10;block-size: var(--h-size);transition: all 0.3s;}
#header.scroll {background-color: #fff;}
#header .site_ttl {inline-size: min(360px,12.113em);margin: 0.865em 0 0 0;}
#header .site_ttl a {inline-size: min(360px,100%);display: block;block-size: auto;aspect-ratio: 360 / 28;}
#header .site_ttl [class^="logo"] {inline-size: 100%;block-size:100%;transition: all 0.3s;inset: 0 ;margin: auto;}
#header .site_ttl:hover [class^="logo"] {filter: brightness(130%);}
#header .site_ttl .logo_base {opacity: 0;}
#header .site_ttl .logo_change {opacity: 1;}
#header.scroll .site_ttl .logo_base {opacity: 0;}
#header.scroll .site_ttl .logo_change {opacity: 1;}
#header.top .site_ttl .logo_base {opacity: 1;}
#header.top .site_ttl .logo_change {opacity: 0;}
#header.top.scroll .site_ttl .logo_base {opacity: 0;}
#header.top.scroll .site_ttl .logo_change {opacity: 1;}
#header .header_nav .header_menu .header_ul {align-items: center;gap: 2.5em;}
#header .header_nav .header_menu .header_ul .list .link {transition: all 0.3s;font-weight: 500;}
#header .header_nav .header_menu .header_ul .list .link.bu1_bg {padding: 0.55em 1.95em 0.65em 1.95em;font-weight: bold;display: block;border-radius: 0.25em;border: 1px solid var(--blue1);}
#header.top .header_nav .header_menu .header_ul .list .link {color: #fff;}
#header.top .header_nav .header_menu .header_ul .list .link:hover {color: var(--blue1);}
#header.scroll .header_nav .header_menu .header_ul .list .link {color: #000;}
#header.scroll .header_nav .header_menu .header_ul .list .link:hover {color: var(--blue1);}
#header .header_nav .header_menu .header_ul .list .link {color: #000;font-weight: 500;}
#header .header_nav .header_menu .header_ul .list .link.bu1_bg {color: #fff;}
#header .header_nav .header_menu .header_ul .list .link.bu1_bg:hover {background-color: #fff;color: var(--blue1);}
#header .hide_menu {display: none;}

.page_contact {background-image: url(../img/block/page_contact_bg.webp);background-repeat: no-repeat;background-position: center;inline-size: 100%;block-size: auto;aspect-ratio: 1920 / 890;background-size: cover;padding-block-start: 10.75em;}
.page_contact .top {margin-block-end: 4.65em;}
.page_contact .top .ttl_side {inline-size: 33%;}
.page_contact .top .ttl_side .ttl1 {font-weight: bold;}
.page_contact .top .ttl_side .ttl1 .small::before {background-color: #fff;}
.page_contact .top .text {font-size: 1.251em;inline-size: 56.6%;padding-block-start: 2.5em;font-weight: 500;}
.page_contact .bottom .flex_item {inline-size: 32.7%;padding-block: 8.25em 3.25em;display: block;}
.page_contact .bottom .flex_item .span {inline-size: 5em;block-size: auto;aspect-ratio: 8 / 7;inset: 2.5em 0 auto 0;margin-inline: auto;text-align: center;padding-block-start: 1.05em;}
.page_contact .bottom .flex_item:before {content: "";position: absolute;background-color: var(--blue1);inline-size: 82%;block-size: 1px;inset: 4.7em 0 auto 0;margin-inline: auto;}
.page_contact .bottom .flex_item .span .icon {inline-size: min(36px,2.275em);block-size: auto;aspect-ratio: 36 / 37;}
.page_contact .bottom .flex_item .text1 {font-size: 1.126em;transition: all 0.3s;}
.page_contact .bottom .flex_item .text2 {font-size: 2.503em;line-height: 1.65em;font-weight: 600;transition: all 0.3s;}
.page_contact .bottom a.flex_item:hover .text1,
.page_contact .bottom a.flex_item:hover .text2 {color: var(--blue1);}

#footer {padding-block: 4.875em 1em;background-color: #f4f4f4;}
#footer #text_slide2 .text_img {inline-size: min(1827px,95.25%);block-size: auto;aspect-ratio: 1827 / 132;margin-inline-end: 3em;}
#footer .middle_inner {margin-block-start: 4.2em;}
#footer .top {padding-block-end: 8.75em;border-block-end: 1px solid #bfbfbf;}
#footer .top .ttl_side .footer_ttl {inline-size: min(360px,22.5em);margin-block-end: 2.125em;}
#footer .top .ttl_side .footer_ttl .logo  {inline-size: min(360px,100%);block-size: auto;aspect-ratio: 360 / 28;}
#footer .top .ttl_side .address {line-height: 2.5em;}
#footer .top .ttl_side .address a[href="#"] {pointer-events: none;}
#footer .top .ttl_side .address .pin {transition: all 0.3s;inline-size: fit-content;}
#footer .top .ttl_side .address .pin:hover {color: var(--blue2);}
#footer .top .ttl_side .address .pin .fa-location-dot {transition: all 0.3s;}
#footer .top .ttl_side .address .pin:hover .fa-location-dot {color: var(--blue2);}
#footer .footer_nav .ul {gap: 2.45em;margin-block-start: 0.5em;}
#footer .footer_nav .ul .list .link {font-weight: 500;transition: all 0.3s;}
#footer .footer_nav .ul .list .link:hover {color: var(--blue2);}
#footer .bottom {padding-block: 2.65em 3.35em;}
#footer .bottom .link {font-weight: 500;transition: all 0.3s;}
#footer .bottom .link:hover {color: var(--blue2);}
#footer .copy {margin-block: 0;}
#footer #page_top {inset: auto 2em 3.75em auto;z-index: 5;}
#footer #page_top .fa-arrow-up {font-size: 1.752em;inline-size: 2.9em;block-size: auto;aspect-ratio: 6 / 5.25;padding-block-start: 0.75em;background: linear-gradient(100deg, #1f63a9, #4e98cc);}

/************************************top************************************/
#fv {/*background-image: url(../img/top/fv.webp);*/background-repeat: no-repeat;background-position: center;inline-size: 100%;block-size: auto;aspect-ratio: 1920 / 1080;background-size: cover;padding-block-start: 16.25%;}
#fv .fv_video { position: absolute; inset:0; z-index:0; }
#fv .fv_ttl {font-size: 4.254em;margin-block-end: 0;}
#fv .small {font-size: 1.251em;font-weight: 600;margin-block: 0 0;padding-inline-start: 0.5em;line-height: 1.65em;}
#fv .link_box { position: relative; z-index: 3; inline-size: min(580px,30.25%);margin: 3.35em auto 0 auto;}
#fv .link_box .link {inline-size: 48.25%;padding: 1.175em 2em 1.4em 1.875em;font-weight: 600;border-radius: 0.25em;}
#fv .link_box .link .icon {inset: 48% 1.25em auto auto;transform: translateY(-50%);inline-size: min(40px,2.75em);block-size: auto;aspect-ratio: 40 / 33;transition: all 0.3s;}
#fv .link_box .link:hover .icon {inset: 48% 1em auto auto;}
#fv::after { content: ""; display: block; position: absolute; inset: 0; margin: auto; width: 100%;height: 100%; background-color: rgba(1, 56, 157,0.6); mix-blend-mode: soft-light; z-index: 0; }

.ttl1 {margin-block: 0;font-size: 6.882em;line-height: 1.375;}
.ttl1 .small {font-size: 0.2em;padding-inline-start: 1.1em;font-weight: 600;}
.ttl1 .small:before {content: "";position: absolute;inline-size: 0.46em;block-size: auto;aspect-ratio: 1;background-color: var(--blue2);border-radius: 50%;inset: 0.55em auto auto 0.25em;}
.more1 {font-size: 1.376em;display: block;font-weight: 600;margin-block-start: 2.65em;position: relative;inline-size: fit-content;}
.more1 .i_set {inline-size: 2.665em;block-size: auto;aspect-ratio: 80 / 70;padding-block-start: 0.7em;font-size: 1.364em;inset: 53% auto auto calc(100% + 0.8em);position: absolute;transform: translateY(-50%);transition: all 0.3s;}
.more1:hover .i_set {inset: 53% auto auto calc(100% + 1.2em);}

#top_company {padding-block-start: 11.65em;}
#top_company .ttl_side {inline-size: 43%;}
#top_company .ttl_side .ttl1 {margin-inline-start: -0.05em;}
#top_company .text_side {inline-size: 55%;margin-block-start: 4.75em;}
#top_company .text_side .strong {font-size: 2.127em;}
#top_company .text_side .text {font-size: 1.251em;line-height: 2.6;inline-size: 102%;}
#top_company .img {margin-block-start: 16em;inline-size: min(1920px,100%);block-size: auto;aspect-ratio: 1920 / 990;}

#top_products {padding-block: 12.35em 7.5em;}
#top_products .ttl_side {inline-size: 42%;padding-block-start: 4.875em;}
#top_products .ttl_side .ttl1 .small {margin-block-end: 0.1em;}
#top_products .ttl_side .text {margin-block: 0.75em 1em;}
#top_products .ttl_side .text em {font-size: 1.502em;font-weight: 600;padding-inline-start: 0.15em;}
#top_products .ttl_side .ol {padding-inline-start: 0;margin-block-start: 3.35em;}
#top_products .ttl_side .ol .list {list-style-type: none;padding-inline-start: 5.5em;font-size: 1.251em;margin-block-end: 1.5em;}
#top_products .ttl_side .ol .list .num {font-size: 1.6em;inline-size: 2.5em;block-size: auto;aspect-ratio: 8 / 7;text-align: center;padding-block-start: 0.225em;padding-inline-start: 0.1em;font-weight: bold;inset: 0.215em auto auto 0.225em;background: linear-gradient(100deg, #1f63a9, #4e98cc);}
#top_products .ttl_side .ol .list .em {font-size: 1.2em;font-weight: 600;margin-block-end: 0.05em;}
#top_products .ttl_side .more1 {margin-block-start: 3.5em;padding-inline-start: 0.25em;}
#top_products .img_side {inline-size: min(960px,50%);}
#top_products .img_side .img {inline-size: min(960px,100%);block-size: auto;aspect-ratio: 96 / 100;}
#top_products #text_slide1 {margin-block-start: 6.2em;}
#top_products #text_slide1 .text_img {inline-size: min(1827px,95.25%);block-size: auto;aspect-ratio: 1827 / 132;margin-inline-end: 3em;}


#top_business .text_side {inline-size: 37%;margin-inline-start: 9.125%;padding-block-start: 8.35em;}
#top_business .text_side .ttl1 .small {margin-block-end: 0.1em;}
#top_business .text_side .text {margin-block-start: 0.75em;}
#top_business .text_side .text em {font-size: 1.502em;font-weight: bold;padding-inline-start: 0.125em;}
#top_business .text_side .p_1 {font-size: 1.126em;margin-block-start: 1.825em;padding-inline-start: 0.25em;font-weight: 500;}
#top_business .text_side .more1 {margin-block-start: 3em;padding-inline-start: 0.25em;}
#top_business .img_side {inline-size: min(960px,50%);margin-inline-end: 2.6%;}
#top_business .img_side .img {inline-size: min(960px,100%);block-size: auto; aspect-ratio: 96 / 84;}
#top_business #in_slide1 {margin-block-start: 9.25em;}
#top_business #in_slide1 .list {inline-size: min(1000px,52.2%);margin-inline: 0.55em;}
#top_business #in_slide1 .list .img {inline-size: min(1000px,100%);block-size: auto;aspect-ratio: 10 / 7.4;}


#top_facilitie {padding-block: 6em 18.75em;}
#top_facilitie .ttl_side {inline-size: 34%;transform: translateX(-1%);}
#top_facilitie .text_side {inline-size: 53.5%;padding-block-start: 5.15em;}
#top_facilitie .text_side .strong {font-size: 1.502em;}
#top_facilitie .text_side .text {font-size: 1.126em;margin-block-start: 1.825em;font-weight: 500;}
#top_facilitie .text_side .more1 {margin-block-start: 3em;}

/*page*/
#page_fv {inline-size: 100%;block-size: auto;aspect-ratio: 1920 / 850;padding-block-start: 16.65em;}
#page_fv .ttl_side {margin-inline-start: 9%;}
#page_fv .ttl_side .page_ttl {margin-block: 0;font-size: 8.75em;line-height: 1.375;}
#page_fv .ttl_side .page_ttl .small {font-size: 0.2em;padding-inline-start: 1.1em;font-weight: 600;}
#page_fv .ttl_side .page_ttl .small:before {content: "";position: absolute;inline-size: 0.46em;block-size: auto;aspect-ratio: 1;background-color: var(--blue2);border-radius: 50%;inset: 0.55em auto auto 0.25em;}
#page_fv .ttl_side .bread {inline-size: fit-content;font-size: 1.126em;letter-spacing: 0.03em;margin-inline-start: 0.35em;margin-block-start: 1.5em;}
#page_fv .ttl_side .bread .list {font-weight: bold;line-height: 1;margin-inline-end: 0.125em;color: #666;}
#page_fv .ttl_side .bread .list a {vertical-align: bottom;margin-inline-end: 0.125em;text-decoration: underline;}
#page_fv .page_top {inset: 8.5em 2.45% auto auto;inline-size: min(690px,36%);block-size: auto;aspect-ratio: 690 / 569;}

/************************************comapny************************************/
.scroll_btn_box {inline-size: min(980px,51.111%);margin: 0.875em auto 0 auto;}
.scroll_btn_box .list {inline-size: 30.5%;}
.scroll_btn_box .list .btn {font-size: 1.126em;border-block-end: 1px solid var(--blue2);display: block;padding-block: 1.125em;font-weight: bold;}
.scroll_btn_box .list .btn .fa-arrow-down {inline-size: 2.85em;block-size: auto;aspect-ratio: 40 / 33;font-size: 0.778em;padding-block-start: 0.75em;inset: 50% 0 auto auto;transform: translateY(-50%);}
#message {padding-block: 12.75em 4em;}
#message .ttl_side {inline-size: 34%;}
#message .text_side {inline-size: 57.75%;padding-block-start: 3.35em;}
#message .text_side .strong {font-size: 2.127em;margin-block-end: 1.35em;}
#message .text_side .text {font-size: 1.126em;font-weight: 500;margin-block-end: 1.75em;line-height: 1.8;}
#message .text_side .name {font-size: 1.251em;font-weight: 500;margin-block-start: 2em;}
#message .text_side .name span {font-size: 0.9em;margin-inline-end: 1.125em;}
#message #in_slide1 {margin-block-start: 9em;}
#message #in_slide1 .list {inline-size: min(1000px,52.2%);margin-inline: 0.55em;}
#message #in_slide1 .list .img {inline-size: min(1000px,100%);block-size: auto;aspect-ratio: 10 / 7.4;}

#overview {padding-block: 6.65em 7em;}
#overview .middle_inner {padding: 0 6.25% 6em 6.25%;}
#overview .middle_inner:before {content: "";position: absolute;inline-size: 100%;block-size: 100%;background-color: #fff;inset: 0;margin: auto;z-index: -1;opacity: 0.5;}
#overview .ttl1 {margin-block-end: 0.6em;}#overview .dl {font-size: 1.126em;border-block-end: 1px solid #555;padding-block-end: 1.35em;margin-block: 0 1.35em;}
#overview .dl .dt {inline-size: 17.75em;}
#overview .dl .dt .span {font-weight: bold;border-inline-start: 0.35em solid var(--blue2);padding: 0.05em 0 0.2em 0.55em;}
#overview .dl .dd .box {margin-block-start: 1.5em;}
#overview .dl .dd .box .img_side {inline-size: min(490px,49%);}
#overview .dl .dd .box .img_side .img {inline-size: min(490px,100%);block-size: 100%;aspect-ratio: 490 / 360;}
#overview .dl .dd .box .map_side {inline-size: min(490px,50%);}
#overview .dl .dd .box .map_side iframe  {inline-size: min(490px,100%);block-size: auto;aspect-ratio: 490 / 360;display: block;}
#overview .dl .dd a {transition: all 0.3s;}
#overview .dl .dd a:hover {color: var(--blue2);}
#overview .dl .dd a:after {content: "";position: absolute;inline-size: 100%;block-size: 1px;background-color: #000;inset: 115% 0 auto 0;margin-inline: auto;}

#recruit {background-color: #f4f4f4;padding-block: 7em 4em;}
#recruit .ttl1 {margin-block-end: 0.6em;}
#recruit .p_1 {font-size: 1.126em;font-weight: 500;margin-block-end: 3.75em;}
#recruit .box {padding: 1.6em 3em 2em 3em;}
#recruit .box .bg_text {background-color: #e8eff6;font-size: 1.376em;font-weight: 600;padding-block: 0.45em 0.65em;margin-block-end: 1.75em;}
#recruit .dl {font-size: 1.126em;border-block-end: 1px solid #555;padding-block-end: 1.35em;margin: 0 auto 1.35em auto;inline-size: 93%;}
#recruit .dl:last-of-type {border-block-end: none;}
#recruit .dl .dt {inline-size: 15.75em;}
#recruit .dl .dt .span {font-weight: bold;border-inline-start: 0.35em solid var(--blue2);padding: 0.05em 0 0.2em 0.55em;}
#recruit .dl .dd .ul .list {font-weight: 500;}
#recruit .dl .dd .ul .list:before {content: "";position: absolute;inline-size: 0.25em;block-size: auto;aspect-ratio: 1;background-color: #000;border-radius: 50%;inset: 0.875em auto auto -0.7em;}
#recruit .dl .dd a {padding: 1.175em 5.55em 1.4em 1.875em;font-weight: 600;border-radius: 0.25em;display: block;inline-size: fit-content;font-size: 0.889em;margin-block-start: 1.5em;margin-inline-start: -0.75em;}
#recruit .dl .dd a .icon {inset: 50% 1em auto auto;transform: translateY(-50%);inline-size: min(40px,2.5em);block-size: auto;aspect-ratio: 40 / 33;transition: all 0.3s;}
#recruit .dl .dd a:hover .icon {inset: 50% 0.5em auto auto;}
#recruit .img {inset: -6em 5.125% auto auto;inline-size: min(920px,48%);block-size: auto;aspect-ratio: 920 /475;}
/************************************privacy************************************/
#privacy {transform: translateY(-5.45em);padding-block-end: 2.5em;}
#privacy .middle_inner {padding: 7em 6.25% 6em 6.25%;}
#privacy .middle_inner:before {content: "";position: absolute;inline-size: 100%;block-size: 100%;background-color: #fff;inset: 0;margin: auto;z-index: -1;opacity: 0.5;}
#privacy .p_1 {font-size: 1.126em;margin-block: 0 6.5em;}
#privacy .ol {padding-inline-start: 0;}
#privacy .ol .list {list-style-type: none;font-size: 1.126em;border-block-end: 1px solid #ababab;font-weight: 500;padding-block-end: 3.1em;margin-block-end: 3.5em;}
#privacy .ol .list:last-of-type {border-block-end: none;padding-block-end: 0;margin-block-end: 0;}
#privacy .ol .list .em {font-size: 1.667em;font-weight: 600;border-inline-start: 0.225em solid var(--blue2);line-height: 1.25;padding-inline-start: 0.65em;padding-block-end: 0.125em;margin-block-end: 1.275em;}
#privacy .ol .list .ul {margin-block: 1.5em;padding-inline-start: 1.1em;}
#privacy .ol .list .box {margin-block-start: 2em;border: 1px solid;padding: 1.1em 1.5em;line-height: 2;}
#privacy .ol .list .box .name {font-size: 1.111em;margin-block-end: 0.35em;}
#privacy .ol .list .box a[href="#"] {pointer-events: none;}
/************************************facilities************************************/
#facilities {transform: translateY(-5.45em);padding-block-end: 2.5em;}
#facilities .middle_inner {padding: 7em 6.25% 7em 6.25%;}
#facilities .middle_inner:before {content: "";position: absolute;inline-size: 100%;block-size: 100%;background-color: #fff;inset: 0;margin: auto;z-index: -1;opacity: 0.5;}
#facilities .p_1 {font-size: 1.126em;margin-block: 0 6.5em;}
#facilities .column {margin-block-end: 7.5em;}
#facilities .column:last-of-type {margin-block-end: 6em;}
#facilities .dl .dt {font-size: 1.877em;font-weight: 600;border-inline-start: 0.225em solid var(--blue2);line-height: 1.25;padding-inline-start: 0.65em;padding-block-end: 0.125em;margin-block-end: 0.75em;}
#facilities .dl .dd {border-block-start: 1px solid #ababab;padding-block-start: 2.5em;}
#facilities .dl .dd .box {gap: calc(4.54545457% / 2);justify-content: flex-start;}
#facilities .dl .dd .box .flex_item {inline-size: min(420px,31.81818181%);margin-block-end: 1.875em;}
#facilities .dl .dd .box .flex_item .img {inline-size: min(420px,100%);block-size: auto;aspect-ratio: 420 / 310;}
#facilities .bottom_text {font-size: 1.126em;font-weight: 500;}
/************************************products************************************/
#products {transform: translateY(-5.45em);padding-block-end: 2em;}
#products .middle_inner {padding: 7em 6.25% 5em 6.25%;}
#products .middle_inner:before {content: "";position: absolute;inline-size: 100%;block-size: 100%;background-color: #fff;inset: 0;margin: auto;z-index: -1;opacity: 0.5;}
#products .p_1 {font-size: 1.126em;margin-block: 0 6.5em;}
#products .column {margin-block-end: 1.875em;padding-block-end: 1.875em;border-block-end: 1px solid #ababab;}
#products .column:last-of-type {margin-block-end: 1em;border-block-end: none;}
#products .column .text_side {inline-size: min(550px,42%);}
#products .column .text_side .dt {font-size: 1.877em;font-weight: bold;padding-inline-start: 3.25em;line-height: 1.25em;border-block-end: 1px solid var(--blue2);padding-block-end: 1.1em;margin-block-end: 1em;}
#products .column .text_side .dt .num {font-size: 1.067em;font-weight: 600;inline-size: 2.5em;block-size: auto;text-align: center;aspect-ratio: 8 / 7;padding-block-start: 0.5em;inset: 0.2em auto auto 0;}
#products .column .text_side .dt .small {font-size: 0.6em;font-weight: 600;padding-inline-start: 0.125em;}
#products .column .text_side .dd .ul {padding: 1.6em 1em 1.75em 1.35em;margin-block-start: 2.35em;line-height: 2.2;}
#products .column .text_side .dd .ul .list {font-size: 1.376em;padding-inline-start: 1.5em;margin-inline-end: 0.5em;}
#products .column .text_side .dd .ul .list:before {content: "";position: absolute;inline-size: 0.45em;block-size: auto;background-color: var(--blue2);aspect-ratio: 1;border-radius: 50%;inset: 1em auto auto 0.75em;}
#products .column .img_side {inline-size: min(690px,52.2727273%);}
#products .column .img_side .slider {margin-block-end: 0.5em;}
#products .column .img_side .slider .swiper-wrapper .swiper-slide {inline-size: min(690px,100%);block-size: auto;aspect-ratio: 690 / 480;}
#products .column .img_side .slider .swiper-wrapper .swiper-slide img {inline-size: min(690px,100%);block-size: auto;aspect-ratio: 690 / 480;}
#products .column .img_side .slider-thumbnail .swiper-wrapper {gap: calc(4% / 3);}
#products .column .img_side .slider-thumbnail .swiper-wrapper .swiper-slide {inline-size: 24% !important;}
#products .column .img_side .slider-thumbnail .swiper-wrapper .swiper-slide img{inline-size: 100%;block-size: auto;aspect-ratio: 167 / 116;}

/************************************oem************************************/
.scroll_btn_box.in_oem {inline-size: min(1320px,68.75%);}
.scroll_btn_box.in_oem .list {inline-size: 22.65%;}

#features {padding-block: 12.85em 15.875em;}
#features .column {margin-block-end: 2.5em;}
#features .column .ttl_side {inline-size: 36%;}
#features .column .text_side {inline-size: 57.5%;padding-block-start: 3.25em;}
#features .column .text_side .strong {font-size: 2.127em;margin-block-end: 1.45em;}
#features .column .text_side .text {font-size: 1.126em;margin-block-end: 1.75em;}
#features .column2 {padding: 2.5em;margin-block-end: 1.35em;border-radius: 0.5em;}
#features .column2 .text_side {inline-size: 64%;}
#features .column2 .tag {inline-size: fit-content;font-weight: bold;padding-inline: 0.75em;border-radius: 100vmax;margin-block-end: 1.125em;}
#features .column2 .em {font-size: 1.627em;font-weight: 600;}
#features .column2 .p_1 {margin-block-start: 1.25em;font-weight: 500;font-size: 1.126em;margin-block-start: 1.1em;}
#features .column2 img {inline-size: min(360px,28%);block-size: auto;aspect-ratio: 360 / 250;border-radius: 0.5em;margin-block-end: 1.875em;}

#lineup {padding-block: 7.15em 8em;background-image: url(../img/oem/bg1.webp);background-repeat: no-repeat;background-position: center top;background-size: cover;}
#lineup .ttl1 {margin-block-end: 0.6em;transform: translateX(-0.05em);}
#lineup .ttl1 .small {margin-block-end: 0.1em;}
#lineup .p_1 {font-size: 1.126em;margin-block-end: 3.875em;padding-inline-start: 0.25em;}
#lineup strong.bg_text {margin-block: 0 1.75em;font-size: 1.877em;font-weight: bold;padding: 0.1em 0.25em 0.2em 1.5em;line-height: 1.725em;display: block;}
#lineup strong.bg_text:before {content: "";position: absolute;inline-size: 0.2em;block-size: 1.35em;background-color: #FFF;inset: 0 auto 0 0.65em;margin: auto;}
#lineup .box {justify-content: flex-start;gap: 1.9em 2.375%;margin-block-end: 6.25em;}
#lineup .box .flex_item {margin: 0;inline-size: 31.75%;padding: 1.22222em;box-shadow: 0 0 0.65em #a3afccbd;}
#lineup .box .flex_item .img {inline-size: min(380px,100%);block-size: auto;aspect-ratio: 38 / 29;}
#lineup .box .flex_item .caption {padding: 0.875em 0 1.65em 0;font-size: 1.376em;font-weight: 500;}
#lineup .box .flex_item .caption .small {margin-inline: auto;inset: auto 0 0.275em 0;font-size: 0.818em;}
#lineup .column {padding: 1.9em;margin-block-end: 2em;box-shadow: 0 0 0.65em #a3afcc;}
#lineup .column .text_side {inline-size: 50.75%;}
#lineup .column .text_side .bg_text {margin-block: 0 0.875em;font-size: 1.877em;font-weight: bold;padding: 0.1em 0.25em 0.2em 1.5em;line-height: 1.725em;}
#lineup .column .text_side .bg_text:before {content: "";position: absolute;inline-size: 0.2em;block-size: 1.35em;background-color: #FFF;inset: 0 auto 0 0.65em;margin: auto;}
#lineup .column .text_side .text {font-size: 1.126em;margin-block-end: 1.125em;}
#lineup .column .text_side .ul {margin-block-start: 2.35em;}
#lineup .column .text_side .ul .list {font-size: 1.376em;border-block-end: 1px dotted #000;padding-inline-start: 1em;padding-block-end: 0.75em;margin-block-end: 0.75em;}
#lineup .column .text_side .ul .list:before {content: "";position: absolute;inline-size: 0.5em;block-size: auto;aspect-ratio: 1;background-color: var(--blue2);border-radius: 50%;inset: 0.8em auto auto 0.2em;}
#lineup .column .img_side {inline-size: min(580px,46.125%);}
#lineup .column .img_side .img {inline-size: min(580px,100%);block-size: auto;aspect-ratio: 58 / 40;}
#lineup .lineup_img {inset: -5.75em 5.1% auto auto;inline-size: min(920px,48%);block-size: auto;aspect-ratio: 920 / 475;}

#production {padding-block: 16.65em 4.5em;}
#production .ttl1 {margin-block-end: 0.6em;transform: translateX(-0.05em);}
#production .ttl1 .small {margin-block-end: 0.1em;}
#production .p_1 {font-size: 1.126em;margin-block-end: 3.75em;}
#production .dl {margin-block-end: 4.35em;}
#production .dl .dt {font-size: 1.877em;font-weight: bold;padding-inline-start: 3.25em;line-height: 1.25em;border-block-end: 1px solid #ababab;padding-block-end: 0.75em;margin-block-end: 1.35em;}
#production .dl .dt .num {font-size: 1.067em;font-weight: 600;inline-size: 2.5em;block-size: auto;text-align: center;aspect-ratio: 8 / 7;padding-block-start: 0.5em;inset: 0.2em auto auto 0;}
#production .dl .dt .small {font-size: 0.6em;font-weight: 600;padding-inline-start: 0.125em;}
#production .dl .dd .box {justify-content: flex-start;gap: calc(4.545457% / 2);margin-block-end: 2em;}
#production .dl .dd .box .flex_item {inline-size: min(420px,31.818181%);}
#production .dl .dd .box .flex_item img {inline-size: min(420px,100%);block-size: auto;aspect-ratio: 42 / 31;}
#production .top_img {inset: 11.25em 5% auto auto;aspect-ratio: 641 / 486;inline-size: min(641px,34%);block-size: auto;}

/************************************contact************************************/

#contact {transform: translateY(-5.45em);padding-block-end: 2em;}
#contact .middle_inner {padding: 7em 6.25% 7.35em 6.25%;}
#contact .middle_inner:before {content: "";position: absolute;inline-size: 100%;block-size: 100%;background-color: #fff;inset: 0;margin: auto;z-index: -1;opacity: 0.5;}
#contact .top_column .p_1 {font-size: 1.251em;margin-block: 0 3.125em;}
#contact .top_column .box {inline-size: min(1040px,79%);margin-inline: auto;}
#contact .top_column .box .flex_item {inline-size: 49%;padding-block: 8.25em 3.125em;display: block;border: 1px solid var(--blue1);}
#contact .top_column .box .flex_item .span {inline-size: 5em;block-size: auto;aspect-ratio: 8 / 7;inset: 2.5em 0 auto 0;margin-inline: auto;text-align: center;padding-block-start: 1.05em;}
#contact .top_column .box .flex_item:before {content: "";position: absolute;background-color: var(--blue1);inline-size: 82%;block-size: 1px;inset: 4.7em 0 auto 0;margin-inline: auto;}
#contact .top_column .box .flex_item .span i {font-size: 2.252em;}
#contact .top_column .box .flex_item .text1 {font-size: 1.126em;transition: all 0.3s;}
#contact .top_column .box .flex_item .text2 {font-size: 2.503em;line-height: 1.65em;font-weight: 700;transition: all 0.3s;}
#contact .top_column .box a.flex_item:hover .text1,
#contact .top_column .box a.flex_item:hover .text2 {color: var(--blue1);}
#contact .column {padding-block: 8.25em 1em;margin-block-start: 2.5em;}
#contact .column:before {content: "";position: absolute;background-color: var(--blue1);inline-size: 100%;block-size: 1px;inset: 4.7em 0 auto 0;margin-inline: auto;}
#contact .column .span {inline-size: 5em;block-size: auto;aspect-ratio: 8 / 7;inset: 2.5em 0 auto 0;margin-inline: auto;text-align: center;padding-block-start: 1.05em;}
#contact .column .span i {font-size: 2.252em;}
#contact .column .sub_ttl {font-size: 1.877em;padding-inline-start: 0.65em;margin-block: 0.75em 1.35em;}
#contact .column .p_2 {font-size: 1.126em;margin-block-end: 2.75em;}
#contact form .form_dl {font-size: 1.126em;margin-block: 0;border-block-start: 1px solid #dadada;padding: 1em 0 1em 0;inline-size: min(1220px,93%);margin: 0 auto;}
#contact form .form_dl:last-of-type {border-block-end: 1px solid #dadada;}
#contact form .form_dl .form_dt {inline-size: 16.65em;font-weight: 500;}
#contact form .form_dl .form_dt .n,
#contact form .form_dl .form_dt .h {padding: 0.35em 0.75em 0.5em 0.75em;border-radius: 0.25em;font-size: 0.789em;line-height: 1.25;display: inline-block;margin-inline-end: 0.65em;vertical-align: text-top;}
#contact form .form_dl:last-of-type .form_dt,
#contact form .form_dl:last-of-type .form_dd {border-block-end: none;}
#contact form .form_dl .form_dd .memo {margin-block: 0.25em 0;font-size: 0.778em;font-weight: 500;color: #535252;}
#contact form .form_dl .form_dd input[type="text"] {inline-size: 100%;font-family: inherit;padding: 0.6em 0.75em 0.75em 0.75em;border: 1px solid #9e9e9e;font-size: 1em;border-radius: 0.35em;}
#contact form .form_dl .form_dd input#post_num {inline-size: 30%;}
#contact form .form_dl .form_dd input[type="tel"] {inline-size: 100%;font-family: inherit;padding: 0.6em 0.75em 0.75em 0.75em;border: 1px solid #9e9e9e;font-size: 1em;border-radius: 0.35em;}
#contact form .form_dl .form_dd select {inline-size: 33%;font-family: inherit;padding: 0.6em 0.75em 0.75em 0.75em;border: 1px solid #9e9e9e;appearance: none;font-size: 1em;border-radius: 0.25em;background-color: #fff;position: relative;}
#contact form .form_dl .form_dd .select_cover {position: relative;}
#contact form .form_dl .form_dd .select_cover:after {content: "";position: absolute;inline-size: 0.5em;block-size: 0.5em;border-inline-end: 0.1em solid #000;border-block-end: 0.1em solid #000;transform: rotate(45deg) translateY(-50%);inset: 35% 1.25em auto auto;pointer-events: none;}
#contact form .form_dl .form_dd textarea {inline-size: 100%;font-family: inherit;padding: 0.6em 0.75em 0.75em 0.75em;border: 1px solid #9e9e9e;font-size: 1em;border-radius: 0.35em;block-size: auto;aspect-ratio: 920 / 260;}
#contact .privacy_text {inline-size: min(1230px,94%);margin: 2.75em auto;text-indent: -0.5em;font-size: 1.126em;}
#contact .privacy_text .span {font-size: 1.111em;font-weight: 500;margin-block-end: 0.75em;}
#contact .privacy_text .link {transition: all 0.3s;}
#contact .privacy_text .link:hover {color: var(--blue1);}
#contact .privacy_text .link:after {content: "";position: absolute;inline-size: 100%;block-size: 1px;background-color: #000;inset: 120% 0 auto 0;margin-inline: auto;}
#contact .send_btn {inline-size: fit-content;padding: 0;font-size: 1.251em;transition: all 0.3s;margin-inline: 0;margin-block-end: 2.5em;margin: 1.55em auto auto auto;border-radius: 0.35em;}
#contact .send_btn:hover {background-color: var(--yellow2);}
#contact .send_btn .inner_span {padding: 0;}
#contact .send_btn input[type="submit"] {border: 0.05em solid var(--blue1);text-align: center;background-color: var(--blue1);font-family: inherit;font-size: 0.8em;cursor: pointer;transition: all 0.3s;padding: 1.35em 11.5em 1.5em 1.75em;border-radius: 0.25em;font-weight: 600;appearance: none;}
#contact .send_btn .icon {inset: 50% 1em auto auto;transform: translateY(-50%);inline-size: min(40px,2em);transition: all 0.3s;}
#contact .send_btn:hover .icon {inset: 50% 0.5em auto auto;}

#contact .add_btn {margin-block-start: 4em;inline-size: min(900px,68%);}
#contact .add_btn .conf_btn {inline-size: 46%;background-color: #fff;appearance: none;font-size: 1em;cursor: pointer ;border: 0.1em solid #000;padding-block: 1.25em;border-radius: 0.25em;}
#contact .add_btn .conf_btn .inner_span {display: block;font-size: 1.502em;letter-spacing: 0.05em;font-weight: 600;color: #000;}
#contact .add_btn .conf_btn.post .fa-arrow-right {inset: 50% 1em auto auto;font-size: 1em;transform: translateY(-50%);transition: all 0.3s;pointer-events: none;inline-size: 2em;block-size: auto;aspect-ratio: 6/5;padding-block-start: 0.35em;}
#contact .add_btn .conf_btn.post:hover .fa-arrow-right {inset: 50% 0.5em auto auto;}
#contact .add_btn .conf_btn.back .fa-arrow-left {inset: 50% auto auto 1em;font-size: 1em;transform: translateY(-50%);transition: all 0.3s;pointer-events: none;inline-size: 2em;block-size: auto;aspect-ratio: 6/5;padding-block-start: 0.35em;}
#contact .add_btn .conf_btn.back:hover .fa-arrow-left {inset: 50% auto auto 0.5em;}



