/*********************

#companies

********************/

.joinus_box01{
  margin-bottom: 100px;
}

.joinus_innrer_box01{
  padding-top: 100px;
  margin-bottom: 40px;
  background: linear-gradient(to bottom, #fcb134 0%, #fcb134 70%, #ffffff 30%, #ffffff 100%);
}

.joinus_innrer_box01 ul{
  margin-bottom: 70px;
  display: flex;
}

.joinus_innrer_box01 ul li {
  font-size: 18px;
  color: #512701;
}
.joinus_innrer_box01 ul li:first-child{
  font-size: 20px;
  margin-right: 50px;
}

.joinus_innrer_box01 img{
  border-radius: 16px;
  display: block;
}

.joinus_box01>img{
  margin: 0 auto;
  border-radius: 16px;
}

.joinus_innrer_box02 dl:last-child{
  margin-bottom: 0;
}

.joinus_innrer_box02 .shoji_inner {
  border-top: 1px solid #dadadb;
  border-radius: 0;
  padding-top: 50px;
  margin-top: 50px;
}



@media screen and (max-width: 1400px) {
}

@media screen and (max-width: 1250px) {

}

@media screen and (max-width: 1000px) {

}

@media screen and (max-width: 700px) {
  .joinus_innrer_box01{
    padding-top: 60px;
    background: linear-gradient(to bottom, #fcb134 0%, #fcb134 80%, #ffffff 20%, #ffffff 100%);
  }
  .joinus_innrer_box01 ul {
    display: block;
    text-align: left;
    margin-bottom: 40px;
  }
  .joinus_innrer_box01 ul li:first-child {
    font-size: 20px;
    margin-bottom: 20px;
  }
  .joinus_innrer_box01 img {
    height: 240px;
    object-fit: cover;
  }
}


/*********************

.joinus_box02

********************/

.joinus_box02{
  background: url(../img/joinus/pattern_bg.jpg) bottom left repeat-x,linear-gradient(to bottom, #ffffff 0%, #ffffff 20%, #fffde8 20%, #fffde8 100%);
  padding-bottom: 210px;
}

.joinus_box02>div{
  display: flex;
  margin-bottom: 60px;
}

.joinus_box02>div>div{
  width: 40%;
  margin-left: 40px;
}

.joinus_box02>div>img {
  width: 482px;
  height: 450px;
  border-radius: 16px;
  margin: 0 40px 0 auto;
}

.joinus_box02>div h3 {
  font-size: 24px;
  margin-bottom: 60px;
  color: #512701;
}

.joinus_box02 ul li{
  padding: 20px 60px 20px 20px;
  box-shadow: 0px 0px 16px 0px rgba(0, 0, 0, 0.35);
  margin-bottom: 20px;
  background: #fff;
  display: flex;
}
.joinus_box02 ul li img{
  width: 108px;
  height: 108px;
}

.joinus_box02 ul p{
  margin: 0 0 10px 30px;
  color: #512701;
  font-size: 18px;
}

.joinus_box02 ul li:first-child p{margin-top: 30px;}

.joinus_box02 ul p::before{
  content: "";
  background: url(../img/joinus/maru02.png)top center no-repeat;
  background-size: auto;
  background-size: contain;
  width: 10px;
  height: 10px;
  display: inline-block;
  margin-right: 10px;
  vertical-align: 2px;
}


@media screen and (max-width: 1150px) {
  iframe{width: 100%;}
  .joinus_box02>div>img {
    width: 402px;
    height: 420px;
    object-fit: cover;
  }
}

@media screen and (max-width: 1000px) {

  .joinus_box02{padding-bottom: 150px;}

  .joinus_box02>div h3 {
    margin-bottom: 30px;
    text-align: left;
  }

  .joinus_box02>div>img {
    width: 342px;
    height: 360px;
    margin: 0 0 0 auto;
  }

  .joinus_box02>div>div{
    width: 45%;
    margin-left: 0;
  }

}

@media screen and (max-width: 700px) {

  .joinus_box02{
    padding-bottom: 120px;
    background: url(../img/joinus/pattern_bg.jpg) bottom left repeat-x, linear-gradient(to bottom, #ffffff 0%, #ffffff 10%, #fffde8 10%, #fffde8 100%);
  }

  .joinus_box02>div {
    display:block;
    margin-bottom: 40px;
  }
  .joinus_box02>div>div {
    width: 100%;
    margin: 0 auto 30px;
  }

  .joinus_box02>div h3 {
    font-size: 20px;
    margin-bottom: 40px;
  }

  .joinus_box02>div>img {
    width: 100%;
    height: 240px;
    margin-left: initial;
  }
  .joinus_box02>div>.shoji_box02_img{
    object-position: top;
  }

  .joinus_box02 ul li {
    display: block;
    padding: 20px 18px;
  }
  .joinus_box02 ul li div{ margin-top: 12px; }
  .joinus_box02 ul p { margin: 0 0 8px 0; }
  .joinus_box02 ul li img{
    display: block;
    margin: 0 auto;
  }

  iframe {
    height: 220px;
  }
}

/* Navigation fixes for text wrapping and spacing issues */
#header_mv ul, #header_link ul {
  margin-left: 60px !important;
  padding-left: 20px !important;
}

/* Ultra-specific targeting for dynamically loaded content */
[data-template="header_mv"] li.mv_ttl.eng,
#header_mv ul li.mv_ttl.eng,
#header_mv li.mv_ttl.eng,
li.mv_ttl.eng,
.mv_ttl.eng {
  white-space: nowrap !important;
  width: auto !important;
  min-width: 200px !important;
  max-width: none !important;
  overflow: visible !important;
  word-break: keep-all !important;
  word-wrap: normal !important;
  text-overflow: visible !important;
  flex-shrink: 0 !important;
  display: inline-block !important;
  vertical-align: top !important;
}

/* Ensure template container doesn't constrain width */
[data-template="header_mv"],
[data-template="header_mv"] ul {
  width: auto !important;
  min-width: 300px !important;
}

/* Additional rule to handle post-load styling */
body li.mv_ttl.eng {
  white-space: nowrap !important;
  display: inline-block !important;
  width: auto !important;
}

/* Force re-render after template load */
[data-template="header_mv"]:not(:empty) li.mv_ttl.eng {
  white-space: nowrap !important;
  width: auto !important;
  min-width: max-content !important;
}
