@charset "UTF-8";
.message { margin-top: 64px;}
.message__ttl { font-size: clamp(1.8rem, 1.875vw, 2.1rem);}
.message p + p { margin-top: 16px; }

/*** company ***/
.company-outline__img { margin-top: 24px;}
.company-outline__logo { width: 256px; margin-top: 32px;}
.company-outline__table {
  width: 100%;
  border-bottom:1px solid #ddd;
  margin-top: 24px;
  border-collapse: separate;
  border-spacing: 0;
}
.company-outline__table th,
.recruit-detail__table th {
  border-top:1px solid #ddd;
  white-space: nowrap;
  vertical-align: middle;
  padding:16px;
}
.company-outline__table td,
.recruit-detail__table td{
  position: relative;
  border-top:1px solid #ddd;
  padding:16px 0 16px 24px;
  line-height: 1.5;
}
.company-outline__table td:before{
  content:'';
  position: absolute;
  left: 0;
  width: 1px;
  height: calc(100% - 32px);
  top: 50%;
  transform: translateY(-50%);
  background:#ddd;
}
.company-outline__kamei { margin-bottom: 16px;}
.company-outline__kamei-logo {
  display: block;
  width:40px;
  margin-bottom: 8px;
}
.company-outline iframe.company-outline__map {
  object-fit: cover;
  aspect-ratio:16 / 9;
}

.company-shop__item { max-width: 352px; margin: auto;}
.company-shop__item div:first-of-type{ margin-top: 32px;}
.company-shop__item div:last-of-type { margin-top: 40px;}
.company-shop__item + .company-shop__item { margin-top: 48px;}
.company-shop__data {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(2, auto);
  justify-content: flex-start;
  width: 100%;
  font-size: .9375em;
}
.company-shop__data dt {
  line-height: 1;
  border-right: 1px solid #ddd;
  padding-right: 16px;
}
.company-shop__data dd {  
  line-height: 1.75;
  margin-block: var(--leading-trim);
}
.company-staff__first,
.company-staff__second{
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(130px, 1fr));
  gap:32px 24px;
}
.company-staff__item figcaption {
  display: block;
  text-align: center; 
  margin-top: 16px;
}
.company-staff__item figcaption span { display: block; font-size: .875em;}

@media (min-width:600px) {
.message p { text-align: center;}
.company-outline .sec__body,
.company-outline__img,
.company-shop__item +.company-shop__item{ margin-top:0;}
.company-outline__kamei-logo { float: left;}
.company-shop__wrap { display: flex; gap:24px;}
.company-staff__first,
.company-staff__second { grid-template-columns: 1fr 1fr 1fr;}
}

@media (min-width:768px) {
.message__ttl { margin-bottom: 32px;} 
.company-outline__img { aspect-ratio: 736 / 314;}
.company-outline__img img{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover; 
  }
.company-outline__logo { margin-top: 40px;}
.company-outline__table td { padding:24px 0 24px 32px;}
}
@media (min-width:980px) {
.company-shop__wrap { gap: 32px;}
.company-outline__table th { width: 160px;}
.company-staff__first,
.company-staff__second { gap:56px;}
}

/*** recruit　***/
.recruit-apply__phone-no {
  font-size: clamp(2.1rem, 2.734375vw, 3rem);
  line-height: 1;
  margin-bottom: 8px;
}
.recruit-detail__table {
  width: 100%;
  border-bottom:1px solid #ddd;
  border-collapse: separate;
  border-spacing: 0;
  margin-top: 0;
}
.recruit-detail__table th {
  background: #364e65;
  color: #fff;
}
.recruit-detail__table tr:first-of-type th{ border-top-left-radius: 3px;}
.recruit-detail__table tr:last-of-type th { border-bottom-left-radius: 3px;}
@media (min-width:980px) {
.recruit-detail__table th { width: 160px;}
}
/*** privacy policy　***/
.usage__txt + .usage__txt,
.privacy__txt { margin-top:16px; }
@media (min-width:768px) {
.usage__txt + .usage__txt,
.privacy__txt { margin-top:24px; }
}

/*** link ***/
.link-first { margin-top: 0;}
.link__container{
  max-width: 1120px;
  margin: 0 auto;
}
.link__item {
  display: block;
  width: 100%; 
  background: #fbf9f6;
}
.link__head {
  display: block;
  position: relative;
  text-align: center;
  height: 48px;
  border-radius: 48px;
  border: solid 1px #364e65;
  box-sizing: border-box;
  line-height: 1;
  padding: 14px 0 16px;
  cursor: pointer;
}
.link__head:after {
  content: url("../img/link/icon-link-ac.svg");
  display: block;
  width: 6px;
  height: 18px;
  position: absolute;
  bottom:-15px;
  left: 49%;
  right: 49%;
}
.link__item ul {
  display: none;
  overflow: hidden;
  text-align: center;
  background: #fff;
  border-radius: 5px;
  padding:44px 16px 24px;
  margin-top: -20px;
}
.link__item ul > li:first-child {border-top: 1px solid #ddd; }
.link__item li { line-height: 56px; border-bottom: 1px solid #ddd;transition: .3s;}
.link__item li:hover{background: #f0f4f9; transition: .3s;}
.link__head.active { background: #364e65; color: #fff;}

@media (min-width:600px) {
.link__container {
  display: grid;
  grid-template-columns:repeat(2, 1fr);
  }
}
@media (min-width:768px) {
.link__container {
  grid-template-columns:repeat(3, 1fr);
  gap: 40px;}
}