@charset "utf-8";

@media screen and (min-width: 768px) {
  main { margin-top:50px; }
}
@media screen and (min-width:1080px) {
  main { margin-top:100px; }
}
@media screen and (min-width:1200px) {
  main { margin-top:150px; }
}


h3 { font-weight:700; font-size:32px; margin-bottom:16px; }
@media screen and (min-width: 768px) {
  h3 {  font-size:36px; margin-bottom:24px; }
}

/*トップのスライド*/
h1.top::before { content:none;}
h1.top { width:100%; text-align:center; margin-top:0px; }
h1.top img.inline_sp { width:90%; height:auto; display:block; margin:30px auto 0 auto; position:relative; z-index:2; }
h1.top img.inline_pc { display:none; }
@media screen and (min-width: 768px) {
  h1.top {z-index:2; margin:30px 0 50px 0; }
  h1.top img { width:90%; }
  h1.top img.inline_pc { width:90%; display:none; }
}
@media screen and (min-width:1080px) {
  h1.top img.inline_pc { width:930px; height:auto; margin:50px auto; display:block;  }
  h1.top img.inline_sp { display:none; }
}



h2 { margin-bottom:48px; display:inline-block; }
h2.text_left { margin-bottom:48px; }
h2 img { height:60px; }
@media screen and (min-width: 768px) {
  h2 img { height:70px; }
}


