@charset "utf-8";
/* CSS Document */
body {font-size: 3.733vw;}
main {background-position: left -3.75em top 21%;background-size: 118%;}
.pc {display: none;}
.sp {display: block;}
.left {float: none;}
.right {float: none;}
.sp_left {text-align: left !important;}
.sp_center {text-align: center;}
.flex {display: block;}
.in_flex {display: flex;}
.table {display: block;}
.table dt,.table dd {display: block;}
.ttl {font-size: 3.25em;}
.ttl span.small {font-size: 0.45em;}
.ttl span.small::before {block-size: 3px;inset-block-start: -0.5em;}
.more {font-size: 1.25em;margin-inline: auto;}
:root {--h-size: 3.8em;}
.d025s,.d05s,.d075s {transition-delay: 0s !important;}
.middle_inner {inline-size: 96%;}
.lower_inner {inline-size: 96%;}
/*header*/
#header .inner {inline-size: 100%;padding: 0;z-index: 1;}
#header h1.site_ttl {inline-size: min(324px,7.85em);margin-block-start: 0.675em;margin-inline-start: 0.725em;}
#header .header_menu {display: none;}
#header .header_nav .header_menu {display: none;position: absolute;inset: 0 0 auto 0;}
#header .header_nav .menu_btn {inset: 0 0 auto auto;inline-size: 5em;block-size: var(--h-size);}
#header .header_nav .menu_btn .bar {background-color: #fff;inline-size: 47%;block-size: 1px;margin-inline: auto;transition: all 0.3s;transform-origin: right;}
#header .header_nav .menu_btn .bar:first-of-type {inset: 1.5em 0 auto 0;}
#header .header_nav .menu_btn .bar:nth-of-type(2) {inset: 1.875em 0 auto 0;}
#header .header_nav .menu_btn .bar:nth-of-type(3) {inset: 2.25em 0 auto 0;}
#header .header_nav .menu_btn.active .bar:first-of-type {transform: rotate(-17deg);}
#header .header_nav .menu_btn.active .bar:nth-of-type(2) {opacity: 0;}
#header .header_nav .menu_btn.active .bar:nth-of-type(3) {transform: rotate(17deg);}
#header .hide_menu {display: none;position: fixed;inset: 0 0 auto 0;padding: 7.25em 9.5% 6em 9.5%;background-color: #fff;block-size: 100vh;z-index: -1;overflow-y: scroll;}
#header .hide_menu .ul {margin-block-end: 1.75em;}
#header .hide_menu .ul .list {border-block-start: 1px solid var(--blue2);padding-block: 1em 1em;}
#header .hide_menu .ul .list:last-of-type {border-block-end: 1px solid var(--blue2);}
#header .hide_menu .ul .list .link {line-height: 1.15;display: block;}
#header .hide_menu .ul .list .link .ms {font-size: 2.145em;font-weight: 600;}
#header .hide_menu .ul .list .link .fa-arrow-right {font-size: 0.715em;inline-size: 3.35em;block-size: auto;aspect-ratio: 6 / 5;position: absolute;inset: 50% 0.125em auto auto;transform: translateY(-50%);padding-block-start: 0.875em;}
#header .hide_menu .bottom {}
#header .hide_menu .bottom .bottom_item {padding-block: 5em 0.75em;display: block;border: 1px solid var(--blue1);margin-block-end: 1em;}
#header .hide_menu .bottom .bottom_item .span {inline-size: 3.5em;block-size: auto;aspect-ratio: 8 / 7;inset: 1.5em 0 auto 0;margin-inline: auto;text-align: center;padding-block-start: 0.75em;}
#header .hide_menu .bottom .bottom_item:before {content: "";position: absolute;background-color: var(--blue1);inline-size: 82%;block-size: 1px;inset: 2.95em 0 auto 0;margin-inline: auto;}
#header .hide_menu .bottom .bottom_item .span i {font-size: 1.430em;}
#header .hide_menu .bottom .bottom_item .text1 {font-size: 1.001em;}
#header .hide_menu .bottom .bottom_item .text2 {font-size: 1.716em;line-height: 1.5em;font-weight: 700;}

/*top*/
#fv {aspect-ratio: 75 / 133;padding-block-start: 25.5%;}
#fv .fv_ttl {font-size: 2.145em;line-height: 1.8;margin-block-end: 1em;margin-inline: auto;inline-size: fit-content;padding-inline-start: 0.15em;margin-block-end: 0.95em;}
#fv .small {font-size: 1.144em;padding-inline-start: 0;inline-size: fit-content;padding-inline-end: 0.875em;line-height: 1.875;}
#fv .link_box {inline-size: min(580px,83%);margin-block-start: 11em;}
#fv .link_box .link {display: block;inline-size: 100%;font-size: 1.144em;margin-block-end: 0.5em;padding: 0.9em 2em 1em 1.875em;}

.ttl1 {font-size: 4em;}
.ttl1 .small {font-size: 0.35em;}
.more1 .i_set {font-size: 1.125em;}

