@charset "UTF-8";
/*
名鉄局様サイト用CSS
2022.04.13
2022.05.20
Ver 1.0.1 
*/
/*
 * Snow Monkey v19 の設定を v18 に戻す
 */
/* 見出し用 */
h2,
h3 {
  font-size: 1.2rem;
}

h4 {
  font-size: 1rem;
}

@media (min-width: 1024px) {
  h2,
  h3 {
    font-size: 1.5rem;
  }
  h4 {
    font-size: 1.25rem;
  }
}
/* ページタイトル用 */
.c-entry__title {
  font-size: 1.66667rem;
}

@media (min-width: 640px) {
  .c-entry__title {
    font-size: 2rem;
  }
}
@media (min-width: 1024px) {
  .c-entry__title {
    font-size: 2.5rem;
  }
}
/* コンテナー用 */
.c-container, .c-fluid-container {
  box-sizing: border-box;
}

:where(.c-entry > *) {
  margin-inline: inherit;
}

/*
 * Snow Monkey Blocks v18 の設定を v17 に戻す
 */
/* セクションタイトル */
.smb-section__title {
  font-size: 1.5rem;
}

@media (min-width: 1024px) {
  .smb-section__title {
    font-size: 2rem;
  }
}
/* セクションコンテナー */
.smb-section__contents-wrapper {
  max-width: 100%;
}

/* ステップブロック */
.smb-step__body > :not(:first-child) {
  margin-top: 1.8rem;
  margin-top: calc(var(--_space, 1.8rem) * 1 * var(--_margin-scale, 1));
}

/* メディアとテキストブロック */
.smb-media-text__title {
  font-size: 1.2rem;
  line-height: calc(0.93869 + var(--_half-leading, 0.4) * 2);
}

@media (min-width: 1024px) {
  .smb-media-text__title {
    font-size: 1.5rem;
    line-height: calc(0.83846 + var(--_half-leading, 0.4) * 2);
  }
}
.inner {
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
}

.c-sec-read {
  font-size: 1.125rem !important;
}

.smb-media-text__body > :not(h1):not(h2):not(h3):not(h4):not(h5):not(h6) + :not(h1):not(h2):not(h3):not(h4):not(h5):not(h6).c-sec-note,
.smb-section__body > p.c-sec-note,
p.c-sec-note {
  font-size: 1rem !important;
  margin-top: 0 !important;
}

@media (max-width: 640px) {
  .c-spacer-100 {
    height: 50px !important;
  }
  .c-spacer-200 {
    height: 100px !important;
  }
}
@media screen and (min-width: 1024px) {
  .u-hidden-pc {
    display: none;
  }
}

@media screen and (max-width: 1024px) {
  .u-hidden-sp {
    display: none;
  }
}

/*****************************************/
/* ヘッダ */
/*****************************************/
.l-header {
  background-color: #000;
  color: #fff;
}

.home .l-header::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 60px;
  bottom: -60px;
  left: 0;
  background-image: linear-gradient(0deg, transparent 0 10%, #000 100%);
}

.c-site-branding--has-logo img.custom-logo {
  width: 240px;
  height: auto;
}

.p-global-nav .c-navbar__item > a {
  padding-left: 20px;
  padding-right: 20px;
}

@media (max-width: 1100px) {
  .p-global-nav .c-navbar__item > a {
    padding-left: 15px;
    padding-right: 15px;
  }
}
/*****************************************/
/* フッタ */
/*****************************************/
.l-footer {
  background-color: #000;
  color: #fff;
}

div.wp-block-column > h2 {
  color: #fff;
}

.l-footer--footer-1 .l-footer__footer {
  background-color: #000;
}

/*****************************************/
/* トップへ戻るボタン */
/*****************************************/
#page-top.c-page-top {
  border-radius: 50%;
  background-color: #333;
  right: 50px;
  transition: 0.2s;
  --page-top-y: 49px;
}

/* PCのみ適用 */
@media (min-width: 1024px) {
  #page-top.c-page-top {
    bottom: 600px;
    /* right: 200px; */
    right: calc((100vw - 1024px) / 2);
    position: absolute;
  }
}
/*****************************************/
/* 共通部分 */
/*****************************************/
/* サブタイトルの下線 */
.smb-section__title:after {
  height: 2px;
}

/* パンくずリスト */
.l-contents__container > .p-breadcrumbs-wrapper:first-child {
  padding-top: 30px;
  padding-bottom: 40px;
}
@media (max-width: 640px) {
  .l-contents__container > .p-breadcrumbs-wrapper:first-child {
    padding-top: 15px;
    padding-bottom: 0;
  }
}

.c-breadcrumbs {
  font-size: 1rem !important;
}

/*****************************************/
/* 固定ページMV */
/*****************************************/
.c-page-header[data-has-image=true] {
  height: 400px;
  letter-spacing: 0.1em;
}

@media (max-width: 640px) {
  .c-page-header[data-has-image=true] {
    height: 200px;
  }
}
.c-page-header[data-has-image=true] .c-page-header__title {
  position: relative;
  z-index: 0;
  font-family: "Noto Serif JP", serif;
}

.c-page-header[data-has-image=true] .c-page-header__title::before {
  content: "";
  position: absolute;
  width: calc(100% + 100px);
  height: calc(100% + 50px);
  background-color: #000;
  opacity: 0.6;
  top: -25px;
  left: -50px;
  z-index: -1;
}

/* パンくずリストとコンテンツの間を調整 */
.l-contents__inner {
  margin-top: 0;
}

@media (max-width: 640px) {
  .l-contents__inner {
    margin-top: 20px;
  }
}
.page-template .l-article-bottom-widget-area,
.page-template-default .l-article-bottom-widget-area {
  display: none;
}

/*****************************************/
/* 固定ページMVタイトル */
/*****************************************/
.c-page-header {
  display: none;
}

.page-id-24 .c-page-header,
.page-id-25 .c-page-header,
.page-id-26 .c-page-header {
  display: flex;
}

.smb-section__title {
  font-size: 2.1875rem !important;
  font-weight: bold;
}

.smb-section__title::after {
  content: none;
}

.smb-section__lede {
  font-size: 1.125rem !important;
}

.page {
  font-size: 1.125rem !important;
}

.c-mv {
  padding-top: 60px;
  padding-bottom: 90px;
}
@media (max-width: 640px) {
  .c-mv {
    padding-top: 30px;
    padding-bottom: 45px;
  }
}
.c-mv .smb-section__subtitle {
  color: #e6e6e6;
  font-size: 1.5rem !important;
  font-family: "Oswald", sans-serif;
  font-weight: normal;
  line-height: 1;
}
.c-mv .smb-section__title {
  font-size: 2.5rem !important;
  line-height: 1.2;
}

/*****************************************/
/* CTA */
/*****************************************/
.c-cta {
  /* CTAのタイトルを非表示 */
}
.c-cta .smb-section__title {
  display: none;
}
.c-cta .smb-section__lede {
  font-size: 1.125rem !important;
}
.c-cta .smb-btn {
  width: 358px;
  height: 84px;
  background: url(../images/btn_contact_bk.png) no-repeat center;
  background-size: contain;
  line-height: 84px;
  padding: 0;
}
.c-cta .smb-btn__label {
  font-size: 1.5625rem !important;
  font-weight: 700;
}
.c-cta .c-cta__txt {
  font-size: 1.25rem !important;
}
.c-cta .c-cta__tel {
  font-weight: 700;
  font-size: 2.1875rem !important;
  padding-left: 30px;
  padding-right: 0;
  font-family: "Roboto", sans-serif;
}
.c-cta .c-cta__tel::before {
  content: "";
  display: inline-block;
  width: 18px;
  height: 25px;
  margin-right: 5px;
  background: url(../images/cta_icon_tel.svg) no-repeat center;
  background-size: contain;
}
.c-cta .c-cta__time {
  font-size: 1rem !important;
}

@media (max-width: 640px) {
  .c-cta .c-cta__txt {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }
  .c-cta .c-cta__tel {
    display: block;
    position: relative;
    padding-left: 0;
  }
  .c-cta .c-cta__tel::before {
    position: absolute;
    top: 50%;
    left: -30px;
    transform: translateY(-50%);
    display: block;
  }
  .c-cta .c-cta__time {
    display: block;
  }
}
/*****************************************/
/* ホーム */
/*****************************************/
.home .smb-section__subtitle {
  font-family: "Oswald", sans-serif;
  font-size: 6.25rem !important;
  color: #e6e6e6;
  display: flex;
  align-items: center;
  line-height: 1;
}
.home .p-top__ttl--mini {
  font-size: 4.6875rem !important;
  padding-left: 10px;
  padding-right: 10px;
}
.home .smb-section__title {
  text-align: left;
  font-size: 2.1875rem !important;
  padding-left: 50px;
}

@media (max-width: 640px) {
  .home .smb-section__subtitle {
    font-size: 2.5rem !important;
    flex-direction: column;
  }
  .home .p-top__ttl--mini {
    font-size: 1.25rem !important;
    display: block;
  }
  .home .smb-section__title {
    font-size: 1.125rem !important;
    padding-left: 0;
    text-align: center;
  }
}
/*****************************************/
/* ホーム */
/*****************************************/
/* MV */
.c-section {
  padding-top: 0;
}

.spider__canvas {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.wp-block-cover__inner-container {
  max-width: 1200px;
  width: 100%;
  height: calc(100% - 70px);
  position: absolute;
  top: 0;
}
.wp-block-cover__inner-container p {
  position: relative;
  text-shadow: 0px 0px 30px #000;
}
.wp-block-cover__inner-container p::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: -1;
  background-color: rgba(0, 0, 0, 0.6);
  mix-blend-mode: multiply;
}

.p-top__mv1-txt,
.p-top__mv2-txt1,
.p-top__mv2-txt2,
.p-top__mv3-txt11,
.p-top__mv3-txt12,
.p-top__mv3-txt21,
.p-top__mv3-txt22 {
  font-family: "Noto Serif JP", serif;
  color: #fff;
  font-weight: bold;
  width: -moz-fit-content;
  width: fit-content;
}

.p-top__mv2-txt1,
.p-top__mv2-txt2,
.p-top__mv3-txt11,
.p-top__mv3-txt12,
.p-top__mv3-txt21,
.p-top__mv3-txt22 {
  font-size: 3.125rem !important;
  height: 110px;
  line-height: 110px;
  padding-left: 30px;
  padding-right: 30px;
  text-align: left;
  margin-top: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  position: absolute !important;
}
@media (max-width: 1023px) {
  .p-top__mv2-txt1,
  .p-top__mv2-txt2,
  .p-top__mv3-txt11,
  .p-top__mv3-txt12,
  .p-top__mv3-txt21,
  .p-top__mv3-txt22 {
    font-size: 2.5rem !important;
    padding-left: 20px;
    padding-right: 20px;
    height: 90px;
    line-height: 90px;
  }
}
@media (max-width: 640px) {
  .p-top__mv2-txt1,
  .p-top__mv2-txt2,
  .p-top__mv3-txt11,
  .p-top__mv3-txt12,
  .p-top__mv3-txt21,
  .p-top__mv3-txt22 {
    font-size: 1.25rem !important;
    padding-left: 10px;
    padding-right: 10px;
    height: 70px;
    line-height: 70px;
  }
}