/*リードコピー*/
.contents_wrap.copy { height:auto; padding-bottom:350px; margin-top:50px; }
.contents_wrap.copy .contents { display:flex; flex-direction:column-reverse; }
.contents_wrap.copy .contents div { width:100%; }
.contents_wrap.copy .contents div:nth-child(2) p.inline_sp { font-size:16px;  line-height:2.125em; display:inline-block;}
.contents_wrap.copy .contents div:nth-child(2) p.inline_pc { display:none; }
.contents_wrap.copy .contents div:nth-child(1)  { width:100%; position:relative;  }
.contents_wrap.copy .contents div:nth-child(1) .copy_illust1 { width:27%; position:absolute; left:60%; border:1px solid #000; margin-top:30px; }
.contents_wrap.copy .contents div:nth-child(1) .copy_illust2 { width:32%; position:absolute; left:0; margin-top:120px; border:1px solid #000; }
.contents_wrap.copy .contents div:nth-child(1) .copy_illust3 { width:19%; position:absolute; left:35%; margin-top:250px; border:1px solid #000; }
@media screen and (min-width: 768px) {
    .contents_wrap.copy { padding-bottom:80px; margin-top:initial; }
    .contents_wrap.copy .contents { display:flex; flex-direction:initial;}
    .contents_wrap.copy .contents div:nth-child(1) { width:49%; }
    .contents_wrap.copy .contents div:nth-child(1) .copy_illust1 { width:180px; position:absolute; left:50%; transform: translateX(-50%); margin-top:0; }
    .contents_wrap.copy .contents div:nth-child(1) .copy_illust2 { width:210px; position:absolute; left:-5%; top:240px; margin-top:initial; }
    .contents_wrap.copy .contents div:nth-child(1) .copy_illust3 { width:125px; position:absolute; left:20%; top:550px; margin-top:initial; }
    .contents_wrap.copy .contents div:nth-child(2) { width:53%; }
    .contents_wrap.copy .contents div:nth-child(2) p.inline_pc { font-size:20px; line-height:2.4em; display:block; }
    .contents_wrap.copy .contents div:nth-child(2) p.inline_sp  { display:none; }
}

.line-block {
  display: inline-block;
  opacity: 0;
  transform: translateY(10px);  /* 下からわずかに浮かび上がる */
  transition: opacity 0.8s ease, transform 0.8s ease;
  will-change: opacity, transform;
  line-height: 1.6;  /* 行間はお好みで調整可能 */
  margin: 0;
  padding: 0;
}
.line-block.show {
  opacity: 1;
  transform: translateY(0);
}


#animated-message .inline_pc { display:none; }
@media (min-width: 768px) {
  #animated-message .inline_pc { line-height:0.1rem; display:inline-block; }
}


    

.about_video { width: 100%; object-fit: cover; }
@media (min-width: 768px) {
  .about_video { width:100%; }
  
}
.move_wrap { display:block; margin-bottom:80px; }
.move_wrap p { font-size:14px; line-height:24.5px; }
.message_wrap p { font-size:14px; line-height:24.5px; font-weight:500;}
.move_wrap li { width:100%; margin-bottom:10px; }
h3 .kadomaru { width:190px; height:34px; margin-bottom:24px; font-size:24px; background:#000; color:#fff; text-align:center; border-radius:17px; display:block;font-weight:normal; line-height:34px; }
.move_wrap h3 { font-size:32px; margin-bottom:24px; }
@media screen and (min-width: 768px) {
  .move_wrap { display:flex; justify-content: space-between; }
  .move_wrap li .about_video_wrap { width:100%; }
  .move_wrap li:nth-child(1) { width:60%; margin-bottom:initial; }
  .move_wrap li:nth-child(2) { width:35%; }
  .move_wrap li:nth-child(2) h3 { margin-bottom:24px; }
  .move_wrap h3 { font-size:36px; margin-bottom:initial; }
  .move_wrap p { font-size:16px; line-height:28px; }
  .message_wrap p { font-size:16px; line-height:28px; }
}

.video_box {width:100%; height:250px; border-radius: 36px;overflow:hidden; border:2px solid #000; }
.video_box iframe {width: 100%;height: 100%;border: none;display: block;}
@media (min-width: 768px) {
.video_box {width:622px; height:368px; margin:0 auto; display:block; }
.video_box:hover { opacity:0.7; }
}










/*2カラムのもの*/
.twocolumn_wrap { width:100%; display:block; }
.twocolumn_wrap li { width:100%; }
.twocolumn_wrap li:nth-child(1) { margin-bottom:48px; }
.twocolumn_wrap li a { width:100%; overflow:hidden;}
.twocolumn_wrap li a div { width:100%; border-radius:36px; border:2px solid #000; aspect-ratio: 4 / 3; overflow:hidden; margin-bottom:16px; }
.twocolumn_wrap li a div img { width:100%; height:100%; object-fit:cover; display: block;overflow:hidden; }

.twocolumn_wrap li a:hover .button_arrow { background:#F19CA6; transform: translate(2px, 2px); box-shadow: none;}
.twocolumn_wrap li a.yellow:hover  .button_arrow { background:#f1d5a0; transform: translate(2px, 2px); box-shadow: none;}
.twocolumn_wrap li a.orange:hover  .button_arrow { background:#EFA734;; transform: translate(2px, 2px); box-shadow: none;}
.twocolumn_wrap li a div { height:190px; }
@media screen and (min-width: 768px) {
    .twocolumn_wrap { display:flex; justify-content: space-between;}
    .twocolumn_wrap li a div { height:auto; }
    .twocolumn_wrap li { width:47%; overflow:hidden; }
    .twocolumn_wrap li:nth-child(1) { margin-bottom:initial; }
    .twocolumn_wrap li .button_arrow { margin-top:7px; margin-left:10px; }
  
}

  /* Safariの描画バグ回避 */
.image-wrapper { width:100%; border-radius: 20px;position: relative; display: inline-block; isolation: isolate;  }
.image-wrapper img {display: block; width: 100%; height: auto;will-change: transform; }
@media screen and (min-width: 768px) {
  .image-wrapper { height:320px; }
}


/*セイムを知る*/
.contents_wrap.seimu { width:95%; margin-left:5%; background:#EFA734; border-radius:40px 0 0 40px; padding:80px 0; margin-bottom:48px; }
.contents_wrap.seimu .contents { margin-top:0; margin-bottom:0; padding:0; }
@media screen and (min-width: 768px) {
    .contents_wrap.seimu { margin-bottom:72px; } 
    .contents_wrap.seimu .contents { padding:initial; }
}
.contents.nopadding.move { margin-bottom:80px; }


/*想いを知る*/
.contents_wrap.omoi { width:95%; margin-right:5%; background:#EAE8E8; border-radius:0 40px 40px 0; padding:80px 0;}

/*人を知る*/
.title_wrap { width:100%; display:flex; flex-wrap:wrap; margin-bottom:40px; }
.title_wrap div { width:100%; }
.title_wrap div:nth-child(1) h2 { width:100%; text-align:right; margin-bottom:40px; }
.title_wrap div:nth-child(1) h2 img { float:right; }
.contents_wrap.people { padding:80px 0;}
.contents_wrap.people .contents { padding:0; }
.contents_wrap.people2 { padding:80px 0;}
.contents_wrap.people2 .contents { padding:0; }
@media screen and (min-width: 768px) {
  .title_wrap { flex-direction:row-reverse;}
  .title_wrap div { width:50%; }
  .title_wrap img { height:70px; }
  .contents_wrap.people .copy_sub {  margin-top:50px; }

}


.copy_sub { font-size:18px; line-height:1.75;}


/*仕事を知る*/
.text_left { margin-bottom:0; }
.contents_wrap.job .contents { padding-top:80px; padding-bottom:0; }
.contents_wrap.job .contents h2.text_left { margin-bottom:0; }
@media screen and (min-width: 768px) {
  .text_left { margin-bottom:initial; }
  .contents_wrap.job { padding-bottom:48px; }
  .contents_wrap.job .contents h2.text_left { margin-bottom:initial; }
}
.slide_wrapper.swiper--two .swiper .swiper-wrapper .swiper-slide:nth-child(even) > div{ margin-top:0; }
.swiper--two .swiper-slide {transition: transform 0.5s ease;}
.swiper--two .swiper-slide-active {transform: scale(1.2); /* 中央だけ拡大 */z-index: 2;}


/*長い角丸画像とテキスト*/
.contents.kadomaruphoto { width:100%; display:block; margin:0;  }
.contents.kadomaruphoto .contents { padding-top:0; }
.contents.kadomaruphoto .title_wrap { width:90%; text-align:left; margin:24px 0 24px 5%; display:block; }
.contents.kadomaruphoto .title_wrap h3 { margin-bottom:24px; }
.contents.kadomaruphoto .title_wrap p { margin-bottom:24px; }

.contents.kadomaruphoto.reverse { width:100%; display:block; margin-bottom:80px;  padding:0; }
.contents.kadomaruphoto.reverse .title_wrap { width:90%; margin:24px 0 24px 5%; }
.contents.kadomaruphoto.reverse .title_wrap h3 { font-size:32px; margin-bottom:24px; }
.contents.kadomaruphoto.reverse .title_wrap p { margin-bottom:24px; }

.photo_kadomaru { width:95vw; height:250px; position:relative; left:0%; border-radius:0 125px 125px 0; border:2px solid #000; border-left:0; overflow:hidden; }
.photo_kadomaru img { width:100%; height:100%; object-fit:cover;}
.photo_kadomaru.right { width:100vw; height:250px; position:relative; right:-5%; left:initial; margin-left:initial; border-radius:125px 0 0 125px; border:2px solid #000; border-left:0; overflow:hidden; }
.photo_kadomaru.right img { width:100%; height:100%; object-fit:cover;}


@media screen and (min-width: 768px) {
  .contents.kadomaruphoto {  display:flex; align-items:center; padding:0; margin-bottom:64px;}
  .contents.kadomaruphoto .contents { padding-top:0; }
  .contents.kadomaruphoto.reverse { display:flex; align-items:center; flex-direction:row-reverse; }
  .contents.kadomaruphoto .title_wrap { width:30%; text-align:left; margin-left:48px; display:block; }
  .contents.kadomaruphoto.reverse .title_wrap { width:30%; margin-right:48px; }
  .contents.kadomaruphoto.reverse .title_wrap h3 { font-size:36px; }
  .photo_kadomaru { width:100vw; height:404px; position:relative; left:0%; right:50%; margin-left:-50vw;  border-radius:0 202px 202px 0; }
  .photo_kadomaru img { object-fit:cover; object-position: 80% 10%; /* 横：中央（50%）、縦：少し下（70%） */}
  .photo_kadomaru.right { width:100vw; height:404px; position:relative; right:0%; left:0%; margin-right:-50vw;  margin-left:initial; border-radius:202px 0 0 202px;  box-sizing: border-box;}
  .photo_kadomaru.right img { object-fit:cover; object-position: 80% 10%;}
}





.contents_wrap .contents .message_wrap { display: flex; align-items: flex-start; margin: 0 0 80px 0; flex-wrap:wrap; flex-direction: column-reverse;}
.contents_wrap .contents .message_wrap ul { display: flex; flex-direction: column; gap: 24px; margin: 0 0 0 0; }
.contents_wrap .contents .message_wrap ul li { width:100%; }
.contents_wrap .contents .message_wrap ul .interview_question { width:100%; padding:0; margin: 0 0 12px 0; text-align:left; }
.contents_wrap .contents .message_wrap .interview_side_img { width: calc(50vw + 50% + 40px); height:250px; object-fit: cover; border-radius:125px 0 0 125px; margin-bottom:16px;   overflow: hidden; }
.contents_wrap .contents .message_wrap .interview_side_img img { width:100%; object-fit: cover;}
.contents_wrap .contents .message_wrap .interview_side_img.deta  { width: calc(50vw + 50% + 40px); height:170px; object-fit: cover; border-radius:85px 0 0 85px; margin-bottom:20px; }
.contents_wrap .contents .message_wrap ul .interview_question h3 { font-size:22px; }
.contents_wrap .contents .message_wrap.reverse { display:flex; flex-direction:column; margin-bottom:80px; }
.contents_wrap .contents .message_wrap.reverse ul { width:110%;  margin: 0; }
.contents_wrap .contents .message_wrap.reverse ul .interview_question { margin: 0 0 0 0; text-align: left;}
.contents_wrap .contents .message_wrap.reverse ul .interview_question h3 { font-size:22px; }
.contents_wrap .contents .message_wrap.reverse .interview_side_img { width:110%; height:250px; border-radius:0 125px 125px 0; margin-left:-10%; margin-bottom:16px;  border-left:0; object-position: top right; 
border:2px solid #000; }
.contents_wrap .contents .message_wrap.reverse ul .interview_question p { font-weight:500; }
@media (min-width: 768px) {
  .contents_wrap .contents { width:1036px; overflow:visible; }
  .contents_wrap .contents .message_wrap { display: flex; align-items: flex-start; gap: 60px; margin: 0 calc(50% - 50vw - 60px) 80px 0; flex-wrap:initial; flex-direction: initial;}
  .contents_wrap .contents .message_wrap ul { flex: 5 1 0; width: 0px; gap: 48px; margin: 0;  }
  .contents_wrap .contents .message_wrap ul .interview_question { width:initial; margin: 0 0 24px 0; text-align: left;}
  .contents_wrap .contents .message_wrap .interview_side_img { flex: 10 1 0; width: 0px; height:404px; border-radius:202px 0 0 202px; border-right: none; margin-bottom:initial; }
  .contents_wrap .contents .message_wrap .interview_side_img.deta { flex: 10 1 0; width: 0px; height:404px; border-radius:202px 0 0 202px; border-right: none; margin-bottom:initial; }
  
  
  .contents_wrap .contents .message_wrap.reverse {display: flex; flex-direction: initial;  align-items: flex-start;gap: 60px;margin: 0 calc(50% - 50vw) ;  margin-bottom:64px; }
  .contents_wrap .contents .message_wrap.reverse ul { flex: 5 1 0; width: 0px; gap: 48px; margin: 0; }
  .contents_wrap .contents .message_wrap.reverse ul .interview_question { margin: 0 0 24px 0; text-align: left;}
  .contents_wrap .contents .message_wrap.reverse .interview_side_img { flex: 10 1 0; width: 0px; height:404px; margin-left:initial; border-radius:0 202px 202px 0; border-left:0; object-position: top right;  }
  
  .interview_question h3 { font-size:30px; margin-bottom:16px;}
  
  .contents_wrap .contents .message_wrap h3 { margin-bottom:24px; }
  .contents_wrap .contents .message_wrap p  { margin-bottom:56px; }
  .contents_wrap .contents .message_wrap.reverse ul .interview_question h3 { font-size:36px; }
  .contents_wrap .contents .message_wrap ul .interview_question h3 { font-size:36px; }
  .border_radius_xl {  border-radius:202px 0 0 202px; }


}
@media (min-width:1130px) {
  .interview_question h3 { font-size:36px; margin-bottom:16px;}
}






/*家づくりストーリー*/
.button_long {position: relative; overflow: hidden;width: 90%;height: 270px;border-radius: 135px;border: 2px solid #000;display: block;margin: 40px auto 80px auto;text-align: center;transition: transform 0.3s ease, box-shadow 0.3s ease;}
.button_long::before {content: "";position: absolute;top: 0; left: 0;width: 100%; height: 100%;background: linear-gradient(rgba(164, 211, 172, 0.75), rgba(164, 211, 172, 0.75)),url(../img/photo_button_fukushi.jpg) no-repeat center center;background-size: cover, cover;background-size: cover;transition: transform 0.5s ease;z-index: 0;}
.button_long:hover::before {transform: scale(1.15);}
.button_long > * {position: relative;z-index: 1; /* テキスト等を擬似要素の上に表示 */}
.button_long strong { margin-bottom:16px; display:block; margin-top:40px; }
.button_long strong .button_long_title {  margin:0 auto 0 auto; }
.button_long p { font-weight:500; }
@media screen and (min-width: 768px) {
  .button_long { width:760px; height:260px; border-radius:130px; background-position: left; background-position: 0 0; padding-top:48px; margin-top:80px; margin-bottom:initial; }
  .button_long strong { margin-top:0px; }
  .button_long .button_arrow.long { margin:24px auto 0 auto; line-height:28px; }
  .button_long .button_arrow.long .arrow { width:28px; }
  .button_long strong .button_long_title { width:208px; margin:0 auto; }
  .button_long p { font-size:18px; line-height:31.5px; width:auto; margin:0 auto; display:inline-block; text-align:left; }
}


/*制度*/
  .button_long.seido::before {content: "";position: absolute;top: 0; left: 0;width: 100%; height: 100%;background: linear-gradient(rgba(174, 207, 237, 0.75), rgba(174, 207, 237, 0.75)),url(../img/photo_button_culture.jpg) no-repeat center center;background-size: cover, cover;background-size: cover;transition: transform 0.5s ease;z-index: 0;}





/*View moreボタン*/
.button_arrow.long { width:160px; display:flex; align-items:center;  justify-content: center; padding-left:20px; margin:16px auto 0 auto; }
@media screen and (min-width: 768px) {
  .button_arrow.long { margin:0; font-size:14px; line-height:2em; }
}
.button_arrow.long.blue:hover { background:#AECFED; } 
.button_arrow.long.yellow:hover { background:#f1d5a0; } 
.button_arrow.long.orange:hover { background:#EFA734; } 


/*働く環境*/
.contents_wrap.culture .contents { padding-bottom:0; }
@media screen and (max-width: 768px) {
  .contents_wrap.culture .contents { padding-top:80px; }
}

/*採用情報*/
.contents_wrap.recruit { overflow:hidden; margin-top:80px; position:relative;padding:80px 0;  }
.contents_wrap.recruit .contents{ position:relative; padding-top:80px; }
.contents_wrap.recruit .text_information { position:absolute; right:0; }
.link_recruit { width:95%; display:flex; position:relative; z-index:1; margin:0 auto; }
.link_recruit li { width:50%; text-align:center; }
.link_recruit li a { width:100%; margin-bottom:80px; }
.link_recruit li .hov_img_frame_wrap { width:45vw; height:45vw; border-radius:50%; border:2px solid #000; margin:0 auto 24px auto; display:block; overflow:hidden;}
.link_recruit li .hov_img_frame_wrap img.link_recruit_photo { width:100%; object-fit: cover;}
@media screen and (min-width: 768px) {
    .contents_wrap.recruit { margin-top:initial; padding-top:80px; }
    .contents_wrap.recruit .contents { margin-top:initial; padding-top:initial; }
    .link_recruit { width:90%; display:flex; flex-wrap:wrap; justify-content:space-between; margin:0 auto; }
    .link_recruit li { width:300px; margin-bottom:0; margin-left:0; }
    .link_recruit li:nth-child(1) { margin-bottom:0; }
    .link_recruit li .hov_img_frame_wrap  { width:300px; height:300px; }
    .link_recruit li .text-l { font-size:28px; }
}
.link_recruit li .text-l { width:100%; font-weight:bold; display:flex; align-items: center; text-align:center;justify-content: center; }
.link_recruit li .text-l .button_arrow { margin-left:10px; }
@media screen and (min-width:1080px) {
    .contents_wrap.recruit { height:737px; position:relative; }
    .link_recruit { width:910px; }
    .link_recruit li { width:400px;}
    .link_recruit li .hov_img_frame_wrap  { width:400px; height:400px; }  
}






/*新着情報*/
.contents_wrap.news .contents { padding:80px 0;}
.news_wrap { display:flex; flex-wrap:wrap; border-top:1px solid #000; padding-top:24px; }
.news_wrap div h3 { font-size:26px; margin-bottom:16px; font-weight:bold; }
.news_wrap .news { display:flex; flex-wrap:wrap; border-bottom:1px solid #000; margin-bottom:16px; padding-bottom:20px; }
.news_wrap .news dt { width:100%; font-size:15px; }
.news_wrap .news dd { width:100%; font-size:14px; line-height:1.85em; }
.news_wrap .news dd a:hover { opacity:0.7; }
.news_wrap .news dt .tag { border:1px solid #000; padding:2px 5px; margin-left:10px; }
.news_wrap div:nth-child(1){ width:100%; order:1; }
.news_wrap.border { border-bottom:1px solid #000; } 
.news_wrap div .button_arrow.long { margin:40px auto 0 auto; }
@media screen and (min-width: 768px) {
    .contents_wrap.news .contents { padding-bottom:initial;}
    .news_wrap { padding-top:0; }
    .news_wrap div h3 { margin-bottom:initial; }
    .news_wrap .news { align-items:center; padding:20px 0; margin-bottom:0; }
    .news_wrap .news dt { width:20%; }
    .news_wrap .news dd { width:80%; font-size:15px; margin-bottom:initial; }
    .news_wrap.border { border-bottom:1px solid #000; }
    .news_wrap { align-items:center;}

}


/*採用を知るのテキストアニメーション*/

.contents_wrap.recruit {position: relative;}
.contents_wrap.recruit .text_wrapper { width:100%; display:flex; transform: rotate(90deg);position: absolute;right: -47%; }
.contents_wrap.recruit .text_wrapper.reverse { width:100%; display:flex; transform: rotate(90deg);position: absolute; right:-42%; }
.contents_wrap.recruit .loop_text {flex: 0 0 auto;white-space: nowrap; font-size:18px;padding-left: 20px;color: #fff;font-weight: bold;}
@media screen and (min-width: 768px) {
  .contents_wrap.recruit .text_wrapper { width:100%; right: -47%;  overflow: hidden;}
  .contents_wrap.recruit .text_wrapper.reverse {right: -43.5%;  overflow: hidden;}
  .contents_wrap.recruit .loop_text { font-size:40px; }
}
.contents_wrap.recruit .loop_text:nth-child(odd) {animation: loop 800s -400s linear infinite;}
.contents_wrap.recruit .text_wrapper.reverse .loop_text:nth-child(odd) {animation: loop-reverse 800s -400s linear infinite;}
@keyframes loop {
  0% { transform: translateX(0); }
  100% { transform: translateX(-100%); }
}
@keyframes loop-reverse {
  0% { transform: translateX(-100%); }
  100% { transform: translateX(0); }
}







/*エントリー*/
.contents_wrap.entry h2 { margin-bottom:30px; display:block; }
.contents_wrap.entry h2 img { height:70px; }
.contents_wrap.entry .text_center.bold { font-size:22px; line-height:40px; }
.contents_wrap.entry .contents { padding-top:96px; }
.entry_button { display:flex; flex-wrap:wrap; margin-top:48px; margin-bottom:40px; }
.entry_button li { width:100%; }
.entry_button li:nth-child(1) { margin-bottom:40px; }
.entry_button li .freshentry { width:100%; height:136px; border-radius:77px; background:#EFA734; border:7px solid #EFA734; display:flex; flex-wrap:wrap; }
.entry_button li .freshentry span.entry { width:100%; text-align:center; font-size:32px; font-weight:bold; margin:30px 0 0 0;}
.entry_button li .button_arrow { margin:0 auto; display:block; }
.entry_button li .freshentry:hover { background:#fff; }
.entry_button li .freshentry:hover .button_arrow {  transform: translate(2px, 2px); box-shadow: none; background:#EFA734; }
@media screen and (min-width: 768px) {
  .contents_wrap.entry .contents { padding-top:initial; }
  .contents_wrap.entry { padding-top:96px;}
  .contents_wrap.entry .contents { padding-top:0; }
  .contents_wrap.entry h2 { margin-bottom:40px; }
  .contents_wrap.entry h2 img { height:70px; }
  .contents_wrap.entry .text_center.bold { font-size:32px; }
  .entry_button { justify-content:space-between; margin-bottom:initial; }
  .entry_button li { width:45%; }
  .entry_button li .freshentry span.entry { font-size:36px; margin-top:25px; }

}
@media screen and (min-width:1080px) {
    .entry_button li .freshentry { width:494px; }
}



/*事業紹介、会社概要*/
.banner_list ul li { margin: 0 0 40px 0; }
.banner_list ul li:last-child { margin: 0 0 0 0; }
.banner_list ul li .about_img_frame { aspect-ratio: 11 / 7; width: 100%; overflow: hidden; }
.banner_list ul li .about_img { width: 100%; }
.banner_list ul li .li_text { display: flex; align-items: center; padding: 0 4px 0 0; margin-top:10px; }
.banner_list ul li .li_text .button_arrow { margin: 0 0 0 20px; }
.banner_list ul li a:hover .button_arrow { transform: translate(2px, 2px); box-shadow: none;}
@media (min-width: 768px) {
  .banner_list { padding:0 0 80px 0; }
  .banner_list ul { display: flex; width: 100%; }
  .banner_list ul li { flex: 1; margin: 0 24px 0 0; }
  .banner_list ul li:last-child { margin: 0 0 0 0; }
}

/*スライド*/
@media (max-width: 768px) {
  .slide_wrapper .swiper .swiper-wrapper .swiper-slide { width:320px; display:block; }
  .swiper-wrapper { height:75vh; }
  .slide_wrapper .swiper .swiper-wrapper .swiper-slide div.staff_info strong { font-size:22px; }
  .slide_wrapper .swiper .swiper-wrapper .swiper-slide div.staff_info span { font-size:18px; }
}
@media (min-width: 768px) {
.slide_wrapper .swiper .swiper-wrapper .swiper-slide div.staff_info span { font-size:20px; margin-right:10px; }
.slide_wrapper .swiper .swiper-wrapper .swiper-slide div.staff_info small { font-size:16px; }
}



/*英字のアニメーション*/
.loop-container {
  overflow: hidden;
  white-space: nowrap;
  width: 100%; /* 必要に応じて調整 */
}

.loop-track {
  display: inline-flex;
  animation: loop-scroll_english 30s linear infinite;
}

.loop-track img {
  flex-shrink: 0;
  display: block;
  height:120px; 
  margin-right:80px; 
}

@keyframes loop-scroll_english {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}

@media (max-width: 768px) {
  .loop-track img {
    height:77px; 
  }
}




.custom-slider {width: 100%;height: 50vw;overflow: hidden; margin: 0 auto;padding: 60px 0;position: relative;}
@media (min-width: 768px) {
  .custom-slider { height: 32vw; }
  .custom-slide:hover { opacity:0.7; }
}
.custom-slider-track {display: flex;align-items: center;transition: transform 0.5s ease;flex-wrap: nowrap;}
.custom-slide {flex: 0 0 15vw; margin: 0 1vw;position: relative;display: flex;flex-direction: column;align-items: center; transition: transform 0.5s ease;}
.custom-slide a { width:100%; height:100%; }
.custom-slide a img { width: 100%;border-radius: 20px;border: 2px solid #000; /*transition: all 0.5s ease;*/}
.custom-slide a span { width: 100%; margin-top: 8px;font-size: 1rem;text-align: center; display:block; }
.custom-slide.active {flex: 0 0 30vw;z-index: 1;  transform: none;}
.custom-slide.active img {width: 90%;border-radius: 30px;border: 2px solid #000;}
.custom-slide.active span { width:90%; display:block; text-align:center; }
.custom-slide img {width:90%;border-radius:30px;border: 2px solid #000; /*transition: transform 0.5s ease;*/}


@media (max-width: 768px) {
  .custom-slider {height: 90vw; padding: 0;}
  .custom-slide {flex: 0 0 25vw; margin: 0 1vw;transition: transform 0.3s ease;}
  .custom-slide .photo_wrap { width:100%; height:100%; }
  .custom-slide span {display: none;}
  .custom-slide.active {flex: 0 0 60vw;}
  .custom-slide.active span { display: block;}
}

.slider-arrow {position: absolute;top: 45%;transform: translateY(-50%);width: 40px;z-index: 10;cursor: pointer;}
.fixed-left { left: 30%; }
.fixed-right { right: 30%; }

@media (min-width: 768px) {
  .slider-arrow { width: 84px; }
}


.modal {
  display: none;
  position: fixed;
  z-index: 999;
  top: 0; left: 0;
  width: 100%; height: 100%;
  background-color: rgba(0,0,0,0.8);
  justify-content: center;
  align-items: center;
}

.modal-content {
  width: 90%;
  max-width: 800px;
  aspect-ratio: 16 / 9;
  overflow: hidden;
}
.modal-content iframe {
  width: 100%;
 height: 50vh;

  border: none;
  display: block;
}

.modal-close {
  position: absolute; top: 10px; right: 20px; color: #fff;
  font-size: 32px; cursor: pointer; z-index: 1000;
}








