 body{
  width: 100%;
  margin: 0 auto;
  position: relative;
}
.trans{
  animation-name: fadein;
  animation-duration: 1s; 
  animation-delay: .5s;
  animation-fill-mode: forwards;
  position: relative;
  opacity: 0; 
}
@keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

/*common*/
#main_contents{
  position: relative;
}
.inner{
  width: 90%;
  margin: 0 auto;
  max-width: 860px;
  position: relative;
}
.flex{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
img,
video{
  width: 100%;
}
.pc_none{
  display: none;
}
.sp_none{
  display: block;
}
/*common*/
.ttl01{
  font-size: 25px;
  font-weight: 500;
  letter-spacing: 0.1em;
}
.ttl02{
  font-size: 21px;
  font-weight: 500;
  letter-spacing: 0.1em;
}
.txt01{
  font-size: 14px;
  letter-spacing: 0.1em;
  text-align: justify;
}
.txt02{
  font-size: 17.5px;
  letter-spacing: 0.1em;
  text-align: justify;
}
.sizeS{
  font-size: 0.9em;
}
.anchor{
 display: block;
 padding-top: 100px;
 margin-top: -100px; 
}
/*mv*/
#mv{
  padding-bottom: 100px;
}
#mv .inner{
  max-width: 940px ;
}
.main_ttl{
  position: absolute;
  left: 0;
  top: 0;
  width: 110px;
  z-index: 10;
}
#mv .ttl01{
  white-space: nowrap;
  position: relative;
  z-index: 3;
  letter-spacing: 0.35em;
  margin-bottom: 30px;
}
#mv .outer{
  position: relative;
  margin-bottom: 15px;
}

.box01{
  padding-top: 160px;
  justify-content: flex-start;
}
.box01 .box_l{
  width: 50%;
}
.box01 .box_r{
  width: 25%;
}
.mv_slide{
  margin-bottom: 0!important;
  position: relative;
}
.mv_slide .slick-dots{
    width: 10px;
    right: -17px;
    top: 0;
}
.box01 .box_r .mv_slide.slide02,
.box03 .mv_slide.slide03{
  display: none;
}
.mv_slide .slick-dots{
  display: flex;
  flex-direction: column;
}
.mv_slide.slide02 .slick-dots,
.mv_slide.slide04 .slick-dots{
  right: auto;
  left: -17px;
}
.mv_slide .slick-dots li{
  width: 10px;
  height: 10px;
  margin: 0;
  margin-bottom: 7px;
}
.mv_slide .slick-dots li button{
  width: 10px;
  height: 10px;
}
.mv_slide .slick-dots li button:before{
  background-color: #dcdddd;
  content: '';
  width: 10px;
  height: 10px;
  opacity: 1;
}
/*.mv_slide::before{
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  background-size: cover;
  background-position: center center;
  mix-blend-mode: multiply;
  z-index: 1;
}
.mv_slide.slide01::before{
  background-color: #00913a;
}

.mv_slide.slide03::before{
  background-color: #2eb6aa;
}*/
.mv_slide.slide01 .slick-dots li.slick-active button:before{
  background-color: #00913a;
}
.mv_slide.slide02 .slick-dots li.slick-active button:before{
  background-color: #8fc31f;
}
.mv_slide.slide03 .slick-dots li.slick-active button:before{
  background-color: #c6162c;
}
.mv_slide.slide04 .slick-dots li.slick-active button:before{
  background-color: #2eb6aa;
}
.mv_slide::before {
  content: '';
  position: absolute;
  z-index: 2;
    width: 100%;
    height: 100%; /* 画像の高さ */
    background-repeat: repeat-x;
    background-size: auto 100%; /* 画像の高さ */
}
@keyframes loop {
    from {
        background-position: 0 0;
    }
    to {
        background-position: 2000px 0; /* 画像のマイナス幅 */
    }
}
@keyframes loop2 {
    from {
        background-position: 0 0;
    }
    to {
        background-position: 0 -2000px; /* 画像のマイナス幅 */
    }
}
@keyframes loop3 {
    from {
        background-position: 0 0;
    }
    to {
        background-position: 0 2000px; /* 画像のマイナス幅 */
    }
}
.mv_slide.slide01::before{
    background-image: url(../img/slide01_bg.png);
    background-repeat: repeat-y;
    animation: loop3 40s linear infinite;
}
.mv_slide.slide02::before{
    animation: loop 50s linear infinite;
    background-image: url(../img/slide02_bg.png);
}
.mv_slide.slide03::before{
    background-repeat: repeat-y;
    background-image: url(../img/slide03_bg.png);
    animation: loop2 45s linear infinite;
}
.mv_slide.slide04::before{
    background-repeat: repeat-y;
    background-image: url(../img/slide04_bg.png);
    animation: loop2 45s linear infinite;
}

