@charset "UTF-8";

/*************************************************************************************
共通
**************************************************************************************/
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

html,
body {
  padding: 0;
  margin: 0;
}

body {
  font-size: 16px;
  line-height: 1.6;
  background: #fff;
  font-family: "Noto Sans JP", sans-serif;
}

.wrap {
  overflow: hidden;
}

img {
  max-width: 100%;
  height: auto;
}

ul,
ol {
  list-style: none;
  margin: 0;
  padding: 0;
}

a {
  color: inherit;
  text-decoration: none;
}

p {
  margin: 0;
  padding: 0;
}

figure {
  margin: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  padding: 0;
}

.clear::after {
  content: "";
  clear: both;
  display: block;
}

@media (max-width: 1199px) {
  .pc-only {
    display: none;
  }
}

@media (max-width: 767px) {
  .pc-only {
    display: none;
  }
}

.tab-below {
  display: none;
}

@media (max-width: 1199px) {
  .tab-below {
    display: block;
  }
}

@media (min-width: 1200px) {
  .tab-only {
    display: none;
  }
}

@media (max-width: 1199px) {
  .tab-only {
    display: block;
  }
}

@media (max-width: 767px) {
  .tab-only {
    display: none;
  }
}

.sp-only {
  display: none;
}

@media (max-width: 767px) {
  .sp-only {
    display: block;
  }
}

/*デバイスごとの表示切り替え*/
@media (max-width: 1199px) {
  .pc-only {
    display: none;
  }
}

@media (max-width: 767px) {
  .pc-only {
    display: none;
  }
}

@media (max-width: 767px) {
  .pc-tab {
    display: none;
  }
}

.tab-below {
  display: none;
}

@media (max-width: 1199px) {
  .tab-below {
    display: block;
  }
}

@media (min-width: 1200px) {
  .tab-only {
    display: none;
  }
}

@media (max-width: 1199px) {
  .tab-only {
    display: block;
  }
}

@media (max-width: 767px) {
  .tab-only {
    display: none;
  }
}

.sp-only {
  display: none;
}

@media (max-width: 767px) {
  .sp-only {
    display: block;
  }
}

.main {
  padding-top: 140px;
}

@media (max-width: 1199px) {
  .main {
    padding-top: 100px;
  }
}

.page-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 50px;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  max-width: 1200px;
  width: 98%;
  margin: 60px auto;
}

@media (max-width: 1199px) {
  .page-wrap {
    gap: 20px;
  }
}

@media (max-width: 767px) {
  .page-wrap {
    display: block;
    max-width: 95%;
    margin-right: auto;
    margin-left: auto;
    margin-top: 30px;
  }
}

.main-contents {
  width: calc(100% - 350px);
}

@media (max-width: 1199px) {
  .main-contents {
    width: calc(100% - 280px);
  }
}

@media (max-width: 767px) {
  .main-contents {
    width: 100%;
  }
}

.sidemenu {
  width: 300px;
}

@media (max-width: 1199px) {
  .sidemenu {
    width: 240px;
  }
}

@media (max-width: 767px) {
  .sidemenu {
    max-width: 600px;
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    margin-top: 60px;
  }
}

.title {
  font-size: 28px;
  color: #336DAB;
  border-bottom: 2px solid #336DAB;
}

@media (max-width: 767px) {
  .title {
    font-size: 24px;
  }
}

.side-banner {
  margin-top: 15px;
}

.side-banner a {
  width: 100%;
}

.side-banner a img {
  width: 100%;
  aspect-ratio: 300/132;
  -o-object-fit: cover;
  object-fit: cover;
}

.sidemenu__section-title {
  font-size: 20px;
  color: #336DAB;
  border-top: 3px solid #336DAB;
}

.side-btn {
  width: 80px;
  position: fixed;
  right: 0;
  z-index: 9996;
}

.side-btn a {
  width: 100%;
  display: block;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.side-btn-left {
  width: 130px;
  position: fixed;
  right: 0;
  z-index: 9996;
}

.side-btn-left a {
  width: 100%;
  display: block;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

@media (min-width: 1200px) {
  .side-btn a:hover {
    width: 103%;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
}

.btn-kissweb {
  top: 150px;
}

@media (max-width: 1199px) {
  .btn-kissweb {
    top: 180px;
  }
}

.btn-trial {
  top: 280px;
}

.btn-left {
  bottom: 95px;
  left: 10px;
}

.btn-left-movie {
  bottom: 10px;
  left: 10px;
}

@media (max-width: 1199px) {
  .btn-trial {
    top: 300px;
  }
}

.about-kissweb {
  position: fixed;
  top: 430px;
  right: 10px;
  width: 120px;
  z-index: 9997;
}

.about-kissweb a {
  width: 100%;
  display: block;
  position: relative;
  overflow: hidden;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.about-kissweb a::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 50%;
  height: 100%;
  background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), color-stop(rgba(255, 255, 255, 0.3)), to(rgba(255, 255, 255, 0)));
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 50%, rgba(255, 255, 255, 0) 100%);
  -webkit-transform: skewX(-25deg);
  transform: skewX(-25deg);
}