#top_company {padding-block-start: 4.65em;}
#top_company .ttl_side {inline-size: 100%;}
#top_company .text_side {inline-size: 100%;margin-block-start: 1.75em;}

#top_company .text_side .strong {font-size: 1.5em;}
#top_company .text_side .text {font-size: 1.125em;line-height: 2;inline-size: 100%;}
#top_company .img {margin-block-start: 5em;}

#top_products {padding-block: 0.35em 1.5em;}
#top_products .ttl_side {inline-size: 96%;padding-block-start: 3.875em;margin-inline: auto;}
#top_products .ttl_side .text em {font-size: 1.25em;padding-inline-start: 0;}
#top_products .ttl_side .ol .list {font-size: 1.125em;margin-block-end: 0.5em;}
#top_products .img_side {inline-size: min(960px,100%);margin-block-start: 5em;}
#top_products #text_slide1 {margin-block-start: 3.2em;}
#top_products #text_slide1 .text_img {inline-size: min(1827px,225%);}

#top_business .text_side {inline-size: 96%;margin-inline: auto;padding-block-start: 3.35em;}
#top_business .text_side .text em {font-size: 1.35em;padding-inline-start: 0;}
#top_business .text_side .p_1 {font-size: 1.125em;margin-block-start: 1.825em;padding-inline-start: 0;line-height: 2;}
#top_business .img_side {inline-size: min(960px,96%);margin-inline: auto;margin-block-start: 5em;}
#top_business #in_slide1 {margin-block-start: 4.25em;}
#top_business #in_slide1 .list {inline-size: min(1000px,67%);}

#top_facilitie .text_side {inline-size: 100%;padding-block-start: 1.15em;}
#top_facilitie {padding-block: 3em 5em;}
#top_facilitie .text_side .text {font-size: 1.125em;line-height: 2;}

.page_contact {aspect-ratio: auto;padding-block: 5em 1.75em;}
.page_contact .top {margin-block-end: 1.65em;}
.page_contact .top .ttl_side {inline-size: 100%;}
.page_contact .top .text {font-size: 1.125em;inline-size: 100%;padding-block-start: 0.5em;line-height: 2;}
.page_contact .bottom .flex_item {inline-size: 90%;padding-block: 6.25em 1.5em;margin: 0 auto 1em auto;}
.page_contact .bottom .flex_item .text2 {font-size: 1.75em;}
.page_contact .bottom .flex_item .span {font-size: 0.75em;}
.page_contact .bottom .flex_item::before {inset: 3.5em 0 auto 0;}

#footer {padding-block: 2.875em 1em;}
#footer #text_slide2 .text_img {inline-size: min(1827px,225%);}
#footer .top .ttl_side .footer_ttl {margin-inline: auto;}
#footer .top .ttl_side .address {line-height: 2em;font-size: 1.125em;}
#footer .footer_nav .ul {margin-block-start: 2.5em;}
#footer .footer_nav .ul .list {font-size: 1.125em;margin-block-end: 1em;}
#footer .top {padding-block-end: 1.75em;}
#footer .bottom {padding-block: 2.65em 0.35em;}
#footer .bottom .link {font-size: 1.125em;margin-block-end: 2em;display: block;inline-size: fit-content;}
#footer .copy {margin-block: 4em 0;text-align: center;}
#footer #page_top {inset: auto 1em 2.75em auto;}
#footer #page_top .fa-arrow-up {font-size: 1.2em;}


.ttl1 {font-size: 3em;}
#page_fv {padding-block-start: 7.65em;}
#page_fv .ttl_side {margin-inline-start: 2%;}
#page_fv .ttl_side .page_ttl {font-size: 3.5em;line-height: 1;}
#page_fv .ttl_side .page_ttl .small {font-size: 0.3em;margin-block-end: 1em;}
#page_fv .page_top {inset: 7.5em 1.45% auto auto;inline-size: min(690px,43%);}
.scroll_btn_box {inline-size: min(980px,80%);margin: 3.875em auto 0 auto;}
.scroll_btn_box .list {inline-size: 100%;}
.scroll_btn_box .list .btn {font-size: 1em;}
#message {padding-block: 5.75em 4em;}
#message .ttl_side {inline-size: 100%;}
#message .text_side {inline-size: 100%;padding-block-start: 2.35em;}
#message .text_side .strong {font-size: 1.5em;}
#message #in_slide1 {margin-block-start: 2em;}
#overview {padding-block: 0.65em 3em;}
#overview .middle_inner {padding: 0 6.25% 1em 6.25%;}
#overview .dl {font-size: 1em;}
#overview .dl .dt {inline-size: 6.75em;}
#overview .dl .dd .box .img_side {inline-size: min(490px,100%);margin-block-end: 1em;}
#overview .dl .dd .box .map_side {inline-size: min(490px,100%);}
#overview .dl .dd a {font-size: 0.9em;}
#recruit .img {inset: -3em 1.125% auto auto;inline-size: min(920px,69%);}
#recruit {padding-block: 5em 4em;}
#recruit .box {padding: 0.3em 1em 2em 1em;}
#recruit .dl {inline-size: 100%;font-size: 1em;}
#recruit .dl .dt {inline-size: 9.75em;}
#recruit .dl .dd a {margin-block-start: 2.5em;margin-inline-start: -7.25em;}