/*@keyframes loop {
    0% {
        transform: translateX(100%);
    }
    to {
        transform: translateX(-100%);
    }
}*/
/*.box01 .box_r, .box02 .box_in, .box03 .box_l{
  position: relative;
  overflow: hidden;
}*/
.box02{
}
.box02 .box_in{
  width: 50%;
  display: flex;
  justify-content: flex-end;
}
.box02 .box_in .mv_slide{
  width: 50%;
}
.box03{
  position: relative;
}
.box03 .box_l{
  width: 25%;
}
.box03 .box_r{
  width: 75%;
  padding-top: 30px;
  padding-left: 60px;
  position: relative;
  display: flex;
  align-items: flex-end;
  flex-wrap: wrap;
}
.box03 .box_r .head02{
  margin-bottom: 20px;
}
.head02{
  width: fit-content;
}
#top .head02.yoko{
  padding-bottom: 5px;  
  border-bottom: 5px solid #f8b300;
}
#top .head02.yoko span{
  display: inline-block;
  padding-bottom: 5px;  
  border-bottom: 5px solid #f8b300;
  margin-bottom: 40px;
}
.head02.yoko img{
  width: auto;
  height: 80px;
}
.box03 .box_r .head02.yoko img{
  height: 50px;
}
#top .head02.tate{
  padding-left: 10px;  
  border-left: 5px solid #f8b300;
}
#top03 .head02.tate{
  margin: 0 0 0 auto;
}
.head02.tate img{
  width: 80px;
  height: auto;
}
.news_list01{
  width: 100%;
}
.news_list01 li{
  font-size: 14px;
  border-top: 1px solid #000;
}
.news_list01 li:last-child{
  border-bottom: 1px solid #000;
}
.news_list01 li a{
  padding: 10px 5px;
  display: flex;
  line-height: 1;
  justify-content: flex-start;
  transition: all .3s;
}
.news_list01 li a:hover{
  padding-left: 10px;
  color: #f8b300;
}
.news_list01 li span{
  display: inline-block;
  line-height: 1.3;
  transition: all .3s;
}
.news_list01 li:hover span{
  color: #f8b300;
}
.news_list01 li .date{
  width: 100px;
}
.news_list01 li .ttl{
  width: calc(100% - 100px);
}
.btn01{
  display: flex;
  padding: 0 10px 5px 12px;
  background-color: #f8b300;
  color: #f7f8f8;
  align-items: center;
  justify-content: center;
  width: fit-content;
  line-height: 1;
  transition: all .3s;
  letter-spacing: 0.2em;
  border: 1px solid #f8b300;
  z-index: 1;
}
.btn01:hover{
  color: #f8b300;
  background-color: #fff;
}
.box03 .btn01{
  position: absolute;
  right: 0;
  bottom: -35px;
}
#top01 .inner{
  max-width: 940px;
}
#top01 .head02{
  margin-bottom: 30px;
}
.map_img{
  width: 95%;
  max-width: 685px;
  margin: 45px auto 75px;
  position: relative;
}
.link{
  position: absolute;
  background-color: transparent;
  transition: all .3s;
}
.link:hover{
  background-color: rgba(248, 179, 0, .3);
}
.link01{
  width: 34%;
  height: 22%;
  left: 2%;
  top: 22%;
}
.link02{
  width: 33%;
  height: 22%;
  right: 7%;
  top: 39%;
}
.link03{
  width: 22%;
  height: 22%;
  left: 27%;
  bottom: 1%;
}
.link04{
  width: 41%;
  height: 23%;
  right: -2%;
  bottom: 0;
}
.box04 .box_l{
  width: 150px;
}
.box04 .box_r{
  width: calc(100% - 150px);
}
#top02{
  padding-bottom: 60px;
}
.feature_list{
  margin-bottom: 25px;
}
.feature_list li{
  position: relative;
  width: 50%;
  padding: 30px 0;
  text-align: center;
}
.feature_list li::before{
  content: '';
  height: 1px;
  width: calc(100% - 15px);
  position: absolute;
  bottom: 0;  
  background-color: #231815;
}
.feature_list li:nth-child(odd)::before{
  left: 0;
}
.feature_list li:nth-child(even)::before{
  right: 0;  
}
.feature_list li:nth-child(odd)::after{
  content: '';
  position: absolute;
  width: 1px;
  height: calc(100% - 30px);
  right: 0;
  top: 15px;
  background-color: #231815;
}
.feature_list li .icon{
  width: 90px;
  height: 90px;
  background-repeat: no-repeat;
  background-size: contain;  
  background-position: center center;
  margin: 0 auto 25px;
}
.feature_list li:nth-child(1) .icon{
  background-image: url(../img/img_feature01.svg);
}
.feature_list li:nth-child(2) .icon{
  background-image: url(../img/img_feature02.svg);
}
.feature_list li:nth-child(3) .icon{
  background-image: url(../img/img_feature03.svg);
}
.feature_list li:nth-child(4) .icon{
  background-image: url(../img/img_feature04.svg);
}
.feature_list li:nth-child(5) .icon{
  background-image: url(../img/img_feature05.svg);
}
.feature_list li:nth-child(6) .icon{
  background-image: url(../img/img_feature06.svg);
}
.feature_list li .txt02,
.challenge_box .txt02{
  letter-spacing: 0.1em;
  font-weight: 600;
  margin-bottom: 20px;
  text-align: center;
}
.feature_list li .txt02 span{
  font-size: 22px;
}
.feature_list li .txt01{
  letter-spacing: 0;
  text-align: center;
}
.feature_list li .line{
  position: absolute;
  width: calc(100% - 15px);
  height: 1px;
  background-color: #231815;
  top: 0;
}
.feature_list li:nth-child(odd) .line{
  left: 0;
}
.feature_list li:nth-child(even) .line{
  right: 0;
}
/*policy*/
.policy_mv{
  width: 100%;
  height: auto;
  padding-top: 37.5%;
  background-image: url(../img/img_policy.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}
#policy_mv .head02{
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 0;
}
.g_bg{
  background-color: #f7f8f8;
}
#policy .g_bg{
  padding: 50px 0 55px;
}
#policy .box04{
  align-items: flex-end;
}
#policy .box04 .box_l .img{
  width: 105px;
}
#policy .box04 .ttl01{
  margin-bottom: 25px;
}
/*collaboration*/
#top03{
  padding: 100px 0;
  background-color: #f7f8f8;
}
.box04.rv .box_l{
  order: 2;
}
#top03 .box04.rv .box_l{
  text-align: right;
}
.box04.rv .box_r{
  order: 1;
}
#top03 .box04.rv .ttl01{
  margin-bottom: 45px;
}
.challenge_box{
  width: 100%;
  border-top: 1px solid #231815;
  border-bottom: 1px solid #231815;
  padding: 30px 0;
  text-align: center;
}
.challenge_box .txt01{
  text-align: center;
}
.challenge_list .img,
.challenge_box .img{
  max-width: 215px;
  margin: 0 auto 30px;
}
.feature_list.challenge_list li{
  padding: 30px 10px;
}

