@charset "utf-8";
/* CSS Document */
body {font-size: 4vw;}
.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,.d1s,.d125s,.d15s,.d175s,.d2s {transition-delay: 0s;}
.lower_inner {inline-size: 96%;}
/*header*/
.menu_btn {display: block;}
#header h1.site_ttl {inline-size: min(131px,5.25em);}
.header_menu {display: none;inset: 20vw 0 auto 0;padding: 1em 1.125em 1em 1.125em;inline-size: min(1430px,96%);}
.header_menu .ul.size1 {inline-size: 48%;}
.header_menu .ul.size2 {inline-size: 48%;margin-block-end: 0;}
.header_menu .ul.size3 {inline-size: 100%;display: block;margin-block-start: 0;transform: translateY(-0.5em);}
.header_menu .ul .in_ul .in_list .in_a_link {font-size: 1em;}
.header_menu .ul .list .a_link {font-size: 2.125em;margin-block-end: 0.35em;}
.header_menu .ul .list .a_link span.small {font-size: 0.392em;}
header h1.left {font-size: 1.5em;margin-inline-start: 0.25em;inline-size: min(370px,60%);padding-inline-start: 2em;float: left;}
header h1.left a.bk .logo {inline-size: min(62px,1.875em);inset: 0.65em auto auto 0.35em;}
.header_nav {
  inline-size: 69%;
  float: right !important;
}
.header_nav .pc_btn {
  block-size: auto;
  inline-size: fit-content;
  float: right;
}
.header_nav #trans {
  inset: auto;
  z-index: 10;
  position: relative;
  float: left;
  margin-block-start: 1em;
}
.header_nav .menu_btn,
.header_nav .recruit_btn {font-size: 0.733em;}
.header_nav .entry_btn span {font-size: 1.25em;}
.cover_bg {background-position: left 0 bottom 0;background-size: 148% auto;}
.menu_btn {padding-block-start: 3em;}
.menu_btn i {font-size: 2.35em;}
.header_menu .ul .list .tel_link,.header_menu .ul .list .contact_link {font-size: 1.5em;padding-block: 0.25em;}
.header_menu [class^="ul"] .list {margin-block-end: 1em;}
.header_menu [class^="ul"] .list .in_ul .in_list .in_link {font-size: 1em;letter-spacing: 0.12em;}
.header_menu [class^="ul"] .list .link {font-size: 0.875em;inline-size: fit-content;}
.header_menu [class^="ul"] .list .link .em {display: inline-block;inline-size: fit-content;}
.header_menu [class^="ul"] .list .link .fa-arrow-right {inset: 0 -4em auto auto; display: none;}
.header_menu [class^="ul"] .list .link:hover .fa-arrow-right {inset: 0 -4.5em auto auto; display: none;}
.header_menu [class^="ul"] .list .in_ul .in_list .in_link .fa-arrow-right{display: none;}
.header_menu .ul3 {margin-block-end: 10em;}
/*top*/
#fv .inner {aspect-ratio: 720 / 1280;}
#fv .fv_ttl {inset: auto auto 5em 0.39em;font-size: 1.757em;}
#fv .fv_text {inset: auto auto 1.625em 0.5em;font-size: 1.35em;line-height: 1.25;}
#fv .circle_link {inset: auto 1em 1em auto;inline-size: min(309px,41.25%);}
.ttl1 .l {font-size: 3em;}
.ttl1 .m {font-size: 2.757em;}
.ttl1 .small {font-size: 1.25em;}
.l_text1 p,
.l_text2 p {font-size: 5.01em;}
#top_about {padding-block: 5.35em 3em;}
#top_about .top_text {margin-block-end: 1em;}
#top_about .top_text .text_side {inline-size: 96%;margin-inline: auto;}
#top_about .top_text .text_side .text1 {font-size: 1.5em;text-shadow: 0 0 0.25em var(--brown1);}
#top_about .top_text .text_side .text2 {font-size: 1em;inline-size: 100%;}
#top_about .column .text_side {padding-inline-start: 0;inline-size: 96%;margin-inline: auto;}
#top_about .column .text_side .ttl1 {margin-block-end: 1.35em;}
#top_about .column .p_1 {font-size: 1.125em;padding-inline-start: 0;}
#top_about .column .link_box {margin-block-start: 2.5em;inline-size: 100%;}
.border_link {font-size: 1.125em;padding: 1em 1em 1em 1.75em;}
#top_about .column .img_side {inline-size: 100%;}
#top_about .column .img_side .about_img2 {inset: auto auto 1.95em 0.125em;}
#top_about .column .img_side .cow1 {inset: auto 0.5em -2.25em auto;}
#top_about .side_text .tr_text {font-size: 5em;}
#top_staff {padding-block: 2em 2.25em;}
#top_staff #in_slide1 [class^="list"] {inline-size: min(421px,56%);}
#top_recruit .middle_inner {background-size: cover;border-radius: 1.5em;padding-block-end: 7.7em;}
#top_recruit .slide_box {border-radius: 1.5em 1.5em 0 0;}
#top_recruit .slide_box #in_slide2 .list {inline-size: 40%;}
#top_recruit .top_recruit_link {padding: 2.5em 0 0 2em;margin-block-end: 1.65em;}
#top_recruit .top_recruit_link .fa-arrow-right {font-size: 1.25em;}
#top_recruit .p_1 {margin-inline-start: 1em;}
#top_recruit .p_1 .text {font-size: 1.5em;}
#top_recruit .p_2 {font-size: 1.25em;margin-inline: 0.5em;margin-block: 1.125em 1em;}
#top_recruit [class^="column"] .text_side {inline-size: 96%;padding-block-start: 0.35em;padding-inline-end: 0;margin-inline: auto;}
#top_recruit [class^="column"] .text_side .p_3 {margin-inline-start: 0;font-size: 1.6em;}
#top_recruit [class^="column"] .text_side .p_4 {margin-block-start: 0.65em;}
#top_recruit [class^="column"] .text_side .p_4 .text {font-size: 1.35em;}
#top_recruit [class^="column"] .text_side .more1 {font-size: 1.5em;margin-block-start: 0.75em;}
#top_recruit [class^="column"] .staff1 {inline-size: min(512px,73%);}
#top_recruit [class^="column"] .staff2 {inline-size: min(534px,73%);margin-inline: auto 0;display: block;}
#top_recruit [class^="column"] .staff3 {inline-size: min(512px,73%);}
#top_recruit .link_side .recruit_link {inline-size: 97%;border: 0.25em solid var(--brown1);margin-block-start: 0;padding: 0.5em;background-size: auto 90%;border-radius: 0.25em;}
#top_recruit .link_side .recruit_link .m {font-size: 1.5em;margin: 0 auto auto 0.05em;}
#top_recruit .link_side .recruit_link .small {font-size: 1.125em;margin: 0.25em auto auto 0.125em;}
#top_recruit .link_side .recruit_link .fa-arrow-right {font-size: 1.15em;inline-size: 2.75em;padding-block-start: 0.875em;}
#top_recruit .link_side .job_link {inline-size: 97%;padding: 1.95em 1em 2em 1.175em;font-size: 1.25em;border-radius: 0.25em;}
#top_recruit .link_side .job_link::before {font-size: 1.75em;padding: 0.7425em 0 0 0.375em;}
#top_gallery {padding-block: 1.25em 3.25em;}
#top_gallery .text_side {inline-size: 100%;}
#top_gallery .text_side .ttl1 {margin-block-end: 0.75em;}
#top_gallery .text_side .p_1 {font-size: 1em;inline-size: 100%;}
#top_gallery .img {transform: translate(0.5em,2rem);margin-block-start: 2.75em;inline-size: min(852px,99%);}
#top_gallery .img.active {transform: translate(0.5em,0);}
.page_contact {padding-block: 3.25em 0;}
.page_contact .lower_inner {padding: 1.5em 1.5em 1em 1.5em;border-radius: 1em;}
.page_contact .text_side .ttl1 .small {margin-block-start: 0.25em;font-size: 1.125em;}
.page_contact .text_side .p_1 {font-size: 1em;}
.page_contact .link_side {inline-size: 100%;}
.page_contact .link_side .link_box .border_link {font-size: 1.25em;padding: 1em 1em 1em 0.75em;}
#footer .footer_nav {margin-block-start: 3em;font-size: 0.9em;}
#footer .ttl_side .footer_ttl {inline-size: min(300px,12em);margin-inline: auto;}
#footer .ttl_side .address {font-size: 1em;inline-size: fit-content;margin-inline: auto;}
#footer .footer_nav [class^="ul"] {margin-inline-start: 2em;}
#footer .footer_nav [class^="ul"] .list {margin-block-end: 1em;}