@media (min-width: 1200px) {
  .about-kissweb a:hover {
    -webkit-transform: scale(1.03) translateY(-2px);
    transform: scale(1.03) translateY(-2px);
    -webkit-filter: drop-shadow(0 10px 15px rgba(255, 254, 196, 0.2));
    filter: drop-shadow(0 10px 15px rgba(254, 255, 185, 0.2));
    -webkit-transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  }

  .about-kissweb a:hover::before {
    -webkit-animation: shine 0.75s;
    animation: shine 0.75s;
  }
}

@-webkit-keyframes shine {
  100% {
    left: 125%;
  }
}

@keyframes shine {
  100% {
    left: 125%;
  }
}

.under-btn__wrap {
  position: fixed;
  bottom: 0;
  width: 100%;
  right: 0;
  left: 0;
  z-index: 997;
}

.about-kissweb--sp {
  background-color: #FED24E;
}

.about-kissweb--sp a {
  display: block;
  padding: 10px;
  text-align: center;
}

.under-btn__column {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.btn-kissweb--sp {
  width: 50%;
  background: linear-gradient(165deg, rgb(74, 154, 198) 0%, rgb(28, 55, 94) 100%);
}

.btn-kissweb--sp a {
  display: block;
  padding: 10px;
  text-align: center;
  color: #ffffff;
}

.btn-trial--sp {
  width: 50%;
  background-color: #4BA7D9;
}

.btn-trial--sp a {
  display: block;
  padding: 10px;
  text-align: center;
  color: #ffffff;
}

/* マスクのスタイル */
.mask {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  display: none;
  /* 初期状態では非表示 */
  z-index: 999;
}

/* ポップアップのスタイル */
.post-cta--popup {
  position: fixed;
  top: 60%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  background-color: #fff;
  border-radius: 8px;
  max-width: 1100px;
  width: 90%;
  padding: 80px;
  display: none;
  /* 初期状態では非表示 */
  z-index: 9997;
}

@media (max-width: 767px) {
  .post-cta--popup {
    padding: 30px 15px;
  }
}

.post-cta--popup .post-cta__wrap {
  border: 3px solid #336DAB;
}

@media (max-width: 1199px) {
  .post-cta--popup .post-cta__wrap {
    text-align: left;
  }
}

/* 閉じるボタンのスタイル */
.post-cta__close {
  position: absolute;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  top: -25px;
  right: -25px;
  background: #ffffff;
  border-radius: 50%;
  border: 1px solid #7D7D7D;
  font-size: 48px;
  width: 56px;
  height: 56px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 0;
  cursor: pointer;
  color: #7D7D7D;
}

@media (max-width: 767px) {
  .post-cta__close {
    top: -35px;
    right: -15px;
  }
}

/*************************************************************************************
ヘッダー
**************************************************************************************/
.header {
  position: fixed;
  width: 100%;
  background-color: #ffffff;
  left: 0;
  right: 0;
  top: 0;
  z-index: 9997;
}

.header__logo a {
  display: block;
  width: 320px;
  margin: 15px auto;
}

@media (max-width: 1199px) {
  .header__logo a {
    margin: 5px auto;
  }
}

@media (max-width: 767px) {
  .header__logo a {
    width: 200px;
  }
}

.header__lists {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background: linear-gradient(165deg, rgb(74, 154, 198) 0%, rgb(28, 55, 94) 100%);
  color: #ffffff;
}

@media (max-width: 1199px) {
  .header__lists {
    position: relative;
    height: 40px;
  }
}

@media (max-width: 767px) {
  .header__lists {
    height: 35px;
  }
}

.header__list a {
  padding: 7px 25px;
}

@media (max-width: 1199px) {
  .header__list a {
    display: none;
  }
}

.parent-menu {
  position: relative;
}

.parent-menu:hover,
.parent-menu:hover .child-menu__wrap {
  visibility: visible;
  opacity: 1;
  z-index: 999;
  pointer-events: auto;
  /* ホバー時にマウスイベント有効化 */
}

.parent-menu .child-menu__wrap {
  position: absolute;
  top: 120%;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  min-width: 150px;
  background: #E1E8EB;
  white-space: nowrap;
  text-align: center;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.child-menu:not(:last-child) {
  border-bottom: 1px solid #ffffff;
}

.child-menu a {
  display: block;
  color: #111111;
  padding: 15px;
}

.child-menu a:hover {
  background-color: rgba(228, 228, 228, 0.8);
}

.parent-menu:hover .child-menu__wrap {
  pointer-events: auto;
}

.header-login a {
  background-color: #FED24E;
  border-radius: 3px;
  padding: 5px 40px;
  margin: 2px 20px;
  color: #111111;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.header-login a img {
  width: 13px;
  margin-right: 15px;
}

@media (max-width: 1199px) {
  .header-login a {
    position: absolute;
    right: 1%;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    margin: 0;
  }
}

@media (max-width: 767px) {
  .header-login a {
    padding: 1px 15px;
  }
}

/*************************************************************************************
ドロワーメニュー
**************************************************************************************/
#drawer-nav {
  position: fixed;
  z-index: 9998;
  top: 0;
  right: -120%;
  width: 312px;
  height: 100%;
  background: linear-gradient(165deg, rgb(74, 154, 198) 0%, rgb(28, 55, 94) 100%);
  -webkit-transition: all 0.6s;
  transition: all 0.6s;
  overflow-y: scroll;
}

@media (min-width: 1200px) {
  #drawer-nav {
    display: none;
  }
}