#privacy {transform: translateY(0);padding-block: 4em 2.5em;}
#privacy .middle_inner {padding: 2em 4% 2em 4%;}
#privacy .p_1 {font-size: 1.126em;margin-block: 0 3.5em;}
#privacy .ol .list {padding-block-end: 2.1em;margin-block-end: 2.5em;}
#privacy .ol .list .em {font-size: 1.35em;padding-inline-start: 2.25em;text-indent: -1.5em;}
#privacy .ol .list .ul {margin-block: 1em;padding-inline-start: 0;}
#privacy .ol .list .ul .in_list {text-indent: -1em;padding-inline-start: 1em;}

#facilities {transform: translateY(0);padding-block: 4em 2.5em;}
#facilities .middle_inner {padding: 2em 4% 2em 4%;}
#facilities .p_1 {font-size: 1.126em;margin-block: 0 3.5em;}
#facilities .dl .dt {font-size: 1.4em;}
#facilities .dl .dd .box {gap: 4%;}
#facilities .dl .dd .box .flex_item {inline-size: min(420px,48%);margin-block-end: 1em;}
#facilities .column {margin-block-end: 3.5em;}
#facilities .column:last-of-type {margin-block-end: 3em;}
#facilities .bottom_text {font-size: 1.1em;}

#products {transform: translateY(0);padding-block: 4em 2.5em;}
#products .middle_inner {padding: 2em 4% 2em 4%;}
#products .p_1 {font-size: 1.126em;margin-block: 0 3.5em;}
#products .column .text_side {inline-size: 100%;}
#products .column .text_side .dt {font-size: 1.5em;}
#products .column .text_side .dd .ul {padding: 1em 1em 1em 1em;margin-block-start: 1.35em;}
#products .column .text_side .dd .ul .list {font-size: 1.2em;}
#products .column .img_side {inline-size: min(690px,100%);}

.scroll_btn_box.in_oem .list {inline-size: 100%;}

#features {padding-block: 4.85em 7em;}
#features .column .ttl_side {inline-size: 100%;}
#features .column .text_side {inline-size: 100%;padding-block-start: 2.25em;}
#features .column .text_side .strong {font-size: 1.35em;}
#features .column2 {padding: 2em 1em;}
#features .column2 .em {font-size: 1.35em;}
#features .column2 .text_side {inline-size: 100%;}
#features .column2 img {inline-size: 100%;margin-inline: auto;}

#lineup {padding-block: 6.15em 2em;}
#lineup .lineup_img {inset: -1.75em 2.1% auto auto;inline-size: min(920px,66%);}
#lineup strong.bg_text { font-size: 1.25em;}
#lineup .column .text_side {inline-size: 100%;}
#lineup .column .text_side .bg_text {font-size: 1.35em;}
#lineup .column .img_side {inline-size: min(580px,100%);}
#lineup .box .flex_item {inline-size: 100%;margin-block-end: 2em;}
#lineup .box .flex_item .caption {padding: 0.875em 0 0.35em 0;font-size: 1.25em;}
#lineup .box .flex_item .caption .small {position: initial;}

#production {padding-block: 3.65em 1.5em;}
#production .top_img {inset: -2.75em 2% auto auto;inline-size: min(641px,39%);}
#production .dl {margin-block-end: 2.35em;}
#production .dl .dt {font-size: 1.35em;}
#production .dl .dd .box {gap: 2%;margin-block-end: 0;}
#production .dl .dd .box .flex_item {inline-size: min(420px,49%);margin-block-end: 0.5em;}

#contact {transform: translateY(0);padding-block: 4em 2em;}
#contact .middle_inner {padding: 2em 4% 4.35em 4%;}
#contact .top_column .p_1 {font-size: 1.125em}
#contact .top_column .box {inline-size: min(1040px,100%);}
#contact .top_column .box .flex_item {inline-size: 100%;margin-block-end: 1em;font-size: 0.75em;padding-block: 8em 2em;}
#contact .top_column .box .flex_item .text1 {font-size: 1.35em;}
#contact .column {padding-block: 6.25em 1em;margin-block-start: 0.5em;}
#contact .column .span {inset: 4.125em 0 auto 0;font-size: 0.75em;}
#contact .column .p_2 {font-size: 1.05em;}
#contact form .form_dl {inline-size: 100%;}
#contact form .form_dl .form_dt {inline-size: 100%;margin-block-end: 1em;}
#contact form .form_dl .form_dd select {inline-size: 100%;}
#contact form .form_dl .form_dd input#post_num {inline-size: 60%;}
#contact form .form_dl .form_dd textarea {aspect-ratio: 9 / 5;}
#contact .privacy_text {inline-size: 100%;font-size: 1.05em;}
#contact .add_btn {inline-size: min(900px,90%);}
#contact .add_btn .conf_btn {inline-size: 100%;font-size: 0.875em;display: block;}
#contact .add_btn .conf_btn.post {margin-block-end: 2em;}