#page_fv,#page_fv.recruit_page {padding-block: 0.5em 0;}
#page_fv .l_text3,#page_fv.recruit_page .l_text3 {inset: auto 0 -1.25em 0;}
.l_text3 p {font-size: 3em;}
#page_fv .page_ttl1 {inset: 1.5em auto auto 1em;  z-index: 1;}
#page_fv .page_ttl1 .small {font-size: 1.15em;}
#page_fv .page_ttl1 .l {font-size: 3em;}
#page_fv .fv_img {inline-size: min(1100px,100%);transform: translateX(50%);}
.change_box {padding-block: 2em 1em;border-radius: 1em 1em 0 0;margin-block-start: -1.25em;}
.change_box .flex {inline-size: min(1080px,80%);}
.change_box .btn {inline-size: 100%;padding-block: 0.35em 0.2em;display: block;margin-block-end: 0.5em;}
#message .middle_inner {border: 0.15em solid var(--orange1);border-radius: 1em;padding: 0.5em 0.75em 1.75em 0.75em;}
#message .img {border: 0.15em solid var(--orange1);inset: 0.75em 0 auto 0;  border-radius: 1em;}
#message .ttl_side .ttl1 {margin: 0.65em auto auto 0.95em;}
#message .ttl_side .ttl1 .l {font-size: 2.5em;}
#message .ttl_side .ttl1 .small {font-size: 1em;margin-inline-start: 0;}
#message .ttl_side .p_1 {margin: 2.45em auto auto 0;}
#message .ttl_side .p_1 .text {font-size: 1.2em;}
#message .text_side {padding-inline: 0;margin-block-start: 0.95em;inline-size: 100%;}
#message .text_side .p_2 {font-size: 1em;line-height: 1.75;margin-block-end: 1em;}
#message .name {font-size: 1.25em;margin-inline-end: 0.25em;margin-block-start: 0.5em;}
#base {padding-block: 2.5em 2em;z-index: 2;}
#base .ttl1 {margin-block-end: 4.35em;}
#base .column {margin-block-end: 4em;}
#base .column .flex_item {inline-size: 100%;margin-block-end: 4em;}
#base .column .flex_item .num {font-size: 6.75em;}
#base .ttl1 .small {font-size: 1em;}
#base .column .flex_item .p_1 {font-size: 1.35em;padding-inline-start: 0;}
#base .column .flex_item .p_2 {font-size: 1.1em;line-height: 1.75em;block-size: auto;}
#base .column .flex_item .p_3 {font-size: 1.25em;}
#base .column .flex_item .address {font-size: 1.1em;line-height: 1.5em;margin-block-end: 1em;}
#base .column .flex_item .p_1 .small {letter-spacing: 0;}
#base #in_slide1 {inset: auto 0 -3.875em 0;}
#base #in_slide1 .list {margin-inline: 0.25em;border-radius: 0.5em;inline-size: min(697px,47.35%);}
#company {padding-block: 5.35em 3em;}
#company .ttl1 {margin-block-end: 2.5em;}
#company .ttl1 .l {font-size: 2.35em;}
#company .ttl1 .small {font-size: 1.15em;padding: 0.25em 1em 0.35em 1.15em;margin-block-start: 0.25em;}
#company .column .flex_item {inline-size: 100%;}
#company .column {padding-inline: 0;}
#company .column .flex_item .dl {margin-block: 0.2em;}
#company .column .flex_item .dl .dt {font-size: 1em;inline-size: 7.75em;padding: 0.875em 0.5em 1.125em 0.5em;}
#company .column .flex_item .dl .dd {font-size: 1em;padding: 0.875em 0.5em 1.125em 0.5em;}