@media (max-width: 767px) {
  #drawer-nav {
    width: 100%;
  }
}

#drawer-nav.panelactive {
  right: 0;
}

.drawer-nav-list {
  position: fixed;
  z-index: 999;
  width: 100%;
  height: 100vh;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

#drawer-nav ul {
  position: absolute;
  z-index: 999;
  top: 100px;
  width: 100%;
  text-align: left;
}

#drawer-nav li {
  list-style: none;
}

#drawer-nav li a {
  text-decoration: none;
  padding: 19px 0;
  padding-left: 20px;
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #ffffff;
  border-bottom: 1px solid #4BA7D9;
}

#drawer-nav li a img {
  width: 30px;
  height: 30px;
}

#drawer-nav li .invalid {
  pointer-events: none;
}

/*************************************************************************************
ハンバーガーボタン
**************************************************************************************/
.hamburger {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  border-radius: 50%;
  position: fixed;
  z-index: 9999;
  top: 0;
  right: 15px;
  cursor: pointer;
  width: 60px;
  height: 60px;
  background-color: transparent;
}

@media (min-width: 1200px) {
  .hamburger {
    display: none;
  }
}

@media (max-width: 767px) {
  .hamburger {
    right: 5px;
  }
}

.hamburger span {
  display: inline-block;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
  position: absolute;
  left: 13px;
  height: 2px;
  border-radius: 2px;
  background-color: #336DAB;
  width: 33px;
}

.hamburger span:nth-of-type(1) {
  top: 20px;
}

.hamburger span:nth-of-type(2) {
  top: 30px;
}

.hamburger span:nth-of-type(3) {
  top: 40px;
}

.hamburger.active span:nth-of-type(1) {
  top: 23px;
  left: 14px;
  -webkit-transform: translateY(6px) rotate(-45deg);
  transform: translateY(6px) rotate(-45deg);
  width: 33px;
  background-color: #ffffff;
}

.hamburger.active span:nth-of-type(2) {
  opacity: 0;
}

.hamburger.active span:nth-of-type(3) {
  top: 35px;
  left: 14px;
  -webkit-transform: translateY(-6px) rotate(45deg);
  transform: translateY(-6px) rotate(45deg);
  width: 33px;
  background-color: #ffffff;
}

#overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  z-index: 998;
  display: none;
}

@media (min-width: 1200px) {
  #overlay {
    position: static;
  }
}

/* Prevent background scrolling when menu is active */
body.panelactive {
  overflow: hidden;
}

@media (min-width: 1200px) {
  body.panelactive {
    overflow: auto;
  }
}

/*************************************************************************************
ハンバーガーメニュー内のアコーディオン
**************************************************************************************/
.accordion__box-parent {
  position: relative;
  font-weight: bold;
  color: #ffffff;
  border-bottom: 1px solid #4BA7D9;
  padding: 19px 0;
  padding-left: 20px;
}

