@charset "UTF-8";


/*--------------
top
----------------*/

.p-top__fv{
  position:relative;
}
.p-top__fv-catch{
  position:absolute;
  left:90px;
  bottom:58px;
  font-size:5.49vw;
  line-height:1.4;
  width: 100%;
  color:#fff;
  font-family: var(--font-Gilda);
}
.p-top__about{
  padding:95px 0 80px;
}
.p-top__about .c-text{
  margin-bottom:38px;
}

.p-top__news{
  padding-bottom:101px;
}
.p-top__news .c-ttl__area{
  margin-bottom:39px;
}
.p-top__news-list{
  gap:48px;
  margin-bottom:45.4px;
}
.p-top__news-item{
  width:calc((100% - 98px) / 3);
}
.p-top__news-item-img{
  margin-bottom:12px;
  position:relative;
  display:block;
  overflow: hidden;
  aspect-ratio: 280 / 180;
}
.p-top__news-item-img img {
  z-index: -1;
  object-fit: cover;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  transition: all 0.3s ease;
  transition-property: scale;
}
.p-top__news-item a:hover .p-top__news-item-img img {
  scale:1.05;
}
.p-top__news-item-new{
  position:absolute;
  top:0;
  left:0;
  width:60px;
  height:24px;
  font-family:var(--font-Robot);
  font-size:11px;
  line-height:24px;
  text-align: center;
  color:#fff;
  background-color:#DD1212;
  border-radius:0 0 10px 0;

}
.p-top__news-item-date{
  display:flex;
  gap:25px;
  margin-bottom:10px;
}
.p-top__news-item-num{
  font-size:12px;
  color:#888;
  line-height:1.5;
}
.p-top__news-item-cate{
  font-family:var(--font-Robot);
  font-size:11px;
  color:#888888;
  background-color:#F4F4F4;
  border-radius:40px;
  padding: 0 16px;
}
.p-top__news-item-ttl{
  font-size:16px;
  font-weight:600;
}
.p-top__news .c-btn{
  margin: 0 auto;
}
.p-top__brands{
  margin-top:70px;
  border-top:solid 1px #EEEEEE;
}
.p-top__brands .c-ttl__area{
  margin-bottom:40px;
}
.p-top__brands-container{
  margin-bottom:80px;
}
.p-top__brands-ttl{
  font-family:var(--font-Cormorant);
  font-size:32px;
  font-weight:500;
  color:#65BBB1;
  letter-spacing:0.03em;
  display: flex;
  align-items: center;
  margin-bottom:17px;
}
.p-top__brands-ttl::before{
  content:"";
  display:block;
  width:3px;
  height:25px;
  background-color:#65BBB1;
  margin-right:13px;
}
.p-top__brands-box{
  gap:8%;
  align-items: center;
  justify-content: space-between;
}
.p-top__brands-box-img{

}
.p-top__brands-box-content-ttl{
  font-family:var(--font-serif);
  font-size:30px;
  font-weight:500;
  line-height:1.5;
  margin-bottom:17px;
}
.p-top__brands-box-content .c-text{
  margin-bottom:38px;
}