#staff {padding-block: 4em 0;border-radius: 1em 1em 0 0;}
#staff .ttl1 {inset: -1.75em 0 auto 0;padding-inline-start: 0;}
#staff .ttl1 .small {font-size: 1em;}
#staff .middle_inner {padding-block: 2em 2em;}
#staff .staff_box {margin-block-start: 6.35em;}
#staff .staff_box [class^="list"] {margin-block-end: 1.5em;}
#staff .staff_box [class^="list"]:nth-of-type(odd),
#staff .staff_box [class^="list"]:nth-of-type(even) {inline-size: min(400px,100%);margin-inline: auto;}
#staff .staff_box [class^="list"] img {inset-block-end: 1.5em;}
#staff .staff_box .list2 .off_img {inset-inline: auto 1em;}
#staff .staff_box .list2 .on_img {inset-inline: auto 1em;}
#staff .staff_box .list3 .on_img {inset: auto 1em 1.45em auto;}
#staff .staff_box .list7 .on_img {inset-inline: auto 1.5em;}


#link_interview {padding-block: 6em 3.75em;}
#link_interview .text {inset: 2em auto auto 0;}
#link_interview .text .tr_text {font-size: 5em;writing-mode: initial;}
#link_interview a {border: 0.25em solid var(--brown4);border-radius: 0.75em;inline-size: min(1600px,96%);transform: translateX(0);}
#link_interview a .span1 {font-size: 1.505em;inset: 1em auto auto 5%;}
#link_interview a .span2 {font-size: 1.505em;inset: 2.5em auto auto 5%;}
#link_interview a .span3 {font-size: 1em;inset: 5.75em auto auto 5%;line-height: 1.5;text-shadow: 0 0 0.125em var(--l_orange3);}
#link_interview a .fa-arrow-right {font-size: 1.2em;inset: auto 1.65em 1.5em auto;}