/*recruit*/
#top04{
  padding-bottom: 85px;
  padding-top: 70px;
}
#top04 .inner{
  max-width: 870px;
}
#top04 .head02{
  text-align: center;
  margin: 0 auto 45px;
}
#top04 .txt01.intro{
  text-align: center;
  margin-bottom: 50px;
}
.recruit_list01{
  max-width: 690px;
  margin: 0 auto;
}
.recruit_list01 li{
  width: calc((100% - 55px) / 2);
  margin-bottom: 45px;
}
.recruit_list01 li:nth-child(3),
.recruit_list01 li:nth-child(4){
  margin-bottom: 30px;
}
.recruit_list01 .img{
  margin-bottom: 35px;
}
.recruit_list01 .name{
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.2em;
  margin-bottom: 30px;
}
.recruit_list01 .name span{
  font-weight: 500;
  display: block;
  letter-spacing: 0.05em;
  margin-top: 5px;
}
.recruit_list01 .btn01{
  margin: 0 auto;
}
/*team*/
#top05{
  background-image: url(../img/team_bg.jpg);
  background-size: cover;
  background-position: top center;
  padding-top: 85px;
}
#top05 .head02.yoko{
  position: absolute;
  right: 0;
  top: 0;
}
#top05 .img{
  padding-top: 60px;
}
#top05 .head02.yoko{
  text-align: right;
}
#top05 .head02.yoko img{
}
/*about*/
#top06{
  padding: 85px 0 55px;
}
#top06 .head02{
  margin-bottom: 40px;
}
.about_list01 dt,
.about_list01 dd{
  border-bottom: 1px solid #000;
  padding: 15px 0;
  font-size: 14px;
}
.about_list01 dt{
  width: 120px;
  text-align-last: justify;
  position: relative;
  padding-right: 25px;
}
.about_list01 dt::after{
  content: '：';
  right: 5px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.about_list01 dd{
  letter-spacing: 0.05em;
  width: calc(100% - 120px);
}
/*contact*/
#top07{
  padding-bottom: 85px;
}
.head03{
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 0.1em;
  margin-bottom: 10px;
  width: fit-content;
}
.head03 span{
  font-size: 24px;
  display: block;
  margin-top: 10px;
  border-bottom: 3px solid #f8b300;
}
.check_list01{
  margin-bottom: 35px;
}
.check_list01 li{
  position: relative;
  padding-left: 25px;
  letter-spacing: 0.05em;
  font-size: 16px;
  margin-bottom: 10px;
}
.check_list01 li:last-child{
  margin-bottom: 0;
}
.check_list01 li::before{
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 15px;
  height: 15px;
  background-image: url(../icon/icon_check.svg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
}
#top07 .ttl02{
  margin-bottom: 20px;
}
.contact_list01{
  display: flex;
  flex-wrap: wrap;
}
.contact_list01 dt,
.contact_list01 dd{
  font-size: 16px;
  margin-bottom: 20px;
}
.contact_list01 dt:last-of-type,
.contact_list01 dd:last-of-type{
  margin-bottom: 35px;
}
.contact_list01 dt{
  width: 210px;
  margin-top: 5px;
}
.contact_list01 dd{
  width: calc(100% - 210px);
}
.contact_list01 dt .require{
  font-size: 11px;
  color: #f7f8f8;
  background-color: #e60012;
  line-height: 1;
  padding: 3px 5px;
  margin-left: 10px;
}
.contact_list01 input,
.contact_list01 textarea{
  background-color: #e6e6e6;
  border: none;
  border-radius: 0;
  padding: 12px;
  width: 100%;
}
.contact_list01 input.address{
  width: 75px;
  margin: 0 10px;
}
.caution01{
  font-size: 13px;
  color: #727171;
  margin: 10px 0;
}
.contact_list01 select{
  padding: 12px;
  width: 100%;
  margin-bottom: 10px;
}
.contact_list01 input.address02{
  margin-bottom: 10px;
}
button{
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
}
button.contact_btn,
.btn02{
  width: 190px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  background-color: #f8b300;
  border: 1px solid #f8b300;
  font-size: 16px;
  margin: 0 auto;
  transition: all .3s;
  font-weight: bold;
}
button.contact_btn:hover,
.btn02:hover{
  background-color: #fff;
  color: #f8b300;
}
button.contact_btn.back{
  margin-top: 10px;
  background-color: #fff;
  color: #000;
  border-color: #000;
}
button.contact_btn.back:hover{
  background-color: #000;
  color: #fff;
}
.mw_wp_form_input .ttl02{
  display: none;
}
.mw_wp_form_confirm .ttl02{
  display: block;
  margin-top: 50px;
  margin-bottom: 60px;
}
.thanksPage .btn02{
  margin-top: 40px;
}
/*news*/
#news_index{
  padding-bottom: 45px;
}
#news .inner{
  max-width: 960px;
}
#news #main_contents{
  padding-top: 165px;
  overflow-x: hidden;
}
#news .head02{
  padding-bottom: 55px;
  position: relative;
  width: 100%;
}
#news .head02::after{
  content: '';
  position: absolute;
  left: -50%;
  bottom: 0;
  background-color: #000;
  width: 200%;
  height: 1px;
}
.news_box01{
  margin-top: 60px;
}
.news_box01 .box_l{
  width: calc(100% - 250px);
}
.news_box01 .box_r{
  width: 175px;
}
.news_list02{
  width: 100%;
}
.news_list02 li{
  border-bottom: 1px dashed #000;
  width: 100%;
}
.news_list02 li a{
  padding: 30px 0;
  display: block;
  transition: all .6s;
}
.news_list02 li a:hover{
  padding-left: 20px;
}
.news_list02 .date{
  display: block;
  color: #f8b300;
  font-size: 14px;
  margin-bottom: 10px;
}
.news_list02 .ttl{
  font-size: 16px;
  transition: all .6s;
}
.news_list02 li:hover .ttl{
  color: #f8b300;
}
.archive_ttl{
  font-size: 18px;
  border: 1px solid #000;
  padding: 5px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.archive_list01 li a{
  padding: 10px 0;
  display: flex;
  align-items: center;
  justify-content: center;
  border-bottom: 1px solid #000;
  position: relative;
  transition: all .3s;
}
.archive_list01 li:hover a{
  opacity: 0.8;
}
.archive_list01 li a::after{
  content: '▶';
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 0.7em;
  transition: all .3s;
  display: block;
}
.archive_list01 li:hover a::after{
  right: 15px;
}
.archive_list01 li a[aria-current="page"]{
  color: #f8b300;
}
.news_box02{
  padding: 60px 0;
}
.news_box02 .date{
  font-size: 25px;
  color: #f8b300;
  margin-bottom: 25px;
}
.head04{
  font-size: 25px;
  letter-spacing: 0.05em;
  padding: 15px 15px 15px 30px;
  position: relative;
  background-color: #f2f2f2;
  line-height: 1.4;
  margin-bottom: 50px;
}
.head04::before{
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width:  7px;
  height: 100%;
  background-color: #f8b300;
}
.editor{
  margin-bottom: 55px;
}
.editor h2{
  font-size: 22px;
  width: fit-content;
  border-bottom: 2px solid #000;
  letter-spacing: 0.05em;
}
.editor h3{
  font-size: 18px;
}
.editor h3::before{
  content: '◼︎';
  color: #f8b300;
  font-size: 1.2em;
}
.editor img{
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
}
.pagerArea{
  margin-top: 50px;
}
.pagerList{
  display: flex;
  justify-content: center;
  align-items: center;
}
.pagerList li{
  margin-right: 15px;
}
.pagerList li:last-child{
  margin-right: 0;
}
.pagerList li a{
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  border: 1px solid #acaeb0;
  color: #acaeb0;
  background-color: #fff;
  font-size: 20px;
  transition: all .3s;
}
.pagerList li a.current{
  border-color: #f8b300;
  background-color: #f8b300;
  color: #fff;
}
.pagerList li a:hover{
  border-color: #f8b300;
  color: #f8b300;
}
.pagerList li a.current:hover{
  background-color: #f8b300;
  color: #ffff;
}
.pagerList li .nextpostslink,
.pagerList li .previouspostslink{
  font-size: 0;
  border: none;
  width: 27px;
  height: 27px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
}
.pagerList li .nextpostslink{
  background-image: url(../icon/arrow_next.svg);
}
.pagerList li .previouspostslink{
  background-image: url(../icon/arrow_prev.svg);
}
.p-country-name{
  display: none;
}
.contact_list01 #address2{
  margin-bottom: 10px;
}
@media screen and (max-width: 1200px) {
}
@media screen and (max-width: 1024px) {
}
@media screen and (max-width: 768px) {
/*common*/
.anchor{
  padding-top: 90px;
  margin-top: -90px;
}
.ttl01{
  font-size: 18px;
  letter-spacing: 0.2em;
  line-height: 1.5;
}
.pc_none{
  display: block;
}
.sp_none{
  display: none;
}
#top .head02.yoko,
#top .head02.yoko span{
  border-bottom-width: 3px;
  padding-bottom: 3px;
}
#top .head02.yoko span{
  margin-bottom: 20px;
}
.head02.yoko img{
  height: 45px;
}
#top .head02.tate{
  border-left-width: 3px;
  padding-bottom: 5px;
}
.head02.tate img{
  width: 45px;
}
.txt01{
  font-size: 13px;
}
.txt02{
  line-height: 1.5;
}
/*mv*/
.main_ttl{
  width: 50px;
}
#mv .inner{
  width: 100%;
}
.box01{
  padding-top: 120px;
}
.box01 .box_l{
  width: 100%;
  padding-left: 25px;
  margin-bottom: 30px;
}
.box01 .box_r .mv_slide.slide02,
.box03 .mv_slide.slide03{
  display: block;
}
.h_logo{
  max-width: 250px;
}
#mv .black{
  position: relative;
  color: #231815;
  letter-spacing: 0.2em;
}
#mv .txt01{
  letter-spacing: 0;
}
.box02 .box_in{
  display: none;
}
.box01 .box_r,
.box03 .box_l{
  width: 100%;
  display: flex;
}
.box01 .box_r .mv_slide,
.box03 .box_l .mv_slide{
  width: 50%;
}
.mv_slide .slick-dots{
  display: none!important;
}
.box02{
  justify-content: flex-end;
}
.mv_slide.slide01::after{
  bottom: 30px;
  left: auto;
  right: -60px;
}
.box03 .box_r{
  width: 100%;
  padding: 50px 5% 0;
}