.p-top__recruit{
  margin-bottom:160px;
}
.p-top__recruit-img{

}
.p-top__recruit-wrap{
  margin-top:-47px;
  background-color:#fff;
  padding:50px 0 0;
  position: relative;
}
.p-top__recruit .c-ttl__area{
  margin-bottom:29px;
  text-align: center;
}
.p-top__recruit-catch{
  font-family: var(--font-Cormorant);
  font-size:45px;
  font-weight:600;
  line-height:1.5;
  letter-spacing:0.02em;
  text-align: center;
  color:#00798F;
}
.p-top__recruit-text{
  font-family: var(--font-Cormorant);
  font-size:24px;
  font-weight:500;
  line-height:2.6;
  letter-spacing:0.06em;
  text-align: center;
  margin-top:-12px;
  margin-bottom:19px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap:12px;
}
.p-top__recruit-text::before,
.p-top__recruit-text::after{
  content:"";
  display: block;
  width:15px;
  height:1px;
  background-color:#3C3C3C;
}
.p-top__recruit-area{
  margin-bottom:38px;
}
.p-top__recruit-area .c-text__big{
  text-align: center;
  margin-bottom:17px;
}
.p-top__recruit-area .c-text__big:last-child{
  margin-bottom:0;
}
.p-top__recruit .c-btn{
  margin:0 auto;
}

    @media screen and (max-width: 768px){
      .p-top__fv{
        position:relative;
      }
      .p-top__fv-catch{
        position:absolute;
        top:55.467vw;
        left: 50%;
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        bottom:auto;
        font-size:8.533vw;
        line-height:1.6;
        text-align: center;
        width: 100%;
        color:#fff;
        font-family: var(--font-Gilda);
      }
      .p-top__about{
        padding:13.6vw 0 11.467vw;
      }
      .p-top__about .c-ttl__area{
        margin-bottom:7.733vw;
      }
      .p-top__about .c-text{
        margin-bottom:8vw;
      }

      .p-top__news{
        padding-bottom:13.333vw;

      }
      .p-top__news .c-ttl__area{
        margin-bottom:7.733vw;
      }
      .p-top__news-list{
        gap:7.2vw;
        margin-bottom:9.067vw;
      }
      .p-top__news-item{
        width:100%;
      }
      .p-top__news-item-img{
        margin-bottom:2.667vw;
        position:relative;
        display:block;
        overflow: hidden;
        aspect-ratio: 280 / 180;
      }
      .p-top__news-item-img img {
        z-index: -1;
        object-fit: cover;
        position: absolute;
        width: 100%;
        height: 100%;
        top: 50%;
        left: 50%;
        translate: -50% -50%;
        transition: all 0.3s ease;
        transition-property: scale;
      }
      .p-top__news-item-new{
        position:absolute;
        top:0;
        left:0;
        width:14.889vw;
        height:5.333vw;
        font-family:var(--font-Robot);
        font-size:2.933vw;
        line-height:5.333vw;
        text-align: center;
        color:#fff;
        background-color:#DD1212;
        border-radius:0 0 2.667vw 0;
      }
      .p-top__news-item-date{
        display:flex;
        gap:3.2vw;
        margin-bottom:1.6vw;
      }
      .p-top__news-item-num{
        font-size:3.2vw;
        color:#888;
        line-height:1.5;
      }
      .p-top__news-item-cate{
        font-family:var(--font-Robot);
        font-size:2.933vw;
        color:#888888;
        background-color:#F4F4F4;
        border-radius:10.667vw;
        padding: 0 4.267vw;
      }
      .p-top__news-item-ttl{
        font-size:3.733vw;
        font-weight:600;
      }
      .p-top__brands{
        margin-top:8.8vw;
        border-top:solid 1px #EEEEEE;
      }
      .p-top__brands .c-ttl__area{
        margin-bottom:5.867vw;
      }
      .p-top__brands-container{
        margin-bottom:12.533vw;
      }
      .p-top__brands-container:last-child{
        margin-bottom:16.267vw;
      }
      .p-top__brands-ttl{
        font-family:var(--font-Cormorant);
        font-size:6.4vw;
        font-weight:500;
        color:#65BBB1;
        letter-spacing:0.03em;
        display: flex;
        align-items: center;
        margin-bottom:1.333vw;
      }
      .p-top__brands-ttl::before{
        content:"";
        display:block;
        width:0.8vw;
        height:5.333vw;
        background-color:#65BBB1;
        margin-right:2.133vw;
      }
      .p-top__brands-box{
        gap:3.733vw;
        align-items: center;
        justify-content: space-between;
      }
      .p-top__brands-box-img{

      }
      .p-top__brands-box-content-ttl{
        font-family:var(--font-serif);
        font-size:4.8vw;
        font-weight:500;
        line-height:1.5;
        margin-bottom:1.333vw;
      }
      .p-top__brands-box-content .c-text{
        margin-bottom:4.267vw;
      }

      .p-top__recruit{
        margin-bottom:26.667vw;
      }
      .p-top__recruit-img{

      }
      .p-top__recruit-wrap{
        margin:-11.2vw 3.2vw 0;
        background-color:#fff;
        padding:6.133vw 2.133vw 0;
        position: relative;
      }
      .p-top__recruit .c-ttl__area{
        margin-bottom:6.133vw;
        text-align: center;
      }
      .p-top__recruit-catch{
        font-family: var(--font-Cormorant);
        font-size:7.467vw;
        font-weight:600;
        line-height:1.5;
        letter-spacing:0.02em;
        text-align: center;
        color:#00798F;
      }
      .p-top__recruit-text{
        font-family: var(--font-Cormorant);
        font-size:3.733vw;
        font-weight:500;
        line-height:2.6;
        letter-spacing:0.06em;
        text-align: center;
        margin-top:-1.333vw;
        margin-bottom:6.133vw;
        display: flex;
        align-items: center;
        justify-content: center;
        gap:3.2vw;
      }
      .p-top__recruit-text::before,
      .p-top__recruit-text::after{
        content:"";
        display: none;
        width:4vw;
        height:0.267vw;
        background-color:#3C3C3C;
      }
      .p-top__recruit-area{
        margin-bottom:8vw;
      }
      .p-top__recruit-area .c-text__big{
        text-align: left;
        margin-bottom:2.933vw;
      }
      .p-top__recruit-area .c-text__big:last-child{
        margin-bottom:0;
      }
      .p-top__recruit .c-btn{
        margin:0 auto;
      }
    }

