:root{
  --font-color:#141a22;
  --main-color:#1e1e4B;
  --bg-color:#f6f8fb;
  --arial:"Arial", sans-serif;
}
*{
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}
html{
  font-size: 100%;
  height: 100%;
}
body{
  background: #E2F3FC;
  color: var(--font-color);
  display: flex;
  flex-direction: column;
  font-family: "Noto Sans JP", sans-serif;
  font-feature-settings: "palt";
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1;
  min-height: 100%;
}
img{
  height: auto;
  max-width: 100%;
  vertical-align: middle;
}
a{
  display: inline-block;
  text-decoration: none;
}
a[href^="tel:"] {
  color: inherit;
  pointer-events: none;
}
ul,ol,li{
  list-style: none;
  max-width: 100%;
}
p{line-height: 2;}
@media screen and (min-width: 768px) {
  body {
    font-size: 0.9375rem;
  }
}
/*utils*/
.f-red{color: #f00;}
.tac{text-align: center;}
.tar{text-align: right;}
.d-ib{display: inline-block;}
/*layout*/
.container{
  background: #fff;
  display: flex;
  flex-direction: column;
  flex: 1;
  margin: 62px auto 0;
  max-width: 1680px;
  min-height: 100%;
  width: 92%;
}
main{flex: 1;}
.inner{
  margin-left: auto;
  margin-right: auto;
  width: 90%;
}
.bg-inner{
  background: rgba(255,255,255,.85);
  padding: 50px;
}
.bg-wrap {
  margin: 28px auto 0;
  max-width: 100%;
  width: 550px;
}
@media screen and (min-width: 768px){
  .container {width: 90%;}
  .bg-inner {padding: 72px 80px 132px;}
  .bg-wrap {margin: 50px auto 0;}
}
@media screen and (min-width: 1024px){
  .container{margin-top:115px;}
  .inner{width: 80%;}
  .pc-none{display:none;}
}
@media screen and (min-width: 1280px){
  .bg-inner {
    padding: 82px 120px 78px;
    width: 986px;
  }
  .inner {
    max-width: 1240px;
    width: 73%;
  }
  .inner-m{width: 1100px;}
}

/**header**/
.header{
  align-items: center;
  background: #fff;
  display: flex;
  gap: 30px;
  justify-content: space-between;
  height: 62px;
  padding: 0 2.5%;
  position: fixed;
  width: 100%;
  z-index: 1000;
}
.logo img{width: 200px;}
.logo:hover{opacity:.7}
.gnav a{
  color:#291d12;
  display: block;
}
.gnav a:hover {opacity: .7;}
[id]{scroll-margin-top: 62px;}
@media screen and (max-width: 1023.98px){
  .gnav-contact--l{display: none;}
  .nav-toggle{
    border-radius:50%;
    cursor:pointer;
    height:62px;
    position:relative;
    width:62px;
    z-index:501;
  }
  .nav-toggle span{
    background:var(--font-color);
    border-radius:2px;
    display:block;
    height:3px;
    left:12px;
    position:absolute;
    -webkit-transition:.35s ease-in-out;
    -moz-transition:.35s ease-in-out;
    transition:.35s ease-in-out;
    width:40px;
  }
  .nav-toggle span:nth-child(1){top:18px}
  .nav-toggle span:nth-child(2){top:28px}
  .nav-toggle span:nth-child(3){top:38px}
  .nav-toggle.is-active span:nth-child(1){
    top:28px;
    -webkit-transform:rotate(-45deg);
    transform:rotate(-45deg);
  }
  .nav-toggle.is-active span:nth-child(2){opacity:0}
  .nav-toggle.is-active span:nth-child(3){
    top:28px;
    -webkit-transform:rotate(45deg);
    transform:rotate(45deg);
  }
  .gnav{
    background:#fff;
    height: calc(100% - 62px);
    overflow:scroll;
    -ms-overflow-style:none;
    padding:0 20px ;
    position:fixed;
    right:-300px;
    scrollbar-width:none;
    top:62px;
    transition: right 0.3s ease;
    white-space:nowrap;
    width:300px;
    z-index: 1000;
  }
  .is-active+.gnav{
    opacity: 1;
    right: 0;
    visibility: visible;
  }
  .gnav li{
    border-top: .5px dashed;
    line-height: 4;
    position: relative;
  }
  .gnav li:first-of-type{border: none;}
  .gnav li::before{
    content:"＞";
    font-size: .625rem;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
  }
}
@media screen and (min-width: 1024px){
  .header {
    font-size: clamp(1.125rem, 0.725rem + 0.5vw, 1.25rem);
    height: 115px;
  }
  .logo img{width:clamp(12.5rem, -8.297rem + 28.2vw, 21.313rem);}
  .nav-toggle{display: none;}
  .gnav {
    display: flex;
    gap: clamp(1.5rem, -4.65rem + 8vw, 3.75rem);
  }
  .gnav-contact--s{display: none;}
  .gnav-contact--l a{padding: 14px clamp(2rem, -0.95rem + 4vw, 3.25rem) 15px;}
  [id]{scroll-margin-top: 115px;}
}
/**footer**/
.footer{
  background: var(--font-color);
  color: #fff;
  padding: 20px 0;
}
.footer a{color:inherit}
.fnav{
  align-items: center;
  display: flex;
  justify-content: end;
}
.fnav-main{
  font-weight: 700;
  gap: clamp(1.75rem, -4.65rem + 8vw, 3.75rem);
}
.fnav-middle{
  gap: clamp(1rem, -1.8rem + 3.5vw, 1.875rem);
  margin-top: 46px;
}
.fnav a:hover{opacity: .7;}
.copyright{
  font-size: .75rem;
  margin-top: 14px;
}
@media screen and (max-width: 1023.98px){
  .footer{text-align: center;}
  .fnav{display: none;}
}
@media screen and (min-width: 1024px) {
  .footer{padding: 60px 0;}
  .footer .inner{
    align-items: baseline;
    display: flex;
    justify-content: space-between;
  }
  .copyright {
    margin-top: 40px;
    text-align: right;
  }
}

/**internal link**/
.pagetop{
  bottom: 5%;
  height: 40px;
  position: fixed;
  right: 2.5%;
  width: 40px;
}
.pagetop:hover{opacity: .7;}
@media screen and (min-width: 768px){
  .pagetop{
    height: 53px;
    right: 1.5%;
    width: 53px;
  }
}

/*Component*/
/**link**/
.link-txt{
  color: #0008ff;
  text-decoration: underline;
}
.link-txt:hover{text-decoration: none;}

/**botton**/
.btn{
  border:1px solid var(--font-color);
  color: inherit;
  font-stretch: condensed;
  max-width: 100%;
  padding: 22px;
  position: relative;
  text-align: center;
  transition: .3s;
  width: 252px;
}
.btn::before{
  background: url(/img/ico-arrow.svg);
  content: "";
  height: 8px;
  position: absolute;
  right: -20px;
  top: 50%;
  transform: translateY(-50%);
  transition: .3s;
  width: 41px;
}
.btn:hover::before {
  right: -30px;
}
.btn-black{
  align-items: center;
  background: var(--main-color);
  border:1px solid var(--main-color);
  color: #fff;
  display: inline-flex;
  gap: 10px;
  justify-content: center;
  max-width: 100%;
  transition: .3s;
}
.btn-black:hover {
  background: #fff;
  color: var(--main-color);
}
.ico_white{
  fill:#fff;
  transition: .3s;
}
.btn-black:hover .ico_white{fill:var(--font-color)}

/**table**/
table {
  border-collapse: collapse;
  line-height: 2;
  width: 100%;
}
.table{
  border: 1px solid var(--font-color);
}
.table th, .table td{
  padding: 18px;
}
.table th{
  background: var(--bg-color);
  border-bottom: 1px solid var(--font-color);
  border-right: 1px solid var(--font-color);
  font-weight: 400;
  white-space: nowrap;
}
.table td {
  border-bottom: 1px solid var(--font-color);
}

/**list**/
.list_caption{
  font-size: .875rem;
  font-weight: 700;
  text-align: center;
}
.list{
  border-top: 1px dashed;
  line-height: 1.4;
}
.list li{
  border-bottom: 1px dashed;
  display: flex;
  padding: 10px 0;
}
.list_date{
  flex: none;
  min-width: clamp(4.875rem, -0.003rem + 18.24vw, 8.75rem);
}
.list_add{
  flex: none;
  min-width: clamp(6.25rem, 1.136rem + 19.12vw, 10.313rem);
}
@media screen and (min-width: 768px){
  .list_caption {font-size: 1.5rem;}
}

/***newsList***/
.sec-newsList{padding-bottom: 60px;}
.newsList li{
  border-bottom: 1px dashed;
  padding: 20px 0;
}
.newsList_ttl {
  line-height: 1.4;
  margin-top: 12px;
}
.art-news{padding-bottom: 78px;}
.news-head .detail-meta{margin-top: 20px;}
.news-head{margin-bottom: 42px;}
.art-news .btn-wrap{margin-top: 50px;}

@media screen and (min-width: 768px){
  .page-newsList .pagehead{margin-bottom: 58px;}
  .sec-newsList{padding-bottom: 118px;}
  .sec-newsList .pagination {margin-top: 118px;}
  .newsList li{padding: 26px 0;}
  .page-news .pagehead{margin-bottom: 72px;}
  .news-head .detail-meta{margin-top: 80px;}
  .news-head{margin-bottom: 52px;}
  .art-news .btn-wrap{margin-top: 154px;}
}

/*map*/
.map{
  border:none;
  width: 100%;
}

/*thumbnail*/
.thumbimg-wrap {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  gap: 10px clamp(0.625rem, -1.25rem + 3.91vw, 1.25rem);
  height:auto;
  width:100%;
}
.thumbimg-wrap img{width: 100%;}
.img-wrap {width: 100%;}
.thumb-wrap{
  display:flex;
  flex-wrap: wrap;
  gap: 10px;
}
.thumb{width: calc((100% - 30px) / 4);}
.thumb:hover{
  cursor: pointer;
  opacity: .7;
}
@media screen and (min-width: 768px){
  .thumbimg-wrap{flex-direction: row;}
  .img-wrap {
    flex: none;
    width: 62%;}
  .thumb-wrap{
    width: calc(38% - clamp(0.625rem, -1.25rem + 3.91vw, 1.25rem));
  }
  .thumb{width: calc((100% - 10px) / 2);}
}

/*parallax*/
.para{
  background-position: center 0;
  background-repeat: no-repeat;
  position: relative;
}

/*Modules*/
/**ttl**/
.pagehead{
  background: linear-gradient(to bottom, var(--font-color), #1E1E4B);
  color: #fff;
  margin: 0 calc(50% - 50vw) 42px;
  padding: 34px 9% 40px;
  width: 100vw;
}
.pagehead_ttl {
  font-family: var(--arial);
  font-size: 2.125rem;
  font-stretch: condensed;
  font-weight: 500;
  margin-bottom: 8px;
}
.pagehead_sub {font-weight: 500;}

.section_ttl{
  font-family: var(--arial);
  font-size: 1.75rem;
  font-stretch: condensed;
  font-weight: 700;
}
.section_sub{
  font-weight: 500;
  margin-top: 8px;
}

.sec-hero{
  margin: 0 calc(50% - 50vw);
  width: 100vw;
}
.hero-wrap{
  height: 420px;
  max-height: calc(100dvh - 62px);
}

@media screen and (min-width: 768px){
  .pagehead {
    margin-bottom:clamp(3.5rem, -8.875rem + 25.78vw, 7.625rem);
    padding: 8.813rem 9%;
  }
  .pagehead_ttl {
    font-size: 3.75rem;
    margin-bottom: 16px;
  }
  .section_ttl{font-size: 2rem;}
  .section_sub{margin-top: 18px;}
  .hero-wrap {height: calc(100dvh - 115px);}
}

/**tag**/
.sns-wrap {
  display: flex;
  gap: 10px;
  margin-left: 36px;
}
@media screen and (min-width: 768px){
  .sns-wrap {margin-left: 56px;}
}

.tag-category {
  background: var(--font-color);
  border-radius: 4px;
  color: #fff;
  display: inline-block;
  font-size: .625rem;
  font-weight: 700;
  letter-spacing: .06em;
  padding: 5px 5px 6px;
  text-align: center;
  min-width: 110px;
}

/*slick*/
.slick-slider{position: relative;}
.slick-slider [aria-disabled="true"]{opacity: .4;}
.slick-arrow{
  bottom: 0;
  position: absolute;
}
.slick-arrow[aria-disabled="false"]:hover {opacity: .7;}
.prev-arrow{
  right: 50%;
  margin-right: 40px;
  z-index: 1;
}
.next-arrow{
  left: 50%;
  margin-left: 40px;
  z-index: 1;
}

/*detail*/
.detail_ttl{
  font-size: 1rem;
  line-height: 1.4;
}
.meta{
  align-items: center;
  display: flex;
  font-family: var(--arial);
  font-stretch: condensed;
}
.detail_date{
  font-size: .625rem;
  letter-spacing: .02em;
  margin-right: 20px;
}
.pre-text {
  line-height: 2;
  font-size: .875rem;
  font-weight: 500;
  white-space: pre-wrap;
}
@media screen and (min-width: 768px){
  .detail_ttl{font-size: 2rem;}
  .detail_add{font-size: .875rem;}
  .detail_date{
    font-size: .75rem;
    margin-right: 50px;
  }
  .pre-text {
    font-size: 1.125rem;
  }
}

/*section*/
/**Contact**/
.sec-contact{
  background: var(--bg-color);
  padding: 64px 0 72px;
}
.contact-box_para {
  font-size: 0.9375rem;
  font-weight: 500;
  margin-top: 42px;
}
.btn-black.mail{
  font-size: 0.9375rem;
  font-weight: 500;
  max-width: 384px;
  padding: 20px;
  width: 90%;
}
.tel_number{
  font-size: 2rem;
  font-weight: 500;
}
.tel_number img{
  margin-right: 10px;
  margin-top: -6px;
  width: 30px;
}
@media screen and (max-width: 1023.98px){
  .tel-wrap{margin-top: 16px;}
  .mail-wrap {
    margin-top: 52px;
    text-align: center;
  }
}
@media screen and (min-width: 1024px){
  .sec-contact {padding: 84px 0 120px;}
  .sec-contact .inner{width: 90%;}
  .contact-box_para{
    font-size: 1.5rem;
    margin-top: 68px;
  }
  .contact-box{
    align-items: stretch;
    display: flex;
    justify-content: center;
    margin-top: 54px;
    position: relative;
  }
  .contact-box>div{width: 50%;}
  .contact-box::before{
    background: var(--font-color);
    content: "";
    height: 100%;
    left: 50%;
    position: absolute;
    transform: translateX(-50%);
    width: 1px;
  }
  .tel-wrap{
    margin-left: auto;
    margin-right: clamp(2.5rem, -5.5rem + 10vw, 5rem);
    width: max-content;
  }
  .tel_number{
    font-size: clamp(3rem, 1.125rem + 2.5vw, 3.75rem);
    line-height: 1;
    margin-top: -.2em;
  }
  .tel_number img{
    margin-right: 20px;
    margin-top: -8px;
    width: 48px;
  }
  .tel_reception{
    line-height: 1;
    margin-top: 16px;
  }
  .mail-wrap{
    height: 100%;
    margin-left: clamp(2.5rem, -5.5rem + 10vw, 5rem);
    margin-right: auto;
    width: max-content;
  }
  .btn-black.mail{
    font-size: 1.25rem;
    height: 100%;
  }
}

/*about*/
.page-about{padding-bottom: 70px;}
.hero-about{
  background: url(/img/mv-about.png) no-repeat;
  background-size: cover;
}
.hero-about .hero-wrap{
  padding-top: 46px;
}
.hero-about-txt h1 {
  font-size: 1.875rem;
  font-weight: 700;
  text-align: center;
}
.hero-about-txt p{
  font-size: .9375rem;
  font-weight: 500;
  letter-spacing: .02em;
  margin-top: 32px;
}
.sec-greeting{padding: 74px 0 86px;}
.greeting-text{margin-top: 30px;}
.greeting-text p+p{margin-top: 2em;}
.greeting-text p:last-of-type{font-size: .9375rem;}
.sec-profile{padding-bottom: 70px;}
.profile-table{
  font-size: .875rem;
  margin-top: 34px;
}
.profile-table td .d-ib{margin-right: 1em;}
.sec-history {
  background-image: url(/img/bg-history.png);
  margin: 0 calc(50% - 50vw);
  width: 100vw;
}
.sec-history .bg-wrap{width: 685px;}
.history-wrap{margin-top: 28px;}
@media screen and (min-width: 768px){
  .page-about{padding-bottom: 200px;}
  .hero-about .hero-wrap{padding-top: clamp(3.375rem, -5.432rem + 18.35vw, 13.375rem);}
  .hero-about-txt h1 {font-size: 3.75rem;}
  .hero-about-txt p{
    font-size: 1.5rem;
    margin-top: 46px;
  }
  .sec-greeting{padding: 202px 0 246px;}
  .greeting-text{margin-top: 70px;}
  .greeting-text p:last-of-type{
    font-size: 1.5rem;
    margin-top: 68px;
  }
  .sec-profile{padding-bottom: 200px;}
  .profile-table{margin-top: 76px;}
  .profile-table th,.profile-table td{padding: 24px;}
  .sec-history .bg-inner{padding-bottom: 172px;}
}
@media screen and (min-width: 1024px){
  .profile-table{font-size: 1.25rem;}
  .sec-history .bg-wrap{margin-top: 78px;}
  .history-wrap{margin-top: 42px;}
  .history-wrap .list li{padding: 8px 0;}
}

/**Business**/
.page-business{padding-bottom: 60px;}
.sec-activities{padding-bottom: 58px;}
.activities-wrap{margin-top: 50px;}
.business-box{font-weight: 500;}
.business-box+.business-box{margin-top: clamp(4.625rem, -5.125rem + 20.31vw, 7.875rem);}
.business_tag{font-size: 0.875rem;}
.business_ttl{
  font-size: 1.125rem;
  font-weight: 700;
  margin-top: 6px;
}
.business_txt{margin-top: 12px;}
@media screen and (max-width: 1023.98px){
  .business_img{
    margin-top: clamp(2.625rem, 1.845rem + 1.22vw, 3.125rem);
    margin-top: 20px;}
}
@media screen and (min-width: 1024px) {
  .page-business{padding-bottom: 200px;}
  .sec-activities{padding-bottom: 192px;}
  .activities-wrap{margin-top: 80px;}
  .business-box {
    display: grid;
    gap:0 clamp(2.5rem, -1.402rem + 6.1vw, 5rem);
    grid-template-columns: clamp(20rem, -4.78rem + 38.72vw, 35.875rem) 1fr;
    grid-template-rows: auto auto 1fr;
  }
  .business_tag {
    font-size: clamp(1.125rem, 0.938rem + 0.39vw, 1.25rem);
    grid-area: 1 / 1 / 2 / 2;
  }
  .business_ttl {
    font-size: clamp(1.25rem, 0.079rem + 1.83vw, 2rem);
    grid-area: 2 / 1 / 3 / 2;
    margin-top: clamp(2.5rem, 0.939rem + 2.44vw, 3.5rem);
  }
  .business_img {
    grid-area: 1 / 2 / 4 / 3;
    max-width: 456px;
  }
  .business_txt {
    grid-area: 3 / 1 / 4 / 2;
    margin-top: 26px;
  }
}

/*achievement*/
.sec-achievement{
  background-image: url(/img/bg-achievement.png);
  margin: 0 calc(50% - 50vw);
  width: 100vw;
}
.achievement-wrap{
  margin-top: 22px;
  padding-bottom: 46px;
}

/*asset*/
.sec-assetList{padding-bottom: 70px;}
.assetList-cat{
  border-bottom: 1px dashed var(--font-color);
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 58px;
  padding-bottom: 20px;
}
.assetList-cat li{
  border: 1px solid var(--font-color);
  color: inherit;
  display: block;
  max-width: calc(50% - 6px);
  padding: 12px;
  text-align: center;
  transition: .3s;
  width: 170px;
}
.assetList-cat li:hover, .assetList-cat .current{
  background: var(--font-color);
  color: #fff;
}
.assetList-wrap{
  display: flex;
  flex-direction: column;
  gap: 20px;
  margin-top: 20px;
}
.assetList-box{
  border:1px solid;
  position: relative;
}
.assetList-box a{
  color:inherit;
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 20px 20px 14px;
}
.assetList-box a:hover .assetList_img{opacity:.7;}
.meta-data::before{
  background: var(--font-color);
  color: #fff;
  content: attr(data-meta)"";
  left: 0;
  padding: 9px 22px;
  position: absolute;
  top: 0;
  z-index: 1;
}
.assetList_img {margin-bottom: 14px;}
.assetList_img img{width: 100%;}
.assetList_add{
  font-weight: 500;
  margin-bottom: 6px;
}
.assetList_ttl{
  font-size: clamp(1.063rem, 0.751rem + 0.49vw, 1.25rem);
  font-weight: 500;
  margin-bottom: 22px;
}
.assetList_link, .sale::before{
  font-family: var(--arial);
  font-size: .75rem;
  font-stretch: condensed;
  font-weight: 700;
}
.assetList_link{
  letter-spacing: .06em;
  margin-top: auto;
}
.assetList-box:hover .assetList_link{text-decoration: underline;}
.assetList-more{margin-top: 52px;}
@media screen and (min-width: 768px){
  .assetList-cat {gap: 20px;}
  .assetList-cat a{min-width: 170px;}
  .assetList-wrap{
    flex-direction: row;
    flex-wrap: wrap;
    gap: clamp(3.125rem, -2.5rem + 11.72vw, 5rem) 35px;
  }
  .assetList-box{width: calc((100% - 35px) / 2);}
  .assetList_add{
    font-size: clamp(0.75rem, 0.542rem + 0.32vw, 0.875rem);
    margin-bottom: 12px;
  }
  .assetList_ttl{margin-bottom: 40px;}
  .assetList-more{margin-top: 120px;}
}
@media screen and (min-width: 1024px){
  .assetList-box{width: calc((100% - 70px) / 3);}
  .sec-assetList{padding-bottom: 150px;}
}

/**aseet-view**/
.asset-wrap{padding-bottom: 78px;}
.asset-head{margin-bottom: 50px;}
.asset-head .detail_ttl{margin-top: 4px;}
.asset-head .detail-meta {margin-top: 20px;}
.asset-wrap .pre-text{margin-top: 50px;}
.asset-wrap .btn-wrap{margin-top: 50px;}
@media screen and (min-width: 768px){
  .page-asset .pagehead{margin-bottom: 48px;}
  .asset-head{margin-bottom: 80px;}
  .asset-head .detail_ttl{margin-top: 18px;}
  .asset-head .detail-meta{margin-top: 58px;}
  .asset-wrap .pre-text{margin-top: 72px;}
  .asset-wrap .btn-wrap{margin-top: 164px;}
}

/*access*/
.sec-access{padding-bottom: 62px;}
.accessList{margin-top: 50px;}
.access-box h3{
  font-size: 1rem;
  font-weight: 500;
  margin-bottom: 18px;
}
.access-box+.access-box {margin-top: 48px;}
.accessList .map {
  height: 300px;
  margin-top: 18px;
}
@media screen and (min-width: 1024px){
  .sec-access{padding-bottom: 198px;}
  .accessList{margin-top: 80px;}
  .access-box h3{
    font-size: 1.25rem;
    margin-bottom: 24px;
  }
  .access-box+.access-box {margin-top: 86px;}
  .access-box .map {
    height: 600px;
    margin-top: 40px;
  }
}

/*mail*/
.sec-form{padding-bottom:60px;}
.form-inner{
  margin-left: auto;
  margin-right: auto;
  width: 90%;
}
.form-description{margin-bottom: 54px;}
.form-note{margin-top: 10px;}
@media screen and (min-width: 768px){
  .sec-form{padding-bottom:200px;}
  .form-description{margin-bottom: 154px;}
}

/*privacy*/
.sec-privacy{padding-bottom: 84px;}
.sec-privacy h2{
  font-size: inherit;
  font-weight: 500;
  line-height: 2;
  margin-top: 2em;
}
.sec-privacy p+p{margin-top: 2em;}
@media screen and (max-width: 767.98px){
  .address{width: 100px;}
}
@media screen and (min-width: 1024px){
  .sec-privacy{padding-bottom: 196px;}
}

/**recruit**/
.sec-recruit{padding-bottom: 130px;}
@media screen and (min-width: 768px){
  .sec-recruit{padding-bottom: 370px;}
}

/*sitemap*/
.sec-sitemap{padding-bottom: 72px;}
.sitemap{
  font-size: .875rem;
  font-weight: 500;
  line-height: 2.7;
}
.sitemap li{margin-top: 4px;}
.sitemap a{color: inherit;}
.sitemap a:hover{text-decoration: underline;}
@media screen and (min-width: 768px){
  .sec-sitemap{padding-bottom: 200px;}
  .sitemap{font-size: 1.125rem;}
  .sitemap:nth-of-type(1){width: 24%;}
  .sitemap:nth-of-type(2){width: 40%;}
  .sitemap:nth-of-type(3){width: 36%;}
  .sitemap li{margin-top: 2em;}
  .sitemap-wrap{
    display: flex;
    justify-content: space-between;
  }
}

/*top*/
.page-home .section_ttl{font-weight: 500;}
.page-home .section_sub {margin-top: 6px;}
.hero-top{
  background: url(/img/mv-top.png) no-repeat;
  background-size: cover;
}
.hero-top .hero-wrap {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.hero-top .hero_logo{
  margin-top: 24px;
  width: 162px;
}
.sec-top-business{padding: clamp(2.125rem, -2.829rem + 10.32vw, 7.75rem) 0 clamp(4.625rem, -8.058rem + 26.42vw, 12.75rem);}
.sec-top-business .business-wrap{margin-top: 50px;}
.sec-top-business .business_lead{
  font-size: clamp(1rem, -0.5rem + 3.13vw, 1.5rem);
  line-height: 1.46;
}
.sec-top-business .business-box+.business-box{margin-top: 82px;}
.sec-top-business .business_img img{width: 100%;}
.sec-top-business .business_link {margin-top: 28px;}
.sec-top-mjy {
  background-image: url(/img/bg-partner.png);
  margin: 0 calc(50% - 50vw);
  width: 100vw;
}
.sec-top-mjy .mjy-wrap{
  max-width: 100%;
  width: 750px;
}
.sec-top-mjy .mjy_lead{
  font-size: 15px;
  font-weight: 500;
  margin-top: 36px;
}
.sec-top-mjy .mjy-more{margin-top: 46px;}
.sec-top-asset{padding: 40px 0 56px;}
.sec-top-asset .assetList-wrap{margin-top: 28px;}
.sec-top-asset .assets-more{margin-top: 50px;}
.sec-top-news{padding: 34px 0 54px;}
.top-news-wrap .news-more {margin-top: 40px;}
@media screen and (max-width: 767.98px){
  .sec-top-business .business_lead {margin-top: 20px;}
}
@media screen and (min-width: 768px){
  .page-home .section_ttl {font-size: 38px;}
}
@media screen and (max-width: 1023.98px) {
  .sec-top-business .business_link{text-align: center;}
  .top-news-wrap .news-more{text-align: center;}
}
@media screen and (min-width: 1024px){
  .page-home .section_ttl {font-size: clamp(3.25rem, 2.419rem + 1.3vw, 3.75rem);}
  .page-home .section_sub {margin-top: 10px;}
  .hero-top .hero_logo{width: 210px;}
  .top-business-ttl{
    display: flex;
    gap: clamp(3.25rem, -3.607rem + 10.71vw, 7.375rem);
  }
  .sec-top-business .business-wrap{margin-top: 116px;}
  .sec-top-business .business-box+.business-box{margin-top: 120px;}
  .sec-top-business .business_link {
    grid-area: 3 / 1 / 4 / 3;
    margin-top: 50px;
  }
  .sec-top-business .business_tag{margin-top: 4px;}
  .sec-top-mjy .mjy-inner{padding: 122px 120px 120px;}
    .mjy_lead {
    font-size: 24px;
    margin-top: 68px;
  }
  .sec-top-mjy .mjy-more{margin-top: 146px;}
  .sec-top-asset{padding: 250px 0 200px;}
  .sec-top-asset .assetList-wrap{margin-top: 76px;}
  .page-home .sec-achievement .bg-inner{margin-left: auto;}
  .sec-top-news{padding: 202px 0 198px;}
  .top-news-wrap{
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto 1fr;
    grid-column-gap: 80px;
    grid-row-gap: 0px;
  }
  .top-news-wrap .section-ttl {grid-area: 1 / 1 / 2 / 2;}
  .top-news-wrap .newsList {grid-area: 1 / 2 / 3 / 3;}
  .top-news-wrap .news-more {
    grid-area: 2 / 1 / 3 / 2;
    margin-top: 116px;
  }
  .top-news-wrap .detail_date{margin-right: 20px;}
}
@media screen and (min-width: 1280px){
  .top-news-wrap .detail_date{margin-right: 50px;}
}