#recruit .top_column {border-radius: 0.75em 0.75em 0 0;margin-block-start: -1.1em;background-size: 120%;padding-block: 2.5em 0.625em;}
#recruit .top_column .p_1 {font-size: 1em;letter-spacing: 0.08em;padding-inline-start: 0;}
#recruit .top_column .p_2 .text {font-size: 1.631em;}

.change_box2 {padding-block: 2em;}
.change_box2 .flex {inline-size: min(1080px,80%);}
.change_box2 .btn {inline-size: 100%;padding-block: 0.35em 0.2em;display: block;margin-block-end: 0.5em;}
.sub_ttl_small {font-size: 1.125em;margin-block-end: 0.25em;}
.sub_ttl .text {font-size: 1.25em;}

#ceo_message {padding-block: 2.65em 3.5em;background-size: cover;}
#ceo_message .column1 {padding: 1.25em 1em 0.5em 1em;background-size: 120%;}
#ceo_message .l_text1 {font-size: 2.25em;inset: 0.515em auto auto 0.5em;}
#ceo_message .sub_ttl {margin-block-end: 1.25em;}
#ceo_message .column2 {border-radius: 0 0 0 2em;padding: 0.5em 1em 0.5em 1em;z-index: 1;}
#ceo_message .message_img {inset: -0.75em 0 auto auto;z-index: -1;}
#ceo_message .p_1 {font-size: 1.25em;}
#ceo_message .p_2 {font-size: 1.05em;inline-size: 100%;line-height: 1.5;}
#ceo_message .l_text2 {font-size: 4em;inset: 2.2em 0.2em auto auto;}
#recruitment_team .inner {padding-block: 1.15em;}
#recruitment_team .sub_ttl_small {margin: 0 auto 0.25em 1.25em;}
#recruitment_team .sub_ttl {margin-inline-start: 1.45em;}
#recruitment_team .recruit_item1 {inset: -0.75em 0 auto auto;z-index: -1;}
#recruitment_team .l_text {font-size: 2.5em;}
#recruitment_team .box {margin-block-start: 1.5em;border-radius: 1.2em;padding-block-end: 2.5em;}
#recruitment_team .box .top_text .p_1 {font-size: 1.3em;letter-spacing: 0.08em;text-shadow: 0 0 0.125em var(--l_orange2);}
#recruitment_team .box .top_text {padding-block: 0.9em 0.2em;background-size: 106%;border-radius: 3em;}
#recruitment_team [class^="column"] .text_side {inline-size: 100%;padding-block-start: 1.5em;}
#recruitment_team [class^="column"] .text_side::before {block-size: 0.2em;}
#recruitment_team [class^="column"] .text_side .dl .dt {font-size: 1.5em;}
#recruitment_team [class^="column"] .text_side .dl .dd {font-size: 1.05em;line-height: 1.75;}
#recruitment_team [class^="column"] .img_side {inline-size: min(780px,100%);margin-inline: auto;}
#recruitment_team .column2 {margin-block-end: 5em;}
#recruitment_team [class^="column"] .img_side .side_staff {inset: auto -1.875em -3.75em auto;}
#recruitment_team [class^="column"] .img_side .side_item {inset: auto -2em -5em auto;inline-size: min(432px,56%);}
#recruitment_team .column2 .text_side {margin-block-start: 3.25em;}
#intern_ship .middle_inner {padding: 4.5em 1em 4.25em 1em;margin-block-start: -2em;}
#intern_ship .ttl1 .small {font-size: 1.2em;}
#interview {padding-block-end: 2.25em;}
#interview .top {padding-block-start: 1.5em;padding-inline-start: 1em;}
#interview .top .interview_img {inline-size: min(1162px,51%);z-index: -1;}
#interview .l_text1 {font-size: 3em;}
#interview .middle_inner {gap: 2%;inline-size:96%;}
#interview [class^="flex_item"] {inline-size: min(498px,49%);border: 0.25em solid var(--brown4);border-radius: 1em;margin-block-end: 0.75em;font-size: 0.5em;}
#interview .l_text2 {font-size: 3.85em;inset: 2.875em auto auto 1em;}
#intern_ship {padding-block-end: 3em;}
#intern_ship .ttl1 {inset: -2.5em 0 auto 0;}
#intern_ship .p_1 {font-size: 1.25em;padding-inline-start: 0;}
#intern_ship .dl {font-size: 1em;}
#intern_ship .dl .dt {inline-size: 100%;}
#intern_ship .dl .dt span {padding: 0.5em 1em 0.5em 1.25em;inline-size: 100%;}
#intern_ship .dl .dd {padding: 0.5em 1em 0.5em 1.25em;}
#intern_ship .link_box {inline-size: 100%;}
#intern_ship .link_box .l_text {font-size: 2.85em;}
#intern_ship .link_box .p_2 {font-size: 1.35em;margin-block: 0.25em 0.75em;}
#intern_ship .link_box .p_3 {font-size: 1em;line-height: 1.75;padding-inline-start: 0;}
#intern_ship .link_box .flex_item {inline-size: 100%;margin-block-end: 2em;}
#intern_ship .link_box .flex_item .span1 {font-size: 1.35em;}
#intern_ship .link_box .flex_item .link {font-size: 1.2em;}
#intern_ship .bottom_box {inset: auto 0 0 0;}
#job_description {padding-block: 0.5em 4.5em;}
#job_description .sub_ttl_small {margin-inline-start: 1.65em;}
#job_description .sub_ttl {margin-inline-start: 1.75em;}
#job_description .l_text1 {font-size: 3em;inset: 0.35em auto auto 0.25em;}
#job_description .bg_box .job_img {inset: auto 0.35em 0.25em auto;inline-size: min(948px,43%);}
#job_description .middle_inner {inline-size: min(1600px,86%);margin-block-start: 1.5em;border-radius: 1em;}
#job_description .box {border-radius: 1em;padding: 1.5em 1em 4.25em 1em;}
#job_description .box .dl {font-size: 1em;}
#job_description .box .dl .dt {inline-size: 100%;padding: 0.5em 0.5em 0.5em 1.25em;font-weight: bold;}
#job_description .box .dl .dd {padding: 0.5em 0.5em 0.5em 1.25em;}
#job_description .box .dl .dd .ul1 .list {text-indent: -1em;padding-inline-start: 1em;}