.accordion__box-icon {
  width: 14px;
  height: 14px;
  position: absolute;
  right: 14px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.accordion__box-icon.is-open .accordion__box-bar2 {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}

.accordion__box-bar1 {
  width: 14px;
  height: 2px;
  background: #ffffff;
  border-radius: 20px;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  left: 0;
}

.accordion__box-bar2 {
  width: 2px;
  height: 14px;
  background: #ffffff;
  border-radius: 20px;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  top: 0;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.accordion__box-child {
  display: none;
}

.accordion__box-content {
  position: static !important;
  background-color: #336DAB;
}

/*************************************************************************************
フッター
**************************************************************************************/
.footer {
  background: linear-gradient(165deg, rgb(74, 154, 198) 0%, rgb(28, 55, 94) 100%);
}

.footer__container {
  max-width: 1200px;
  width: 98%;
  margin-right: auto;
  margin-left: auto;
  padding: 20px 0;
}

@media (max-width: 767px) {
  .footer__container {
    padding-bottom: 120px;
  }
}

.footer__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  color: #ffffff;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-top: 40px;
}

@media (max-width: 1199px) {
  .footer__wrap {
    display: block;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-right: auto;
    margin-left: auto;
  }
}

@media (max-width: 767px) {
  .footer__wrap {
    margin-top: 20px;
  }
}

.footer__info address {
  font-style: normal;
  font-weight: 300;
  margin-top: 30px;
  font-size: 14px;
}

@media (max-width: 1199px) {
  .footer__info {
    text-align: center;
  }
}

@media (max-width: 767px) {
  .footer__info {
    margin-top: 15px;
  }
}

.footer__logo {
  width: 320px;
}

@media (max-width: 1199px) {
  .footer__logo {
    margin-right: auto;
    margin-left: auto;
  }
}

.footer__nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media (max-width: 1199px) {
  .footer__nav {
    margin-top: 40px;
  }
}

@media (max-width: 767px) {
  .footer__nav {
    display: block;
    text-align: center;
  }
}

.footer__nav li a {
  display: block;
  padding: 16px;
}

@media (max-width: 767px) {
  .footer__nav li a {
    padding: 10px;
  }
}

.footer__attention {
  text-align: center;
  color: #ffffff;
  margin-top: 95px;
  font-size: 12px;
  font-weight: 300;
}

@media (max-width: 767px) {
  .footer__attention {
    margin-top: 60px;
  }
}

.footer__copy {
  display: block;
  text-align: center;
  color: #ffffff;
  margin-top: 50px;
  font-weight: 300;
}

/*************************************************************************************
TOPメインコンテンツ
**************************************************************************************/

/*************************************************************************************
↓KissWeb広告横長バナー↓
**************************************************************************************/
.top-hero {
  max-width: 1200px;
  width: 98%;
  margin: 20px auto 0;
}

.top-hero a {
  display: block;
  position: relative;
  overflow: hidden;
  border-radius: 8px;
}

.top-hero a::after {
  content: "";
  position: absolute;
  top: -100%;
  left: -100%;
  width: 50%;
  height: 300%;
  background: linear-gradient(to right,
      rgba(255, 255, 255, 0) 0%,
      rgba(255, 255, 255, 0.3) 50%,
      rgba(255, 255, 255, 0) 100%);
  transform: rotate(25deg);
  animation: shine 6s infinite;
  pointer-events: none;
}

@keyframes shine {
  0% {
    top: -100%;
    left: -100%;
  }

  30% {
    top: 0;
    left: 100%;
  }

  100% {
    top: 0;
    left: 100%;
  }
}

.top-hero img {
  width: 100%;
  height: auto;
  display: block;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}

.top-hero a:hover img {
  -webkit-transform: scale(1.01);
  transform: scale(1.01);
}

@media (max-width: 1200px) {
  .top-hero {
    display: none;
  }
}

/*↑ここまで↑*/

/*************************************************************************************
春のキャンペーンバナー【4/1~5/31まで】
**************************************************************************************/

.banner {
  text-align: center;
  margin: 20px 0;
}

.banner a {
  display: inline-block;
  position: relative;
  overflow: hidden;
  /* キラ演出をはみ出させない */
}

.banner img {
  width: 100%;
  height: auto;
  transition: transform 0.4s ease, opacity 0.4s ease;
}

/* 🔥 ホバーで少し拡大 */
.banner a:hover img {
  transform: scale(1.05);
}

/* ✨ キラッ用の疑似要素 */
.banner a::after {
  content: "";
  position: absolute;
  top: 0;
  left: -75%;
  width: 50%;
  height: 100%;
  background: linear-gradient(120deg,
      rgba(255, 255, 255, 0) 0%,
      rgba(255, 255, 255, 0.6) 50%,
      rgba(255, 255, 255, 0) 100%);
  transform: skewX(-25deg);
}

/* 🔥 ホバーでキラッと流れる */
.banner a:hover::after {
  animation: shine 0.8s ease;
}

@keyframes shine {
  100% {
    left: 125%;
  }
}




.emergency-message a {
  color: red;
  border: 1px solid red;
  padding: 7px 30px;
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  font-weight: 500;
  margin-top: 20px;
}

@media (max-width: 767px) {
  .emergency-message a {
    margin-top: 15px;
    max-width: 95%;
    padding: 3px 30px;
  }
}

.pickup {
  overflow: hidden;
  position: relative;
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
  margin-top: 20px;
}

@media (max-width: 767px) {
  .pickup {
    width: 95%;
    padding: 10px;
    border: 1px solid #E2E2E2;
  }

  #trial_banner {
    width: auto;
    padding: 0;
    border: none;
  }
}

.pickup figure {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
}

.pickup figure img {
  width: 100%;
  aspect-ratio: 1200/400;
  -o-object-fit: cover;
  object-fit: cover;
}

@media (max-width: 767px) {
  .pickup figure img {
    aspect-ratio: 1200/800;
  }
}

.pickup__label {
  width: 380px;
  padding: 10px 10px;
  background: linear-gradient(165deg, rgb(74, 154, 198) 0%, rgb(28, 55, 94) 100%);
  color: #fff;
  text-align: center;
  display: inline-block;
  position: absolute;
  top: 40px;
  left: -100px;
  text-transform: uppercase;
  -webkit-transform: rotate(320deg);
  transform: rotate(320deg);
  white-space: nowrap;
  font-size: 27px;
}

@media (max-width: 1199px) {
  .pickup__label {
    font-size: 18px;
    width: 300px;
    top: 20px;
  }
}

.pickup__contents {
  position: absolute;
  bottom: 22px;
  right: 30px;
  width: 440px;
  background-color: #ffffff;
  opacity: 70%;
  padding: 20px;
  /* opacity: 70%; */
}

@media (max-width: 767px) {
  .pickup__contents {
    position: static;
    padding: 0;
    width: 100%;
  }
}

.pickup__contents time {
  display: block;
  margin-bottom: 10px;
}

.pickup__contents h2 {
  font-size: 20px;
  font-weight: 500;
}

@media (max-width: 767px) {
  .pickup__contents h2 {
    font-size: 16px;
  }
}

.top-archive__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 40px;
  white-space: nowrap;
}

.top-archive__title small {
  font-size: 12px;
  color: #111111;
  font-weight: 300;
  white-space: wrap;
}

.free-article {
  font-size: 12px;
  font-weight: 300;
  background-color: #336DAB;
  color: #ffffff;
  padding: 1px 10px;
  margin-right: 2px;
}

.top-archive__tab {
  margin-top: 36px;
}