#mv .ttl01{
  margin-bottom: 20px;
}
.box04 .box_l{
  width: 70px;
}
.box04 .box_r{
  width: calc(100% - 70px);
}
.feature_list li{
  width: 100%;
  padding: 20px 0;
}
.feature_list li:nth-child(odd)::after,
.feature_list li .line{
  display: none;
}
.feature_list li::before{
  width: 100%;
}
.feature_list li:first-child::after{
  content: '';
  height: 1px;
  width: 100%;
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  background-color: #231815;
}
.feature_list li .txt02, .challenge_box .txt02{
  letter-spacing: 0.1em;
  margin-bottom: 10px;
}
.feature_list li .icon{
  margin-bottom: 10px;
  width: 70px;
  height: 70px;
}
/*policy*/
#policy .g_bg{
  padding: 25px 0 30px;
}
#policy .box04 .box_l{
  width: 100%;
  order: 2;
}
#policy .box04 .box_l .img{
  margin: 20px 0 0 auto;
}
#policy .box04 .box_r{
  width: 100%;
  order: 1;
}
/*collaboration*/
#top03{
  padding: 50px 0;
}
.feature_list.challenge_list li:first-child::after{
  display: none;
}
/*recruit*/
#top04{
  padding-bottom: 50px;
}
#top04 .head02{
  margin-bottom: 25px;
}
#top04 .txt01.intro{
  text-align: justify;
}
.recruit_list::after{
  display: none;
}
.recruit_list li{
  width: 100%;
  margin-bottom: 50px;
}
.recruit_list li:last-child{
  margin-bottom: 0;
}
.triangle{
  margin-bottom: 20px;
}
.recruit_list li .logo{
  height: 28px;
  margin-bottom: 15px;
}
.recruit_list li .jp_txt{
  font-size: 14px;
  margin-bottom: 5px;
  line-height: 1;
}
.recruit_list li .txt01{
  margin-bottom: 15px;
}
.message_box a .btn, .recruit_list a .btn{
  font-size: 14px;
}
.m_detail .m_l,
.m_detail .m_r{
  width: 100%;
}
.m_detail .m_l{
}
.m_detail .m_r{
}
.message_detail .txt02{
  margin-bottom: 15px;
}
.message_detail .txt01{
  margin-bottom: 20px;
}
.message_detail .txt01.g_name{
  margin-bottom: 10px;
}
.message_detail .name{
  font-size: 14px;
  margin-bottom: 10px;
  letter-spacing: 0.1em;
  line-height: 1.5;
}