.p-about__wrap{
  max-width:1090px;
  padding:0 20px;
  margin:0 auto;
}
.p-about__section{
  padding-bottom:160px;
}
.p-about__box{
  justify-content: space-between;
  align-items: center;
  padding-bottom:100px;
  margin-bottom:100px;
  border-bottom:solid 1px rgba(238,238,238,0.9333);
}
.p-about__box:last-child{
  padding-bottom:0;
  margin-bottom:0;
  border-bottom:none;
}
.p-about__box-content{
  width:fit-content;
}
.p-about__box-content .c-ttl__under{
  margin-bottom:21px;
}
.p-about__box-content .c-text{
  margin-bottom:53px;
}
.p-about__box-img{
  width:42.29%;
}
.p-about__box:nth-of-type(2) .p-about__box-content{
  width:42.29%;
}

.p-about__box:nth-of-type(2) .p-about__box-img{
  width:47.84%;
}
    @media screen and (max-width: 1000px){
      .p-about__box:first-child .p-about__box-content{
          width: 52%;
      }
      .p-about__box-content br.u-pc{
        display: none;
      }
    }
    @media screen and (max-width: 768px){
      .p-about__wrap{
        max-width:1090px;
        padding:0 5.333vw;
        margin:0 auto;
      }
      .p-about__section{
        padding-bottom:26.667vw;
      }
      .p-about__box{
        justify-content: space-between;
        padding-bottom:10.667vw;
        margin-bottom:8.8vw;
        gap:9.333vw;
        border-bottom:solid 1px rgba(238,238,238,0.9333);
      }
      .p-about__box:last-child{
        padding-bottom:0;
        margin-bottom:0;
        border-bottom:none;
      }
      .p-about__box-content{
        width:100%;
      }
      .p-about__box:first-child .p-about__box-content{
        width:100%;
      }
      .p-about__box-content .c-ttl__under{
        margin-bottom:5.333vw;
        text-align: center;
      }
      .p-about__box-content .c-text{
        margin-bottom:7.733vw;
      }
      .p-about__box-img{
        width:100%;
      }
      .p-about__box:nth-of-type(2) .p-about__box-content{
        width:100%;
      }
      .p-about__box:nth-of-type(2) .p-about__box-img{
        width:100%;
      }
    }
.p-purpose__catch{
  text-align: center;
  margin-bottom:59px;
}
.p-purpose__catch .c-ttl__under{
  margin-bottom:21px;
}
.p-purpose__origin{
  max-width:1200px;
  background-color:#D0EAEF;
  padding:60px 140px 70px;
  margin-bottom:59px;
}
.p-purpose__origin-wrap{
  justify-content: space-between;
  align-items: center;
}
.p-purpose__origin-img{
  width:38.04%;
}
.p-purpose__origin-content{
  width:51.41%;
}
.p-purpose__origin-ttl{
  font-family: var(--font-serif);
  font-size:24px;
  font-weight:500;
  line-height:1.5;
  display: flex;
  align-items: center;
  margin-bottom:28px;
}
.p-purpose__origin-ttl-deco{
  font-size:30px;
  line-height:1.5;
  border:solid 1px #CCC;
  padding:0 15px;
  margin-right:7px;
  display: block;
}
.p-purpose__origin .c-text{
  line-height: 2.4;
}
.p-purpose__bottom{
  padding-bottom:160px;
}
.p-purpose_slide{
  gap:10px;
}
.p-purpose_splide{
  margin-bottom:46px;
}
.p-purpose_splide .splide__slide{
  width:21.962vw;* 必要に応じて */
}
.p-purpose_splide img{
  display:block;   /* 画像下の隙間対策 */
  width:100%;
  height:auto;
}
.p-purpose__bottom .c-text{
  text-align: center;
}
.deco01{
  color:#00798F;
  font-weight:600;
}
    @media screen and (max-width: 1070px){
      .p-purpose__origin-ttl{
        flex-direction: column;
      }
    }
    @media screen and (max-width: 768px){
      .p-purpose__catch{
        text-align: center;
        margin-bottom:10.4vw;
      }
      .p-purpose__catch .c-ttl__under{
        font-size: 5.867vw;
        line-height: 1.5;
        margin-bottom:4.533vw;
        text-align: center;
      }
      .p-purpose__catch .c-ttl__under span{
        letter-spacing: -0.35em;
      }
      .p-purpose__catch .c-text{
        text-align: left;
      }
      .p-purpose__origin{
        background-color:#D0EAEF;
        padding:8vw 4.533vw 6.133vw;
        margin: 0 5.333vw;
        margin-bottom:10.667vw;
      }
      .p-purpose__origin-wrap{
        justify-content: space-between;
        align-items: center;
        display: block;
      }
      .p-purpose__origin-img{
        width:100%;
        margin-bottom:3.2vw;
      }
      .p-purpose__origin-content{
        width:100%;
      }
      .p-purpose__origin-ttl{
        font-family: var(--font-serif);
        font-size:5.333vw;
        line-height:1.5;
        display: block;
        align-items: center;
        text-align: center;
        margin: 0 auto 17px;
      }
      .p-purpose__origin-ttl-deco{
        font-size:6.4vw;
        line-height:1.5;
        border:solid 1px #CCC;
        padding:0.533vw 2.4vw;
        margin:0 auto 0.8vw;
        display: block;
        width: fit-content;
      }
      .p-purpose__origin .c-text{
        line-height: 2;
        letter-spacing: 0.02em;
      }
      .p-purpose__bottom{
        padding-bottom:26.667vw;
      }
      .p-purpose_slide{
        gap:1.733vw;
      }
      .p-purpose_splide{
        margin-bottom:8.533vw;
      }
      .p-purpose_splide .splide__slide{
        width:51.36vw;
      }
      .p-purpose_splide img{
        display:block;   /* 画像下の隙間対策 */
        width:100%;
        height:auto;
      }
      .p-purpose__bottom .c-text{
        text-align: left;
      }
      .deco01{
        color:#00798F;
        font-weight:600;
      }
    }