@media (max-width: 1199px) {
  .tab__tab-wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}

.tab__tabs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow-x: hidden;
  width: 840px;
}

.tab__tabs--nyusatsu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}

.tab__tab {
  width: 140px;
  border: 2px solid #336DAB;
  border-radius: 15px 15px 0 0;
  background-color: #ffffff;
  color: #336DAB;
  font-size: 18px;
  font-weight: 700;
  padding: 7px 25px;
  white-space: nowrap;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

@media (max-width: 767px) {
  .tab__tab {
    font-size: 16px;
  }
}

.tab__tab:hover {
  cursor: pointer;
  background-color: #336DAB;
  color: #ffffff;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.tab__nyusatsu-tab {
  width: 50%;
}

.tab__tab.active {
  background-color: #336DAB;
  color: #ffffff;
}

.tab__content {
  display: none;
  /* 非表示にする */
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.tab__content.active {
  display: block;
  /* 表示する */
  opacity: 1;
}

.top-archive__wrap--latest {
  margin-top: 24px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
}

@media (max-width: 767px) {
  .top-archive__wrap--latest {
    display: block;
  }
}

.big-article {
  width: 45%;
}

@media (max-width: 767px) {
  .big-article {
    width: 100%;
  }
}

.big-article a figure {
  width: 387px;
}

@media (max-width: 1199px) {
  .big-article a figure {
    width: 100%;
  }
}

.big-article a figure img {
  width: 100%;
  aspect-ratio: 387/301;
  -o-object-fit: cover;
  object-fit: cover;
}

.big-article a h2 {
  margin-top: 10px;
  font-size: 20px;
  line-height: 150%;
}

.big-article a p {
  margin-top: 10px;
}

.article__parts time {
  color: #8A8A8A;
  font-size: 14px;
}

.top-archive__lists {
  width: 55%;
}

@media (max-width: 767px) {
  .top-archive__lists {
    width: 100%;
  }
}

.top-archive__article a article {
  padding: 10px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 18px;
  border-bottom: 1px solid #E2E2E2;
}

.top-archive__article a article figure {
  width: 140px;
}

@media (max-width: 1199px) {
  .top-archive__article a article figure {
    display: none;
  }
}

@media (max-width: 767px) {
  .top-archive__article a article figure {
    display: block;
  }
}

.top-archive__article a article figure img {
  width: 100%;
  aspect-ratio: 140/92;
  -o-object-fit: cover;
  object-fit: cover;
}

.top-archive__article a article .article__contents {
  width: calc(100% - 140px);
}

@media (max-width: 1199px) {
  .top-archive__article a article .article__contents {
    width: 100%;
  }
}

.top-archive__article a article .article__contents h2 {
  font-size: 16px;
}

.top-archive__btn a {
  margin-top: 40px;
  display: block;
  width: 300px;
  margin-right: auto;
  margin-left: auto;
  padding: 20px;
  text-align: center;
  background-color: #336DAB;
  color: #ffffff;
}

@media (min-width: 1200px) {
  .top-archive__btn a {
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }

  .top-archive__btn a:hover {
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    opacity: 0.7;
  }
}

@media (max-width: 767px) {
  .top-archive__btn a {
    padding: 12px 20px;
  }
}

.top-archive__wrap {
  margin-top: 24px;
}

.top-archive__wrap .top-archive__lists {
  width: 100%;
}

.top-nyusatsu {
  margin: 60px 0;
}

.nyusatsu__wrap {
  margin-top: 30px;
}

.nyusatsu__label {
  max-width: 850px;
  width: 100%;
  border-bottom: 1px solid #20202b;
  padding-bottom: 10px;
}

.nyusatsu__label ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
}

@media (max-width: 1199px) {
  .nyusatsu__label ul {
    gap: 8px;
  }
}

.nyusatsu__label ul li {
  text-align: center;
  font-weight: 700;
  white-space: nowrap;
}

.nyustsu__icon {
  width: 8%;
}

@media (max-width: 767px) {
  .nyustsu__icon {
    max-width: 60px;
    width: 15%;
  }
}

.nyusatsu__schedule {
  width: 18%;
}

@media (max-width: 1199px) {
  .nyusatsu__schedule {
    width: 15%;
  }
}

.nyusatsu__schedule dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0;
  white-space: nowrap;
}

@media (max-width: 1199px) {
  .nyusatsu__schedule dl {
    display: block;
  }
}

.nyusatsu__schedule dl dt {
  width: 82px;
  font-weight: 500;
}

.nyusatsu__schedule dl dd {
  margin: 0;
}

.nyusatsu__facility {
  width: 32%;
}

.nyusatsu__title {
  width: 40%;
}

.nyusatsu__contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border-bottom: 1px solid #E2E2E2;
  padding: 15px 0;
}

@media (max-width: 767px) {
  .nyusatsu__contents {
    gap: 5px;
  }
}

@media (max-width: 1199px) {
  .nyusatsu__contents li {
    font-size: 14px;
  }
}

@media (max-width: 767px) {
  .nyusatsu__contents li {
    font-size: 12px;
  }
}

.rakusatsu__date {
  width: 9%;
  white-space: nowrap;
  margin-right: 3px;
}

@media (max-width: 767px) {
  .rakusatsu__date {
    width: 13%;
  }
}