/*news*/
.news_list01 li a{
  display: block;
}
.news_list01 li .date{
  width: 100%;
  margin-bottom: 5px;
}
.news_list01 li .ttl{
  width: 100%;
}
.box03 .btn01{
  position: relative;
  right: auto;
  bottom: auto;
  margin: 20px 0 0 auto;
}
.box03 .box_r .head02.yoko img{
  height: 35px;
}
.recruit_list01 li{
  width: 100%;
  margin-bottom: 30px;
}
.recruit_list01 .img{
  margin-bottom: 10px;
}
.recruit_list01 .name{
  margin-bottom: 10px;
}
#top05 .head02.yoko img{
}
#top05{
  padding-top: 30px;
}
.about_list01 dt,
.about_list01 dd{
  width: 100%;
}
.about_list01 dt{
  text-align-last: left;
  letter-spacing: 0.2em;
  border-bottom: none;
  padding-bottom: 0;
}
.about_list01 dt:first-of-type{
  border-top: 1px solid #000;
}
.about_list01 dt::after{
  display: none;
}
.head03{
  font-size: 15px;
}
.head03 span{
  font-size: 18px;
}
.check_list01 li{
  font-size: 14px;
  margin-bottom: 5px;
}
.ttl02{
  font-size: 16px;
}
.contact_list01 dt, .contact_list01 dd{
  font-size: 14px;
  width: 100%;
  margin-bottom: 10px;
}
/*news*/
.news_box01 .box_l,
.news_box01 .box_r{
  width: 100%;
}
.news_box01 .box_r{
  margin-top: 40px;
}
.pagerArea{
  margin-top: 25px;
}
.pagerList li{
  margin-right: 10px;
}
.pagerList li a{
  font-size: 16px;
  width: 30px;
  height: 30px;
}
#news .head02{
  padding-bottom: 30px;
}
.news_box01{
  margin-top: 30px;
}
.news_list02{
  margin-bottom: 50px;
}
.news_list02 li a{
  padding: 10px;
}
.news_list02 .date{
  font-size: 12px;
  margin-bottom: 4px;
}
.news_list02 .ttl{
  font-size: 14px;
}
.archive_ttl{
  font-size: 14px;
  height: 35px;
}
.archive_list01 li{
  font-size: 13px;
}
.archive_list01 li a{
  padding: 5px 0;
}
/*news*/
#news #main_contents{
  padding-top: 125px;
}
.news_box02{
  padding: 30px 0;
}
.news_box02 .date{
  font-size: 16px;
  margin-bottom: 20px;
}
.head04{
  font-size: 18px;
  padding: 10px 10px 10px 30px;
  margin-bottom: 30px;
}
.head04::before{
  width: 4px;
}
.editor p{
  font-size: 80%;
}
.editor h2{
  font-size: 18px;
}
.editor h3{
  font-size: 16px;
}
button.contact_btn, .btn02{
  font-size: 14px;
}
}
@media screen and (max-width: 599px) {
.head02.tate img{
  width: 35px;
}
.head02.yoko img{
  height: 35px;
}
.box04 .box_l{
  width: 60px;
}
.box04 .box_r{
  width: calc(100% - 60px);
}
#character .head02{
  text-align: center;
}
}