.p-company{
  padding-bottom:160px;
}
.p-company .c-ttl__under{
  text-align: center;
  margin-bottom:52px;
}
.p-company__table{
  width:100%;
  border-collapse:separate;
  border-spacing: 0;
}
.p-company__table tr th,
.p-company__table tr td{
  align-items: center;
  border-bottom:solid 1px #CCCC;
}
.p-company__table tr:first-child th,
.p-company__table tr:first-child td{
  border-top:solid 1px #CCC;
}
.p-company__table th{
  font-size:15px;
  font-weight:600;
  line-height: 1.2;
  letter-spacing: 0.06em;
  text-align: left;
  width:24.67%;
  padding:30px 0 30px 31px;
  align-items: center;
}
.p-company__table td{
  font-size:16px;
  font-weight:400;
  line-height: 1.5;
  letter-spacing: 0.06em;
  padding:30px 48px 30px 0;
}
.p-company__map{
  margin-top:12px;
}
    @media screen and (max-width: 768px){
      .p-company{
        padding-bottom:26.667vw;
      }
      .p-company .c-ttl__under{
        text-align: center;
        margin-bottom:7.733vw;
      }
      .p-company__table{
        width:100%;
        display: block;
      }
      .p-company__table tbody,
      .p-company__table tr{
        width:100%;
        display: block;
      }
      .p-company__table tr th,
      .p-company__table tr td{
        width:100%;
        display: block;
        align-items: center;
        border-bottom:solid 1px #CCC;
      }
      .p-company__table tr th{
        border-bottom:unset;
      }
      .p-company__table tr td{}
      .p-company__table tr:first-child th{
        border-top:solid 1px #CCC;
      }
      .p-company__table tr:first-child td{
        border-top:unset;
      }
      .p-company__table th{
        font-size:3.467vw;
        font-weight:600;
        line-height: 1.2;
        letter-spacing: 0.06em;
        text-align: left;
        width:100%;
        padding:5.333vw 0 0;
        align-items: center;
      }
      .p-company__table td{
        font-size:3.733vw;
        font-weight:400;
        line-height: 1.5;
        letter-spacing: 0.04em;
        padding:2.667vw 0 5.333vw 0;
      }
      .p-company__map{
        margin-top:2.667vw;
      }
    }