.rakusatsu__icon {
  width: 8%;
}

@media (max-width: 767px) {
  .rakusatsu__icon {
    max-width: 60px;
    width: 15%;
  }
}

.rakusatsu__facility {
  width: 30%;
}

.rakustsu__title {
  width: 35%;
}

.rakusatsu__price {
  width: 18%;
}

@media (max-width: 767px) {
  .rakusatsu__price {
    width: 24%;
  }
}

.rakusatsu__price span {
  padding: 5px;
  display: block;
  width: 100%;
  text-align: center;
  white-space: nowrap;
}

.rakusatsu-A {
  background-color: #4BA7D9;
  color: #ffffff;
}

.rakusatsu-B {
  background-color: #DBF1FD;
}

.popular-content {
  margin: 60px 0;
}

.banner__wrap {
  margin-top: 24px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px 30px;
}

@media (max-width: 767px) {
  .banner__wrap {
    display: block;
  }
}

@media (max-width: 767px) {
  .banner a {
    display: block;
    margin-bottom: 10px;
  }
}

.information {
  margin: 60px 0;
}

.information__wrap {
  margin-top: 35px;
}

.information__list a {
  display: block;
  padding: 15px 0;
  padding-right: 40px;
  border-bottom: 1px dotted #111111;
  position: relative;
}

.information__list a::after {
  position: absolute;
  content: "";
  top: 50%;
  right: 15px;
  width: 7px;
  height: 14px;
  background: url(/top-sozai/info-arrow.png) no-repeat center/cover;
}

.facebook {
  max-width: 500px;
  width: 100%;
}

.facebook__label {
  background-color: #003E7F;
  color: #ffffff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
  padding: 5px;
}

.facebook__label img {
  width: 35px;
}

.facebook__wrap {
  margin-top: 30px;
  width: 100%;
}

.facebook__wrap iframe {
  width: 100%;
  aspect-ratio: 600/600;
  -o-object-fit: cover;
  object-fit: cover;
}

/*************************************************************************************
記事一覧
**************************************************************************************/
.archive__lists {
  width: 100%;
}

.archive__article a article {
  padding: 10px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 18px;
  border-bottom: 1px solid #E2E2E2;
}

.archive__article a article figure {
  width: 140px;
}

.archive__article a article figure img {
  width: 100%;
  aspect-ratio: 140/92;
  -o-object-fit: cover;
  object-fit: cover;
}

@media (max-width: 767px) {
  .archive__article a article figure img {
    aspect-ratio: 140/140;
  }
}

.archive__article a article .article__contents {
  width: calc(100% - 140px);
}

@media (max-width: 1199px) {
  .archive__article a article .article__contents {
    width: 100%;
  }
}

.archive__article a article .article__contents h2 {
  font-size: 16px;
}

.archive__article a article .article__contents p {
  margin-top: 10px;
  display: -webkit-box;
  /* 必須 */
  -webkit-box-orient: vertical;
  /* 必須 */
  -webkit-line-clamp: 2;
  /* 行数を制限 */
  overflow: hidden;
  /* はみ出た部分を非表示 */
}

/*************************************************************************************
サイドバー
**************************************************************************************/
.swiper__wrap {
  max-width: 1100px;
  margin: 0 auto;
  position: relative;
}

@media (max-width: 1199px) {
  .swiper__wrap {
    max-width: 680px;
  }
}

.swiper {
  max-width: 1100px;
}

.swiper .swiper-slide figure {
  width: 100%;
}

.swiper .swiper-slide figure img {
  width: 100%;
  aspect-ratio: 300/230;
  -o-object-fit: cover;
  object-fit: cover;
}

.swiper-pagination {
  bottom: -20px !important;
}

.sinbun-request {
  margin-top: 40px;
  background: linear-gradient(165deg, rgb(74, 154, 198) 0%, rgb(28, 55, 94) 100%);
  padding: 30px 15px;
}

.sinbun-request img {
  display: block;
  width: 220px;
  margin-right: auto;
  margin-left: auto;
}

.sinbun-request__text {
  color: #ffffff;
  margin-top: 20px;
  text-align: center;
}

.sinbun-request__btn a {
  display: block;
  padding: 15px 10px;
  font-size: 14px;
  width: 100%;
  text-align: center;
  margin-top: 20px;
}

.sinbun-request__btn:first-of-type a {
  background-color: #B39A44;
  color: #ffffff;
}

.sinbun-request__btn:last-of-type a {
  background-color: #ffffff;
}

.koukoku a img {
  aspect-ratio: 300/100;
}

.company-pr {
  margin: 30px 0;
}

.company-pr .company-pr__banner {
  margin-top: 15px;
}

.update-info {
  margin: 30px 0;
}

.update-info__wrap {
  border: 2px solid #999999;
  height: 300px;
  overflow-y: scroll;
  margin-top: 15px;
}

.update-info__lists {
  padding: 5px;
}

.update-info__lists li dl {
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 8px 0;
}

.update-info__lists li dl dt {
  width: 120px;
}

.update-info__lists li dl dd {
  margin-left: 20px;
}

.update-info__label {
  font-size: 15px;
  font-weight: 700;
}

.update-info__list dl {
  border-top: 1px solid #999999;
  font-size: 14px;
  padding: 5px 0;
}