.p-top__mv1-txt {
  font-size: 3.75rem !important;
  padding: 0 80px;
  height: 200px;
  line-height: 200px;
  text-align: center;
  top: 50%;
  transform: translateY(-50%);
}
@media (max-width: 1023px) {
  .p-top__mv1-txt {
    font-size: 2.5rem !important;
    padding-left: 20px;
    padding-right: 20px;
    height: 150px;
    line-height: 150px;
  }
}
@media (max-width: 640px) {
  .p-top__mv1-txt {
    font-size: 1.5625rem !important;
    padding-left: 10px;
    padding-right: 10px;
    height: 100px;
    line-height: 100px;
  }
}

.p-top__mv2-txt1 {
  top: 60px;
  left: 0;
}

.p-top__mv2-txt2 {
  top: 170px;
  left: 0;
}

.p-top__mv3-txt11 {
  top: 60px;
  left: 0;
}

.p-top__mv3-txt12 {
  top: 170px;
  left: 0;
}

.p-top__mv3-txt21 {
  bottom: 170px;
  right: 0;
  text-align: right;
}

.p-top__mv3-txt22 {
  bottom: 60px;
  right: 0;
  text-align: right;
}

@media (max-width: 1023px) {
  .p-top__mv2-txt2 {
    top: 150px;
  }
  .p-top__mv3-txt12 {
    top: 150px;
  }
  .p-top__mv3-txt21 {
    bottom: 150px;
  }
}
@media (max-width: 640px) {
  .p-top__mv2-txt2 {
    top: 130px;
  }
  .p-top__mv3-txt12 {
    top: 130px;
  }
  .p-top__mv3-txt21 {
    bottom: 130px;
  }
}
/*****************************************/
/* top products */
/*****************************************/
.p-top__products-main {
  padding-bottom: 0;
}
.p-top__products-main .smb-section__body {
  display: none;
}

.js-products {
  height: 300px !important;
  transition: 0.8s;
  background-size: cover;
  background-position: center;
  border-bottom: 1px solid #ccc;
  padding: 10px 0;
  position: relative;
}
.js-products .smb-section-with-bgimage__bgimage {
  transition: 0.8s;
  border: none;
}
.js-products .smb-section__header {
  width: 600px;
  min-height: 240px;
  padding: 30px 40px;
  transition: 0.8s;
}
.js-products .smb-section__title {
  font-size: 1.875rem !important;
  position: relative;
}
.js-products a {
  text-decoration: none;
  color: #333;
  transition: 0.2s;
}
.js-products a:hover {
  text-decoration: none;
  color: #df0522;
}
.js-products .smb-section__title::before {
  position: absolute;
  content: "";
  width: 30px;
  height: 30px;
  background: url(../images/top_product_arrow@2x.png) no-repeat center;
  background-size: contain;
  left: 0;
  top: 8px;
}
.js-products .smb-section__lede {
  font-size: 1.125rem !important;
  margin-top: 50px;
}

.js-products.is_open {
  height: 600px !important;
}
.js-products.is_open .smb-section__header {
  background-color: rgba(255, 255, 255, 0.8);
}
.js-products.is_open .smb-section-with-bgimage__bgimage {
  background-color: unset;
  opacity: 0;
}
.js-products.is_open a::before {
  content: "";
  position: absolute;
  display: block;
  width: 600px;
  height: 260px;
  top: -30px;
  left: -40px;
}

.js-products.is_close {
  height: 150px !important;
}
.js-products.is_close .smb-section__header {
  min-height: unset;
}
.js-products.is_close .smb-section__body {
  display: none;
}
.js-products.is_close .smb-section__lede {
  display: none !important;
}
.p-top__school {
  border-top: 1px solid #ccc;
  background-image: url(../images/top_products_bg_over1.jpg);
}

.p-top__cram {
  background-image: url(../images/top_products_bg_over2.jpg);
}

.p-top__publishing {
  background-image: url(../images/top_products_bg_over3.jpg);
}

.p-top__products-sub {
  width: 100vw;
  max-width: unset;
  background-image: url(../images/top_products_bg5.png), url(../images/top_products_bg4.png);
  background-position: right bottom, left top;
  background-size: contain;
  background-repeat: no-repeat, no-repeat;
  padding-top: 50px;
  padding-bottom: 50px;
}
.p-top__products-sub .smb-container__body {
  max-width: 1200px;
  width: 100%;
}
.p-top__products-sub .smb-section__title {
  font-size: 1.875rem !important;
  position: relative;
}
.p-top__products-sub .smb-section__title::before {
  position: absolute;
  content: "";
  width: 30px;
  height: 30px;
  background: url(../images/top_product_arrow@2x.png) no-repeat center;
  background-size: contain;
  left: 0;
  top: 8px;
}
.p-top__products-sub a {
  text-decoration: none;
  color: #333;
  transition: 0.2s;
  position: relative;
  display: block;
}
.p-top__products-sub a:hover {
  text-decoration: none;
  color: #df0522;
}
.p-top__products-sub a::before {
  content: "";
  position: absolute;
  width: calc(100% + 60px);
  height: 190px;
  top: 0;
  left: -60px;
  display: block;
}

.p-top__products-sub1,
.p-top__products-sub2 {
  padding-top: 0;
  padding-bottom: 0;
  padding-left: 50px;
}
.p-top__products-sub1 .smb-section__lede-wrapper,
.p-top__products-sub2 .smb-section__lede-wrapper {
  justify-content: flex-start;
}
.p-top__products-sub1 .smb-section__lede,
.p-top__products-sub2 .smb-section__lede {
  max-width: 500px;
  text-align: left;
}
.p-top__products-sub1 .smb-section__body,
.p-top__products-sub2 .smb-section__body {
  display: none;
}

.p-top__products-sub1 {
  margin-left: auto;
  margin-right: 0;
  width: 50%;
}

.p-top__products-sub2 {
  margin-left: 0;
  margin-right: auto;
  width: 60%;
}