.p-error{
  padding:202px 0 160px;
}
.p-error__ttl{
  font-family:var(--font-Cormorant);
  font-size:100px;
  font-weight:400;
  color:#989898;
  line-height: 1.5;
  margin-bottom:17px;
  text-align: center;
}
.p-error .c-text{
  margin-bottom:58px;
  text-align: center;
}
.p-error .c-btn{
  margin:0 auto;
}
.p-error .c-btn::after{
  left:20.37px;
  right: auto;
  transform: translateY(-50%) rotate(180deg);
  -webkit-transform: translateY(-50%) rotate(180deg);
  -ms-transform: translateY(-50%) rotate(180deg);
}
    @media screen and (max-width: 768px){
      .p-error{
        padding:53.867vw 0 42.667vw;
      }
      .p-error__ttl{
        font-family:var(--font-Cormorant);
        font-size:12.8vw;
        color:#989898;
        line-height: 1.5;
        margin-bottom:1.867vw;
        text-align: center;
      }
      .p-error .c-text{
        margin-bottom:13.067vw;
        text-align: center;
      }
      .p-error .c-btn{
        margin:0 auto;
      }
      .p-error .c-btn::after{
        left:2.765vw;
        right: auto;
        transform: translateY(-50%) rotate(180deg);
        -webkit-transform: translateY(-50%) rotate(180deg);
        -ms-transform: translateY(-50%) rotate(180deg);
      }
    }

.p-privacy{
  padding-bottom:160px;
  margin-top:202px;
}
.p-privacy__ttl-area{
  margin-bottom:0px;
}
.p-privacy__ttl-en{
  font-family: var(--font-Cormorant);
  font-weight:400;
  font-size:100px;
  line-height: 1.5;
  color:#989898;
}
.p-privacy__ttl-jp{
  margin-top:-10px;
  font-weight:400;
  font-size:14px;
  line-height: 1.5;
}
.p-privacy__content{
  counter-reset: privacy-h2;
}
.p-privacy__content h2{
  counter-increment: privacy-h2;
  font-weight:bold;
  font-size:18px;
  line-height: 2;
  color:#3C3C3C;
  padding:12px 30px;
  background-color:#D0EAEF;
  border-radius: 5px;
  display: flex;
  align-items: center;
  margin-bottom:16px;
}
.p-privacy__content h2::before{
  content:counter(privacy-h2) ".";
  color:#00798F;
}
.p-privacy__content h2:last-of-type::before{
  content: none;
  display: none;
}
.p-privacy__content h3{
  font-weight:bold;
  font-size:15px;
  line-height: 1.6;
  margin-bottom:5px;
  padding:0 30px;
}
.p-privacy__content p{
  font-size:15px;
  line-height:1.5;
  padding:0 30px;
  margin-bottom:40px;
}
.p-privacy__content p:first-child{
  padding:0 10px;
}
.p-privacy__content ul{
  margin-bottom:40px;
  padding:0 30px;
}
.p-privacy__content li{
  font-size:15px;
  line-height:1.6;
  display: flex;
}
.p-privacy__content li::before{
  content:"-";
  margin-right:3px;
}
.p-privacy__content a{
  color:#00798F;
  text-decoration: underline;
}
    @media screen and (max-width: 768px){
      .p-privacy{
        margin-top:24vw;
        padding-bottom:25.867vw;
      }
      .p-privacy__ttl-area{
        margin-bottom:12vw;
      }
      .p-privacy__ttl-en{
        font-family: var(--font-Cormorant);
        font-weight:400;
        font-size:11.467vw;
        line-height: 12.8vw;
        color:#989898;
        white-space: nowrap;
      }
      .p-privacy__ttl-jp{
        margin-top:2.133vw;
        font-weight:400;
        font-size:3.467vw;
        line-height: 1.5;
      }
      .p-privacy__content{
        counter-reset: privacy-h2;
      }
      .p-privacy__content h2{
        counter-increment: privacy-h2;
        font-weight:bold;
        font-size:3.733vw;
        line-height: 2;
        color:#3C3C3C;
        padding:4vw 5.333vw;
        background-color:#D0EAEF;
        border-radius: 1.333vw;
        display: flex;
        align-items: center;
        margin-bottom:2.933vw;
      }
      .p-privacy__content h2::before{
        content:counter(privacy-h2) ".";
        color:#00798F;
      }
      .p-privacy__content h2:last-of-type::before{
        content: none;
        display: none;
      }
      .p-privacy__content h3{
        font-weight:700;
        font-size:3.733vw;
        line-height: 1.6;
        margin-bottom:2.933vw;
        padding:0;
      }
      .p-privacy__content p{
        font-size:4vw;
        line-height:1.5;
        padding:0;
        margin-bottom:10.667vw;
      }
      .p-privacy__content p:first-child{
        padding:0;
      }
      .p-privacy__content ul{
        margin-bottom:10.667vw;
        padding:0;
      }
      .p-privacy__content li{
        font-size:4vw;
        line-height:1.6;
        display: flex;
      }
      .p-privacy__content li::before{
        content:"-";
        margin-right:0.8vw;
      }
      .p-privacy__content a{
        color:#00798F;
        text-decoration: underline;
      }
    }