.access-ranking {
  margin: 30px 0;
}

.access-ranking__wrap {
  margin-top: 20px;
}

.access-rankig__article {
  border-bottom: 1px solid #E2E2E2;
}

.access-rankig__article:first-of-type {
  border-top: 1px solid #E2E2E2;
}

.access-rankig__article a {
  padding-top: 5px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
}

.access-rankig__article a span {
  width: 40px;
  font-size: 24px;
  font-weight: 700;
  color: #ffffff;
  background-color: #336DAB;
  text-align: center;
}

.access-rankig__article a h3 {
  width: 150px;
  font-weight: 300;
  font-size: 14px;
}

@media (max-width: 767px) {
  .access-rankig__article a h3 {
    width: calc(100% - 150px);
  }
}

.access-rankig__article a figure {
  width: 80px;
}

.access-rankig__article a figure img {
  width: 100%;
  aspect-ratio: 80/75;
  -o-object-fit: cover;
  object-fit: cover;
}

.ranking-1st span {
  background-color: #F2D675 !important;
}

.ranking-2ndt span {
  background-color: #b5b5b5 !important;
}

.ranking-3rd span {
  background-color: #8E6D18 !important;
}

.cpds-calendar {
  margin: 30px 0;
}

.cpds-calender__content {
  margin-top: 20px;
}

.cpds-calender__content iframe {
  width: 100%;
  aspect-ratio: 800/800;
  -o-object-fit: cover;
  object-fit: cover;
}

.cpds__btn a {
  display: block;
  width: 80%;
  margin-right: auto;
  margin-left: auto;
  text-align: center;
  background-color: #336DAB;
  color: #ffffff;
  padding: 8px 34px;
  margin-top: 20px;
}

.cpds a img {
  aspect-ratio: 300/82;
}

.mail-magazine a img {
  aspect-ratio: 300/100;
}

.ninsyo-setting a {
  display: block;
  width: 100%;
  background-color: #353B71;
  color: #ffffff;
  padding: 18px;
  text-align: center;
}

/*************************************************************************************
記事詳細
**************************************************************************************/
.main-contents article data {
  display: block;
  margin: 15px 0;
}

.main-contents article figure {
  width: 100%;
}

.main-contents article figure img {
  width: 100%;
  /*  aspect-ratio: 850/500;*/
  -o-object-fit: cover;
  object-fit: cover;
}

.main-contents article .sub-heading {
  margin-top: 20px;
  padding-left: 20px;
  border-left: 5px solid #336DAB;
}

.main-contents article p {
  margin: 20px 0;
  display: -webkit-box;
  /* 必須 */
  -webkit-box-orient: vertical;
  /* 必須 */
  -webkit-line-clamp: 9;
  /* 行数を制限 */
  overflow: hidden;
  /* はみ出た部分を非表示 */
}

.main-contents article .top_kiji {
  margin: 7px 0;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  /* 行数を制限 */
  overflow: hidden;
}

/*２カラムブロック(社長挨拶)*/
.column-block {
  display: grid;
  grid-template-columns: 72% 25%;
  gap: 20px;
  margin: 40px 0;
}

@media (max-width: 1199px) {
  .column-block {
    display: block;
  }
}

.column-block__contents p {
  display: block !important;
  overflow: visible;
  margin: 0 !important;
}

.name {
  display: block;
  text-align: right;
}

.column-block__img {
  width: 100%;
}

@media (max-width: 1199px) {
  .column-block__img {
    display: block;
    max-width: 300px;
    margin-left: auto;
    margin-top: 20px;
  }
}

@media (max-width: 767px) {
  .column-block__img {
    margin-right: auto;
    margin-left: auto;
  }
}

.column-block__img img {
  width: 100%;
  aspect-ratio: 200/250 !important;
  -o-object-fit: cover;
  object-fit: cover;
}

/*横並びのボタン(業界人脈地図など)*/
.column-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 40px;
}

@media (max-width: 767px) {
  .column-btn {
    display: block;
    max-width: 250px;
    width: 100%;
    margin-right: auto;
    margin-left: auto;
  }
}

.column-btn__btn a {
  background-color: #111111;
  color: #ffffff;
  padding: 10px 30px;
  display: block;
  min-width: 200px;
  text-align: center;
}

@media (max-width: 767px) {
  .column-btn__btn a {
    margin-bottom: 20px;
  }
}

.post-cta {
  border: 3px solid #336DAB;
  margin-top: 40px;
}

.post-cta__kc-digital {
  border: 3px solid #33ab6e;
  margin-top: 40px;
}

.post-cta__wrap {
  max-width: 580px;
  width: 95%;
  margin-right: auto;
  margin-left: auto;
  padding: 30px;
  display: flex;
  flex-direction: column;
  /* 縦方向のレイアウト */
}

.post-cta__btn-container {
  display: flex;
  gap: 10px;
  /* ボタン間のスペース */
  margin-top: 10px;
  /* 上のテキストとの間隔 */
}

.post-cta__btn {
  flex: 1;
  /* ボタンの幅を均等にしたい場合 */
}

@media (max-width: 767px) {
  .post-cta__wrap {
    padding: 30px 15px;
  }
}

.post-cta__wrap p {
  line-height: 240%;
  text-align: center;
}