.mfp-iframe-scaler iframe {border-radius: 1em;border: 0.25em solid var(--brown4);}
.mfp-iframe-scaler .mfp-close {width: 50px;height: 50px;font-size: 50px;}
main.popup .interview_popup .img_box .p_1 {inset: 1% auto auto 0.875em;}
main.popup .interview_popup .img_box .p_1 .small {font-size: 1.25em;}
main.popup .interview_popup .img_box .p_1 .num {font-size: 6.25em;}
main.popup .interview_popup .img_box .p_2 {inset: 53% auto auto 1.35em;inline-size: 92%;}
main.popup .interview_popup .img_box .p_2 .text {font-size: 1.25em;}
main.popup .interview_popup .img_box .img {inline-size: 190%;transform: translateX(-22%);z-index: -1;position: relative;}
main.popup .interview_popup .img_box .name {inset: 33% auto auto 0.75em;font-size: 1.65em;}
main.popup .interview_popup .text_side {padding-block: 2.75em 0.5em;}
main.popup .interview_popup .text_side .ol .list {padding-inline: 5%;margin-block-end: 2.35em;}
main.popup .interview_popup .text_side .ol .list .dl .dt {font-size: 1.5em;}
main.popup .interview_popup .text_side .ol .list .dl .dd {font-size: 1.125em;line-height: 1.75;}
main.popup .interview_popup .text_side .ol .list .m_text {font-size: 3em;inset: -0.4em auto auto 0;}