@media (max-width: 1023px) {
  .p-top__products-sub {
    padding-top: 0;
    padding-bottom: 0;
    background-image: none, none;
  }
  .p-top__products-sub .smb-section__inner {
    background-color: rgba(255, 255, 255, 0.8);
    padding-top: 20px;
    padding-bottom: 20px;
  }
  .p-top__products-sub1,
  .p-top__products-sub2 {
    padding-left: 40px;
  }
  .p-top__products-sub1 .c-container,
  .p-top__products-sub2 .c-container {
    padding-left: 0;
    padding-right: 0;
  }
  .p-top__products-sub1 .smb-section__lede,
  .p-top__products-sub2 .smb-section__lede {
    max-width: unset;
  }
  .p-top__products-sub1 {
    width: 100%;
  }
  .p-top__products-sub2 {
    width: 100%;
  }
  .p-top__products-sub1 .smb-section__inner:after {
    content: "";
    position: absolute;
    bottom: calc(var(--_space, 1.8rem) * -0.5 * var(--_margin-scale, 1));
    width: 100%;
    height: 1px;
    background-color: #ccc;
  }
}
@media (max-width: 640px) {
  .js-products .smb-section__header {
    width: 100%;
    min-height: unset;
    padding: 20px 20px;
  }
  .js-products .smb-section__title {
    font-size: 1.125rem !important;
    padding-left: 30px;
    text-align: left;
  }
  .js-products .smb-section__title::before {
    left: 0px;
    top: 6px;
    width: 20px;
    height: 20px;
  }
  .js-products .smb-section__lede {
    font-size: 0.875rem !important;
    margin-top: 30px;
  }
  .js-products.is_open {
    height: 400px !important;
  }
  .js-products.is_open a::before {
    width: calc(100% + 40px);
    min-height: 150px;
    height: 100%;
    top: -20px;
    left: -20px;
  }
  .js-products.is_close {
    height: 50px !important;
  }
  .js-products.is_close .smb-section__header {
    padding: 0;
  }
  .p-top__products-sub .smb-section__title {
    font-size: 1.125rem !important;
    padding-left: 30px;
    text-align: left;
  }
  .p-top__products-sub .smb-section__title::before {
    left: 0px;
    top: 6px;
    width: 20px;
    height: 20px;
  }
  .p-top__products-sub a::before {
    width: calc(100% + 30px);
    height: 120px;
    left: -30px;
  }
  .p-top__products-sub .smb-section__inner {
    padding-top: 10px;
    padding-bottom: 10px;
  }
  .p-top__products-sub .smb-section__lede {
    font-size: 0.875rem !important;
  }
  .p-top__products-sub1,
  .p-top__products-sub2 {
    padding-left: 20px;
    padding-right: 20px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
}
/*****************************************/
/* top_features */
/*****************************************/
.p-top__features .smb-section__subtitle {
  color: #fff;
  mix-blend-mode: soft-light;
}
.p-top__features .smb-section__body .smb-items__item--block-link {
  border: 1px solid #fff;
  color: #fff;
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
  justify-content: center;
}
.p-top__features .smb-section__body .smb-items__item--block-link:hover {
  opacity: 1;
  filter: none;
}
.p-top__features .smb-section__body .smb-items__item__figure {
  margin-bottom: 0;
  border-top: 1px solid #fff;
  overflow: hidden;
}
.p-top__features .smb-section__body .smb-items__item__figure img {
  transition: 0.5s;
}
.p-top__features .smb-section__body .smb-items__item--block-link:hover .smb-items__item__figure img {
  transform: scale(1.1);
  opacity: 0.8;
}
.p-top__features .smb-section__body .smb-items__item__body {
  padding-top: 50px;
  padding-bottom: 50px;
}
.p-top__features .smb-section__body .smb-items__item__title {
  font-size: 1.875rem !important;
}

@media (max-width: 640px) {
  .p-top__features .smb-section__body .smb-items__item__body {
    padding-top: 20px;
    padding-bottom: 20px;
  }
  .p-top__features .smb-section__body .smb-items__item__title {
    font-size: 1.25rem !important;
  }
}
/*****************************************/
/* top__information */
/*****************************************/
.p-top__information .smb-section__body {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  border-top: 1px solid #999;
}
.p-top__information .p-top__information-subttl,
.p-top__information .p-top__column-subttl {
  margin: 0;
  padding-left: 50px;
  font-family: "Oswald", sans-serif;
  font-size: 2.5rem !important;
  font-weight: 200;
  color: #808080;
  padding-top: 20px;
}
.p-top__information .p-top__information-subttl {
  width: 400px;
  margin-left: 0 !important;
}
.p-top__information .p-top__column-subttl {
  width: 100%;
  border-top: 1px solid #999;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.p-top__information .p-information__loop {
  width: 610px;
  margin: 50px 70px 120px 0 !important;
}
.p-top__information .p-column__list {
  width: 100%;
  margin-top: 70px;
}

@media (max-width: 640px) {
  .p-top__information .p-top__information-subttl,
  .p-top__information .p-top__column-subttl {
    padding-left: 0;
    font-size: 2.5rem !important;
    padding-top: 10px;
  }
  .p-top__information .p-top__information-subttl {
    width: 100%;
  }
  .p-top__information .p-information__loop {
    width: 100%;
    margin: 20px 0px 50px 0;
  }
  .p-top__information .p-column__list {
    margin-top: 30px;
  }
}
/*****************************************/
/* 学校関係 塾関係 出版関係 */
/* 共通のクラス .p-service を使用し、
Modifireで .--school .--cram_school .--publishingとして区別 */
/*****************************************/
/* .page-id-24 .smb-section__title:after,
.page-id-25 .smb-section__title:after,
.page-id-26 .smb-section__title:after {
	background-color: #fabe00;
} */
.page-id-24 .smb-section__title,
.page-id-25 .smb-section__title,
.page-id-26 .smb-section__title {
  font-size: 2.1875rem !important;
}

.p-service__ttl {
  font-family: "Noto Serif JP", serif;
  letter-spacing: 0.1em;
  font-size: 1.875rem !important;
}

/* こんなお悩みありませんか。 */
.p-service__problem {
  max-width: 1100px;
}

.p-service__problem .smb-items__item {
  height: 100%;
  font-size: 1.125rem !important;
  line-height: 1.7;
  border: 1px solid #f00;
}

.p-service__problem.--school .smb-items__item {
  border: 5px solid #fabe00;
}

.p-service__problem.--cram_school .smb-items__item {
  border: 5px solid #3cc8e6;
}

.p-service__problem.--publishing .smb-items__item {
  border: 5px solid #f091a0;
}

/* 画像 */
.p-service__problem .smb-items__item figure {
  padding: 0;
  text-align: center;
}

.p-service__problem-txt {
  padding: 20px 25px;
  margin: 0 !important;
}

.--school .p-service__problem-txt {
  background-color: #fef8e5;
}

.--cram_school .p-service__problem-txt {
  background-color: #ebf9fc;
}

.--publishing .p-service__problem-txt {
  background-color: #fdf4f5;
}

.p-service__problem-note {
  padding: 20px 25px;
  text-align: center;
  margin: 0 !important;
}

/* リンクの装飾 */
.p-service__problem-note a {
  position: relative;
  text-decoration: none;
  color: unset;
}

.p-service__problem-note a:hover {
  text-decoration: underline;
}

.p-service__problem-note a::before {
  position: absolute;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 0 8px 14px;
  top: 50%;
  left: -20px;
  transform: translateY(-50%);
}

.--school .p-service__problem-note a::before {
  border-color: transparent transparent transparent #fabe00;
}

.--cram_school .p-service__problem-note a::before {
  border-color: transparent transparent transparent #3cc8e6;
}

.--publishing .p-service__problem-note a::before {
  border-color: transparent transparent transparent #f091a0;
}

/* 取り扱い商品 */
/* 画像周りの余白を削除 */
.p-service__products .c-row__col:nth-child(2) {
  margin: 0;
  padding: 0;
}

/* 文字周りの余白の調整 */
.p-service__products .c-row__col:nth-child(1) {
  padding-left: 50px;
  padding-right: 50px;
}

.p-service__products .smb-media-text__title {
  padding-left: 30px;
  position: relative;
  font-size: 1.5625rem !important;
}

.p-service__products .smb-media-text__title::before {
  position: absolute;
  content: "";
  width: 22px;
  height: 22px;
  border-radius: 50%;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

.p-service__products.--school .smb-media-text__title::before {
  background-color: #fabe00;
}

.p-service__products.--cram_school .smb-media-text__title::before {
  background-color: #3cc8e6;
}

.p-service__products.--publishing .smb-media-text__title::before {
  background-color: #f091a0;
}

.p-service__products .smb-media-text__body {
  font-size: 1.125rem !important;
}

/* 完成まで */
.p-service__flow .smb-step__body:before {
  border-left: 1px solid #df0522;
}

.p-service__flow .smb-step__item__title {
  font-size: 1.5625rem !important;
}

.p-service__flow .smb-step__item__number {
  background-color: #fff;
  border-radius: 0;
  color: #000;
  font-size: 1.75rem !important;
  font-family: "Oswald", sans-serif;
  overflow: visible;
}

.p-service__flow .smb-step__item__number::before {
  margin-left: 55px;
  content: counter(item) ".";
}

.p-service__flow .smb-step__item__number:after {
  content: "";
  position: absolute;
  left: 10px;
  width: 15px;
  height: 15px;
  background: url(../images/flow_arrow@2x.png) no-repeat center;
  background-size: contain;
}

.p-service__flow .smb-step__item__body {
  margin-top: -60px;
}

.p-service__flow .c-row__col:nth-child(1) {
  margin-top: 50px;
  padding-right: 85px;
  font-size: 1.125rem !important;
}

/* リンクの装飾 */
.p-service__flow .c-row__col a {
  position: relative;
  text-decoration: none;
  color: unset;
}

.p-service__flow .c-row__col a:hover {
  text-decoration: underline;
}

.p-service__flow .c-row__col a::before {
  position: absolute;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 0 8px 14px;
  border-color: transparent transparent transparent #df0522;
  top: 50%;
  left: -20px;
  transform: translateY(-50%);
}

.p-service__flow .smb-media-text__figure img {
  width: 350px;
  height: 200px;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-service__flow .c-row--margin > .c-row__col {
  margin-bottom: 60px;
}

.p-service__flow .has-text-align-right {
  margin-top: 0;
}

@media (min-width: 1024px) {
  /* PCのみ高さ固定 */
  .p-service__problem-txt {
    height: 184px;
  }
  .p-service__products .smb-media-text__body {
    margin-top: 80px;
  }
}
@media (max-width: 640px) {
  .p-service__products .c-row__col:nth-child(1) {
    padding-left: 20px;
    padding-right: 20px;
  }
  .p-service__products .smb-media-text__title {
    padding-left: 20px;
    position: relative;
    font-size: 1.25rem !important;
    margin-top: 10px;
  }
  .p-service__products .smb-media-text__title::before {
    width: 12px;
    height: 12px;
  }
  .p-service__products .smb-media-text__body {
    font-size: 0.875rem !important;
    margin-top: 0;
  }
  .p-service__flow .c-row__col:nth-child(1) {
    padding-right: 0px;
  }
}
/*****************************************/
/* 製品とサービス （共通）*/
/*****************************************/
/* ヘッダを非表示に */
.parent-pageid-27 .c-page-header {
  display: none;
}

.p-product__mv {
  min-height: 500px;
}
.p-product__mv .smb-section__inner.is-content-justification-left > .c-container > .smb-section__contents-wrapper {
  max-width: 1100px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
.parent-pageid-27 .smb-section__title {
  font-size: 2.5rem !important;
}

.p-product__mv .smb-section__contents-wrapper--left > .smb-section__header .smb-section__title:after {
  content: none;
}

.p-product__mv .smb-section__body {
  max-width: 740px;
  font-size: 1.125rem !important;
}

.parent-pageid-27 .smb-section .smb-section__title::after {
  content: none;
}

@media (max-width: 640px) {
  .parent-pageid-27 .smb-section__title {
    font-size: 1.5rem !important;
  }
  .p-product__mv .smb-section__body {
    font-size: 0.875rem !important;
  }
}
/*****************************************/
/* 製品とサービス （広報・販促）*/
/*****************************************/
.p-ad__point {
  max-width: 1100px;
}

.p-ad__point-problem {
  font-size: 1.5625rem !important;
}

.p-ad__point-problem > strong {
  font-size: 1.875rem !important;
  font-weight: 700;
}

.p-ad__point-solution {
  min-height: 120px;
  font-size: 2.1875rem !important;
  font-family: "Noto Serif JP", serif;
  font-weight: 600;
  background: url(../images/ad_point_ttl_l@2x.png) no-repeat left, url(../images/ad_point_ttl_r@2x.png) no-repeat top right;
  background-size: contain, contain;
  background-color: #eaf6fd;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.p-ad__point-solution::before {
  position: absolute;
  content: "";
  width: 40px;
  height: 30px;
  background: url(../images/ad_point_mark@2x.png) no-repeat center;
  background-size: contain;
  top: -15px;
}

.p-ad__point-solution > strong {
  font-size: 3.125rem !important;
  color: #003e7f;
}

.p-ad__point-box {
  background-color: #f2f2f2;
}

.p-ad__point-box .c-row__col:nth-child(1) {
  padding-top: 30px;
  padding-left: 50px;
}

.p-ad__point-box .c-row__col:nth-child(2) {
  margin-bottom: 0;
}

.p-ad__dm {
  padding: 0;
}
.p-ad__dm .smb-section__contents-wrapper {
  color: #fff;
  position: relative;
  z-index: inherit;
  background: none;
  padding-left: 5.9090909091%;
  padding-right: 5.9090909091%;
  max-width: 1100px;
}
.p-ad__dm .smb-section__header {
  position: relative;
  z-index: 5;
}
.p-ad__dm .smb-section__subtitle {
  z-index: 6;
  position: absolute;
  font-size: 9.0625rem !important;
  font-family: "Oswald", sans-serif;
  line-height: 0.7;
  text-align: center;
  color: #0656a9;
  opacity: 0.8;
  display: block;
  width: 100%;
  mix-blend-mode: overlay;
  font-weight: normal;
}
.p-ad__dm .smb-section__title {
  padding-top: 40px;
  margin-bottom: 90px;
}
.p-ad__dm .smb-section__contents-wrapper::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 0;
  background-color: #003e7f;
  mix-blend-mode: multiply;
}
.p-ad__dm .p-ad__read-note {
  padding-left: 5rem;
}
.p-ad__dm .p-ad__read-note-top {
  position: absolute;
  left: 0;
  top: 0;
}
.p-ad__dm .wp-block-image > figure {
  padding-bottom: 0;
}
.p-ad__dm .p-ad__dm-img {
  mix-blend-mode: normal;
}
.p-ad__dm .p-ad__dm-box {
  border: none;
  background-color: #fff;
  color: #000;
  margin-top: 0 !important;
  max-width: 680px;
  width: 100%;
  border-radius: 0;
  padding: 20px;
}
.p-ad__dm .p-ad__dm-list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  list-style: none;
  margin-top: 0 !important;
}
.p-ad__dm .p-ad__dm-list li {
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
  margin-left: 20px;
  margin-right: 20px;
  margin-top: 0;
}
.p-ad__dm .p-ad__dm-list li::before {
  position: absolute;
  content: "";
  width: 16px;
  height: 16px;
  top: 50%;
  left: -20px;
  transform: translateY(-50%);
  border-radius: 50%;
  background-color: #80bbed;
}

.p-ad__work .smb-section__title {
  font-size: 2.1875rem !important;
}
.p-ad__work .p-ad__work-list {
  margin-top: 45px;
}
.p-ad__work .is-style-border.smb-items {
  border-top-color: #989898;
  border-left-color: #989898;
  border-bottom: none;
  overflow: visible;
}
.p-ad__work .is-style-border.smb-items > .c-row > .c-row__col {
  border-bottom-color: #989898;
  border-right-color: #989898;
}
.p-ad__work .smb-items__item__content {
  text-align: center;
  padding-bottom: 15px;
  font-size: 1.125rem !important;
}

@media (max-width: 1023px) {
  .p-ad__point-solution {
    flex-wrap: wrap;
  }
}
@media (max-width: 640px) {
  .p-ad__point-problem {
    font-size: 0.9375rem !important;
  }
  .p-ad__point-problem > strong {
    font-size: 1.125rem !important;
  }
  .p-ad__point-solution {
    font-size: 1.3125rem !important;
  }
  .p-ad__point-solution > strong {
    font-size: 1.875rem !important;
  }
  .p-ad__point-box .c-row__col:nth-child(1) {
    padding-top: 18px;
    padding-left: 30px;
  }
  .p-ad__dm .smb-section__title {
    padding-top: 20px;
    margin-bottom: 45px;
  }
  .p-ad__dm .p-ad__dm-list {
    flex-direction: column;
    align-items: flex-start;
  }
  .p-ad__dm .p-ad__dm-list li {
    width: 100%;
    text-align: left;
  }
  .p-ad__work .smb-section__title {
    font-size: 1.3125rem !important;
  }
}
/*****************************************/
/* 製品とサービス （その他） */
/*****************************************/
.p-other__box .smb-section {
  padding-top: 0;
}
.p-other__box .smb-section.is-items-alignment-top {
  margin-top: 0;
}
.p-other__box .wp-block-snow-monkey-blocks-section-with-bgimage {
  overflow: visible;
}
.p-other__box .smb-section__header {
  position: relative;
  display: block;
}
.p-other__box .smb-section__subtitle {
  position: absolute;
  font-family: "Oswald", sans-serif;
  font-size: 3.75rem !important;
  line-height: 1;
  white-space: nowrap;
}
.p-other__box .smb-section__title {
  font-family: "Noto Serif JP", serif;
  font-weight: 600;
  font-size: 3.125rem !important;
  color: #1a1a1a;
}
.p-other__box .smb-section__lede-wrapper {
  margin-top: 100px;
}
.p-other__box .smb-section__lede {
  font-size: 1.125rem !important;
  line-height: 2.6;
}
.p-other__box .c-container {
  padding: 50px;
}
.p-other__box .smb-section__contents-wrapper {
  max-width: unset;
  width: 100%;
}

.p-other__novelty {
  position: relative;
}
.p-other__novelty .smb-section__subtitle {
  transform-origin: left top;
  transform: rotate(90deg);
  top: 0;
  left: -42px;
  color: #e3d737;
}

.p-other__pop {
  position: relative;
}
.p-other__pop .smb-section__subtitle {
  transform-origin: right top;
  transform: rotate(90deg) translateX(100%);
  right: -120px;
  color: #f3ebe0;
}

.p-other__package {
  position: relative;
}
.p-other__package .smb-section__subtitle {
  transform-origin: left top;
  transform: rotate(90deg);
  top: 0;
  left: -42px;
  color: #e6e6e6;
}
.p-other__package .smb-section__lede-wrapper {
  margin-top: 50px;
}
.p-other__package .c-container {
  background-color: rgba(255, 255, 255, 0.8);
}
.p-other__package .smb-section__body {
  margin-top: 0;
}

@media (max-width: 640px) {
  .p-other__box {
    width: calc(100% - 50px);
  }
  .p-other__box .smb-section.is-items-alignment-top {
    min-height: 50vh;
  }
  .p-other__box .smb-section__subtitle {
    font-size: 2.25rem !important;
  }
  .p-other__box .smb-section__title {
    font-size: 1.875rem !important;
  }
  .p-other__box .smb-section__lede-wrapper {
    margin-top: 50px;
  }
  .p-other__box .smb-section__lede {
    font-size: 0.875rem !important;
    margin: -15px;
    padding: 15px;
    line-height: inherit;
    background-color: rgba(255, 255, 255, 0.5);
  }
  .p-other__box .c-container {
    padding: 20px;
  }
  .p-other__novelty .smb-section__subtitle {
    left: -15px;
  }
  .p-other__pop .smb-section__subtitle {
    right: -58px;
  }
  .p-other__package .smb-section__subtitle {
    left: -15px;
  }
  .p-other__package .smb-section__lede-wrapper {
    margin-top: 25px;
  }
}
/*****************************************/
/* features 特長と強み（共通）*/
/*****************************************/
.parent-pageid-28 .c-features__mv {
  padding-top: 60px;
  padding-bottom: 90px;
}
@media (max-width: 640px) {
  .parent-pageid-28 .c-features__mv {
    padding-top: 30px;
    padding-bottom: 45px;
  }
}
.parent-pageid-28 .c-features__mv .smb-section__subtitle {
  color: #e6e6e6;
  font-size: 1.5rem !important;
  font-family: "Oswald", sans-serif;
  font-weight: normal;
  line-height: 1;
}
.parent-pageid-28 .c-features__mv .smb-section__title {
  font-size: 2.5rem !important;
  line-height: 1.2;
}

/*****************************************/
/* typesetting 組版 */
/*****************************************/
.p-typesetting__mv .smb-section__lede-wrapper {
  margin-top: 100px;
}
@media (max-width: 640px) {
  .p-typesetting__mv .smb-section__lede-wrapper {
    margin-top: 50px;
    margin-bottom: 20px;
  }
}
.p-typesetting__mv .smb-section__lede strong {
  font-size: 1.5625rem !important;
}
.p-typesetting__mv .smb-section__body {
  margin-top: 0;
}

.parent-pageid-28 .c-features__mv.p-typesetting__mv .smb-section__subtitle {
  color: #fff;
}

.p-typesetting__merit .c-container {
  max-width: 940px;
  padding-left: 0;
  padding-right: 0;
}
.p-typesetting__merit .smb-section__title {
  font-size: 1.5625rem !important;
}
.p-typesetting__merit .smb-section__title::after {
  content: none;
}
.p-typesetting__merit .p-typesetting__merit-list {
  padding-left: 1rem;
  margin-top: 0;
}
.p-typesetting__merit strong {
  font-size: 1.25rem !important;
}

.p-typesetting__formula {
  max-width: 960px;
}

.p-typesetting__case .c-container {
  padding-left: 0;
  padding-right: 0;
}
.p-typesetting__case .smb-section__title {
  font-size: 1.25rem !important;
  text-align: left;
  border-bottom: 1px solid #999;
}
.p-typesetting__case .p-typesetting__case-head div:nth-child(1) {
  border-left: 1px solid #999;
  border-right: 1px solid #999;
  color: #003e7f;
  font-weight: bold;
  padding-top: 10px;
  padding-bottom: 10px;
}
.p-typesetting__case .p-typesetting__case-head div:nth-child(2) p {
  font-size: 1rem !important;
}

.p-typesetting__chinese {
  max-width: 960px;
}

@media (max-width: 1023px) {
  .p-typesetting__merit .c-container {
    padding-left: 20px;
    padding-right: 20px;
  }
}
/*****************************************/
/* multi_use 2次利用 */
/*****************************************/
.parent-pageid-28 .c-features__mv.p-multi_use__mv {
  padding-bottom: 60px;
}

.p-multi_use__mv .smb-section__title {
  color: #fff;
}
.p-multi_use__mv .smb-section__body {
  display: none;
}

.parent-pageid-28 .c-features__mv.p-multi_use__mv .smb-section__subtitle {
  color: #fff;
}

.p-multi_use__mdata {
  max-width: 960px;
}

/*****************************************/
/* digital_proof デジタル検版システム */
/*****************************************/
.p-digital_proof__mv .smb-section__header + .smb-section__body {
  margin-top: 80px;
}
.p-digital_proof__mv .smb-section__contents-wrapper {
  max-width: 900px;
}

.p-digital_proof__check {
  padding-top: 0;
  padding-bottom: 0;
}
.p-digital_proof__check .smb-section__body {
  max-width: 960px;
  margin-left: auto;
  margin-right: auto;
}
.p-digital_proof__check .smb-section__title {
  font-size: 1.875rem !important;
}
.p-digital_proof__check .smb-items__item__figure img {
  width: 40px;
  height: 40px;
  max-width: unset;
}

.p-digital_proof__check-01 {
  padding-bottom: 0;
}
.p-digital_proof__check-01 .smb-items__item__figure {
  margin-bottom: 30px;
}

@media (min-width: 1024px) {
  .p-digital_proof__check-02 .smb-items__item {
    display: flex;
    justify-content: space-between;
    max-width: 510px;
    align-items: center;
    margin-left: auto;
    margin-right: auto;
  }
  .p-digital_proof__check-02 .smb-items__item__figure {
    margin-right: 30px;
  }
}

.p-digital_proof__example {
  padding-bottom: 50px;
}
.p-digital_proof__example .smb-items__item {
  display: flex;
  flex-direction: column;
}
.p-digital_proof__example .smb-items__item__content {
  padding-left: 30px;
  padding-right: 30px;
  padding-bottom: 10px;
}
.p-digital_proof__example h3 {
  text-align: center;
  font-size: 1.25rem !important;
}
@media (min-width: 640px) {
  .p-digital_proof__example p {
    min-height: 130px;
  }
}
.p-digital_proof__example figcaption {
  text-align: center !important;
}

.p-digital_proof__introduction .smb-media-text__title {
  font-size: 1.5625rem !important;
}
.p-digital_proof__introduction .c-row__col:first-child {
  padding-left: 50px;
  padding-right: 50px;
}

/*****************************************/
/* data_exchange データのやり取り */
/*****************************************/
.p-data_exchange__mv {
  position: relative;
  z-index: 1;
  background: linear-gradient(to bottom, #fff 0%, #fff 90%, #d3e6f6 90%, #d3e6f6 100%);
}

.p-data_exchange__mv::before,
.p-data_exchange__mv::after {
  content: "";
  position: absolute;
  z-index: -1;
}

.p-data_exchange__mv::before {
  bottom: 11px;
  left: 0;
  width: 287px;
  height: 200px;
  background: url(../images/data_ex_mv_bg_l@2x.png) no-repeat center;
  background-size: contain;
}
@media (min-width: 1200px) {
  .p-data_exchange__mv::before {
    left: calc((100% - 1200px) / 2);
  }
}
@media (max-width: 1024px) {
  .p-data_exchange__mv::before {
    width: 230px;
  }
}
@media (max-width: 640px) {
  .p-data_exchange__mv::before {
    width: 142px;
    height: 100px;
  }
}

.p-data_exchange__mv::after {
  bottom: 0;
  right: 0;
  width: 258px;
  height: 211px;
  background: url(../images/data_ex_mv_bg_r@2x.png) no-repeat center;
  background-size: contain;
}
@media (min-width: 1200px) {
  .p-data_exchange__mv::after {
    right: calc((100% - 1200px) / 2);
  }
}
@media (max-width: 1024px) {
  .p-data_exchange__mv::after {
    width: 206px;
  }
}
@media (max-width: 640px) {
  .p-data_exchange__mv::after {
    width: 129px;
    height: 106px;
  }
}

.p-data_exchange__mv-large {
  margin-top: 0 !important;
  font-size: 1.75rem !important;
  font-weight: bold;
}

.p-data_exchange__head {
  position: relative;
  z-index: 1;
  padding-bottom: 0;
}

.p-data_exchange__head::after {
  position: absolute;
  content: "";
  width: 50%;
  height: 16.6666666667vw;
  bottom: -16.6666666667vw;
  z-index: 5;
  border-style: solid;
  border-width: 16.6666666667vw 50vw 0 50vw;
  border-color: #eaf6fd transparent transparent transparent;
}
@media (min-width: 1024px) {
  .p-data_exchange__head::after {
    height: 200px;
    bottom: -200px;
    border-width: 200px 50vw 0 50vw;
  }
}

.p-data_exchange__read {
  max-width: 900px !important;
}

.p-data_exchange__function {
  background-color: #fff;
  border-radius: 20px;
}
.p-data_exchange__function .smb-section__body {
  max-width: 880px;
  margin-left: auto;
  margin-right: auto;
}
.p-data_exchange__function .smb-items__item__figure {
  height: 124px;
}
.p-data_exchange__function .smb-items__item__figure img {
  margin-left: auto;
  margin-right: auto;
  display: block;
}
.p-data_exchange__function .c-row__col:nth-child(1) .smb-items__item__figure img {
  width: 102px;
}
.p-data_exchange__function .c-row__col:nth-child(2) .smb-items__item__figure img {
  width: 102px;
}
.p-data_exchange__function .c-row__col:nth-child(3) .smb-items__item__figure img {
  width: 123px;
}
.p-data_exchange__function .c-row__col:nth-child(4) .smb-items__item__figure img {
  width: 102px;
}
.p-data_exchange__function .c-row__col:nth-child(5) .smb-items__item__figure img {
  width: 80px;
}
.p-data_exchange__function .smb-items__item__title {
  text-align: center;
}

.p-data_exchange__recommendation {
  margin-bottom: -30px !important;
  position: relative;
  z-index: 6;
}
@media (max-width: 1023px) {
  .p-data_exchange__recommendation {
    margin-bottom: 0 !important;
  }
}

.p-data_exchange__dam,
.p-data_exchange__dam.alignfull {
  padding-top: 0;
  padding-bottom: 0;
  margin-top: 20.8333333333vw !important;
}
@media (min-width: 1024px) {
  .p-data_exchange__dam,
  .p-data_exchange__dam.alignfull {
    margin-top: 250px !important;
  }
}
@media (max-width: 1023px) {
  .p-data_exchange__dam .u-aligncenter-wrapper,
  .p-data_exchange__dam.alignfull .u-aligncenter-wrapper {
    margin-top: 0 !important;
  }
}

.p-data_exchange__problem {
  position: relative;
  z-index: 999;
  max-width: 1184px !important;
}
@media (min-width: 1024px) {
  .p-data_exchange__problem .c-row__col:nth-child(1),
  .p-data_exchange__problem .c-row__col:nth-child(3) {
    margin-top: 60px;
  }
}
.p-data_exchange__problem .smb-items__item {
  display: flex;
  flex-direction: column-reverse;
}
.p-data_exchange__problem .smb-items__item__content,
.p-data_exchange__problem .smb-items__item__figure img {
  margin-left: auto;
  margin-right: auto;
  max-width: 320px;
  width: 100%;
}

.p-data_exchange__dam-img {
  position: relative;
  z-index: 100;
  mix-blend-mode: multiply;
}
@media (min-width: 1024px) {
  .p-data_exchange__dam-img {
    margin-top: -280px;
  }
}

.p-data_exchange__sample {
  margin-top: 100px !important;
  position: relative;
  z-index: 10;
  overflow: visible;
  padding-top: 0;
  padding-bottom: 0;
}
.p-data_exchange__sample .c-container {
  max-width: calc(800px + 3.6rem);
}
.p-data_exchange__sample > .smb-section__inner > .c-container > .smb-section__contents-wrapper > .smb-section__header {
  position: relative;
  z-index: 99;
  margin-top: -100px;
  margin-bottom: 100px;
}
.p-data_exchange__sample > .smb-section__inner > .c-container > .smb-section__contents-wrapper > .smb-section__header .smb-section__lede-wrapper {
  margin-top: 100px;
}
.p-data_exchange__sample > .smb-section__inner > .c-container > .smb-section__contents-wrapper > .smb-section__header .smb-section__lede {
  background-color: #fff;
  width: 100%;
  height: 80px;
  border-radius: 40px;
  line-height: 80px;
  font-size: 1.375rem !important;
  font-weight: bold;
}

.p-data_exchange__sample::before {
  background-color: #fff;
  position: absolute;
  content: "";
  width: 50%;
  height: 16.6666666667vw;
  top: -16.6666666667vw;
  z-index: 50;
  border-style: solid;
  border-width: 0 50vw 16.6666666667vw 50vw;
  border-color: transparent transparent #eaf6fd transparent;
}
@media (min-width: 1024px) {
  .p-data_exchange__sample::before {
    height: 200px;
    top: -200px;
    border-width: 0 50vw 200px 50vw;
  }
}

.p-data_exchange__before,
.p-data_exchange__after {
  padding-top: 0;
}
.p-data_exchange__before .smb-section__header,
.p-data_exchange__after .smb-section__header {
  color: #fff;
  display: flex;
  flex-direction: column-reverse;
  justify-content: center;
  width: 200px;
  height: 80px;
  border-radius: 40px;
  margin-left: auto;
  margin-right: auto;
}
.p-data_exchange__before .smb-section__subtitle,
.p-data_exchange__after .smb-section__subtitle {
  color: #fff;
  opacity: 0.5;
  font-size: 1.125rem !important;
  font-weight: normal;
  font-family: "Oswald", sans-serif;
  line-height: 1;
  margin-bottom: 0;
  margin-top: 10px;
}
.p-data_exchange__before .smb-section__title,
.p-data_exchange__after .smb-section__title {
  font-size: 1.25rem !important;
  line-height: 1;
}
.p-data_exchange__before .c-container,
.p-data_exchange__after .c-container {
  padding-left: 0;
  padding-right: 0;
}
.p-data_exchange__before ol,
.p-data_exchange__after ol {
  counter-reset: my-counter;
  list-style: none;
  padding: 0;
  margin: 0;
}
.p-data_exchange__before li,
.p-data_exchange__after li {
  font-size: 1.125rem !important;
  line-height: 1.5;
  padding-left: 30px;
  position: relative;
}
.p-data_exchange__before li:before,
.p-data_exchange__after li:before {
  content: counter(my-counter);
  counter-increment: my-counter;
  border: 1px solid;
  border-radius: 50%;
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 22px;
  width: 22px;
  color: #ffffff;
  font-size: 85%;
  line-height: 22px;
  position: absolute;
  top: 2px;
  left: 0;
}

.p-data_exchange__before {
  position: relative;
}
.p-data_exchange__before .smb-section__header {
  background-color: #4d4d4d;
}
.p-data_exchange__before li:before {
  background-color: #4d4d4d;
}

.p-data_exchange__before::after {
  position: absolute;
  content: "";
  width: 38px;
  height: 20px;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  background: url(../images/data_ex_arrow@2x.png) no-repeat center;
  background-size: contain;
}
@media (max-width: 640px) {
  .p-data_exchange__before::after {
    bottom: 0;
  }
}

.p-data_exchange__after h4 {
  font-size: 1.125rem !important;
  font-weight: normal;
}
.p-data_exchange__after .smb-section__header {
  background-color: #003e7f;
}
.p-data_exchange__after li:before {
  background-color: #003e7f;
}
.p-data_exchange__after .wp-block-table {
  font-size: 1rem !important;
}
.p-data_exchange__after .wp-block-table table {
  margin-bottom: 24px;
}
.p-data_exchange__after .wp-block-table th {
  background-color: #99b2cc;
  border-left-color: #fff;
  border-right-color: #fff;
}
.p-data_exchange__after .wp-block-table td {
  background-color: #fff;
  border-left-color: #fff;
  border-right-color: #fff;
}
.p-data_exchange__after .wp-block-table td:first-child {
  background-color: #e5ecf2;
}
.p-data_exchange__after .wp-block-table tr:not(:last-child) td {
  border-bottom-color: #99b2cc;
}
.p-data_exchange__after .smb-media-text__figure img {
  width: 303px;
}

/*****************************************/
/* large_small_lot */
/*****************************************/
.p-lsl__mv .c-container {
  max-width: calc(900px + 3.6rem);
}

.p-lsl__large .smb-media-text__title,
.p-lsl__small .smb-media-text__title {
  border-left: 2px solid #80bbed;
  padding-left: 20px;
  line-height: 1.2;
  margin-left: 50px;
}
@media (max-width: 640px) {
  .p-lsl__large .smb-media-text__title,
  .p-lsl__small .smb-media-text__title {
    margin-left: 0;
  }
}
.p-lsl__large .smb-media-text__title .sme-font-size,
.p-lsl__small .smb-media-text__title .sme-font-size {
  margin-bottom: 5px;
  line-height: 1;
}

.p-lsl__large .smb-media-text__body,
.p-lsl__small .smb-media-text__body {
  margin-left: 50px;
}
@media (max-width: 640px) {
  .p-lsl__large .smb-media-text__body,
  .p-lsl__small .smb-media-text__body {
    margin-left: 0;
  }
}

.p-lsl__large {
  position: relative;
  padding-top: 100px;
  padding-bottom: 100px;
  margin-bottom: 100px;
}
@media (max-width: 640px) {
  .p-lsl__large {
    padding-top: 50px;
    padding-bottom: 50px;
    margin-bottom: 50px;
  }
}
.p-lsl__large .c-container {
  max-width: calc(1200px + 3.6rem);
}

.p-lsl__large::before {
  position: absolute;
  content: "";
  width: 50vw;
  height: 100%;
  left: calc((100vw - 100%) / -2);
  background-color: #eaf6fd;
}

.p-lsl__large::after {
  position: absolute;
  content: "Large lot";
  color: #eaf6fd;
  font-size: 5.625rem !important;
  font-family: "Oswald", sans-serif;
  line-height: 1;
  top: 0;
  left: calc(50% + 30px);
  z-index: -1;
}
@media (max-width: 640px) {
  .p-lsl__large::after {
    font-size: 2.8125rem !important;
    left: calc(50% + 15px);
  }
}

.p-lsl__large-01 {
  position: relative;
}
@media (max-width: 640px) {
  .p-lsl__large-01 {
    margin-bottom: 50px;
  }
}

.p-lsl__large-01::before,
.p-lsl__large-01::after {
  content: "";
  position: absolute;
}

.p-lsl__large-01::before {
  width: 62px;
  height: 74px;
  background: url(../images/lsl_arrow@2x.png) no-repeat center;
  background-size: contain;
  bottom: -60px;
  left: 70px;
}
@media (max-width: 640px) {
  .p-lsl__large-01::before {
    width: 31px;
    height: 37px;
    bottom: -30px;
    left: calc(50% - 16px);
  }
}

.p-lsl__large-01::after {
  width: 198px;
  height: 160px;
  background: url(../images/lsl_icon01@2x.png) no-repeat center;
  background-size: contain;
  bottom: -150px;
  left: 170px;
}
@media (max-width: 640px) {
  .p-lsl__large-01::after {
    width: 100px;
    left: unset;
    bottom: -100px;
    right: 30px;
  }
}

.p-lsl__small {
  position: relative;
  padding-top: 100px;
  padding-bottom: 100px;
}
@media (max-width: 640px) {
  .p-lsl__small {
    padding-top: 50px;
    padding-bottom: 50px;
  }
}
.p-lsl__small .c-container {
  max-width: calc(1200px + 3.6rem);
}

.p-lsl__small::before {
  position: absolute;
  content: "";
  width: calc(50vw + 190px + 4%);
  height: 100%;
  right: calc((100vw - 100%) / -2);
  background-color: #eaf6fd;
}
@media (max-width: 1023px) {
  .p-lsl__small::before {
    width: calc(50vw + 4%);
  }
}

.p-lsl__small::after {
  position: absolute;
  content: "Small lot";
  color: #eaf6fd;
  font-size: 5.625rem !important;
  font-family: "Oswald", sans-serif;
  line-height: 1;
  top: -84px;
  right: calc((100vw - 1200px) / 2);
  z-index: -1;
}
@media (max-width: 1260px) {
  .p-lsl__small::after {
    right: 30px;
  }
}
@media (max-width: 640px) {
  .p-lsl__small::after {
    font-size: 2.8125rem !important;
    top: -45px;
    right: 15px;
  }
}

.p-lsl__small-01--img::before,
.p-lsl__small-01--img::after {
  content: "";
  position: absolute;
}

.p-lsl__small-01--img::before {
  width: 62px;
  height: 74px;
  background: url(../images/lsl_arrow@2x.png) no-repeat center;
  background-size: contain;
  bottom: -100px;
  left: calc(50% - 31px);
}
@media (max-width: 640px) {
  .p-lsl__small-01--img::before {
    width: 31px;
    height: 37px;
    left: calc(50% - 16px);
    bottom: -30px;
  }
}

.p-lsl__small-01--img::after {
  width: 217px;
  height: 105px;
  background: url(../images/lsl_icon02@2x.png) no-repeat center;
  background-size: contain;
  bottom: -150px;
  right: 20%;
}
@media (max-width: 1023px) {
  .p-lsl__small-01--img::after {
    right: 10%;
  }
}
@media (max-width: 640px) {
  .p-lsl__small-01--img::after {
    bottom: -100px;
    width: 110px;
    right: 20px;
  }
}

.p-lsl__small-02 {
  margin-top: 100px !important;
}
@media (max-width: 640px) {
  .p-lsl__small-02 {
    margin-top: 50px !important;
  }
}

@media (min-width: 1024px) {
  .p-lsl__small-02--img {
    margin-top: -180px !important;
  }
}

/*****************************************/
/* digital_book デジタルブック*/
/*****************************************/
.p-digital_book__mv-read {
  font-size: 1.5625rem !important;
  color: #003e7f;
  font-weight: bold;
}
@media (max-width: 640px) {
  .p-digital_book__mv-read {
    margin-bottom: 20px;
  }
}

.p-digital_book__mv-read + p {
  margin-top: 0 !important;
}

.p-digital_book__about {
  background-color: #f2f2f2;
  background-image: url(../images/dbook_about_bk1.jpg), url(../images/dbook_about_bk2.jpg);
  background-repeat: no-repeat, no-repeat;
  background-position: left center, right center;
  background-size: contain, contain;
  position: relative;
  padding-top: 75px;
  padding-bottom: 150px;
}
@media (max-width: 1023px) {
  .p-digital_book__about {
    background-image: none, url(../images/dbook_about_bk2.jpg);
    background-position: right top;
  }
}
@media (max-width: 640px) {
  .p-digital_book__about {
    background-image: none, none;
  }
}
@media (max-width: 640px) {
  .p-digital_book__about {
    padding-bottom: 70px;
  }
}
.p-digital_book__about .c-container {
  max-width: 900px;
}
.p-digital_book__about .smb-section__body h3 {
  font-size: 1.25rem !important;
  margin-bottom: 0;
}

.p-digital_book__about::after {
  position: absolute;
  content: "";
  width: 50%;
  height: 16.6666666667vw;
  bottom: 0;
  z-index: 5;
  border-style: solid;
  border-width: 16.6666666667vw 50vw 0 50vw;
  border-color: transparent #fff transparent #fff;
}
@media (min-width: 1024px) {
  .p-digital_book__about::after {
    height: 200px;
    bottom: 0;
    border-width: 200px 50vw 0 50vw;
  }
}

.p-digital_book__about-last {
  font-size: 1.875rem !important;
  color: #003e7f;
  font-weight: bold;
  margin-top: 70px !important;
}
@media (max-width: 640px) {
  .p-digital_book__about-last {
    font-size: 1.5rem !important;
  }
}

.p-digital_book__task {
  position: relative;
  z-index: 99;
  margin-top: 40px !important;
  padding-top: 0;
  padding-bottom: 0;
}
.p-digital_book__task .smb-items__item {
  max-width: 290px !important;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 1024px) {
  .p-digital_book__task .c-row__col:nth-child(2) {
    margin-top: 45px;
  }
}

.p-digital_book__intro {
  position: relative;
  z-index: 10;
  margin-top: 120px !important;
  position: relative;
  padding-top: 0;
  padding-bottom: 150px;
}
@media (max-width: 640px) {
  .p-digital_book__intro {
    padding-bottom: 70px;
  }
}
.p-digital_book__intro .smb-section__inner {
  position: relative;
  padding-top: 5vw;
}
@media (min-width: 1024px) {
  .p-digital_book__intro .smb-section__inner {
    padding-top: 60px;
  }
}
.p-digital_book__intro .smb-section__inner .smb-section__subtitle {
  font-size: 1.25rem !important;
  color: #000;
  margin-bottom: 0;
}
.p-digital_book__intro .smb-section__inner .smb-section__title {
  font-size: 3.125rem !important;
  line-height: 1;
  font-family: "Noto Serif JP", serif;
}
@media (max-width: 640px) {
  .p-digital_book__intro .smb-section__inner .smb-section__title {
    font-size: 2.5rem !important;
    line-height: 1.4;
  }
}
.p-digital_book__intro .smb-section__inner::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 16.6666666667vw;
  background-color: #f2f2f2;
  background: url(../images/dbook_intro_mark@2x.png) no-repeat center #f2f2f2;
  background-size: 6.25vw;
}
@media (min-width: 1024px) {
  .p-digital_book__intro .smb-section__inner::before {
    height: 200px;
    background-size: 75px 175px;
  }
}
.p-digital_book__intro .smb-section__body {
  margin-top: 170px;
}
@media (max-width: 640px) {
  .p-digital_book__intro .smb-section__body {
    margin-top: 80px;
  }
}
@media (min-width: 1024px) {
  .p-digital_book__intro .smb-section__body .wp-block-columns:nth-of-type(even) {
    flex-direction: row-reverse;
  }
}
.p-digital_book__intro .smb-section__body h2 {
  font-size: 1.5625rem !important;
}
.p-digital_book__intro .smb-section__body .c-row__col:first-child {
  padding-left: 50px;
  padding-right: 50px;
}
@media (max-width: 640px) {
  .p-digital_book__intro .smb-section__body .c-row__col:first-child {
    padding-left: 20px;
    padding-right: 20px;
  }
}
.p-digital_book__intro .smb-section__body .c-row__col:last-child {
  padding-left: 0;
  padding-right: 0;
  margin-bottom: 60px;
}
@media (max-width: 640px) {
  .p-digital_book__intro .smb-section__body .c-row__col:last-child {
    margin-bottom: 30px;
  }
}

.p-digital_book__intro::before {
  position: absolute;
  content: "";
  width: 50%;
  height: 16.6666666667vw;
  top: -16.6666666667vw;
  z-index: 5;
  border-style: solid;
  border-width: 16.6666666667vw 50vw 0 50vw;
  border-color: #fff #f2f2f2 #fff #f2f2f2;
}
@media (min-width: 1024px) {
  .p-digital_book__intro::before {
    height: 200px;
    top: -200px;
    border-width: 200px 50vw 0 50vw;
  }
}

.p-digital_book__intro::after {
  position: absolute;
  content: "";
  width: 50%;
  height: 16.6666666667vw;
  top: 16.6666666667vw;
  z-index: -1;
  border-style: solid;
  border-width: 0 50vw 16.6666666667vw 50vw;
  border-color: transparent #f2f2f2 transparent #f2f2f2;
}
@media (min-width: 1024px) {
  .p-digital_book__intro::after {
    height: 200px;
    top: 200px;
    border-width: 0 50vw 200px 50vw;
  }
}

.p-digital_book__casestudy {
  padding-top: 0;
}
@media (max-width: 640px) {
  .p-digital_book__casestudy .c-container {
    padding-left: 20px;
    padding-right: 20px;
  }
}
.p-digital_book__casestudy .smb-section__title {
  margin-bottom: 150px;
}
@media (max-width: 640px) {
  .p-digital_book__casestudy .smb-section__title {
    margin-bottom: 70px;
  }
}
.p-digital_book__case {
  position: relative;
  background-color: rgba(255, 255, 255, 0.8);
  padding-top: 0;
  padding-bottom: 0;
}
.p-digital_book__case .c-container {
  padding-left: 45px;
  padding-right: 45px;
  position: relative;
}
@media (max-width: 640px) {
  .p-digital_book__case .c-container {
    padding-left: 20px;
    padding-right: 20px;
  }
}
.p-digital_book__case .c-container::before {
  position: absolute;
  content: "Case Study ";
  color: #fff;
  font-size: 3.75rem !important;
  line-height: 1.2;
  font-family: "Oswald", sans-serif;
  opacity: 0.8;
}
@media (max-width: 640px) {
  .p-digital_book__case .c-container::before {
    font-size: 1.25rem !important;
  }
}
.p-digital_book__case .smb-section__header {
  position: relative;
  margin-top: 40px;
  margin-bottom: 50px;
  margin-left: auto;
  margin-right: auto;
  max-width: 600px;
  min-height: 120px;
  background-color: #003e7f;
  color: #fff;
  padding: 10px 10px 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
}
@media (max-width: 640px) {
  .p-digital_book__case .smb-section__header {
    margin-top: 20px;
    margin-bottom: 20px;
  }
}
.p-digital_book__case .smb-section__header .smb-section__subtitle {
  width: 80px;
  height: 40px;
  line-height: 40px;
  text-align: center;
  background-color: rgba(26, 26, 26, 0.5);
  color: #fff;
  font-size: 1.125rem !important;
}
.p-digital_book__case .smb-section__header .smb-section__title {
  font-size: 1.25rem !important;
  margin-bottom: 0;
}
.p-digital_book__case .smb-section__header::before,
.p-digital_book__case .smb-section__header::after {
  position: absolute;
  content: "";
  width: 20px;
  height: 20px;
}
.p-digital_book__case .smb-section__header::before {
  border-left: 1px solid #4c78a5;
  border-top: 1px solid #4c78a5;
  top: 10px;
  left: 10px;
}
.p-digital_book__case .smb-section__header::after {
  border-right: 1px solid #4c78a5;
  border-bottom: 1px solid #4c78a5;
  bottom: 10px;
  right: 10px;
}
.p-digital_book__case .smb-section__body {
  margin-bottom: 50px;
  color: #1a1a1a;
}
.p-digital_book__case .smb-section__body .p-digital_book__case-ttl1,
.p-digital_book__case .smb-section__body .p-digital_book__case-ttl2 {
  width: 140px;
  line-height: 1;
  border-left: 1px solid #003e7f;
  border-right: 1px solid #003e7f;
  text-align: center;
  display: block;
  margin-left: auto;
  margin-right: auto;
  color: #003e7f;
}
.p-digital_book__case .smb-section__body .p-digital_book__case-ttl1 {
  padding-left: 2rem;
  letter-spacing: 2rem;
}
.p-digital_book__case .smb-section__body .p-digital_book__case-ttl2 {
  position: relative;
  margin-top: 100px;
}
.p-digital_book__case .smb-section__body .p-digital_book__case-ttl3 {
  margin-top: 100px;
  position: relative;
  width: 120px;
  height: 40px;
  background-color: #003e7f;
  color: #fff;
  font-size: 1.25rem !important;
  line-height: 40px;
  font-weight: bold;
  padding-left: 1.5rem;
  letter-spacing: 1.5rem;
}
.p-digital_book__case .smb-section__body .p-digital_book__case-ttl2::before,
.p-digital_book__case .smb-section__body .p-digital_book__case-ttl3::before {
  position: absolute;
  content: "";
  width: 38px;
  height: 19px;
  background: url(../images/dbook_arrow@2x.png) no-repeat center;
  background-size: contain;
  top: -60px;
  left: 50%;
  transform: translateX(-50%);
}

.p-digital_book__case::before,
.p-digital_book__case::after {
  position: absolute;
  content: "";
  background-color: #fff;
  width: 50vw;
  height: calc(100% + 100px);
  top: -50px;
  z-index: -1;
}
@media (max-width: 640px) {
  .p-digital_book__case::before,
  .p-digital_book__case::after {
    height: calc(100% + 50px);
    top: -25px;
  }
}

.p-digital_book__case::before {
  left: calc(50% - 50vw);
}

.p-digital_book__case::after {
  right: calc(50% - 50vw);
}

.p-digital_book__case.--case1 {
  margin-bottom: 100px !important;
}
.p-digital_book__case.--case1 .c-container::before {
  left: -243px;
  top: -62px;
  transform: rotate(-90deg);
  transform-origin: right bottom;
}
@media (max-width: 640px) {
  .p-digital_book__case.--case1 .c-container::before {
    left: -81px;
    top: -20px;
  }
}

.p-digital_book__case.--case1::before {
  background-image: url(../images/dbook_case1_bg1@2x.png);
  background-repeat: no-repeat;
  background-position: left top;
  background-size: cover;
}

.p-digital_book__case.--case1::after {
  background-image: url(../images/dbook_case1_bg2@2x.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 61.7708333333%;
}

.p-digital_book__case.--case2 .c-container::before {
  right: 0;
  bottom: 0;
  transform: rotate(90deg);
  transform-origin: right bottom;
}

.p-digital_book__case.--case2::before {
  background-image: url(../images/dbook_case2_bg2@2x.png);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 60.4166666667%;
}

.p-digital_book__case.--case2::after {
  background-image: url(../images/dbook_case2_bg1@2x.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.p-digital_book__sample {
  margin-top: 0 !important;
  padding-top: 150px;
  padding-bottom: 70px;
}
@media (max-width: 640px) {
  .p-digital_book__sample {
    padding-top: 70px;
    padding-bottom: 30px;
  }
}
.p-digital_book__sample .smb-section__title {
  font-size: 1.875rem !important;
}
.p-digital_book__sample .smb-section__body {
  margin-top: 100px;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 640px) {
  .p-digital_book__sample .smb-section__body {
    margin-top: 50px;
  }
}
.p-digital_book__sample .smb-items__item__body figure {
  max-width: 220px;
}
.p-digital_book__sample .smb-items__item__body figure figcaption {
  text-align: center;
}

/*****************************************/
/* information お知らせ・コラム*/
/*****************************************/
.single .l-contents__inner {
  padding-top: 0 !important;
}

.wp-block-query .post {
  padding-top: 10px;
  padding-bottom: 10px;
  justify-content: flex-end;
}
.wp-block-query .post a {
  color: #333;
  text-decoration: none;
  transition: 0.2s;
}
.wp-block-query .post a:hover {
  opacity: 0.6;
}
.wp-block-query .post .wp-block-post-date {
  margin-right: 2em;
  width: 8em;
  flex-shrink: 0;
  font-size: 0.875rem !important;
}
.p-information__list {
  margin-block-start: 0;
  /* Snow Monkey v19 -> v18 */
}
.p-information__list .post {
  display: flex;
  flex-direction: row-reverse;
  margin-block-start: 0;
  /* Snow Monkey v19 -> v18 */
  margin-left: 0;
  margin-top: 0 !important;
}
.p-information__list .wp-block-post-title {
  font-size: 1rem;
  font-weight: 400;
}

.p-column__list {
  gap: 60px !important;
  justify-content: center;
}
.p-column__list .wp-block-post {
  flex-basis: 360px;
  border: 1px solid #999;
  max-width: 360px !important;
  display: flex;
  flex-direction: column;
  padding: 0 !important;
  justify-content: space-between;
}
@media (max-width: 1023px) {
  .p-column__list .wp-block-post {
    width: calc(50% - 0.83333em) !important;
  }
}
@media (max-width: 640px) {
  .p-column__list .wp-block-post {
    width: 100% !important;
  }
}
.p-column__list .wp-block-post .wp-block-post-featured-image {
  order: 2;
  height: 200px;
}
.p-column__list .wp-block-post .wp-block-post-featured-image a {
  overflow: hidden;
  height: 100%;
  display: flex;
  align-items: flex-start;
  position: relative;
}
.p-column__list .wp-block-post .wp-block-post-featured-image a::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: linear-gradient(0deg, transparent 0 10%, #FFF 90%);
}
.p-column__list .wp-block-post .wp-block-post-featured-image a::after {
  content: "READ MORE";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  font-size: 1.125rem !important;
  font-weight: bold;
  text-decoration: underline;
}
.p-column__list .wp-block-post .wp-block-post-date {
  width: 100%;
  margin: 0;
  padding: 10px 30px;
}
.p-column__list .wp-block-post .wp-block-post-title {
  order: 0;
  font-weight: bold !important;
  font-size: 1.5625rem !important;
  line-height: 1.4;
  padding: 30px 30px 0;
}
.p-column__list .wp-block-post .wp-block-post-excerpt__excerpt {
  order: 1;
  font-size: 1rem !important;
  line-height: 1.7;
  padding: 15px 30px 30px 30px;
  position: relative;
  background-color: #FFF;
}
.p-column__list .wp-block-post .wp-block-post-excerpt__excerpt::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100px;
  background-image: linear-gradient(180deg, rgba(255, 255, 255, 0) 0 20%, #FFF 95%);
}

.wp-block-query-pagination {
  margin-top: 100px;
  justify-content: center;
  font-size: 0.875rem !important;
}
.wp-block-query-pagination a {
  text-decoration: none;
}
.wp-block-query-pagination a:hover {
  opacity: 0.6;
}
.wp-block-query-pagination .wp-block-query-pagination-numbers {
  display: flex;
}
.wp-block-query-pagination .page-numbers {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  margin-left: 2px;
  margin-right: 2px;
  background-color: #eee;
  color: #666;
}
.wp-block-query-pagination .current {
  background-color: #df0522;
  color: #fff;
}
.c-meta__item--author {
  display: none;
}

.single-post .c-cta .c-container {
  padding-left: 0;
  padding-right: 0;
}

.single-post .c-entry__footer .c-prev-next-nav {
  display: none;
}

@media screen and (min-width: 640px) {
  .wp-block-post-template.is-flex-container.is-flex-container > li {
    height: 560px;
    overflow: hidden;
  }
  .p-column__list .wp-block-post .wp-block-post-featured-image {
    height: auto;
  }
}
/*****************************************/
/* Company Profile 会社概要 */
/*****************************************/
.p-profile__list {
  max-width: 700px;
  margin-top: 150px !important;
}
@media (max-width: 640px) {
  .p-profile__list {
    margin-top: 70px !important;
  }
}
.p-profile__list tr:not(:last-child) {
  border-bottom: 1px solid #999;
}
.p-profile__list td {
  font-size: 1rem !important;
  border: none !important;
  vertical-align: top;
}
.p-profile__list td:first-child {
  font-weight: bold;
  width: 160px;
}
@media (max-width: 640px) {
  .p-profile__list td:first-child {
    width: 90px;
  }
}

.p-profile__history {
  padding-top: 0 !important;
  margin-top: 170px !important;
}
@media (max-width: 640px) {
  .p-profile__history {
    margin-top: 80px !important;
  }
}
.p-profile__history .smb-section__title {
  font-size: 2.1875rem !important;
}
.p-profile__history .smb-section__body {
  margin-top: 80px !important;
}
@media (max-width: 640px) {
  .p-profile__history .smb-section__body {
    margin-top: 40px !important;
  }
}

.p-profile__chronology {
  font-size: 1rem !important;
}
.p-profile__chronology .smb-step__body:before {
  border-left: 1px solid #999;
  top: 10px;
}
.p-profile__chronology .smb-step__item {
  margin-left: 50px;
}
.p-profile__chronology .smb-step__item__summary {
  margin-left: 50px;
}
@media (max-width: 640px) {
  .p-profile__chronology .smb-step__item__summary {
    margin-left: 10px;
  }
}
.p-profile__chronology .smb-step__item__number {
  width: 10px;
  height: 10px;
  background-color: #999;
  left: 38px;
  top: 14px;
}
.p-profile__chronology .smb-step__item__number::before {
  content: none;
}

/*****************************************/
/* equipment 設備 */
/*****************************************/
.p-equipment__list {
  margin-top: 140px !important;
}
@media (max-width: 640px) {
  .p-equipment__list {
    margin-top: 70px !important;
  }
}
.p-equipment__list h3 {
  font-size: 1.375rem !important;
  margin-bottom: 0;
}
.p-equipment__list tr {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.p-equipment__list td {
  border: none !important;
}
.p-equipment__list td {
  display: block;
  width: auto;
  padding: 0.5em;
}
.p-equipment__list td:first-child {
  padding-right: 0;
}
.p-equipment__list td:last-child {
  position: relative;
  flex-grow: 1;
  text-align: right !important;
}
.p-equipment__list td:last-child::before {
  position: absolute;
  top: 50%;
  left: 0.5em;
  width: calc(100% - 70px);
  height: 3px;
  content: " ";
  border-top: 1px dotted #333;
}

/*****************************************/
/* CSR  SDGsへの取り組み／認証資格*/
/*****************************************/
.p-csr__head .smb-section__body {
  margin-top: 130px;
}
@media (max-width: 640px) {
  .p-csr__head .smb-section__body {
    margin-top: 60px;
  }
}
.p-csr__head .u-aligncenter-wrapper {
  margin-top: 130px;
  padding-bottom: 40px;
}
@media (max-width: 640px) {
  .p-csr__head .u-aligncenter-wrapper {
    margin-top: 60px;
    padding-bottom: 20px;
  }
}

.p-csr__about .c-container {
  max-width: 1060px !important;
}
.p-csr__about .smb-section__title {
  font-size: 1.875rem !important;
}

.p-csr-attempt__wrap .smb-media-text__title,
.p-csr-attempt__wrap h3 {
  font-size: 1.5625rem !important;
}

.p-csr-attempt {
  margin-bottom: 120px;
}
@media (max-width: 640px) {
  .p-csr-attempt {
    margin-bottom: 60px;
  }
}
.p-csr-attempt .c-row--margin {
  align-items: stretch;
}

.p-csr-attempt.--large {
  margin-top: 200px;
  margin-bottom: 70px !important;
}
@media (max-width: 640px) {
  .p-csr-attempt.--large {
    margin-top: 100px;
    margin-bottom: 40px;
  }
}

.p-csr-attempt__detail {
  padding-left: 0;
  padding-right: 0;
  margin-bottom: 75px !important;
}
@media (max-width: 640px) {
  .p-csr-attempt__detail {
    margin-bottom: 30px !important;
  }
}
.p-csr-attempt__detail .c-container {
  padding: 0 !important;
}
.p-csr-attempt__detail .c-container figure {
  width: 90px;
  height: 90px;
}
.p-csr-attempt__detail .smb-container__body {
  width: 100%;
  margin-left: 0;
  margin-right: 0;
}
.p-csr-attempt__detail h4 {
  color: #003e7f;
}
.p-csr-attempt__detail p {
  color: #1a1a1a;
}
.p-csr-attempt__detail .smb-media-text__body p {
  min-height: 90px;
  display: block;
}

.p-csr-attempt__icon {
  margin-top: 0 !important;
}
@media (max-width: 640px) {
  .p-csr-attempt__icon {
    margin-top: 10px !important;
  }
}
.p-csr-attempt__icon .smb-container__body {
  display: flex;
  justify-content: flex-end;
}
.p-csr-attempt__icon .smb-container__body > .wp-block-image {
  margin-top: 0 !important;
  margin-left: 10px !important;
  margin-right: 0 !important;
  padding: 0;
}

/*****************************************/
/* contact お問い合わせ */
/*****************************************/
.p-contact h3 {
  border-left: 5px solid #ef8290;
  font-size: 1.25rem !important;
  padding-left: 10px;
  margin-bottom: 0;
  padding-top: 4px;
  padding-bottom: 4px;
}
.p-contact .smf-item--divider {
  border-top: none !important;
}
.p-contact .smf-item__col {
  padding: 20px;
  font-size: 0.875rem !important;
}
.p-contact .smf-item__col--label {
  width: 240px;
  position: relative;
  line-height: 1;
  flex: 1 1 auto;
  max-width: none;
}
@media (max-width: 640px) {
  .p-contact .smf-item__col--label {
    width: 100%;
  }
}
.p-contact p + p,
.p-contact .smf-placeholder + p {
  margin-top: 5px !important;
}
.p-contact .smf-placeholder {
  margin-top: 0;
}
.p-contact input {
  width: 100%;
}
.p-contact input.p-contact__address1,
.p-contact input.p-contact__zip {
  width: auto;
}
.p-contact .smf-item__col--label,
.p-contact .smf-item {
  border-color: #999 !important;
}
.p-contact input,
.p-contact textarea {
  border-radius: 8px !important;
  border-color: #999 !important;
}
.p-contact input[type=checkbox] {
  border-radius: 0 !important;
}

.p-contact .c-required .smf-item__col--label::after {
  position: absolute;
  content: "必須";
  width: 40px;
  height: 20px;
  line-height: 20px;
  text-align: center;
  font-size: 0.875rem !important;
  background-color: #df0522;
  color: #fff;
  top: 20px;
  right: 20px;
}

@media (min-width: 1024px) {
  .p-control__address .smf-item__controls {
    display: flex;
    flex-wrap: wrap;
  }
  .p-control__address p,
  .p-control__address .smf-placeholder {
    width: 100%;
  }
  .p-control__address p:first-child + .smf-placeholder {
    width: auto;
    margin-left: 0;
    margin-right: 20px;
  }
  .p-control__address p:first-child + .smf-placeholder + p {
    width: 50%;
    margin-left: 0;
  }
}
.p-control__address p:first-child + .smf-placeholder + p {
  margin-top: 10px;
  font-size: 0.75rem !important;
}

[data-screen=confirm] .p-control__address p:first-child + .smf-placeholder + p {
  display: none;
}

.p-contact__privacy + div,
.p-contact__mail + div {
  border-bottom: none !important;
  padding-top: 50px;
  padding-bottom: 20px;
}
.p-contact__privacy + div p,
.p-contact__mail + div p {
  font-size: 1.125rem !important;
}

.p-contact__privacy {
  width: 100%;
  position: relative;
  text-align: center;
  border: none !important;
}
.p-contact__privacy .smf-checkbox-control__label {
  font-size: 1rem !important;
}
.p-contact__privacy .smf-item__controls {
  background-color: #f7f7f7;
  padding: 10px;
}
@media (max-width: 640px) {
  .p-contact__privacy .smf-item__controls {
    padding-left: 60px;
  }
}

.p-contact__privacy::after {
  position: absolute;
  content: "必須";
  width: 40px;
  height: 20px;
  line-height: 20px;
  text-align: center;
  font-size: 0.875rem !important;
  background-color: #df0522;
  color: #fff;
  top: 50%;
  left: 20px;
  transform: translateY(-50%);
}
@media (max-width: 640px) {
  .p-contact__privacy::after {
    left: 10px;
  }
}

.p-contact__comment2,
.p-contact__comment3 {
  display: none;
}

[data-screen=input] .p-contact__comment2,
[data-screen=back] .p-contact__comment2,
[data-screen=invalid] .p-contact__comment2 {
  display: block;
}

[data-screen=confirm] .p-contact__comment3 {
  display: block;
}

.p-contact .smb-btn,
.smf-action .smf-button-control__control {
  width: 358px;
  height: 84px;
  border: none;
  background-image: url(../images/btn_contact_bk.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  line-height: 84px;
  padding: 0;
  color: #fff;
  font-size: 1.5625rem !important;
  font-weight: bold;
}
@media (max-width: 640px) {
  .p-contact .smb-btn,
  .smf-action .smf-button-control__control {
    width: auto;
    min-width: 300px;
    background-size: 100% 84px;
    padding: 0 20px;
    font-size: 1.25rem !important;
    display: block;
    margin-right: auto;
    margin-left: auto;
  }
}

.smf-action .smf-button-control__control:hover {
  opacity: 0.6;
}

@media (max-width: 640px) {
  .smf-action .smf-button-control + .smf-button-control {
    margin-left: 0;
    margin-top: 20px;
    display: block;
  }
}

.smf-complete-content {
  padding: 100px 0;
  text-align: center;
}
.smf-complete-content .wp-block-snow-monkey-blocks-buttons {
  margin-top: 100px !important;
}

/*****************************************/
/* Privacy Policy */
/*****************************************/
.p-privacy h4 {
  font-size: 1.125rem !important;
  border-left: 5px solid #ef8290;
  padding-left: 10px;
  margin-bottom: 40px;
  padding-top: 4px;
  padding-bottom: 4px;
}
.p-privacy li {
  list-style: none;
  padding-left: 20px;
  position: relative;
}
.p-privacy li::before {
  content: "";
  position: absolute;
  display: block;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background-color: #999;
  left: 0;
  top: 9px;
}

.p-privacy__read {
  margin-top: 90px !important;
}
@media (max-width: 640px) {
  .p-privacy__read {
    margin-top: 40px !important;
  }
}

.p-privacy__01,
.p-privacy__02,
.p-privacy__03 {
  padding-left: 0;
  padding-right: 0;
  padding-bottom: 100px;
}
@media (max-width: 640px) {
  .p-privacy__01,
  .p-privacy__02,
  .p-privacy__03 {
    padding-bottom: 50px;
  }
}

.p-privacy__01 {
  padding-top: 150px;
}
@media (max-width: 640px) {
  .p-privacy__01 {
    padding-top: 70px;
  }
}
.p-privacy__01 p {
  padding-left: 30px;
}

.p-privacy__04 {
  max-width: 600px;
  padding: 50px;
}
@media (max-width: 640px) {
  .p-privacy__04 {
    padding: 20px;
  }
}
.p-privacy__04 .smb-box__background {
  border-color: #999 !important;
}
.p-privacy__04 h3 {
  font-size: 1.25rem !important;
}/*# sourceMappingURL=style.css.map */