.post-cta__wrap p .login {
  background-color: #FED24E;
  border-radius: 3px;
  padding: 3px 20px;
  margin: 0 5px;
  color: #111111;
  display: inline-block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  line-height: 160%;
}

.post-cta__wrap p .login img {
  width: 13px;
  margin-right: 15px;
}

.post-cta__btn a {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-right: auto;
  margin-left: auto;
  margin-top: 30px;
  background-color: #336DAB;
  border: 2px solid #336DAB;
  color: #ffffff;
  padding: 15px 30px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.post-cta__btn__kc-digital a {
  background-color: #33ab6e;
  border: 2px solid #33ab6e;
}

@media (min-width: 1200px) {
  .post-cta__btn a:hover {
    background-color: #ffffff;
    color: #336DAB;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
}

/*************************************************************************************
入札公告情報
**************************************************************************************/
.nyusatsu-archive {
  padding: 40px 0;
}

/*************************************************************************************
試験合格者
**************************************************************************************/
.goukaku__lists {
  padding: 40px 0;
}

.goukaku__list a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 35px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 10px 0;
  padding-right: 40px;
  border-bottom: 1px solid #E2E2E2;
  position: relative;
}

.goukaku__list a:first-of-type {
  border-top: 1px solid #E2E2E2;
}

@media (max-width: 767px) {
  .goukaku__list a {
    gap: 20px;
    font-size: 14px;
  }
}

.goukaku__list a::after {
  position: absolute;
  content: "";
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 18px;
  height: 18px;
  background: url(../../goukaku/goukaku-arrow.png) no-repeat center/cover;
}

.goukaku__list a data {
  white-space: nowrap;
}

.goukaku__list a h3 {
  font-size: 16px;
  font-weight: 400;
}

.sticky-th {
  position: relative;
}

.sticky-th::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 1px solid #ffffff;
  z-index: -1;
}

/*************************************************************************************
優良工事表彰用の追加パーツのスタイル
**************************************************************************************/
.kiji__data {
  display: block;
  text-align: right;
}

.year__links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  /*該当の年度をハイライトする*/
}

.year__links li a {
  padding: 5px 20px;
}

.year__links .year--active a {
  background-color: #336DAB;
  color: #ffffff;
}

.h3__label {
  margin: 15px 0;
  padding: 5px 20px;
  background-color: #336DAB;
  color: #ffffff;
}

.h4__label {
  margin: 15px 0;
  border-bottom: 1px solid #111111;
}

/*************************************************************************************
カードレイアウト
**************************************************************************************/
.card-wrap {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  max-width: 1100px;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  gap: 25px 12px;
  margin-top: 40px;
}

@media (max-width: 1199px) {
  .card-wrap {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 767px) {
  .card-wrap {
    display: block;
  }
}

.card {
  position: relative;
}

@media (max-width: 767px) {
  .card {
    margin-bottom: 20px;
  }
}

.card figure img {
  width: 100%;
  aspect-ratio: 300/200;
  -o-object-fit: cover;
  object-fit: cover;
}

.card data {
  position: absolute;
  top: 0;
  left: 0;
  background-color: #336DAB;
  color: #ffffff;
  padding: 3px 10px;
}

.card h3 {
  font-size: 20px;
  line-height: 150%;
  display: -webkit-box;
  /* 必須 */
  -webkit-box-orient: vertical;
  /* 必須 */
  -webkit-line-clamp: 2;
  /* 行数を制限 */
  overflow: hidden;
  /* はみ出た部分を非表示 */
}

/*テーブル共通スタイル*/
table {
  border-collapse: collapse;
  margin-top: 40px;
}

.th--blue {
  background-color: #336DAB;
  color: #ffffff;
}

/*************************************************************************************
２カラム テーブル
**************************************************************************************/
.column--2 tbody tr {
  border: 1px solid lightgray;
}

.column--2 tbody tr th {
  white-space: nowrap;
  max-width: 60px;
  width: 18%;
  padding: 10px;
}

@media (max-width: 1199px) {
  .column--2 tbody tr th {
    width: 20%;
    padding: 10px 5px;
  }
}

@media (max-width: 767px) {
  .column--2 tbody tr th {
    width: 25%;
  }
}

.column--2 tbody tr td {
  padding: 20px;
}

@media (max-width: 767px) {
  .column--2 tbody tr td {
    padding: 15px;
  }
}

.column--2 tbody tr td address {
  font-style: normal;
}

.column--2 tbody tr td dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0;
}

.column--2 tbody tr td dl dt {
  margin-right: 10px;
}

.column--2 tbody tr td dl dd {
  margin: 0;
}

.column--2 tbody tr td iframe {
  width: 100%;
  min-height: 300px;
}

@media (max-width: 767px) {
  .column--2 tbody tr td iframe {
    min-height: 250px;
  }
}

.column--2 .office__block:not(:last-of-type) {
  margin-bottom: 15px;
}

.column--2 .office__block span {
  display: block;
}

.column--2 .office__block ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 0 10px;
  width: 60%;
}

@media (max-width: 767px) {
  .column--2 .office__block ul {
    width: 100%;
  }
}

/*************************************************************************************
上に見出し、下に内容のテーブル
**************************************************************************************/
.top-head--table {
  width: 100%;
}

.top-head--table tbody tr td {
  text-align: center;
}