:root{ 
  --color_text:#646464;
  --color_text_theme:#76bf8c;
  --color_text_inverse:#fff;
  --font_gothic:heisei-kaku-gothic-std, sans-serif;
  --graduates:#ff96e6;
  --mid_career:#50d2fa;
  --part_time:#b4aafa;
}
/* //--------------------------------------------------------- */

body{ background-color:transparent;transition:background-color .8s ease;overflow-x:clip; } 
main{ position:relative; }
.mask{position:fixed;inset:0;z-index:1;background:rgba(0, 0, 0, 0.55);display:none;}
#site_loading{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg, #f6f6f6 0%, #ececec 100%);}
#site_loading .loading_inner{display:flex;flex-direction:column;align-items:center;gap:18px;}
#site_loading .loading_logo{width:min(230px, 52vw);height:auto;display:block;}
#site_loading .loading_dots{display:flex;gap:8px;}
#site_loading .loading_dots span{width:8px;height:8px;border-radius:999px;background:#76bf8c;opacity:.25;animation:loading-dot 1s ease-in-out infinite;}
#site_loading .loading_dots span:nth-child(2){animation-delay:.15s;}
#site_loading .loading_dots span:nth-child(3){animation-delay:.3s;}
@keyframes loading-dot{0%,100%{transform:translateY(0);opacity:.25;}50%{transform:translateY(-5px);opacity:1;}}
.popup_window{position:fixed;top:50%;left:50%;transform:translate(-50%, -50%);z-index:900;width:min(92vw, 960px);max-height:90vh;display:none;background-color: #fff;}
.bt_popup_close{position:absolute;top:min(-52px, -8vw);right: 2px;width:min(44px, 11vw);aspect-ratio:1;border:none;background:transparent;padding:0;cursor:pointer;z-index: 10;}
.bt_popup_close img{width:100%;display:block;}
.popup_body{position:relative;max-height:90vh;overflow:auto;padding: 2% 0 8%;}
.popup_body img{display:block;width:100%;height:auto;}
.popup_cont{display:none;}
.bg_layer{/* background:url(../img/bg_01.webp) no-repeat center center/cover; */position:fixed;inset:0;z-index:-2;height:100%;width:100%;background-position:center center;background-repeat:repeat;background-size:230px;opacity:0;pointer-events:none;transition:opacity 1.2s ease;will-change:opacity; }
.bg_layer.is-active{opacity:1;}
.bg_layer.is-front{ z-index:-1; }
.text_center{ text-align:center; }
.text_justify{ text-align:justify; }
.text_inverse{ color:var(--color_text_inverse); }
.common_sec_width{width: 90%;margin-left: auto;margin-right: auto;}
.common_font_size.contact_page .row .th, .contact_page .input_wrap, .contact_page .each_input, .confirm .radio_wrap, .confirm_note{font-size: 1rem;}
section{padding:min(50px, 20%) 0;position:relative;}

.header{position:fixed;top:0;width:100%;z-index:800;background-color: #fff;}
.header .wrap{display:flex;justify-content:space-between;max-width:100%;width: 95%;align-items: center;}
.header .logo{width: 40%;padding-top: 3%;padding-left: 2%;max-width: 180px;}
.header .icon_x{width: 6.4%;margin-left: auto;display:flex;max-width: 33px;}
.header.active .icon_x{ display:none; }
.header .bt_header_job{width: 24%;margin: 0px 2.5% 0 3%;display: flex;max-width: 120px;}
.active .bt_header_job{ display:none; }
.side_nav_wrap{position:fixed;right:0;min-height: 100vh;width:100%;max-width:400px;background-color:#acacac;display: flex;flex-direction: column;align-items: center;padding: 5vh 0;transform:translateX(100%);transition:transform .5s;top: 0;}
.side_nav_wrap.active{transform:translateX(0);}
.bt_menu{width: clamp(60px, 16vw, 80px);aspect-ratio:2.8;z-index: 700;display: flex;}
.bt_menu .inner{ width:100%; }
.bt_menu .inner{ position:relative;width:100%;aspect-ratio:3.2; }
.bt_menu span{ width:80%;height:1px;position:absolute;left:50%;transform:translate(-50%, -50%);background-color:#000;transition:.5s; }
.active .bt_menu span{ background-color:#fff; }
.bt_menu span:nth-of-type(1){ top:28%; }
.bt_menu span:nth-of-type(2){ top:72%; }
.bt_menu.active span{ transition:.5s; }
.bt_menu.active span:nth-of-type(1){ top:50%;transform:translate(-50%, -50%) rotate(22deg);transform-origin:center; }
.bt_menu.active span:nth-of-type(2){ top:50%;transform:translate(-50%, -50%) rotate(-22deg);transform-origin:center; }
.bt_menu.active span:nth-of-type(1), .bt_menu.active span:nth-of-type(2){ width:88%; }



.hamburger{ display:block;position:fixed;z-index:1;top:0;right:0;width:100vw;height:100vh;transform:translateX(100vw);transition: 0.5s;background-color:#fff;padding:min(50px, 5%);box-sizing:border-box;visibility:hidden;background:url(../img/bg_gray.webp) repeat center center/280px; }
.hamburger.active{ transform:translateX(0);visibility:visible; }
.hamburger .inner{/* padding:5%; */overflow-y:auto;max-height:100%;width:100%;min-height:100%;}
.hamburger .circle.cat_wrap{ width:100%;padding:0;margin-bottom:1.4vh; }
.hamburger_lists{margin:0 auto;display:flex;flex-direction:column;justify-content:space-between;align-items:center;height:100%;/* padding:8vh 0; */padding-top: min(30px, 20%);}
.hamburger_list{text-align:center;width: 100%;flex-grow:1;display:flex;align-items:center;justify-content:center;/* text-align: left; */border-bottom:1px solid #8b8b8b; }
.layer_menu{ flex-direction:column; }
.layer_menu .base_menu_link{ padding-bottom:0; }
.base_menu_link{ width:100%; }
.base_menu{height: min(35px, 9.3cqw);width: auto;}
.hamburger_list .x_link{height:64px;width:auto;margin-left: auto;margin-right: 0;}
.hamburger_list:last-of-type{ border-bottom:none; }
.sub_menu_wrap{display:flex;flex-wrap:wrap;padding-left: 30px;padding-bottom: 2vh;}
.hamburger_list .sub_menu{position:relative;padding-left: 21px;font-size: 1rem;font-weight: 200;margin-right: 10.5%;line-height: 120%;}
.hamburger_list .sub_menu:nth-of-type(3){ margin-right:0; }
.sub_menu:before{position:absolute;content:'';left:0;top:50%;width: 13px;height:1px;background-color:#fff;transform:translateY(-50%);}
.hamburger_list a{color:#fff;font-size:130%;font-weight:300;display:flex;white-space:nowrap;height:100%;justify-content:flex-start;padding: 1.8vh 0;margin-right: auto;}
.hamburger_link{ text-decoration:none;color:white; }
.hamburger_bt_wrap{flex-wrap:wrap;display:flex;justify-content:space-between;margin-top: 10%;margin-bottom: 6%;}
.hamburger_bt_wrap .bt{width: 48.5%;margin-bottom: 1.5%;}
.hamburger_bt_wrap .bt_full_width{ width:100%; }
.side_site_name{width:75%;margin:0 auto;margin-bottom: 8%;display:block; }
.side_privacy{width: 38%;margin:0 auto;margin-bottom: 10%;display: block;}



.tmp{ width:100px;aspect-ratio:1;background-color:red;margin-bottom:200px; }
.fadeInUp{ opacity:0;transform:translateY(30px);transition:opacity .6s, transform .6s cubic-bezier(.4,.2,.34,.94); }
.fadeInUp.on{ opacity:1;transform:translateY(0); }

.spin{width: 60px;aspect-ratio:1;transform-origin:center;animation:spin 6s cubic-bezier(.68,-0.01,.34,1) infinite alternate;}
.shine, .gear{ position:absolute;z-index:10; }
.shine01{right: 10%;top: 3.8%;}
.shine02{ left: 10%;top: 0;}
.shine03{ right: 6%;top: -2%;}
.shine04{ left: 10%;top: -1%;}
.gear01{ animation-delay:1.5s;top: 10%;left: 5%;}
.gear02{ animation-delay:1s;top: 10%;right: 5%;}
.gear03{ animation-delay:1.5s;top: 8%;left: 5%;}
.gear04{ top: -3%;right: -2%;}
.gear05{bottom: -3%;left: -6%;}

@keyframes spin{
  0%{ transform:rotate(0deg); }
  100%{ transform:rotate(1080deg); }
}

.fv_wrap{height:400vh;position: relative;z-index: 100; }
.fv_wrap > .inner{ height:100%; }
.full_vh{ height:100vh; }
.fv{overflow: hidden;height:100vh;width:100%;position:relative;contain: layout paint;position:fixed; }
.fv_inner{ position:relative;height:100%; }
.fv_cont_wrap{position:absolute;left:50%;top:50%;transform: translate(-50%, -50%) scale(0.4);transition: transform 2s;min-width: 100%;min-height: 100%;object-fit: cover;aspect-ratio:0.61;}
.fv_cont_wrap.active{transform: translate(-50%, -49%) scale(1);top:50%;}
html.skip_fv_intro .fv_cont_wrap{ transition:none; }
html.skip_fv_intro .active .each_circle{ transition:none; }
.fv_cont_wrap > .inner{ position:relative;overflow:hidden; }

.each_circle{position:absolute;overflow:hidden;transform:translate(-50%, -50%);width: 83%;opacity:0;border-radius: 999px;}
.each_circle > .inner{ position:relative; }
.each_circle .circle_bg{width:100%;height:100%;vertical-align: middle;}
.each_circle.circle01{top:50%;left:50%;}
.each_circle.circle02{top: 13.7%;left: -8.3%;}
.each_circle.circle03{top: 13.6%;left: 108.3%;}
.each_circle.circle04{top: 85.9%;left: -9%;}
.each_circle.circle05{top: 85.7%;left: 109.3%;}
.each_circle.circle06{top: -22.7%;left:50%;}
.each_circle.circle07{top: 122.1%;left:50%;}
.each_circle.circle08{ display:none;top: 27.4%;left: 13.4%;}
.each_circle.circle09{ display:none;top: 27.4%;left:50%;}
.each_circle.circle10{ display:none;top: 27.4%;left: 86.4%;}
.each_circle.circle11{ display:none;top:72.6%;left: 13.4%;}
.each_circle.circle12{ display:none;top:72.6%;left:50%;}
.each_circle.circle13{ display:none;top:72.6%;left: 86.7%;}
.each_circle.circle14{ display:none;top: 38.7%;left: -5%;}
.each_circle.circle15{ display:none;top: 38.7%;left: 104.7%;}
.each_circle.circle16{ display:none;top: 61.2%;left: -5%;}
.each_circle.circle17{ display:none;top: 61.2%;left: 104.7%;}
.each_circle .staff{position:absolute;left: 50%;top: 52%;transform:translate(-50%, 0);width: 140%;opacity:0; }

.fv_copy{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%) scale(.82);z-index: 1;opacity:0;width:61%;mix-blend-mode:color-burn; }
.fv_copy.is-visible{ animation:fv-copy-enter 1.2s cubic-bezier(.2,.85,.2,1) forwards, fade-loop 3s ease-in-out .7s infinite; }
@keyframes fv-copy-enter{
  0%{ transform:translate(-50%, -50%) scale(.82); opacity:0; }
  100%{ transform:translate(-50%, -50%) scale(1); opacity:1; }
}
@keyframes fade-loop{
  0%{ opacity:1; }
  50%{ opacity:0.4; }
  100%{ opacity:1; }
}
.fv_bg{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width: 320%;}
.active .fv_bg{opacity: 0;}
.active .each_circle{opacity:1; }
.active .each_circle{ transition:opacity 2s .5s; }
.active .fv_bg{ transition:2s .5s; }
.active .each_circle .staff.active{ transform:translate(-50%, -50%);transition:opacity .4s, transform .6s cubic-bezier(.32,1.15,.38,.98);opacity:1;animation:staffFloat 10s ease-in-out .62s forwards; }

@keyframes staffFloat{
  0%{ transform:translate(-50%, -50%); opacity:1; }
  23%{ transform:translate(-50%, -52%); opacity:1; }
  45%{ transform:translate(-50%, -50%); opacity:1; }
  68%{ transform:translate(-50%, -52%); opacity:1; }
  /* 100%{ transform:translate(-50%, -50%); opacity:1; } */
  96%{ transform:translate(-50%, -50%); opacity:1; }
  100%{ transform:translate(-50%, 15%); opacity:1; }
}

.obj_set{position:absolute;width:100%;height:100%;max-width:100vw;overflow-x:visible; }
.obj_set_inner{ position:relative;height:100%; }
#intro .obj_layer{top:50%;}
.obj_layer{ position:absolute;z-index:-1;left:50%;transform:translateX(-50%) translateY(var(--obj-parallax-y, 0px));mix-blend-mode: color-burn;will-change:transform;opacity:1;transition:opacity 1.2s ease; }

body.bg_white .obj_layer:not(#intro .obj_layer), body.bg_white .th_my_story_block{ opacity:0; }
.obj_set01 .obj_layer01{ width:120%; }
.obj_set01 .obj_layer02{ width:225%;top:39%; }
.obj_set02 .obj_layer01{width: 185%;top: -10px;left: 41%;}
.obj_set02 .obj_layer02{width: 149%;top: 150px;left: 63%;}
.obj_set03 .obj_layer01{width: 220%;top: 4.7%;left: 46%;}
.obj_set03 .obj_layer02{width: 209%;top: 42.3%;left: 51%;}
.obj_set04 .obj_layer01{width: 185%;top: -3.3%;left: 67%;}
.obj_set04 .obj_layer02{width: 155%;top: 82.3%;left: 15%;}
.obj_my_story01{width: 120%;top: -30%;left:50%;}
.obj_my_story02{width: 220%;top: -26%;left: 110%;}
.obj_my_story03{width: 140%;top: 44%;left:50%;}
.obj_my_story04{width: 170%;bottom: -19%;left:50%;}
.obj_set_orange .obj_layer01{width: 240%;top: 40px;left:5%;}
.obj_my_story_facility{width:200%;top: 0;left: 77%;}

#intro{position:fixed;width:100%;display:none;background:url(../img/bg_pink.webp) repeat center center/230px;padding: 0;}
#intro .wrap{width:100%;display: flex;justify-content: center;align-items: center;min-height: 100%;}
#intro .intro_note{display:flex;flex-direction:column;width: 65%;display: block;}

.th_inner{position:relative;}

.intro_note{line-height: 200%;color:#fff;text-align:center;}
.intro_note span{ display:inline-block; }

/* #top_my_story{} */
.th_sec{ max-width:400px;margin-left: auto;margin-right: auto; }
.th_sub_note, .common_note{line-height: 183%;letter-spacing: 2.6px;}
.hand_written_wrap{ position:relative; }
.hand_written_parts{ position:absolute; }
#mask_path{ width:100%;height:auto;fill: none;stroke: #ffffff;stroke-width: 10;stroke-linecap: round;stroke-linejoin: round;stroke-dasharray:3264;stroke-dashoffset:3264; }
#mask_path_challenge{ width:100%;height:auto;fill: none;stroke: #ffffff;stroke-width: 12;stroke-linecap: round;stroke-linejoin: round;stroke-dasharray:2505;stroke-dashoffset:2505; }
.on #mask_path{ animation: draw 4s forwards; }
.on #mask_path_challenge{ animation: draw 4s forwards; }
#handwritten_animation_svg image{ width:100%;height:auto; }
@keyframes draw{
    to{ stroke-dashoffset:0; }
}
.story_slider_wrap{margin-bottom:min(200px, 29%);margin-top: 10%;}
.story_slider_wrap .slick-slide{ scale:0.8;transition:scale .8s; }
.story_slider_wrap .slick-slide.is-visual-center{ scale:1; }
.story_slider_wrap .slick-dots{ margin-top: 6%;position: absolute;left: 50%;transform: translateX(-50%);bottom: auto; }
.story_slider_wrap .slick-prev,.story_slider_wrap .slick-next{ position:absolute;top:50%;transform:translateY(-50%);width:20%;max-width:70px;height:auto;z-index:10; }
.story_slider_wrap .slick-prev{ left:5%; }
.story_slider_wrap .slick-next{ right:5%; }
.story_slider_wrap .slick-prev:before,.story_slider_wrap .slick-next:before{ display:none; }
.story_slider_wrap .slick-prev img,.story_slider_wrap .slick-next img{ width:100%;height:auto; }
.story_slider_wrap .slick-dots li button:before{ content:'';background-color:transparent;border:1px solid #fff;border-radius:50%;width:10px;height:10px;opacity:1; }
.story_slider_wrap .slick-dots li.slick-active button:before{ background-color:#fff; }

.slick-track{ display:flex!important;align-items:stretch; }
.reason_slider_wrap .slick-prev,.reason_slider_wrap .slick-next{position:absolute;top:55%;transform:translateY(-50%);width: 15%;height:auto;z-index:10;max-width:70px; }
.reason_slider_wrap .slick-prev{left: 6.8%;}
.reason_slider_wrap .slick-next{right: 6.8%;}
.reason_slider_wrap .slick-prev:before,.reason_slider_wrap .slick-next:before{ display:none; }
.reason_slider_wrap .slick-prev img,.reason_slider_wrap .slick-next img{ width:100%;height:auto; }
.reason_slider_wrap .slick-slide{ padding: 0 25px 25px 25px; }
.common_bt{width:100%;margin: 11% auto;display: block;max-width:400px; }
.bt_to_top{ width:100%; }

.reason_slider_wrap{margin-bottom:min(160px, 17%);position: relative;}
.th_reason_cat{font-size: 1.8rem;margin-bottom:5%;white-space: nowrap;letter-spacing: 2px;font-weight: 300;}
.support_box{background-color:#fff;border-top-left-radius:999px;border-top-right-radius:999px;padding: 7%;padding-top: 0;border-bottom-left-radius:150px;border-bottom-right-radius:150px;position:relative;overflow: hidden;margin:0 40px; }
.support_box.slick-slide{ height:auto; }
#top_reason .support_box:before{content:'';background:url(../img/curtain_support.webp) no-repeat center center/cover;width:100%;aspect-ratio: 0.3;position:absolute;top:-50%;left:0;transition:transform .8s .8s;z-index: 10;}
#top_reason .slick-active:before{ transform:translateY(-70%); }
.support_box .thumbnail_wrap{width:100%;aspect-ratio: 1.2;margin-bottom:15%;}
.support_box .thumbnail{width: 127%!important;position:absolute;top: 0%;left:50%;transform:translateX(-50%);}
.support_box .th_reason{font-size: 1.6rem;display: block;text-align: center;margin-bottom:3.8%;color: #ff859f;letter-spacing: 3px;}
#top_reason .common_bt{ margin-top:15%; }
.support_note{font-size: min(0.9rem, 3.4vw);line-height: 1.4rem;letter-spacing: 1.2px;text-align:justify; }

#top_number .th_sub_note{font-family:var(--font_gothic);font-size:1rem;font-weight:300;line-height: 20%;margin-bottom: 15%;}
.number_wrap{ display:flex;flex-direction:column;align-items:center; }
.number_toggle_wrap{ display:none;width:100%;flex-direction:column;align-items:center; }
.each_num_circle{width:100%;max-width:300px;aspect-ratio:1;border-radius:999px;border:1px solid #fff;display:flex;flex-direction:column;align-items: center;justify-content: center;margin-bottom:7%; }
.each_num_circle .th_num{font-size: 1.7rem;letter-spacing: 2px;font-weight: 300;line-height: 115%;padding-bottom: 0%;text-align: center;}
.each_num_circle .count_num_flex{display:flex;width: 86%;justify-content: center;}
.each_num_circle.year_circle .count_num_wrap{display:flex;align-items: flex-end;}
.each_num_circle.ratio_circle .count_num_wrap{display:flex;flex-direction:column;width:50%;align-items:center;flex-shrink:0; }
.each_num_circle.ratio_circle .count_num_wrap:first-of-type{ border-right:1px solid #fff; }
.each_num_circle .count_num{font-size: 7rem;line-height: 90%;}
.year_circle .count_num{font-size:3rem;line-height: 90%;}
.each_num_circle .note_num{font-size: 1rem;}
.each_num_circle .unit_num{font-size: 1.9rem;line-height: 125%;}
.ratio_circle .count_num_flex{margin-top: 7%;}
.ratio_circle .cat_num{ line-height:90%; }
.each_num_circle *{color:var(--color_text_inverse);}

.year_circle .count_num{font-size: 8rem;}
.year_circle .unit_num{font-size: 2rem;}


/* メッセージ */
.message_text_wrap{height: 210px;overflow: hidden;}
.message_text{text-align:justify;line-height:1.9rem;width: 90%;margin-left: auto;margin-right: auto;letter-spacing: 1.5px;} 
.chairman_name{margin-top: -11%;margin-bottom: 6%;}
.th_message{margin-bottom: 5%;font-size:1.5rem;line-height: 150%;}

/* 取り組み */
.challenge_box_wrap{margin-top: 16%;}
.challenge_box{background-color:#fff;border-radius: 40px;margin-bottom: 16%;}
.challenge_box_num{width: 47%;margin:0 auto;margin-bottom: 0%;display:block;transform: translateY(-23%);margin-bottom:-10%;opacity:0;transition:.5s .5s; }
.on .challenge_box_num{ transform: translateY(-33%);opacity:1; }
.challenge_th{font-size: 1.6rem;line-height: 130%;letter-spacing: 3.9px;margin-bottom: 9%;font-weight: 300;}
.challenge_box_img{margin-bottom: 0%;width:100%;aspect-ratio:1.3;overflow:hidden; }
.challenge_box_img img{ width:100%;height:100%;object-fit:cover;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(1);transition:transform .7s 1s; }
.on .challenge_box_img img{ transform:translate(-50%, -50%) scale(1.1); }
.challenge_text{width: 85%;margin:0 auto;padding: 4% 2% 8% 2%;letter-spacing: 1px;line-height: 1.8rem;text-align: justify;}

/* 採用までの流れ */
#flow{ position:relative;padding:0;padding-top:min(130px, 40%);background:linear-gradient(to bottom, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 70%); }
.jobs_page + #flow{ margin-top:15%; }
#flow:before{content:'';background:url(../img/obj_shakehands.webp) no-repeat center center/cover;width:100%;aspect-ratio:1;position:absolute;bottom:0;left:50%;transform: translate(-50%, 70%);}
.flow_box_wrap{margin-top:5%;width: 85%;margin-left: auto;margin-right: auto;margin-bottom: 14%;}
.flow_box{background:url(../img/bg_flow_step.webp) no-repeat center top/cover;border-top-left-radius:999px;border-top-right-radius:999px;border-bottom-right-radius: 170px;border-bottom-left-radius: 170px;padding: 15% 10% 10%;}
.flow_step02{margin-top: -5%;}
.th_flow_step{margin:0 auto;margin-bottom: 12%;width: 69%;display:block;}
.flow_text{line-height: 170%;font-size:1.2rem;letter-spacing: 1.9px;}
.bt_step_apply{margin: 12% auto 2%;display:block;}
.flow_caution{font-size:0.8rem;white-space:nowrap;letter-spacing: 1px;}

/* フッターリンク */
#bottom_links{padding-top:88%;margin-bottom: 9%;}
.bottom_link_box{margin-bottom:4%;border-radius: 20px;overflow: hidden;display: block;}
.bottom_link_box img{ vertical-align:middle; }


/* 働きやすさ一覧ページ */
.support_box_wrap{ display:flex;flex-direction:column;align-items:center; }
#support_list_page .support_box{margin-bottom: 11%;margin-right:0;margin-left:0;max-width:300px; }
.th_list_page_wrap{ border-top:1px solid #fff;border-bottom:1px solid #fff;padding:3% 0;margin-bottom:min(120px, 10%); }
.th_list_page{font-size:0.9rem;letter-spacing: 2.5px;}
.support_list_wrap{margin-bottom: 22%;}
.text_etc{font-size: 1.5rem;letter-spacing: 4px;margin-bottom: 26%;}

/* マイストーリー一覧ページ */
#story_list_page .bnr_story{display: block;}
#story_list_page .bnr_story:nth-of-type(n+2){margin-top: -7%;}
.story_list_wrap{margin-bottom: 30%;}


/* 職業紹介ページ */
#my_story_page{overflow-x:clip;padding-bottom:0; }
.page_obj01{background:url(../img/pt_obj01.webp) no-repeat center center/cover;width:100%;position:absolute;top:0;left:0;aspect-ratio: 2.8;}
.my_story_header{padding-top:0;box-sizing: border-box;transition:opacity .4s; }
.my_story_header_inner{ padding-top: 13%;min-height:100vh; }
.ms_bg{position:absolute;height:100%;width:100%;object-fit:cover;object-position: center center;top: 0;left: 50%;transform: translateX(-50%);}
.story_care_worker01 .my_story_header_inner, .story_care_worker02 .my_story_header_inner, .story_nursery_teacher02 .my_story_header_inner{ padding-bottom:min(440px, 120%); }
.work_copy{font-size: 1.3rem;color:#ff859f;margin-bottom:3%;}
.story_cng_bt_wrap{display:flex;justify-content:center;width: 95%;margin-left:auto;margin-right:auto;margin: 4% auto 10%;z-index:700;margin-top:14%; }
/* .cng_person_wrap{justify-content:space-between;gap: 7%;} */
.cng_person_wrap{justify-content:space-between;gap:4%;}
.story_cng_bt{ display:block; }
.cat_cng_bt{ width:50%; }
/* .person_cng_bt{width: 46%;} */
.person_cng_bt{width: 49%;}

.work_introduction{ text-align:justify;line-height:1.9rem; }
.th_work_name{font-size: min(2.4rem, 8.9vw);font-weight: 300;letter-spacing: 7px;white-space: nowrap;margin-bottom:6%;padding-top:7%; }
#my_story_detail, #career_step, #assigned_facility{ max-width:600px;margin-left: auto;margin-right: auto; }
.worker_prof .prof_detail{text-align:center;letter-spacing: 2.2px;transition:opacity .5s .5s;opacity:0; }
.worker_prof.on .prof_detail{ opacity:1; }
.eng_th_story, .ms_cutout{ position:absolute; }
.eng_th_story.left{left: 8%;top:max(-200px, -34vw);width: 45%;}
.eng_th_story.right{right: 8%;top:max(-200px, -34vw);width: 45%;}
.ms_cutout01{right: -9%;top:max(-280px, -49vw);width: 115%;}
.ms_cutout02{left: -5%;top:max(-270px, -41vw);width: 115%;}
.ms_cutout03{right: -12%;top:max(-260px, -42vw);width: 115%;}
.ms_cutout04{left: -7%;top:max(-270px, -41vw);width: 115%;}
.story_box, .story_num_wrap{padding: 0 10%;}
.story_box_wrap{ margin-top:clamp(180px, 49vw, 310px); }
.story_box{background-color:#fff;padding-bottom:10%;border-bottom-left-radius: 40px;border-bottom-right-radius: 40px;}
.story_num_wrap.left{background: url(../img/story_box_left.svg) no-repeat top center/cover;width:100%;aspect-ratio: 3.76;display: flex;align-items: flex-end;}
.story_num_wrap.right{background: url(../img/story_box_right.svg) no-repeat top center/cover;width:100%;aspect-ratio: 3.76;display: flex;align-items: flex-end;justify-content:flex-end; }
.story_num{font-size:clamp(0.7rem, 2.8vw, 1rem);letter-spacing: 4px;padding-bottom: 7%;}
.story_num, .th_each_story{ color:var(--color_text_theme); }
.th_each_story{font-size:clamp(1.4rem, 4.4vw, 2rem);margin-bottom: 7%;line-height: 150%;letter-spacing: 1px;white-space: nowrap;}
.ms_square{vertical-align: middle;margin-top: 9%;border-radius:30px; }

/* キャリアステップ */
#career_step{padding-bottom: min(0px, 20%);}
.th_career_pass_facility{margin: 4% auto 6%;}
.th_career_pass_facility img{ vertical-align:middle; }
.career_step_box{ position:relative; }
.career_step02, .career_step03{margin-top: max(-100px, -29vw);}
.career_step_box .starter, .career_step_box .logo{position:absolute;left: -7%;width:20%;}
.career_step_box .starter{top: 11%;}
.career_step_box .logo{ bottom:11%; }
.career_step_box .gear{position:absolute;top:50%;right: -7%;}
.icon_float{animation:icon_float 3s ease-in-out infinite}
@keyframes icon_float{
    0%{transform:translateY(0)}
    50%{transform:translateY(-12px)}
    100%{transform:translateY(0)}
}

#assigned_facility{padding-top: min(90px, 22%);}
#assigned_facility_list{margin-bottom:min(100px, 19vw);}
.th_assined_facility{font-size:1.8rem;margin-bottom: 10%;letter-spacing: 5px;}
.common_box{border-radius: 23px;padding:0;background-color:#fff;margin:0 auto;overflow:hidden; }
.assigned_facility_box{padding-top: min(124px, 24vw);display:none;transition:opacity .3s;opacity:0;}
.assigned_facility_box.active{ opacity:1; }
.common_box_header_row{ padding:4.5% 6.5%;background-color:#f3f3f3; }
.common_box .box_th{color:#000;font-size: 1.2rem;font-weight: 600;letter-spacing: 5px;font-weight: 300;line-height: 130%;flex-grow: 0;}
.box_sub_th{font-size: 0.8rem;}
.assigned_facility_cat_wrap{margin-top: min(3000px, 45%);min-height:min(130px, 10vw); }
.assigned_facility_cat_th{width: 89%;margin: 0 auto;display: block;position:absolute;left:50%;top:clamp(-70px, -6vw, -30px);transform:translate(-50%, -50%);z-index:1;cursor:pointer; }
.assigned_facility_addr_wrap{background-color:#f3f3f3;padding: min(26px, 10%) 0;}
.assigned_facility_cat_name{font-size:1.3rem;line-height: 150%;} 
.assigned_facility_addr{font-size:0.8rem;padding-top: 2%;}
.tag_map{width: 55px;flex-grow:0;flex-shrink:0;display:block;margin-left: auto;margin-right: auto;}
.tag_map img{vertical-align:middle; }
.assigned_facility_list{background-color:#fff;padding: 0 8%;}
.assigned_facility_row{border-bottom:1px solid #e3e3e3;padding: min(20px, 8%) 0 min(15px, 6%) 0;}
.assigned_facility_row:last-of-type{ border-bottom:none;padding-bottom:12%; }
.assigned_facility_sub{font-size:0.8rem;line-height: 150%;}

.assigned_shine{display:block;margin: 13% auto;width: 23%;position:relative; }
#assigned_facility .bt_wrap{ margin:5% auto; }
#assigned_facility .common_bt{ margin:2% auto; }

.footer{padding-bottom:5%;background: url(../img/bg_purple.webp) repeat center center/400px;}
.contact_page + .footer{background: url(../img/bg_light_gray.webp) repeat center center/160px;}
.footer_logo{width: 55%;max-width:170px;margin: 0 auto;margin-bottom: 10%;display: block;}
.privacy{width: 34%;margin:0 auto;display:block;margin-bottom: 6%;}
.copyright{/* width:60%; */margin:0 auto;font-size: 0.6rem;}










/* 採用職種ページ */
.jobs_page{padding-top:min(130px, 13%); }
/* .jobs_page .th_page{ margin-bottom: 5%; } */
.jobs_page_th{margin-bottom:5%;letter-spacing:4px; } /* .jobs_page .tmp_bg{background:url(../img/bg_jobs.webp) no-repeat top center/cover;position:absolute;top:0;left:50%;width:100%;transform:translateX(-50%);height: 100%;} */
/* 
.jobs_page .mv{aspect-ratio: 1.29;margin-bottom: 9.9%;}
.jobs_page.graduates_page .mv{ background: url(../img/bg_jobs_mv_graduates.webp) no-repeat center center/cover; } 
.jobs_page.mid_career_page .mv{ background: url(../img/bg_jobs_mv_mid_career.webp) no-repeat center center/cover; }
.jobs_page.part_time_page .mv{ background: url(../img/bg_jobs_mv_part_time.webp) no-repeat center center/cover; }
*/
.circle.cat_wrap{display:flex;justify-content:space-between;margin: 0 auto;width:90%;padding: min(68px, 9%) 0 0.2%;max-width:450px; }
.circle.cat_wrap .cat{width: 29.5%;border-radius:999px;font-size: 1.1rem;aspect-ratio:1;display:flex;justify-content:center;align-items:center;border:1px solid #fff;color:#fff;flex-direction:column;align-items:center;letter-spacing: 0.2rem;text-indent: 0.2rem;}
.circle.cat_wrap .cat .bottom{ border-top:1px solid #fff;margin-top:5%;padding-top:1%;width:74%;text-align:center; }
.graduates_page .cat.active, .graduates .hamburger .cat.active{ color:#fff;border:1px solid #fff;background-color:var(--graduates); }
.mid_career_page .cat.active, .mid_career .hamburger .cat.active{ color:#fff;border:1px solid #fff;background-color:var(--mid_career); }
.part_time_page .cat.active, .part_time .hamburger .cat.active{ color:#fff;border:1px solid #fff;background-color:var(--part_time); }
.graduates_page .cat.active .bottom, .graduates .hamburger .cat.active .bottom{ border-top-color:#00beff; }
.mid_career_page .cat.active .bottom, .mid_career .hamburger .cat.active .bottom{ border-top-color:#ff3772; }
.part_time_page .cat.active .bottom, .part_time .hamburger .cat.active .bottom{ border-top-color:#d264ff; }
.th_gift{margin-bottom: 3.9%;}
.jobs_list{position:relative;padding-top: 0;}
.jobs_list .note{font-size: 180%;line-height: 160%;width: 95%;margin: 0 auto 3% auto;}
.jobs_list .note strong{ color:#ff4172; }
.jobs_info_wrap{margin-top: 9%;align-items:flex-start;margin-bottom:10%;max-width:450px;margin-left: auto;margin-right: auto; }
/* .common_box{border-radius: 23px;padding: 4.5% 6.5% 4.1% 6.5%;background-color:#fff;width: 92%;margin:0 auto;} */
.common_box.each_job{width: 92%; }
.jobs_info_wrap .each_job, .jobs_info_wrap .no_job{margin-bottom: 3%;font-size: 1rem;}
.jobs_info_wrap .no_job{display:block;text-align:center;margin:min(150px, 10%) auto;margin-top:0;padding:min(10%, 80px) 0;letter-spacing: 1.4px; }
.jobs_info_wrap .each_job .row{border-top:1px solid #e4e4e4;padding: 3% 0;font-size: 100%;}
.jobs_info_wrap .each_job .place{line-height:120%;padding-top: 5%; }
.common_box .place, .jobs_info_wrap .each_job .place, .jobs_info_wrap .detail_wrap{ padding-left:4.5%;padding-right:4.5%; }
.jobs_info_wrap .each_job .place_set{margin-bottom: 2%;display: flex;border-bottom: 1px solid #e3e3e3;padding-bottom: 1.6%;}
.jobs_info_wrap .each_job .place_set:last-of-type{margin-bottom:0;border-bottom:none; }
.jobs_info_wrap .each_job .common.row *{ font-size: 100%; }
.jobs_info_wrap .toggle_detail, .jobs_info_wrap .bt_toggle{ font-size:100%; }
.jobs_info_wrap .common.row .th{margin-bottom: 0px;color: #a7a7a7;}
.jobs_info_wrap .common.row .detail{white-space:break-spaces;line-height: 160%;}
.jobs_info_wrap .each_job .job_name{display:flex;border-top: none;align-items:center;padding:3% 3.5%;}
/* .jobs_info_wrap .each_job .cat{color:#fff;border-radius:999px;padding: 0% 2%;margin-right:1vw;font-size: 106%;flex-shrink: 0;} */
.jobs_info_wrap .each_job .cat{color:#fff;border-radius:999px;padding: 0% 2%;margin-right:4%;flex-shrink: 0;}
/* .jobs_info_wrap .each_job .cat .inner{letter-spacing: 0.5rem;text-indent: 0.5rem;} */
.jobs_info_wrap .each_job .cat .inner{letter-spacing:0;text-indent:0;padding:0 6px; }
.graduates_page .each_job .cat{ background-color:var(--graduates); }
.mid_career_page .each_job .cat{ background-color:var(--mid_career); }
.part_time_page .each_job .cat{ background-color:var(--part_time); }
.jobs_page_th{letter-spacing: 8px;margin-right: -8px;}
.jobs_page .detail_wrap .row{ font-size:100%;border:none; }
.jobs_page .open .detail_wrap .row{ border-top:1px solid #e4e4e4; }
.jobs_page .open .detail_wrap .row:first-of-type{ border-top:none;padding-top:5%; }
.jobs_page .toggle_detail{ display:none; }
.jobs_page .each_job .place_name{margin-bottom: 3px;margin-right: 12px;}
.jobs_page .each_job .place_name{font-size: 0.75rem;}
.jobs_page .each_job .addr{font-size: 0.75rem;}
.jobs_page .each_job .bt_wrap{display:flex;justify-content:space-between;margin:0 auto;background-color:#fff;position:relative;padding-top:5%; }
.jobs_page .each_job.open .bt_wrap{ position:sticky;bottom:0; }
.jobs_page .each_job .bt{width:14%;aspect-ratio:1;position:relative;margin-left: auto;margin-right: 7%;flex-shrink: 0;}
.jobs_page .each_job .bt img{ vertical-align:middle; }
.jobs_page .each_job .bt_toggle_wrap{position:absolute;top:50%;right:16%;width: 100%;height:100%;border-radius:999px;background:url(../img/bt_toggle_bg.svg) no-repeat center center/cover;transform:translate(50%, -50%);transition:.5s;padding:18%;background-color:#fff;box-sizing:border-box; }
.jobs_page .each_job .inner{ position:relative;display:block;width:100%;height:100%; }
.jobs_page .each_job .line{ position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:100%;height:1px;background-color:#323232;transition:.5s; }
.jobs_page .each_job .line:nth-of-type(2){ transform:translate(-50%, -50%) rotate(90deg); }
.jobs_page .each_job.open .bt_toggle_wrap{ transform:rotate(90deg) translate(-50%, -50%); }
.jobs_page .each_job.open .bt_toggle .line:nth-of-type(1){ opacity:0; }
.jobs_list .bg{position:absolute;bottom:0;transform: translateY(99%);}
.jobs_all_list{border-bottom:1px solid #fff;padding: 0.7%;letter-spacing: 1px;font-size: min(0.9rem, 4.1cqw);}
.th_jobs_all_list{font-size: 1.3rem;letter-spacing: 2.5px;}
.jobs_page .each_job .bt_entry{ width: 45%;margin: 5% auto 8%; }
.popup_window{width:90vw;max-width:600px; }
.bt_popup_close{top:0;width:38px;}


/* ==================================================
コンタクトフォーム
================================================== */
.th_page{ font-size:2rem; }
.contact_page{ background-color:transparent;background:url(../img/bg_light_gray.webp) repeat center center/160px; }
.contact_page .mv{/* background:url(../img/bg_contact_mv.webp) no-repeat center center/cover; *//* aspect-ratio: 1.56; *//* margin-bottom: 10.7%; */padding: 0;}
.contact_page .th_page{ padding:min(100px, 9.7%) 0 min(30px, 2.7%) 0; }
.radio_cont_wrap{display:flex;flex-direction:column;width: 59.8%;margin:0 auto;margin-bottom: min(60px, 8%);width:max-content; }
.radio_cont_wrap label{margin-bottom: min(5px, 6%);display: block;}
.radio{ display: none; }
.radio + span {cursor: pointer;display: inline-block;margin: 0 0.2em 0;padding: 0 0 0 min(40px, 10.8vw);position: relative;font-size:1.4rem;}
.radio + span::before {-webkit-transform: translateY(-50%);background: #fff;border: 1px solid #000;border-radius: 50%;content: "";display: block;left: 0;position: absolute;top: 50%;transform: translateY(-43%);width:24px;aspect-ratio: 1;}
.radio + span::after{-webkit-transform: translateY(-50%);background: #000;border: 1px solid transparent;border-radius: 50%;content: "";left: 2px;opacity: 0;padding: 2px;position: absolute;top: 50%;transform: translateY(-42%);transition: all 0.3s ease 0s;width:16px;aspect-ratio: 1;}
.radio:checked + span::after{ opacity: 1; }
.contact_page .header_wrap{padding-bottom:min(46px, 10.2%);margin-bottom:min(52px, 11.8%);}
.contact_page .header_wrap, .contact_page .body_wrap{border-bottom:1px solid #e4e4e4;}
.select{-moz-appearance: none;-webkit-appearance: none;appearance: none;background: transparent url(../img/bt_select.svg) no-repeat center right/auto 100%;border: 1px solid rgba(0, 0, 0, 0.16);border-radius: 0;color: inherit;cursor: pointer;font-family: inherit;font-size: 1em;padding: 0.7em 0.8em;width: 100%;border:1px solid #b1b1b1;}
.select::-ms-expand{ display: none; }
.select:focus{ border: 1px solid rgba(0, 0, 0, 0.32);box-shadow: none;outline: none; }
.select option{ width:80%;display:block; }
input[type="text"]{-moz-appearance: none;-webkit-appearance: none;appearance: none;background-color: transparent;background-image: none;border: 1px solid rgba(0, 0, 0, 0.16);border-radius: 0;color: inherit;font-family: inherit;font-size: 1em;padding: 0.4em 0.8em;width: 100%;box-sizing:border-box; }
input[type="text"]:focus{border: 1px solid rgba(0, 0, 0, 0.32);box-shadow: none;outline:none;box-sizing:border-box; }
.textarea{-moz-appearance: none;-webkit-appearance: none;appearance: none;background-color: transparent;background-image: none;border: 1px solid rgba(0, 0, 0, 0.16);border-radius: 0;color: inherit;font-family: inherit;font-size: 1em;height:170px;padding: 0.4em 0.8em;width: 100%;box-sizing:border-box;}
.textarea:focus{ border:1px solid rgba(0, 0, 0, 0.32);box-shadow:none;outline:none; }
.check{ display: none; }
.check + span{cursor: pointer;display: inline-block;margin: 0 0.2em 0;padding: 0 0 0 2.4em;position: relative;font-size: 1rem;}
.check + span::before{-webkit-transform: translateY(-50%);background: #fff;border: 1px solid rgba(0, 0, 0, 0.16);border-radius: 2px;content: "";display: block;left: 0;position: absolute;top: 50%;transform: translateY(-50%);width: 2em;aspect-ratio: 1;}
.check + span::after{-webkit-transform: translateY(-50%) rotate(-45deg);border-bottom: 4px solid rgba(0, 0, 0, 0.62);border-left: 4px solid rgba(0, 0, 0, 0.62);content: "";display: block;height: 0.8em;left: 0;margin-top: -0.2em;opacity: 0;position: absolute;top: 50%;transform: translateY(-75%) rotate(-45deg);transition: all 0.3s ease 0s;width: 2em;}
.check + span a{ font-size:100%;text-decoration:underline; }
.check:checked + span::after{ opacity: 1; }
select, input[type="text"]{font-size:1rem;padding:min(10px, 1.6rem);}
input[type="text"], .textarea{ background-color:#f5f5f5;border:1px solid transparent; }
.contact_page{padding-bottom: 18.3%;position:relative;z-index: 1;}
.contact_page form{ display:block;max-width:600px;margin-left: auto;margin-right: auto; }
/* .contact_page .body_wrap{  } */
.contact_common_box{padding:7%;padding-top: 9.4%;padding-bottom: 14%;/* margin-bottom: 45%; */}
.contact_page .row{font-size: 257%;letter-spacing: 2px;margin-bottom: 6.7%;}
.contact_page .row .th, .contact_page .input_wrap, .contact_page .each_input, .confirm .radio_wrap, .confirm_note{ font-size:1rem; }
.contact_page input[type="text"], .contact_page select, .contact_page textarea{font-size: 90%;}
.contact_page .row .th{margin-bottom: 3%;display: flex;align-items: center;}
.contact_page .require{font-size:0.7rem;color:#ff4172;border:1px solid #ff4172;padding: 0.1% 1.5%;border-radius: 5px;margin-left: 1.7%;line-height: 150%;}
.contact_page .graduates_info .input_wrap{ display:flex; }
.contact_page .graduates_info .each_input{display:flex;align-items:flex-end;width:min(165px, 35.3%);min-width:120px; }
.contact_page .graduates_info .year{margin-right: 3.6%;}
.contact_page .graduates_info span{padding-left: 0.7rem;}
.contact_page .body_wrap{padding-bottom:5.2%;margin-bottom:min(75px, 15.2%);}
.contact_page .bottom_wrap{ text-align:center; }
.contact form input[type="submit"]{ opacity:1;transition:opacity .3s; }
.contact form input[type="submit"]:hover{ opacity:0.8;transition:opacity .3s; }
.contact form input[type="submit"].bt_form{font-size:14px;background-color:#ff4172!important;border:none;color:#fff;padding: 6% 0;border-radius:999px;background:transparent;display:block;margin:0 auto;cursor:pointer;letter-spacing:3px;width: 100%;font-size: 1.1rem;}
.contact_page .bottom_wrap .submit_wrap{margin-top: 15.3%; max-width:320px;margin-left: auto;margin-right: auto; }
.contact_page .submit_wrap .bt_wrap{margin:3% auto;display:block;}
.contact_page .bg{ position:absolute;bottom:0;transform:translateY(99%); }


/* 確認画面 */
.contact form.confirm .th{ color:#acacac;font-size:0.9rem;margin-bottom: 1%; }
.contact_page .confirm .row{ border-bottom:1px solid #ddd; }
.contact_page .confirm .header_wrap, .contact_page .confirm .body_wrap{ border-bottom:none; }
.contact_page .confirm .header_wrap{ margin-bottom:0;padding-bottom:0; }
.contact_page .confirm .th_contact_addr{ display:none; }
.confirm .confirm_note{ min-height:1rem; }

/* 完了画面 */
.complete_note_wrap{ text-align: center;font-size: 18px;padding: 130px 0 110px 0;width: 90%;max-width: 600px;margin-left: auto;margin-right: auto; }
.complete_note_wrap .note{ margin-bottom:6%;font-size:100%; }
.complete_note_wrap .note span{ display:inline-block; }
.complete_note_wrap .note.sub{ font-size:16px; }
.complete_note_wrap a{ text-decoration:underline;font-size:100%; }

/* ==================================================
エラー
================================================== */
.error_wrap{ max-width:800px;margin-left:auto;margin-right:auto; }
.errors span{ color:#b50009;padding:4px;border:1px solid #b50009;background-color:#ffd9db;border-radius:3px;line-height:164%;display:block;margin-bottom:8px;padding-left:27px;position:relative;font-size:14px; }
.errors span:before{ content:'※';position:absolute;left:11px;top:4px; }
 
@media screen and (min-width:580px){
  .reason_slider{max-width: 410px;margin-left: auto;margin-right: auto;}
  .support_box .th_reason{ font-size:min(1.6rem, 2.7vw); }
}

@media screen and (min-width:769px){
  .header .logo{padding: 1% 0 0.5% 0;}
  .hamburger{ max-width:650px; }
  .active .icon_x{ display:none; }
  .header.active .logo{ opacity:0;pointer-events:none; }
  br.sp{ display:none; }
  /* .th_sec{ max-width:400px; } */
  .th_sub_note, .common_note{ font-size:1.3rem; }
  .common_bt{ max-width:300px;margin:min(100px, 11%) auto; }
  
  .fv_cont_wrap{ transform:translate(-50%, -50%) scale(0.5); }
  .fv_cont_wrap.active{ transform:translate(-50%, -50%) scale(1.1); }
  .fv_copy{ max-width: 26%;max-height: 70vh;aspect-ratio: 0.7;object-fit: contain; }
  .fv_bg{ transform:translate(-50%, -50%) scale(1); }
  .each_circle{ width:26%; }
  .each_circle.circle01{ top:50%;left:50%;}
  .each_circle.circle02{ top: 38.7%;left: 31.7%;}
  .each_circle.circle03{ top: 38.7%;left: 68.3%;}
  .each_circle.circle04{ top: 61.2%;left: 31.8%;}
  .each_circle.circle05{ top: 61.2%;left: 68.3%;}
  .each_circle.circle06{ top:50%;left:13.4%; }
  .each_circle.circle07{ top:50%;left:86.4%; }
  .each_circle.circle08,
  .each_circle.circle09,
  .each_circle.circle10,
  .each_circle.circle11,
  .each_circle.circle12,
  .each_circle.circle13,
  .each_circle.circle14,
  .each_circle.circle15,
  .each_circle.circle16,
  .each_circle.circle17{ display:block; }
  .obj_set01 .obj_layer01{ left:53%; }

  #top_my_story{ padding-top:min(150px, 20%); }
  .slick-list{ overflow-x:clip;-webkit-mask-image: linear-gradient(to right, transparent, black 10%, black 90%, transparent);mask-image: linear-gradient(to right, transparent, black 30%, black 70%, transparent); }
  .bnr_top_story{ max-width:300px;display:block;margin:0 7%; }
  .story_slider_wrap{ max-width:1240px;margin-left: auto;margin-right: auto; }
  
  #top_reason .slick-current + .support_box:before{ transform:translateY(-70%); }
  #top_reason .slick-active:before{ transform:translateY(0); }

  .support_box{ margin:0 min(25px, 1.4vw); }

  .number_wrap{ display:block;flex-wrap:wrap;max-width:680px;margin-left: auto;margin-right: auto; }
  .number_toggle_wrap{ display:block;width:100%; }
  .each_num_circle{ margin:5%; }
  .each_num_circle:nth-of-type(2n), .number_toggle_wrap .each_num_circle:nth-of-type(2n-1){ margin-left:auto;margin-right:0; }
  .number_toggle_wrap .each_num_circle:nth-of-type(2n){ margin-right:auto;margin-left:0; }
  .each_num_circle:nth-of-type(n+2), .number_toggle_wrap .each_num_circle{ margin-top:-21%; }
  .toggle_bt{ display:none; }

  #top_message{padding-bottom: min(100px, 20%);}
  .chairman_img{ max-width:500px;margin-left: auto;margin-right: auto;display:block; }
  .chairman_name{ margin-top:-10px; }
  .message_text_wrap{ height:auto; }
  .message_text{ max-width:700px;margin-left: auto;margin-right: auto; }
  .challenge_box_wrap{ max-width:400px;margin-left: auto;margin-right: auto; }

  .flow_box{ max-width:420px;margin-left:auto;margin-right:auto; }

  #flow{padding-bottom: min(160px, 10%);}
  #flow:before{ content:none; }
  .jobs_page + #flow{ margin-top:0; }
  #bottom_links{padding-top: min(190px, 11%);}
  #bottom_links .wrap{ display:flex;flex-wrap:wrap;justify-content:center;gap:5%; }
  .bottom_link_box{ width:40%; }
  .footer_logo{ margin-bottom:min(50px, 10%); }
  .privacy{ max-width:130px;margin-bottom:min(20px, 6%); }

  .footer{ background:url(../img/bg_purple.webp) repeat center center/230px; }

  .story_list_wrap{ flex-wrap:wrap;display:flex;gap:10%;margin-bottom:min(70px, 30%); }
  #story_list_page .bnr_story{ width:45%;display:block; }
  #story_list_page .bnr_story:nth-of-type(n+2){ margin-top:0 }

  .reason_slider{ max-width:1080px;margin-left:auto;margin-right:auto; }
  .support_box_wrap{ flex-wrap:wrap;flex-direction:row;justify-content:center;gap:10%; }
  #support_list_page .support_box{ width:45%;max-width:350px;padding:6%; }

  .my_story_header{ padding-bottom:min(110px, 8%); }
  .my_story_header_inner, .story_care_worker01 .my_story_header_inner, .story_care_worker02 .my_story_header_inner, .story_nursery_teacher02 .my_story_header_inner{ padding:min(50px, 5%) 0;min-height:70vh;display:flex;align-items:center; }
  .my_story_header_inner{ background-color:#fff; }
  .page_obj01{ display:none; }
  .ms_bg{ width: 30%;object-fit: cover;object-position:center bottom;top: 0;left: 100%;transform: translateX(-100%); }
  .my_story_header_text_wrap{ width:60%;margin-right:auto; }
  .cng_person_wrap, .story_cng_bt_wrap{ max-width:480px;margin-top:9%; }
  .eng_th_story.left{left: 8%;width: 45%;}
  .eng_th_story.right{right: 8%;width: 45%;}
  .ms_cutout01{right: -9%;width: 106%;}
  .ms_cutout02{left: -5%;width: 115%;}
  .ms_cutout03{right: -12%;width: 115%;}
  .ms_cutout04{left: -7%;width: 115%;}
  .obj_set_orange .obj_layer01{ width:200%;top:240px;left:55%; }

  .circle.cat_wrap{ max-width:420px; }
  .jobs_list{ width:92%;max-width:1020px;margin-left: auto;margin-right: auto; }
  .jobs_info_wrap{ display:flex;gap:2%;max-width:780px; }
}

@media screen and (min-width:1000px){
  .story_list_wrap{ flex-wrap:wrap;display:flex;gap:5%; }
  #story_list_page .bnr_story{ width:30%;display:block; }
}