#gallery {padding-block: 4em 0;border-radius: 1em 1em 0 0;}
#gallery .ttl1 {inset: -1.75em 0 auto 0;padding-inline-start: 0;}
#gallery .ttl1 .l {font-size: 2.5em;}
#gallery .ttl1 .small {font-size: 1em;}
#gallery .middle_inner {padding-block: 6em 0;margin-block-end: 3em;}
#gallery .column {padding-block-end: 2em;}
#gallery .gallery_box {gap: 2%;}
#gallery .gallery_box .gallerys {inline-size: min(384px,49%);margin-block-end: 2%;}
#gallery .gallery_box .gallerys:nth-of-type(even) {transition-delay: 0.25s;}
#gallery .gallery_box .gallerys .img {border-radius: 0.5em;}
#gallery .text {inset: auto 1.5em 0 auto;}
#gallery .text .tr_text {font-size: 3em;}


#contact {padding-block: 4em 0;border-radius: 1em 1em 0 0;}
#contact .middle_inner {padding-block: 1em 0;margin-block-end: 2em;}
#contact .top .ttl1 {inset: -1.75em 0 auto 0;padding-inline-start: 0;}
#contact .top .ttl1 .small,#contact .bottom .ttl1 .small {font-size: 1em;}
#contact .top .p_1 {font-size: 1em;margin-block-start: 8.35em;padding-inline-start: 0;}
#contact .top .border_link {inline-size: min(620px,94%);font-size: 1.2em;padding: 1.125em 1em 1.125em 0.5em;}
#contact .bottom .ttl1 {padding-block-start: 3.5em;}
#contact .bottom .p_2 {font-size: 1em;padding-inline-start: 0;}
#contact form {padding: 1em 1em 2.5em 1em;inline-size: min(1240px,92%);}
#contact form .form_dl {font-size: 1em;margin-block: 1em 2em;}
#contact form .form_dl .form_dt {inline-size: 100%;margin-block-end: 1.25em;}
#contact form .form_dl .form_dt .h {margin-inline-end: 0;float: right;font-size: 0.875em;}
#contact form .form_dl .form_dd input[type="text"],
#contact form .form_dl .form_dd input[type="tel"] {padding: 1em 1.75em 1em 0.75em;}
#contact form .form_dl .form_dd textarea {padding: 1em 1.75em 1em 0.75em;aspect-ratio: 820 / 550;}
#contact .send_btn {margin: 1.5em auto auto auto;}
#contact .send_btn input[type="submit"] {font-size: 0.75em;padding: 1.25em 5.75em;}
#contact .column {padding-block-end: 3em;}
#contact .text {inset: auto 0.5em -0.75em auto;}
#contact .text .tr_text {font-size: 3.01em;}
#contact .add_btn .conf_btn.post {display: block;inline-size: 100%;margin-block-end: 1em;}
#contact .add_btn .conf_btn.back {inline-size: 100%;display: block;}












