@charset "UTF-8";
/*!
Theme Name: Simplicity2 child
Template:   simplicity2
Version:    20161002
*/
/* Simplicity子テーマ用のスタイル */
/************************************
** 基本設定
************************************/

:root {
  /* pxからvwへ */
  --13px: 0.9027vw;
  --16px: 1.1111vw;
  --18px: 1.25vw;
  --20px: 1.3888vw;
  --21px: 1.4583vw;
  --28px: 1.9444vw;
  --44px: 3.0555vw;
  --47px: 3.2638vw;
  --48px: 3.3333vw;
  --54px: 3.75vw;
}

::selection {
  background: #231815;
  color: #fff;
}

#container {
  border: 1px solid #000;
  padding: 0;
  margin: 0 auto;
}

.tate {
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  line-height: 2.0em;
  font-feature-settings: initial;
}

/* PC */
@media screen and (min-width:751px) {
  .pc-only {
    display: block;
  }
  .sp-only {
    display: none;
  }
}

/* スマホ */
@media screen and (max-width:750px) {

  :root {
    /* pxからvwへ */
    --13px: 3.25vw;
    --16px: 4vw;
    --18px: 4.5vw;
    --20px: 5vw;
    --21px: 5.25vw;
    --28px: 7vw;
    --44px: 11vw;
    --47px: 11.75vw;
    --48px: 12vw;
    --54px: 13.5vw;
  }

  .pc-only {
    display: none;
  }
  .sp-only {
    display: block;
  }
  #body {
    width: 100%;
    margin: 0 auto;
  }
}



/************************************
** ナビゲーション
************************************/

#mobile-overlay {
  display: none;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 120;
  background-color: rgba(0, 0, 0, 0.4);
  width: 100%;
  height: 100dvh;
  padding: 0;
  margin: 0;
}
#mobile-overlay.open {
  display: block;
}

#mobile-navi {
  box-sizing: border-box;
  position: fixed;
  right: -37.5%;
  bottom: 0;
  z-index: 130;
  border-width: 0 1px 1px 1px;
  border-style: solid;
  border-color: #000;
  background-color: #F3F75F;
  width: 37.5%;
  height: 100dvh;
  margin: 0;
  transition: right 0.5s ease;
}
#mobile-navi.open {
  right: 0;
}
#mobile-navi #mobile-navi-in {
  display: flex;
  flex-direction: column;
  height: 100%;
}
#mobile-navi #mobile-navi-in #mobile-navi-home {
  box-sizing: border-box;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
}
#mobile-navi #mobile-navi-in #mobile-navi-home > a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 100%;
  font-size: var(--20px);
  letter-spacing: 0.18em;
  line-height: 1.8;
}
#mobile-navi #mobile-navi-in #mobile-navi-menu {
  flex-grow: 1;
}
#mobile-navi #mobile-navi-in #mobile-navi-menu > li {
  box-sizing: border-box;
  border-bottom: 1px solid #000;
  height: calc(100% / 5);
}
#mobile-navi #mobile-navi-in #mobile-navi-menu > li:has(ul) {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
#mobile-navi #mobile-navi-in #mobile-navi-menu > li:not(:has(ul)) > a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
  padding: 0 6.52%;
  /*font-size: var(--20px);*/
  font-size: 20px;
  letter-spacing: 0.18em;
  line-height: 1.8;
}
#mobile-navi #mobile-navi-in #mobile-navi-menu > li:has(ul) > a {
  margin: 0 6.52%;
  /*font-size: var(--20px);*/
  font-size: 20px;
  letter-spacing: 0.18em;
  line-height: 1.8;
}
#mobile-navi #mobile-navi-in #mobile-navi-menu > li > ul {
  margin-top: 0.55vw;
}
#mobile-navi #mobile-navi-in #mobile-navi-menu > li > ul > li > a {
  margin: 0 6.52%;
  /*font-size: var(--16px);*/
  font-size: 16px;
  line-height: 1.8;
}

#mobile-navi #mobile-navi-in #mobile-navi-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 6.52%;
}
#mobile-navi #mobile-navi-in #mobile-navi-footer .privacy-policy {
  font-size: 14px;
  line-height: 1;
}
#mobile-navi #mobile-navi-in #mobile-navi-sns {
  display: flex;
  justify-content: flex-end;
  column-gap: 1em;
  padding: 4.01% 0;
}
#mobile-navi #mobile-navi-in #mobile-navi-sns li {
  width: 2.5vw;
}
#mobile-navi #mobile-navi-in #mobile-navi-sns li img {
  display: block;
}


/* PC */
@media screen and (min-width:961px) {
  
  @media screen and (max-height: 800px) {
    #mobile-navi #mobile-navi-in #mobile-navi-menu > li > ul {
      display: flex;
      margin: 0 6.52%;
    }
    #mobile-navi #mobile-navi-in #mobile-navi-menu > li > ul > li {
      margin: 0 1em 0 0;
    }
    #mobile-navi #mobile-navi-in #mobile-navi-menu > li > ul > li > a {
      white-space: nowrap;
      font-size: 14px;
      margin: 0;
    }
  }
  
}

/* タブレット */
@media screen and (min-width:751px) and (max-width:960px) {
  
}

/* スマホ */
@media screen and (max-width:750px) {
  
  #mobile-overlay {
    display: none;
  }
  #mobile-overlay.open {
    display: none;
  }

  #mobile-navi {
    right: -100%;
    width: 100%;
  }
  #mobile-navi #mobile-navi-in #mobile-navi-home {
    width: 80%;
  }
  #mobile-navi #mobile-navi-in #mobile-navi-menu > li {
    height: auto;
    padding: 1.3em 0;
  }
  #mobile-navi #mobile-navi-in #mobile-navi-menu > li:has(ul) {
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    padding: 2.25vh 0;
  }
  #mobile-navi #mobile-navi-in #mobile-navi-menu > li:not(:has(ul)) > a {
    padding: 0 8.75%;
  }
  #mobile-navi #mobile-navi-in #mobile-navi-menu > li:has(ul) > a {
    margin: 0 10% 0 8.75%;
  }
  #mobile-navi #mobile-navi-in #mobile-navi-menu > li > ul {
    margin-top: 0;
  }
  #mobile-navi #mobile-navi-in #mobile-navi-menu > li > ul > li > a {
    margin: 0;
  }
  #mobile-navi #mobile-navi-in #mobile-navi-sns {
    justify-content: flex-start;
    padding: 5.5% 0;
  }
  #mobile-navi #mobile-navi-in #mobile-navi-sns li {
    width: 7vw;
  }

}



/************************************
** 投稿・ページ
************************************/

.entry-content img {
  display: block;
}
.page article h2 {
  line-height: 1.6;
  margin: 0;
}
body .grecaptcha-badge {
  visibility: hidden;
}
/*
body.page-contact .grecaptcha-badge,
body.page-monitor .grecaptcha-badge {
  visibility: hidden;
}
*/
/* 共通ボタン */

/* PC */
@media screen and (min-width:961px) {
  .pc-only {
    display: block !important;
  }
  .sp-only {
    display: none !important;
  }
}

/* タブレット */
@media screen and (min-width:751px) and (max-width:960px) {
  .pc-only {
    display: block !important;
  }
  .sp-only {
    display: none !important;
  }
}

/* スマホ */
@media screen and (max-width:750px) {
  .pc-only {
    display: none !important;
  }
  .sp-only {
    display: block !important;
  }
  
}


/************************************
** アニメーション
************************************/

@keyframes anim-scroll-first {
  0% {
    transform: translateX(0%);
  }

  100% {
    transform: translateX(-100%);
  }
}

@keyframes anim-scroll-second {
  0% {
    transform: translateX(0%);
  }

  100% {
    transform: translateX(-100%);
  }
}



/************************************
** 共通パーツ
************************************/

.section_inner a img {
  webkit-transition: opacity 1s ease-out;
  -moz-transition: opacity 1s ease-out;
  -ms-transition: opacity 1s ease-out;
  transition: opacity 1s ease-out;
}
.bx-wrapper {
  -moz-box-shadow: none !important;
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
  margin-bottom: 0 !important;
  border: none !important;
  background: none !important;
}

/* 共通セクションヘッダー */
section .section_header {
  box-sizing: border-box;
  position: sticky;
  top: 0;
  z-index: 110;
  border-width: 1px 0;
  border-style: solid;
  border-color: #000;
  background-color: #F3F75F;
  width: 100%;
}
section .section_header > h2 {
  padding: 1.354vw 1.52%;
  font-size: var(--20px);
  letter-spacing: 0.18em;
  line-height: 1.8;
  color: #000;
}

.bx-wrapper .bx-loading {
  display: none;
  min-height: 50px;
  background: url('/wp/wp-content/themes/simplicity2-child/images/bx_loader.gif') center center no-repeat #ffffff;
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2000;
}

/* スマホ */
@media screen and (max-width:750px) {

  section .section_header > h2 {
    padding: 4.875vw 5.5%;
  }

}


/* ボタン（矢印→） */
.btn_type1 {
  display: flex;
}
.btn_type1 a {
  position: relative;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  border: 2px solid #000;
  border-radius: 100vh;
  padding: 0.27vw 3em 0.27vw 1.73vw ;
  font-size: var(--20px);
  line-height: 1.8;
}
/*
.btn_type1 a::after {
  content: '';
  display: block;
  background-image: url(images/arrow-black-right1.svg);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 100% auto;
  width: 1.2em;
  height: 1.2em;
}
*/
.btn_type1 a .btn_text {
  margin-right: 0.6em;
}
.btn_type1 a .btn_text:before,
.btn_type1 a .btn_text:after{
  position: absolute;
  margin: auto;
  content: "";
  vertical-align: middle;
  transition: 1s 0.5s all ease;
}
.btn_type1 a .btn_text:before{
  content: '';
  display: inline-block;
  left: -90vw;
  top: calc(50% - 3px);
  width: 6px;
  height: 6px;
  border-top: 2px solid #000;
  border-left: 2px solid #000;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
.btn_type1 a .btn_text:after{
  content: '';
  display: inline-block;
  left: calc(-100vw + 20px);
  top: calc(50% - 0px);
  width: 20px;
  height: 2px;
  background-color: #000;
}
.btn_type1 a:hover .btn_text:before{
  left: -4vw;
}
.btn_type1 a:hover .btn_text:after{
  width: calc(95vw + 2px);
}

.btn_type1 a .arrow:before,
.btn_type1 a .arrow:after{
  position: absolute;
  margin: auto;
  content: "";
  vertical-align: middle;
  transition: 0.5s 1s all ease;
}
.btn_type1 a:hover .arrow:before,
.btn_type1 a:hover .arrow:after{
  transition: 0.5s all ease;
}
.btn_type1 a .arrow:before{
  content: '';
  display: inline-block;
  right: 25px;
  top: calc(50% - 3px);
  width: 6px;
  height: 6px;
  border-top: 2px solid #000;
  border-left: 2px solid #000;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
.btn_type1 a .arrow:after{
  content: '';
  display: inline-block;
  right: 25px;
  top: calc(50% - 0px);
  width: 20px;
  height: 2px;
  background-color: #000;
}
.btn_type1 a:hover .arrow:before{
  right: -50vw;
}
.btn_type1 a:hover .arrow:after{
  right: -50vw;
  width: 53vw;
}

/* スマホ */
@media screen and (max-width:750px) {

  .btn_type1 a {
    padding: 1vw 3em 1vw 7vw;
  }
  
  .btn_type1 a .btn_text:before,
  .btn_type1 a:hover .btn_text:before{
    left: -10vw;
  }
  .btn_type1 a .btn_text:after,
  .btn_type1 a:hover .btn_text:after{
    left: -103vw;
    width: calc(95vw + 2px);
  }

  .btn_type1 a .arrow:before,
  .btn_type1 a:hover .arrow:before{
    right: -45vw;
  }
  .btn_type1 a .arrow:after,
  .btn_type1 a:hover .arrow:after{
    right: -45vw;
    width: 53vw;
  }

}


/* ボタン（矢印↗） */
.btn_type2 {
  display: flex;
}
.btn_type2 a {
  position: relative;
  z-index: 10;
  box-sizing: border-box;
  /*display: flex;
  align-items: center;*/
  /*background-color: #F3F75F;
  border: 2px solid #000;
  border-radius: 10vw;*/
  padding: 0;
  font-size: var(--20px);
  line-height: 1.8;
}
/*
.btn_type2 a:after {
  content: '　　　　　　　　';
  position: absolute;
  left: 0;
  z-index: 1;
  background-color: #F3F75F;
  border: 2px solid #000;
  border-radius: 10vw;
  padding: 0.27vw 3em 0.27vw 1.73vw;
  font-size: var(--20px);
  line-height: 1.8;
}
*/
.btn_type2 a .btn_text {
  display: block;
  position: relative;
  z-index: 11;
  margin-right: 0em;
}
.btn_type2 a .btn_text:before,
.btn_type2 a .btn_text:after{
  position: absolute;
  margin: auto;
  content: "";
  vertical-align: middle;
  transition: 1s 0.5s all ease;
}
.btn_type2 a .btn_text:before{
  content: '';
  display: inline-block;
  position: absolute;
  right: calc(21vw);
  bottom: calc(-21vw);
  z-index: -1;
  width: 6px;
  height: 6px;
  border-top: 2px solid #000;
  border-left: 2px solid #000;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}
.btn_type2 a .btn_text:after{
  content: '';
  display: inline-block;
  position: absolute;
  right: calc(21vw);
  bottom: calc(-21vw);
  z-index: -1;
  width: 20px;
  height: 2px;
  background-color: #000;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.btn_type2 a:hover .btn_text:before{
  right: 2.2vw;
  bottom: -2vw;
}
.btn_type2 a:hover .btn_text:after{
  right: -0.85vw;
  bottom: -10vw;
  width: 23vw;
}

.btn_type2 a .arrow {
  display: block;
  position: relative;
  z-index: 20;
  background-color: #F3F75F;
  border: 2px solid #000;
  border-radius: 10vw;
  padding: 0.27vw 3em 0.27vw 1.73vw;
  font-size: var(--20px);
  line-height: 1.8;
}
.btn_type2 a .arrow:before,
.btn_type2 a .arrow:after{
  position: absolute;
  margin: auto;
  content: "";
  vertical-align: middle;
  transition: 0.5s 1s all ease;
}
.btn_type2 a:hover .arrow:before,
.btn_type2 a:hover .arrow:after{
  transition: 0.5s all ease;
}
.btn_type2 a .arrow:before{
  content: '';
  display: inline-block;
  right: calc(1.5vw + 1px);
  top: calc(50% - 6px);
  width: 6px;
  height: 6px;
  border-top: 2px solid #000;
  border-left: 2px solid #000;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}
.btn_type2 a .arrow:after{
  content: '';
  display: inline-block;
  right: 1.5vw;
  top: calc(50% + 0px);
  width: 16px;
  height: 2px;
  background-color: #000;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.btn_type2 a:hover .arrow:before{
  right: calc(-68.2vw);
  top: calc(-69.2vw);
}
.btn_type2 a:hover .arrow:after{
  right: -82.88vw;
  top: calc(50% - 34.93vw);
  width: 100vw;
}



/* スマホ */
@media screen and (max-width:750px) {

  .btn_type2 a {
    padding: 1vw 0 1vw 0;
  }
  
  .btn_type2 a .btn_text {
    margin-right: 0.6em;
  }
  .btn_type2 a .btn_text:before,
  .btn_type2 a:hover .btn_text:before{
    right: calc(12.3vw);
    bottom: calc(-6.2vw);
  }
  .btn_type2 a .btn_text:after,
  .btn_type2 a:hover .btn_text:after {
    right: -4vw;
    bottom: -19vw;
    width: 40vw;
  }
  
  .btn_type2 a .arrow {
    padding: 0.27vw 3em 0.27vw 1em;
  }
  .btn_type2 a .arrow:before,
  .btn_type2 a:hover .arrow:before {
    right: calc(-68.2vw);
    top: calc(-69.2vw);
  }
  .btn_type2 a .arrow:after,
  .btn_type2 a:hover .arrow:after{
    right: -80vw;
    top: calc(50% - 35vw);
    width: 100vw;
  }

}


/* ボタン（矢印→） */
.btn_type3 {
  display: flex;
}
.btn_type3 a {
  position: relative;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  border: 2px solid #000;
  border-radius: 100vh;
  padding: 0.27vw 3em 0.27vw 1.73vw ;
  font-size: var(--20px);
  line-height: 1.8;
}

.btn_type3 a .arrow:before,
.btn_type3 a .arrow:after{
  position: absolute;
  margin: auto;
  content: "";
  vertical-align: middle;
  transition: 1s all ease;
}
.btn_type3 a .arrow:before{
  content: '';
  display: inline-block;
  right: 20px;
  top: calc(50% - 3px);
  width: 6px;
  height: 6px;
  border-top: 2px solid #000;
  border-left: 2px solid #000;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
.btn_type3 a .arrow:after{
  content: '';
  display: inline-block;
  right: 20px;
  top: calc(50% - 0px);
  width: 20px;
  height: 2px;
  background-color: #000;
}
.btn_type3 a:hover .arrow:before{
  right: -40vw;
}
.btn_type3 a:hover .arrow:after{
  right: -40vw;
  width: calc(40vw + 40px);
}

/* スマホ */
@media screen and (max-width:750px) {

  .btn_type3 a {
    padding: 1vw 3em 1vw 7vw;
  }
  
  .btn_type3 a .arrow:before,
  .btn_type3 a:hover .arrow:before{
    right: -40vw;
  }
  .btn_type3 a .arrow:after,
  .btn_type3 a:hover .arrow:after{
    right: -40vw;
    width: calc(40vw + 40px);
  }

}



/* ボタン（矢印→） */
.btn_type4 {
  display: flex;
}
.btn_type4 a {
  position: relative;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  border: 2px solid #000;
  border-radius: 100vh;
  padding: 0.27vw 3em 0.27vw 1.73vw ;
  font-size: var(--20px);
  line-height: 1.8;
}

.btn_type4 a .btn_text {
  margin-right: 0.6em;
}
.btn_type4 a .btn_text:before,
.btn_type4 a .btn_text:after{
  position: absolute;
  margin: auto;
  content: "";
  vertical-align: middle;
  transition: 1s all ease;
}
.btn_type4 a:hover .btn_text:before,
.btn_type4 a:hover .btn_text:after{
  transition: 1s 0.5s all ease;
}
.btn_type4 a .btn_text:before{
  content: '';
  display: inline-block;
  left: -90vw;
  top: calc(50% - 3px);
  width: 6px;
  height: 6px;
  border-top: 2px solid #000;
  border-left: 2px solid #000;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
.btn_type4 a .btn_text:after{
  content: '';
  display: inline-block;
  left: calc(-100vw + 20px);
  top: calc(50% - 0px);
  width: 20px;
  height: 2px;
  background-color: #000;
}
.btn_type4 a:hover .btn_text:before{
  left: -4vw;
}
.btn_type4 a:hover .btn_text:after{
  width: calc(95vw + 2px);
}

.btn_type4 a .arrow:before,
.btn_type4 a .arrow:after{
  position: absolute;
  margin: auto;
  content: "";
  vertical-align: middle;
  transition: 1s 0.5s all ease;
}
.btn_type4 a:hover .arrow:before,
.btn_type4 a:hover .arrow:after{
  transition: 1s all ease;
}
.btn_type4 a .arrow:before{
  content: '';
  display: inline-block;
  right: 20px;
  top: calc(50% - 3px);
  width: 6px;
  height: 6px;
  border-top: 2px solid #000;
  border-left: 2px solid #000;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
.btn_type4 a .arrow:after{
  content: '';
  display: inline-block;
  right: 20px;
  top: calc(50% - 0px);
  width: 20px;
  height: 2px;
  background-color: #000;
}
.btn_type4 a:hover .arrow:before{
  right: -90vw;
}
.btn_type4 a:hover .arrow:after{
  right: -90vw;
  width: calc(90vw + 40px);
}

/* スマホ */
@media screen and (max-width:750px) {

  .btn_type4 a {
    padding: 1vw 3em 1vw 7vw;
  }
  
  .btn_type4 a .btn_text:before,
  .btn_type4 a:hover .btn_text:before {
    left: -10vw;
  }
  .btn_type4 a .btn_text:after,
  .btn_type4 a:hover .btn_text:after {
    left: -104vw;
    width: calc(95vw + 2px);
  }

  .btn_type4 a .arrow:before,
  .btn_type4 a:hover .arrow:before{
    right: -90vw;
  }
  .btn_type4 a .arrow:after,
  .btn_type4 a:hover .arrow:after{
    right: -90vw;
    width: calc(90vw + 40px);
  }

}



/* 共通ニュース */

#common-news {
  /*overflow: hidden;*/
}
#common-news .section_inner {
  width: 100%;
  padding-top: 3.4%;
  overflow: hidden;
}
#common-news .section_inner .common-news-grid {
  position: relative;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
}
#common-news .section_inner .common-news-grid:before,
#common-news .section_inner .common-news-grid:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  z-index: 1;
  width: 1px;
  height: 100%;
  background-color: #000;
}
#common-news .section_inner .common-news-grid:before {
  left: calc(100% / 3);
}
#common-news .section_inner .common-news-grid:after {
  left: calc(100% / 3 * 2);
}
#common-news .section_inner .bx-wrapper {
  position: relative;
  z-index: 10;
}

#common-news .section_inner .bx-viewport {
  width: 100vw !important;
}
#common-news .section_inner #common-news-carousel {
  display: flex;
}
#common-news .section_inner #common-news-carousel .common_news_carousel_item {
  width: calc(100vw / 3) !important;
  background-color: #F3F75F;
  box-sizing: border-box;
  border-width: 0px 1px 0px 0px;
  border-style: solid;
  border-color: #000;
  border-left: none;
}
#common-news .section_inner #common-news-carousel .common_news_carousel_item a {
  display: block;
  width: 100%;
}
#common-news .section_inner #common-news-carousel .common_news_carousel_item a .thumb {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 4/2.4;
  border-bottom: 1px solid #000;
  overflow: hidden;
}
#common-news .section_inner #common-news-carousel .common_news_carousel_item a .thumb::after {
  content: "詳しく見る";
  display: block;
  position: absolute;
  left: calc(50% - 5em);
  top: calc(50% - 22px);
  z-index: 20;
  width: 7em;
  background-color: #F3F75F;
  background-image: url(images/arrow-black-right1.svg);
  background-repeat: no-repeat;
  background-position: 8em center;
  background-size: 15px;
  text-align: center;
  padding: 0.5em 2em 0.5em 1em;
  border: 1px solid #000;
  opacity: 0;
  transition: all 0.5s ease;
}
#common-news .section_inner #common-news-carousel .common_news_carousel_item a:hover .thumb:before {
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(0,0,0,0.2);
}
#common-news .section_inner #common-news-carousel .common_news_carousel_item a:hover .thumb::after {
  opacity: 1;
}
#common-news .section_inner #common-news-carousel .common_news_carousel_item .thumb img {
  display: block;
  width: 100%;
  height: auto;
}
#common-news .section_inner #common-news-carousel .common_news_carousel_item .meta {
  display: flex;
  padding: 2.01vw 1.66vw 1vw;
}
#common-news .section_inner #common-news-carousel .common_news_carousel_item .meta .date {
  margin-right: 1em;
  font-size: var(--16px);
  line-height: 1;
}
#common-news .section_inner #common-news-carousel .common_news_carousel_item .meta .cat {
  font-size: var(--16px);
  line-height: 1;
}
#common-news .section_inner #common-news-carousel .common_news_carousel_item .title {
  display: block;
  padding: 0 1.66vw 2.22vw;
  font-size: var(--20px);
  letter-spacing: 0.08em;
}
#common-news .section_inner #common-news-carousel .common_news_carousel_item .detail {
  display: none;
}
#common-news .section_inner .bx-wrapper .bx-controls-direction a {
  box-sizing: border-box;
  position: absolute;
  bottom: -5.55vw;
  top: auto;
  outline: 0;
  border: 2px solid #000;
  border-radius: 100vh;
  width: 4.82vw;
  height: 2.84vw;
  text-indent: -9999px;
  z-index: 100;
}
#common-news .section_inner .bx-wrapper .bx-prev {
  left: auto;
  right: 15.24vw;
  background: url('images/prev1.svg') no-repeat center center;
  background-size: 1.588vw auto;
}
#common-news .section_inner .bx-wrapper .bx-next {
  right: 6.94vw;
  background: url('images/next1.svg') no-repeat center center;
  background-size: 1.588vw auto;
}
#common-news .section_inner .news_btn {
  padding: 2.56% 6.94%;
}

/* スマホ */
@media screen and (max-width:750px) {

  #common-news .section_inner {
    box-sizing: border-box;
    padding: 15% 6% 0;
    overflow: hidden;
  }
  #common-news .section_inner .common-news-grid {
    border-top: none;
    border-bottom: none;
  }
  #common-news .section_inner .common-news-grid:before,
  #common-news .section_inner .common-news-grid:after {
    content: "";
    display: none;
  }
  #common-news .section_inner .bx-viewport {
    width: 88vw !important;
  }
  #common-news .section_inner #common-news-carousel .common_news_carousel_item {
    width: 88vw !important;
    border-width: 1px;
    border-left: 1px solid #000;
  }
  #common-news .section_inner #common-news-carousel .common_news_carousel_item .meta {
    padding: 4vw 6vw 2vw;
  }
  #common-news .section_inner #common-news-carousel .common_news_carousel_item .meta .date {
    font-size: var(--16px);
  }
  #common-news .section_inner #common-news-carousel .common_news_carousel_item .meta .cat {
    font-size: var(--16px);
  }
  #common-news .section_inner #common-news-carousel .common_news_carousel_item .title {
    padding: 0 6vw 2vw;
  }
  #common-news .section_inner #common-news-carousel .common_news_carousel_item .detail {
    display: flex;
    align-items: center;
    padding: 0 6vw 4vw;
    font-size: var(--16px);
    line-height: 1.8;
  }
  #common-news .section_inner #common-news-carousel .common_news_carousel_item .detail::after {
    content: '';
    display: block;
    background-image: url(images/arrow-black-up-right1.svg);
    background-repeat: no-repeat;
    background-position: left center;
    background-size: 0.9em auto;
    width: 0.9em;
    height: 0.9em;
  }
  #common-news .section_inner #common-news-carousel .common_news_carousel_item .detail > span {
    margin-right: 2.25vw;
  }
  #common-news .section_inner .bx-wrapper .bx-controls-direction a {
    bottom: -22vw;
    width: 17.5vw;
    height: 10.25vw;
  }
  #common-news .section_inner .bx-wrapper .bx-prev {
    left: 0;
    right: auto;
    background-size: 5.75vw auto;
  }
  #common-news .section_inner .bx-wrapper .bx-next {
    right: 0;
    background-size: 5.75vw auto;
  }
  #common-news .section_inner .news_btn {
    padding: 32.5% 0 15%;
  }
  #common-news .section_inner .news_btn a {
    justify-content: space-between;
    width: 100%;
  }
  #common-news .section_inner .news_btn a .btn_text {
    font-size: 0;
  }
  #common-news .section_inner .news_btn a .btn_text::before {
    content: '一覧を見る';
    font-size: var(--20px);
  }

}



/************************************
** HOME(home)
************************************/

/* keyvisual */
.home #keyvisual {
  width: 100%;
  overflow: hidden;
}
.home #keyvisual #keyvisual-image {
  height: 70vh;
  background-image: url("images/home/kv1.jpg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  overflow: hidden;
}
.home #keyvisual .section_inner > h1 {
  overflow: hidden;
  display: flex;
  align-items: center;
  width: 100%;
  padding: 2% 0;
  white-space: nowrap;
  border-top: 1px solid #000;
}
.home #keyvisual .section_inner > h1 span {
  display: inline-block;
  flex-shrink: 0;
  width: auto;
  height: auto;
  text-wrap: nowrap;
  white-space: nowrap;
}
.home #keyvisual .section_inner > h1 span img {
  width: 50vw;
  padding: 0 1.73%;
}
.home #keyvisual .section_inner > h1 span:first-of-type {
  animation: anim-scroll-first 30s infinite linear 0.1s both;
}
.home #keyvisual .section_inner > h1 span:last-of-type {
  animation: anim-scroll-second 30s infinite linear 0.1s both;
}

/* 小松組とは */
.home #topabout {
  width: 100%;
  border-top: 1px solid #000;
}
.home #topabout .section_inner {
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  width: 100%;
  padding: 2.63% 1.66%;
}
.home #topabout .section_inner .topabout_text {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  width: 43.82%;
  padding: 1.11% 0 1.11% 4.31%;
}
.home #topabout .section_inner .topabout_text > h3 {
  font-size: var(--28px);
  letter-spacing: 0.18em;
  line-height: 1.8;
}
.home #topabout .section_inner .topabout_text > h3 > span {
  border-bottom: 2px solid #000;
}
.home #topabout .section_inner .topabout_text > p {
  margin-top: 5.47%;
  font-size: var(--20px);
  letter-spacing: 0.08em;
  text-align: justify;
}
.home #topabout .section_inner .topabout_text .company_btn {
  margin-top: auto;
}
.home #topabout .section_inner > figure {
  width: 47.27%;
}
.home #topabout .section_inner > figure img {
  display: block;
  border: 1px solid #000;
}

/* 小松組のサービス */
.home #service {
  width: 100%;
  /*overflow: hidden;*/
}
.home #service .section_inner .service_item {
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  border-bottom: 1px solid #000;
  width: 100%;
  padding: 2.63% 1.66%;
}
.home #service .section_inner .service_item:last-child {
  border-bottom: none;
}
.home #service .section_inner .service_item > figure {
  width: 47.27%;
}
.home #service .section_inner .service_item > figure img {
  display: block;
}
.home #service .section_inner .service_item .service_item_text {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  width: 46.26%;
  padding: 1.43% 4.31% 1.43% 0;
}
.home #service .section_inner .service_item .service_item_text > h3 {
  font-size: var(--28px);
  letter-spacing: 0.18em;
  line-height: 1.8;
}
.home #service .section_inner .service_item .service_item_text > p {
  margin-top: 5.47%;
  font-size: var(--20px);
  letter-spacing: 0.08em;
  text-align: justify;
}
.home #service .section_inner .service_item .service_item_text .detail_btn {
  justify-content: flex-end;
  margin-top: auto;
}

/* 小松組のパーパス */
.home #purpose {
  width: 100%;
}
.home #purpose .section_inner {
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  width: 100%;
  padding: 2.63% 1.66%;
}
.home #purpose .section_inner .purpose_text {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  width: 43.82%;
  padding: 1.11% 0 1.11% 4.31%;
}
.home #purpose .section_inner .purpose_text > h3 {
  font-size: var(--54px);
  letter-spacing: 0.16em;
  line-height: 1.46;
}
.home #purpose .section_inner .purpose_text > h3 > span {
  border-bottom: 2px solid #000;
}
.home #purpose .section_inner .purpose_text > p {
  margin-top: 9.1%;
  font-size: var(--20px);
  letter-spacing: 0.08em;
  text-align: justify;
}
.home #purpose .section_inner .purpose_text .company_btn {
  margin-top: auto;
}
.home #purpose .section_inner > figure {
  width: 47.27%;
}
.home #purpose .section_inner > figure img {
  display: block;
  border: 1px solid #000;
}

/* 採用情報 */
.home #recruit {
  width: 100%;
}
.home #recruit .section_inner {
  overflow: hidden;
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  width: 100%;
  padding: 2.63% 1.66%;
}
.home #recruit .section_inner > figure {
  width: 47.27%;
}
.home #recruit .section_inner > figure img {
  display: block;
}
.home #recruit .section_inner .recruit_text {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  width: 46.26%;
  padding: 0.86% 4.31% 0.86% 0;
}
.home #recruit .section_inner .recruit_text > h3 {
  font-size: var(--28px);
  letter-spacing: 0.18em;
  line-height: 1.8;
}
.home #recruit .section_inner .recruit_text > p {
  margin-top: 5.47%;
  font-size: var(--20px);
  letter-spacing: 0.08em;
  text-align: justify;
}
.home #recruit .section_inner .recruit_text .recruit_text_box {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-top: auto;
}
.home #recruit .section_inner .recruit_text .recruit_text_box > dl dt {
  margin-bottom: 0.8em;
  font-size: var(--20px);
  letter-spacing: 0.08em;
}
.home #recruit .section_inner .recruit_text .recruit_text_box > dl dd {
  margin-top: 0.3em;
  font-size: var(--16px);
  line-height: 1.8;
}
.home #recruit .section_inner .recruit_text .recruit_text_box > dl dd a {
  display: flex;
  align-items: center;
  width: fit-content;
}
.home #recruit .section_inner .recruit_text .recruit_text_box > dl dd a::after {
  content: '';
  display: block;
  background-image: url(images/arrow-black-up-right1.svg);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 100% auto;
  width: 0.9em;
  height: 0.9em;
}
.home #recruit .section_inner .recruit_text .recruit_text_box > dl dd a span {
  margin-right: 0.6em;
}

/* 小松組にできること */
.home #contact {
  width: 100%;
}
.home #contact .section_inner {
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  width: 100%;
  padding: 2.63% 1.66%;
}
.home #contact .section_inner .contact_text {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  width: 40.73%;
  padding: 0.93% 0 0.93% 3.44%;
}
.home #contact .section_inner .contact_text .contact_text_list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  row-gap: 0.2em;
  font-size: var(--20px);
}
.home #contact .section_inner .contact_text .contact_text_list li {
  font-size: var(--20px);
  line-height: 1.8;
}
.home #contact .section_inner .contact_text .contact_text_list li a:hover,
.home #contact .section_inner .contact_text .contact_text_list li a.active{
  text-decoration: underline;
}
.home #contact .section_inner .contact_text .contact_btn {
  margin-top: auto;
}
.home #contact .section_inner .contact_text .contact_btn a {
  justify-content: center;
  width: 100%;
}
.home #contact .section_inner .contact_text .contact_btn a .pc-only {
  display: inline !important;
}
.home #contact .section_inner > figure {
  width: 48.56%;
}
.home #contact .section_inner > figure img {
  display: block;
}


/* スマホ */
@media screen and (max-width:750px) {
  
  /* keyvisual */
  .home #keyvisual {
    width: 100%;
  }
  .home #keyvisual .section_inner #keyvisual-image {
    /*background: url(images/home/kv-sp.jpg) no-repeat center center / cover;*/
  }
  .home #keyvisual .section_inner #keyvisual-image img {
    display: none;
  }
  .home #keyvisual .section_inner > h1 {
    padding: 4% 0;
  }
  .home #keyvisual .section_inner > h1 span img {
    width: 116vw;
  }

/* 小松組とは */
.home #topabout .section_inner {
  flex-direction: column;
  padding: 15% 0;
  overflow: hidden;
}
.home #topabout .section_inner .topabout_text {
  order: 2;
  display: block;
  width: auto;
  padding: 13% 6% 0;
}
.home #topabout .section_inner .topabout_text > h3 {
  font-size: var(--28px);
    letter-spacing: 0.18em;
    line-height: 1.8;
}
.home #topabout .section_inner .topabout_text > h3 > span {
  border-bottom: none;
}
.home #topabout .section_inner .topabout_text > p {
  margin-top: 8.52%;
}
.home #topabout .section_inner .topabout_text .company_btn {
  justify-content: flex-end;
  margin-top: 12.78%;
}
.home #topabout .section_inner > figure {
  order: 1;
  width: 100%;
}
.home #topabout .section_inner > figure img {
  border-right: none;
  border-left: none;
}

  /* 小松組のサービス */
  .home #service .section_inner .service_item {
    display: block;
    padding: 15% 6%;
    overflow: hidden;
  }
  .home #service .section_inner .service_item > figure {
    width: 100%;
  }
  .home #service .section_inner .service_item .service_item_text {
    display: block;
    width: 100%;
    padding: 17% 0 0;
  }
  .home #service .section_inner .service_item .service_item_text > p {
    margin-top: 8.52%;
  }
  .home #service .section_inner .service_item .service_item_text .detail_btn {
    margin-top: 12.78%;
  }

  /* 小松組のパーパス */
  .home #purpose .section_inner {
    flex-direction: column;
    padding: 15% 0;
    overflow: hidden;
  }
  .home #purpose .section_inner .purpose_text {
    order: 2;
    display: block;
    width: auto;
    padding: 7.5% 6% 0;
  }
  .home #purpose .section_inner .purpose_text > h3 {
    font-size: var(--48px);
    line-height: 1.36;
  }
  .home #purpose .section_inner .purpose_text > h3 > span {
    border-bottom: none;
  }
  .home #purpose .section_inner .purpose_text > p {
    margin-top: 11.36%;
  }
  .home #purpose .section_inner .purpose_text .company_btn {
    justify-content: flex-end;
    margin-top: 12.78%;
  }
  .home #purpose .section_inner > figure {
    order: 1;
    width: 100%;
  }
  .home #purpose .section_inner > figure img {
    border-right: none;
    border-left: none;
  }

  /* 採用情報 */
  .home #recruit .section_inner {
    display: block;
    padding: 15% 0;
  }
  .home #recruit .section_inner > figure {
    width: 100%;
  }
  .home #recruit .section_inner .recruit_text {
    display: block;
    width: auto;
    padding: 15% 6% 0;
  }
  .home #recruit .section_inner .recruit_text > p {
    margin-top: 8.52%;
  }
  .home #recruit .section_inner .recruit_text .recruit_text_box {
    display: block;
    margin-top: 12.78%;
  }
  .home #recruit .section_inner .recruit_text .recruit_text_box > dl dt {
    margin-bottom: 0.2em;
  }
  .home #recruit .section_inner .recruit_text .recruit_text_box .recruit_btn {
    justify-content: flex-end;
    margin-top: 12.78%;
  }

  /* 小松組にできること */
  .home #contact .section_inner {
    flex-direction: column;
    padding: 15% 6% 11.25%;
    overflow: hidden;
  }
  .home #contact .section_inner .contact_text {
    display: block;
    order: 2;
    width: 100%;
    padding: 7.1% 0 0;
  }
  .home #contact .section_inner .contact_text .contact_text_list {
    display: block;
    text-align: justify;
  }
  .home #contact .section_inner .contact_text .contact_text_list li {
    display: inline;
    margin-right: 0.5em;
    font-size: var(--21px);
    letter-spacing: 0.08em;
    line-height: 1.7;
  }
  .home #contact .section_inner .contact_text .contact_btn {
    margin-top: 11.36%;
  }
  .home #contact .section_inner .contact_text .contact_btn a {
    justify-content: space-between;
  }
  .home #contact .section_inner .contact_text .contact_btn a .btn_text {
    font-size: var(--20px);
  }
  .home #contact .section_inner .contact_text .contact_btn a .btn_text .pc-only {
    display: none !important;
  }
  .home #contact .section_inner > figure {
    order: 1;
    width: 100%;
  }

}



/*************************************************************************

** COMMON STYLE

**************************************************************************/

#main {
  width: 100%;
  margin: 0 auto;
  border-bottom: 1px solid #000;
}
/*
#main:has(a.hover-card:nth-child(4)) {
  border-bottom: none;
}
*/
section .sec_inner {}

.page article {
  margin: 0 auto 0 auto;
}
.page .page-header .sec_inner h1 {
  
}
.page .entry-title,
.archive #archive-title,
.single #archive-title {
  display: block;
  width: 300px;
  background-color: #fff;
  font-size: 32px;
  text-align: center;
  line-height: 1;
  margin: 0 auto 3em auto;
  padding: 0.5em 1em;
  border: 5px solid #000;
  border-radius: 15px;
  box-shadow: 2px 2px 0px #000;
}
/*
.page page-header .sec_inner h2 {
  font-size: 22px;
}
.page .page-header .sec_inner p {
  font-size: 16px;
  margin: 3em 0 5em 0;
}
.page .page-header .sec_inner p small {
  display: block;
  margin-top: 1.5em;
}
*/

/* タブレット */
@media screen and (max-width:960px) {}

/* スマホ */
@media screen and (max-width:750px) {
  .page article {
    margin: 20vw auto 0 auto;
  }
  .page .entry-title,
  .archive #archive-title,
  .single #archive-title  {
    width: 60%;
    font-size: 18px;
    margin-bottom: 2em;
    padding: 0.8em 1em;
  }
  /*
  .page .page-header .sec_inner {
    padding-top: 3em;
  }
  .page .page-header .sec_inner h1 {
    font-size: 24px;
  }
  .page .page-header .sec_inner h2 {
    font-size: 17px;
  }
  .page .page-header .sec_inner p {
    font-size: 13px;
  }
  */
  
}



/*************************************************************************

** Company　小松組について

**************************************************************************/

/* keyvisual */
.page-company #keyvisual {
  width: 100%;
}
.page-company #keyvisual #keyvisual-image {
  background: url("images/company/kv.jpg") no-repeat center center / cover;
  width: 100%;
  height: 70vh;
}
.page-company #keyvisual .section_inner > h1 {
  overflow: hidden;
  display: flex;
  align-items: center;
  width: 100%;
  padding: 2% 0;
  white-space: nowrap;
}
.page-company #keyvisual .section_inner > h1 span {
  display: inline-block;
  flex-shrink: 0;
  width: auto;
  height: auto;
  text-wrap: nowrap;
  white-space: nowrap;
}
.page-company #keyvisual .section_inner > h1 span img {
  width: 50vw;
  padding: 0 1.73%;
}
.page-company #keyvisual .section_inner > h1 span:first-of-type {
  animation: anim-scroll-first 30s infinite linear 0.1s both;
}
.page-company #keyvisual .section_inner > h1 span:last-of-type {
  animation: anim-scroll-second 30s infinite linear 0.1s both;
}

/* 代表挨拶 */
.page-company #message {
  width: 100%;
}
.page-company #message .section_inner {
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  width: 100%;
  padding: 2.63% 1.66%;
}
.page-company #message .section_inner > figure {
  width: 47.27%;
}
.page-company #message .section_inner > figure img {
  display: block;
  border: 1px solid #000;
}
.page-company #message .section_inner .message_text {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  width: 46.26%;
  padding: 1.11% 0% 1.11% 0;
}
.page-company #message .section_inner .message_text > p {
  margin-bottom: 4.28%;
  font-size: var(--20px);
  letter-spacing: 0.08em;
  text-align: justify;
}
.page-company #message .section_inner .message_text > p:last-child {
  margin: auto 0 0;
  letter-spacing: normal;
  line-height: 1.8;
}

/* 小松組のパーパス */
.page-company #purpose {
  width: 100%;
}
.page-company #purpose .section_inner {
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  width: 100%;
  padding: 2.63% 1.66%;
}
.page-company #purpose .section_inner .purpose_text {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  width: 46.26%;
  padding: 2.01% 0 2.01% 4.31%;
}
.page-company #purpose .section_inner .purpose_text > h3 {
  flex-grow: 1;
  font-size: var(--48px);
  letter-spacing: 0.16em;
  line-height: 1.46;
}
.page-company #purpose .section_inner .purpose_text > h3 > span {
  border-bottom: 2px solid #000;
}
.page-company #purpose .section_inner .purpose_text > p {
  margin-top: 4.1%;
  font-size: var(--20px);
  letter-spacing: 0.08em;
  text-align: justify;
}
.page-company #purpose .section_inner > figure {
  width: 47.27%;
}
.page-company #purpose .section_inner > figure img {
  display: block;
  border: 1px solid #000;
}

/* 事業内容 */
.page-company #service {
  width: 100%;
}
.page-company #service .section_inner {
  width: 100%;
}
.page-company #service .section_inner #service-list {
  display: flex;
  flex-wrap: wrap;
}
.page-company #service .section_inner #service-list li {
  box-sizing: border-box;
  border-right: 1px solid #000;
  /*border-bottom: 1px solid #000;*/
  width: calc(100% / 3);
}
.page-company #service .section_inner #service-list li:nth-child(3n) {
  border-right: none;
}
.page-company #service .section_inner #service-list li > figure {
  aspect-ratio: 4/2.4;
  overflow: hidden;
  border-bottom: 1px solid #000;
  border-top: 1px solid #000;
}
.page-company #service .section_inner #service-list li > figure img {
  display: block;
}
.page-company #service .section_inner #service-list li > p {
  padding: 5% 5% 0;
  font-size: var(--20px);
  letter-spacing: 0.08em;
}
.page-company #service .section_inner #service-list li > h3 {
  padding: 0 5% 5%;
  font-size: var(--28px);
  letter-spacing: 0.18em;
  line-height: 1.8;
}

/* 採用情報 */
.page-company #recruit {
  width: 100%;
}
.page-company #recruit .section_inner {
  overflow: hidden;
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  width: 100%;
  padding: 2.63% 1.66%;
  overflow: hidden;
}
.page-company #recruit .section_inner > figure {
  width: 47.27%;
}
.page-company #recruit .section_inner > figure img {
  display: block;
  border: 1px solid #000;
}
.page-company #recruit .section_inner .recruit_text {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  width: 46.26%;
  padding: 0.86% 4.31% 0.86% 0;
}
.page-company #recruit .section_inner .recruit_text > h3 {
  font-size: var(--28px);
  letter-spacing: 0.18em;
  line-height: 1.8;
}
.page-company #recruit .section_inner .recruit_text > p {
  margin-top: 5.47%;
  font-size: var(--20px);
  letter-spacing: 0.08em;
  text-align: justify;
}
.page-company #recruit .section_inner .recruit_text .recruit_text_box {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-top: auto;
}
.page-company #recruit .section_inner .recruit_text .recruit_text_box > dl dt {
  margin-bottom: 0.8em;
  font-size: var(--20px);
  letter-spacing: 0.08em;
}
.page-company #recruit .section_inner .recruit_text .recruit_text_box > dl dd {
  margin-top: 0.3em;
  font-size: var(--16px);
  line-height: 1.8;
}
.page-company #recruit .section_inner .recruit_text .recruit_text_box > dl dd a {
  display: flex;
  align-items: center;
  width: fit-content;
}
.page-company #recruit .section_inner .recruit_text .recruit_text_box > dl dd a::after {
  content: '';
  display: block;
  background-image: url(images/arrow-black-up-right1.svg);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 100% auto;
  width: 0.9em;
  height: 0.9em;
}
.page-company #recruit .section_inner .recruit_text .recruit_text_box > dl dd a span {
  margin-right: 0.6em;
}

/* アクセス */
.page-company #access {
  width: 100%;
}
.page-company #access .section_inner {
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  width: 100%;
  padding: 2.63% 1.66%;
  overflow: hidden;
}
.page-company #access .section_inner .access_text {
  box-sizing: border-box;
  position: relative;
  width: 46.26%;
  padding: 1.43% 0 1.43% 4.31%;
}
.page-company #access .section_inner .access_text > h3 {
  font-size: var(--28px);
  letter-spacing: 0.18em;
  line-height: 1.8;
}
.page-company #access .section_inner .access_text > p {
  margin-top: 5.47%;
  font-size: var(--20px);
  letter-spacing: 0.08em;
}
.page-company #access .section_inner .access_text > dl {
  margin-top: 8.9%;
}
.page-company #access .section_inner .access_text > dl dt {
  margin-bottom: 2.73%;
  font-size: var(--20px);
  letter-spacing: 0.08em;
}
.page-company #access .section_inner .access_text > dl dd {
  font-size: var(--16px);
  line-height: 1.8;
}
.page-company #access .section_inner .access_text > dl dd:has(span) {
  display: flex;
  align-items: center;
}
.page-company #access .section_inner .access_text > dl dd:has(span)::after {
  content: '';
  display: block;
  background-image: url(images/arrow-black-down1.svg);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 100% auto;
  width: 1.2em;
  height: 1.2em;
}
.page-company #access .section_inner .access_text .map_btn {
  position: absolute;
  bottom: 3.42%;
  right: 0;
}
.page-company #access .section_inner .access_map {
  box-sizing: border-box;
  border: 1px solid #000;
  width: 47.27%;
}
.page-company #access .section_inner .access_map iframe,
.page-company #access .section_inner .access_map #gmap{
  width: 100%;
  height: 100%;
}

/* 会社概要/沿革 */
.page-company #history {
  width: 100%;
}
.page-company #history .section_inner table {
  border-collapse: collapse;
  width: 100%;
}
.page-company #history .section_inner table tbody tr th,
.page-company #history .section_inner table tbody tr td {
  box-sizing: border-box;
  padding: 1.38% 1.52%;
  font-size: var(--20px);
  letter-spacing: 0.18em;
  line-height: 1.8;
  vertical-align: middle;
}
.page-company #history .section_inner table tbody tr th {
  border-top: 1px solid #000;
  width: 12.5%;
  text-align: center;
}
.page-company #history .section_inner table tbody tr td {
  border-top: 1px solid #000;
  border-left: 1px solid #000;
  text-align: left;
}
.page-company #history .section_inner table tbody tr:first-child th,
.page-company #history .section_inner table tbody tr:first-child td {
  border-top: none;
}


/* スマホ */
@media screen and (max-width:750px) {

  /* keyvisual */
  .page-company #keyvisual {
    width: 100%;
  }
  .page-company #keyvisual .section_inner #keyvisual-image {
    /*background: url(images/home/kv-sp.jpg) no-repeat center center / cover;*/
  }
  .page-company #keyvisual .section_inner #keyvisual-image img {
    display: none;
  }
  .page-company #keyvisual .section_inner > h1 {
    padding: 4% 0;
  }
  .page-company #keyvisual .section_inner > h1 span img {
    width: 116vw;
  }

  /* 代表挨拶 */
  .page-company #message .section_inner {
    display: block;
    padding: 15% 0;
  }
  .page-company #message .section_inner > figure {
    width: 100%;
  }
  .page-company #message .section_inner .message_text {
    width: 100%;
    padding: 7.5% 6% 0;
  }
  .page-company #message .section_inner .message_text > p {
    margin-bottom: 6.81%;
  }
  .page-company #message .section_inner .message_text > p:last-child {
    margin: 6.81% 0 0;
    letter-spacing: 0.08em;
    line-height: 1.72;
  }

  /* 小松組のパーパス */
  .page-company #purpose .section_inner {
    flex-direction: column;
    padding: 15% 0;
  }
  .page-company #purpose .section_inner .purpose_text {
    order: 2;
    display: block;
    width: 100%;
    padding: 7.5% 6% 0;
  }
  .page-company #purpose .section_inner .purpose_text > h3 {
    margin-bottom: 11.36%;
    line-height: 1.36;
  }
  .page-company #purpose .section_inner .purpose_text > h3 > span {
    border-bottom: none;
  }
  .page-company #purpose .section_inner .purpose_text > p {
    margin-top: 6.81%;
  }
  .page-company #purpose .section_inner > figure {
    order: 1;
    width: 100%;
  }
  .page-company #purpose .section_inner > figure img {
    border-right: none;
    border-left: none;
  }

  /* 事業内容 */
  .page-company #service .section_inner #service-list:after {
    content: "";
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 1px;
    background-color: #000;
  }
  .page-company #service .section_inner #service-list li {
    display: flex;
    flex-direction: column;
    width: 50%;
    border-bottom: 1px solid #000;
  }
  .page-company #service .section_inner #service-list li:nth-child(3n) {
    border-right: 1px solid #000;
  }
  .page-company #service .section_inner #service-list li:nth-child(2n) {
    width: calc(50% - 1px);
    border-right: none;
  }
  .page-company #service .section_inner #service-list li:nth-child(9) {
    border-bottom: none;
  }
  .page-company #service .section_inner #service-list li > p {
    display: none;
  }
  .page-company #service .section_inner #service-list li > h3 {
    flex-grow: 1;
    align-content: center;
    padding: 7% 9%;
    font-size: var(--20px);
    letter-spacing: 0.08em;
    line-height: 1.5;
  }

  /* 採用情報 */
  .page-company #recruit .section_inner {
    display: block;
    padding: 15% 0;
  }
  .page-company #recruit .section_inner > figure {
    width: 100%;
  }
  .page-company #recruit .section_inner .recruit_text {
    display: block;
    width: auto;
    padding: 15% 6% 0;
  }
  .page-company #recruit .section_inner .recruit_text > p {
    margin-top: 8.52%;
  }
  .page-company #recruit .section_inner .recruit_text .recruit_text_box {
    display: block;
    margin-top: 12.78%;
  }
  .page-company #recruit .section_inner .recruit_text .recruit_text_box > dl dt {
    margin-bottom: 0.2em;
  }
  .page-company #recruit .section_inner .recruit_text .recruit_text_box .recruit_btn {
    justify-content: flex-end;
    margin-top: 12.78%;
  }

  /* アクセス */
  .page-company #access .section_inner {
    flex-direction: column;
    padding: 15% 0;
  }
  .page-company #access .section_inner .access_text {
    order: 2;
    width: 100%;
    padding: 15% 6% 0;
  }
  .page-company #access .section_inner .access_text > p {
    margin-top: 11.36%;
  }
  .page-company #access .section_inner .access_text > dl {
    margin-top: 8.52%;
  }
  .page-company #access .section_inner .access_text > dl dt {
    margin-bottom: 1.13%;
  }
  .page-company #access .section_inner .access_text > dl dd {
    margin-bottom: 1.13%;
  }
  .page-company #access .section_inner .access_text .map_btn {
    position: static;
    bottom: auto;
    right: auto;
    justify-content: flex-end;
    margin-top: 14.2%;
  }
  .page-company #access .section_inner .access_map {
    order: 1;
    width: 100%;
    line-height: 1;
  }
  .page-company #access .section_inner .access_map iframe,
  .page-company #access .section_inner .access_map #gmap{
    height: auto;
    aspect-ratio: 1 / 0.75;
  }

  /* 会社概要/沿革 */
  .page-company #history .section_inner table tbody tr th,
  .page-company #history .section_inner table tbody tr td {
    padding: 4.87% 0;
  }
  .page-company #history .section_inner table tbody tr th {
    width: 29.5%;
  }
  .page-company #history .section_inner table tbody tr td {
    padding-left: 5.5%;
    padding-right: 5.5%;
    letter-spacing: 0.06em;
  }

}



/*************************************************************************

** Service　暮らしの困りごと解決

**************************************************************************/

/* keyvisual */
.page-service #keyvisual {
  width: 100%;
}
.page-service #keyvisual .section_inner {
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  width: 100%;
  padding: 2.63% 1.66%;
}
.page-service #keyvisual .section_inner > figure {
  width: 47.27%;
}
.page-service #keyvisual .section_inner > figure img {
  display: block;
  border: 1px solid #000;
}
.page-service #keyvisual .section_inner .keyvisual_text {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  width: 46.26%;
  padding: 1.43% 4.31% 1.43% 0;
}
.page-service #keyvisual .section_inner .keyvisual_text > h1 {
  font-size: var(--28px);
  letter-spacing: 0.18em;
  line-height: 1.8;
}
.page-service #keyvisual .section_inner .keyvisual_text > p {
  margin-top: 5.47%;
  font-size: var(--20px);
  letter-spacing: 0.08em;
  text-align: justify;
}
.page-service #keyvisual .section_inner .keyvisual_text .information_btn {
  justify-content: flex-end;
  margin-top: auto;
}

/* サービス一覧 */
.page-service #service {
  width: 100%;
}
.page-service #service .section_inner {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
.page-service #service .section_inner .service_item {
  box-sizing: border-box;
  border-top: 1px solid #000;
  width: 50%;
  padding: 2.36% 2.77% 3.05%;
  overflow: hidden;
}
.page-service #service .section_inner .service_item:nth-child(2n) {
  border-left: 1px solid #000;
}
.page-service #service .section_inner .service_item > figure {
  
}
.page-service #service .section_inner .service_item > figure img {
  display: block;
  border: 1px solid #000;
}
.page-service #service .section_inner .service_item .service_item_box {
  display: flex;
  justify-content: space-between;
  margin-top: 6.25%;
}
.page-service #service .section_inner .service_item .service_item_box .service_item_box_text {
  width: 56.25%;
  margin-left: 4.37%;
}
.page-service #service .section_inner .service_item .service_item_box .service_item_box_text > h2 {
  font-size: var(--28px);
  letter-spacing: 0.18em;
  line-height: 1.8;
}
.page-service #service .section_inner .service_item .service_item_box .service_item_box_text > p {
  margin-top: 5.27%;
  font-size: var(--20px);
  letter-spacing: 0.08em;
  text-align: justify;
}
.page-service #service .section_inner .service_item .service_item_box .service_item_box_list {
  display: flex;
  flex-direction: column;
  width: 25.65%;
  padding-top: 0.625%;
}
.page-service #service .section_inner .service_item .service_item_box .service_item_box_list ul li {
  margin-top: 2.75%;
  font-size: var(--16px);
  line-height: 1.8;
}
.page-service #service .section_inner .service_item .service_item_box .service_item_box_list ul li a.pdf-link {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  line-height: 1.8;
}
.page-service #service .section_inner .service_item .service_item_box .service_item_box_list ul li a.pdf-link:after {
  content: '';
  display: block;
  background-image: url(images/arrow-black-up-right1.svg);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 100% auto;
  width: 0.9em;
  height: 0.9em;
  margin-left: 0.5em;
}
.page-service #service .section_inner .service_item .service_item_box .service_item_box_list ul li a:hover {
  text-decoration: underline;
}
.page-service #service .section_inner .service_item .service_item_box .service_item_box_list .link_btn a {
  justify-content: center;
  width: 100%;
  padding: 0.27vw 0 0.27vw 0;
  font-size: var(--16px);
}
.page-service #service .section_inner .service_item .service_item_box .service_item_box_list .link_btn a .btn_text {
  margin-right: 0.1em;
}
.page-service #service .section_inner .service_item .service_item_box .service_item_box_list .link_btn a .arrow {
  font-size: var(--16px);
}
.page-service #service .section_inner .service_item .service_item_box .service_item_box_list .link_btn + ul {
  margin-top: auto;
}

/* ボタン（矢印↗） */
/*
.btn_type2 a .btn_text:before{
  right: calc(20vw);
  bottom: calc(-20vw);
}
.btn_type2 a .btn_text:after{
  right: calc(20vw);
  bottom: calc(-20vw);
}
.btn_type2 a:hover .btn_text:before{
  right: 2.9vw;
  bottom: -1.9vw;
}
.btn_type2 a:hover .btn_text:after{
  right: 0vw;
  bottom: -8.5vw;
  width: 20vw;
}

.btn_type2 a .arrow{
  z-index: 10;
}
.btn_type2 a .arrow:before{
  right: 6px;
  top: calc(50% - 6px);
}
.btn_type2 a .arrow:after{
  right: 5px;
  top: calc(50% + 0px);
}
.btn_type2 a:hover .arrow:before{
  right: -13.2vw;
  top: -12.6vw;
}
.btn_type2 a:hover .arrow:after{
  right: -15.8vw;
  top: calc(-5.5vw);
  width: 20vw;
  right: -83vw;
  top: calc(-33.5vw);
  width: 100vw;
}
*/

/* サービス対応範囲について */
.page-service #area {
  width: 100%;
}
.page-service #area .section_inner {
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  width: 100%;
  padding: 2.36% 2.77% 2.5% 4.72%;
}
.page-service #area .section_inner .area_text {
  display: flex;
  flex-direction: column;
  width: 43.84%;
  padding: 1.5% 0 2.62%;
}
.page-service #area .section_inner .area_text > h3 {
  font-size: var(--28px);
  letter-spacing: 0.18em;
  line-height: 1.8;
}
.page-service #area .section_inner .area_text > h3 + p {
  margin-top: 5.13%;
  font-size: var(--20px);
  letter-spacing: 0.08em;
  text-align: justify;
}
.page-service #area .section_inner .area_text > p:last-child {
  margin-top: auto;
  font-size: var(--20px);
  line-height: 1.8;
}
.page-service #area .section_inner > figure {
  width: 48.04%;
}
.page-service #area .section_inner > figure img {
  display: block;
  border: 1px solid #000;
}


/* スマホ */
@media screen and (max-width:750px) {

  /* keyvisual */
  .page-service #keyvisual .section_inner {
    display: block;
    padding: 15% 0;
    overflow: hidden;
  }
  .page-service #keyvisual .section_inner > figure {
    width: 100%;
  }
  .page-service #keyvisual .section_inner > figure img {
    border-left: none;
    border-right: none;
  }
  .page-service #keyvisual .section_inner .keyvisual_text {
    width: 100%;
    padding: 12.5% 6% 0;
  }
  .page-service #keyvisual .section_inner .keyvisual_text > p {
    margin-top: 8.52%;
  }
  .page-service #keyvisual .section_inner .keyvisual_text .information_btn {
    margin-top: 12.78%;
  }

  /* サービス一覧 */
  .page-service #service .section_inner {
    display: block;
  }
  .page-service #service .section_inner .service_item {
    position: relative;
    width: 100%;
    padding: 0 0 7.5%;
  }
  .page-service #service .section_inner .service_item:nth-child(2n) {
    border-left: none;
  }
  .page-service #service .section_inner .service_item > figure {
    padding: 0 8%;
  }
  .page-service #service .section_inner .service_item > figure img {
    border-top: none;
    border-bottom: none;
  }
  .page-service #service .section_inner .service_item .service_item_box {
    display: block;
    border-top: 1px solid #000;
    margin-top: 0;
    padding: 8% 8% 0;
  }
  .page-service #service .section_inner .service_item .service_item_box .service_item_box_text {
    width: 100%;
    margin-left: 0;
  }
  .page-service #service .section_inner .service_item .service_item_box .service_item_box_text > h2 {
    position: absolute;
    top: 0;
    right: 0;
    background-color: #F3F75F;
    border-left: 1px solid #000;
    border-bottom: 1px solid #000;
    /* width: 71%; */
    padding: 3% 6.75% 3% 8.75%;
    font-size: var(--20px);
    text-align: center;
  }
  .page-service #service .section_inner .service_item .service_item_box .service_item_box_text > p {
    margin-top: 0;
  }
  .page-service #service .section_inner .service_item .service_item_box .service_item_box_list {
    position: relative;
    width: 100%;
    padding-top: 8.92%;
  }
  .page-service #service .section_inner .service_item .service_item_box .service_item_box_list ul {
    display: flex;
    flex-wrap: wrap;
    gap: 1.19% 8%;
  }
  .page-service #service .section_inner .service_item .service_item_box .service_item_box_list ul li {
    margin-top: 0;
    width: 41%;
  }
  .page-service #service .section_inner .service_item .service_item_box .service_item_box_list .link_btn {
    position: absolute;
    right: 0;
    bottom: 0;
  }
  .page-service #service .section_inner .service_item .service_item_box .service_item_box_list .link_btn a {
    width: fit-content;
    padding: 1vw 0 1vw 0;
  }
  .page-service #service .section_inner .service_item .service_item_box .service_item_box_list .link_btn a .btn_text::after {
    right: -1vw;
  }
  .page-service #service .section_inner .service_item .service_item_box .service_item_box_list .link_btn + ul {
    flex-direction: column;
    margin-top: 0;
  }
  .page-service #service .section_inner .service_item .service_item_box .service_item_box_list .link_btn + ul li:nth-child(4) {
    display: none;
  }

  /* サービス対応範囲について */
  .page-service #area {
    width: 100%;
  }
  .page-service #area .section_header h2 {
    font-size: 0;
  }
  .page-service #area .section_header h2::before {
    content: '対応範囲について';
    font-size: var(--20px);
    letter-spacing: 0.18em;
  }
  .page-service #area .section_inner {
    flex-direction: column;
    padding: 0 0 10.5%;
  }
  .page-service #area .section_inner .area_text {
    order: 2;
    box-sizing: border-box;
    width: 100%;
    padding: 8% 8% 0;
  }
  .page-service #area .section_inner .area_text > h3 + p {
    margin-top: 10.71%;
  }
  .page-service #area .section_inner .area_text > p:last-child {
    margin-top: 11.9%;
    letter-spacing: 0.08em;
    line-height: 1.72;
  }
  .page-service #area .section_inner .area_text > p:last-child span {
    display: none;
  }
  .page-service #area .section_inner > figure {
    order: 1;
    width: 100%;
  }
  .page-service #area .section_inner > figure img {
    border-top: none;
    border-left: none;
    border-right: none;
  }

}



/*************************************************************************

** Anzen Daiichi PJ　安全第一PJ

**************************************************************************/

/* keyvisual */
.page-anzen-daiichi-pj #keyvisual {
  width: 100%;
  overflow: hidden;
}
.page-anzen-daiichi-pj #keyvisual .section_inner {
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  width: 100%;
  padding: 2.63% 1.66%;
}
.page-anzen-daiichi-pj #keyvisual .section_inner > figure {
  width: 47.27%;
}
.page-anzen-daiichi-pj #keyvisual .section_inner > figure img {
  display: block;
  border: 1px solid #000;
}
.page-anzen-daiichi-pj #keyvisual .section_inner .keyvisual_text {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  width: 46.26%;
  padding: 1.43% 3.85% 1.43% 0;
}
.page-anzen-daiichi-pj #keyvisual .section_inner .keyvisual_text > h1 {
  font-size: var(--28px);
  letter-spacing: 0.18em;
  line-height: 1.8;
}
.page-anzen-daiichi-pj #keyvisual .section_inner .keyvisual_text > p {
  margin-top: 5.47%;
  font-size: var(--20px);
  letter-spacing: 0.08em;
  text-align: justify;
}
.page-anzen-daiichi-pj #keyvisual .section_inner .keyvisual_text .link_btn {
  justify-content: flex-end;
  margin-top: auto;
}

/* プロジェクト一覧 */
.page-anzen-daiichi-pj #project {
  width: 100%;
}
.page-anzen-daiichi-pj #project .section_inner {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
.page-anzen-daiichi-pj #project .section_inner .project_item {
  box-sizing: border-box;
  border-top: 1px solid #000;
  width: 50%;
  padding: 2.36% 2.77% 3.05%;
  overflow: hidden;
}
.page-anzen-daiichi-pj #project .section_inner .project_item:nth-child(2n) {
  border-left: 1px solid #000;
}
.page-anzen-daiichi-pj #project .section_inner .project_item > figure img {
  display: block;
}
.page-anzen-daiichi-pj #project .section_inner .project_item .project_item_box {
  padding: 6.09% 3.8% 0 3.8%;
}
.page-anzen-daiichi-pj #project .section_inner .project_item .project_item_box .project_item_box_title {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.page-anzen-daiichi-pj #project .section_inner .project_item .project_item_box .project_item_box_title > h2 {
  font-size: var(--28px);
  letter-spacing: 0.18em;
  line-height: 1.8;
}
.page-anzen-daiichi-pj #project .section_inner .project_item .project_item_box .project_item_box_title .link_btn a {
  font-size: var(--16px);
}
.page-anzen-daiichi-pj #project .section_inner .project_item .project_item_box > p {
  margin-top: 3.25%;
  font-size: var(--20px);
  letter-spacing: 0.08em;
  text-align: justify;
}


/* スマホ */
@media screen and (max-width:750px) {

  /* keyvisual */
  .page-anzen-daiichi-pj #keyvisual .section_inner {
    display: block;
    padding: 15% 0;
  }
  .page-anzen-daiichi-pj #keyvisual .section_inner > figure {
    width: 100%;
  }
  .page-anzen-daiichi-pj #keyvisual .section_inner > figure img {
    border-right: none;
    border-left: none;
  }
  .page-anzen-daiichi-pj #keyvisual .section_inner .keyvisual_text {
    width: 100%;
    padding: 12.5% 6% 0;
  }
  .page-anzen-daiichi-pj #keyvisual .section_inner .keyvisual_text > p {
    margin-top: 8.52%;
  }
  .page-anzen-daiichi-pj #keyvisual .section_inner .keyvisual_text .link_btn {
    margin-top: 17.04%;
  }

  /* サービス一覧 */
  .page-anzen-daiichi-pj #project .section_inner {
    display: block;
  }
  .page-anzen-daiichi-pj #project .section_inner .project_item {
    position: relative;
    width: 100%;
    padding: 0 0 8%;
  }
  .page-anzen-daiichi-pj #project .section_inner .project_item:nth-child(2n) {
    border-left: none;
  }
  .page-anzen-daiichi-pj #project .section_inner .project_item > figure {
    padding: 0 8%;
  }
  .page-anzen-daiichi-pj #project .section_inner .project_item .project_item_box {
    display: flex;
    flex-direction: column;
    border-top: 1px solid #000;
    padding: 8% 8% 0;
  }
  .page-anzen-daiichi-pj #project .section_inner .project_item .project_item_box .project_item_box_title {
    display: contents;
  }
  .page-anzen-daiichi-pj #project .section_inner .project_item .project_item_box .project_item_box_title > h2 {
    order: 1;
    position: absolute;
    top: 0;
    right: 0;
    background-color: #F3F75F;
    border-left: 1px solid #000;
    border-bottom: 1px solid #000;
    padding: 3% 6.75% 3% 8.75%;
    font-size: var(--20px);
    text-align: center;
  }
  .page-anzen-daiichi-pj #project .section_inner .project_item .project_item_box .project_item_box_title .link_btn {
    order: 3;
    justify-content: flex-end;
    margin-top: 7.73%;
  }
  .page-anzen-daiichi-pj #project .section_inner .project_item .project_item_box > p {
    order: 2;
    margin-top: 0;
  }

}



/*************************************************************************

** Roman　村のロマン事業

**************************************************************************/

/* keyvisual */
.page-roman #keyvisual {
  width: 100%;
}
.page-roman #keyvisual .section_inner {
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  width: 100%;
  padding: 2.63% 1.66%;
}
.page-roman #keyvisual .section_inner > figure {
  width: 47.27%;
}
.page-roman #keyvisual .section_inner > figure img {
  display: block;
}
.page-roman #keyvisual .section_inner .keyvisual_text {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  width: 46.26%;
  padding: 1.43% 3.85% 1.43% 0;
}
.page-roman #keyvisual .section_inner .keyvisual_text > h1 {
  font-size: var(--28px);
  letter-spacing: 0.18em;
  line-height: 1.8;
}
.page-roman #keyvisual .section_inner .keyvisual_text > p {
  margin-top: 5.47%;
  font-size: var(--20px);
  letter-spacing: 0.08em;
  text-align: justify;
}

/* ロマン事業詳細 */
.page-roman .roman_item {
  width: 100%;
  overflow: hidden;
}
.page-roman .roman_item .section_inner {
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  width: 100%;
  padding: 2.36% 2.77% 2.36% 4.72%;
}
.page-roman .roman_item .section_inner .roman_item_text {
  display: flex;
  flex-direction: column;
  width: 44.5%;
  padding: 1.8% 0 1.5%;
}
.page-roman .roman_item .section_inner .roman_item_text > h3 {
  font-size: var(--28px);
  letter-spacing: 0.18em;
  line-height: 1.8;
}
.page-roman .roman_item .section_inner .roman_item_text > p {
  margin-top: 4.28%;
  font-size: var(--20px);
  letter-spacing: 0.08em;
  text-align: justify;
}
.page-roman .roman_item .section_inner .roman_item_text > ul {
  margin-top: auto;
}
.page-roman .roman_item .section_inner .roman_item_text > ul li {
  justify-content: flex-end;
  margin-top: 3.76%;
}
.page-roman .roman_item .section_inner > figure {
  width: 48.04%;
}
.page-roman .roman_item .section_inner > figure img {
  display: block;
}


/* スマホ */
@media screen and (max-width:750px) {

  /* keyvisual */
  .page-roman #keyvisual .section_inner {
    display: block;
    padding: 15% 0;
  }
  .page-roman #keyvisual .section_inner > figure {
    width: 100%;
  }
  .page-roman #keyvisual .section_inner .keyvisual_text {
    width: 100%;
    padding: 12.5% 6% 0;
  }
  .page-roman #keyvisual .section_inner .keyvisual_text > p {
    margin-top: 8.52%;
  }

  /* ロマン事業詳細 */
  .page-roman .roman_item .section_header {
    display: none;
  }
  .page-roman .roman_item .section_inner {
    position: relative;
    flex-direction: column;
    border-top: 1px solid #000;
    padding: 0 0 8%;
  }
  .page-roman .roman_item .section_inner .roman_item_text {
    box-sizing: border-box;
    order: 2;
    border-top: 1px solid #000;
    width: 100%;
    padding: 8% 8% 0;
  }
  .page-roman .roman_item .section_inner .roman_item_text > h3 {
    position: absolute;
    top: 0;
    right: 0;
    background-color: #F3F75F;
    border-left: 1px solid #000;
    border-bottom: 1px solid #000;
    padding: 3% 6.75% 3% 8.75%;
    font-size: var(--20px);
    text-align: center;
  }
  .page-roman .roman_item .section_inner .roman_item_text > p {
    margin-top: 0;
  }
  .page-roman .roman_item .section_inner .roman_item_text > ul {
    margin-top: 7.71%;
  }
  .page-roman .roman_item .section_inner .roman_item_text > ul li {
    margin-top: 4.15%;
  }
  .page-roman .roman_item .section_inner .roman_item_text > ul li:first-child {
    margin-top: 0;
  }
  .page-roman .roman_item .section_inner .roman_item_text > ul li.btn_type2:first-child a .btn_text:before,
  .page-roman .roman_item .section_inner .roman_item_text > ul li.btn_type2:first-child a:hover .btn_text:before {
    /*right: 20.5vw;
    bottom: -19.2vw;*/
  }
  .page-roman .roman_item .section_inner .roman_item_text > ul li.btn_type2:first-child a .btn_text:after,
  .page-roman .roman_item .section_inner .roman_item_text > ul li.btn_type2:first-child a:hover .btn_text:after {
    /*right: 15vw;
    bottom: -32vw;*/
  }
  .page-roman .roman_item .section_inner .roman_item_text > ul li a {
    font-size: var(--16px);
  }
  .page-roman .roman_item .section_inner > figure {
    box-sizing: border-box;
    width: 100%;
    padding: 0 8%;
  }

}



/*************************************************************************

** CONTACT　お問い合わせ

**************************************************************************/

/* お問い合わせ */
.page-contact #contact {
  width: 100%;
}
.page-contact #contact .section_inner {
  display: flex;
  justify-content: space-between;
  padding: 3.12% 6.94% 4.16%;
}
.page-contact #contact .section_inner .contact_text {
  display: flex;
  flex-direction: column;
  width: 37.74%;
}
.page-contact #contact .section_inner .contact_text > h1 {
  font-size: var(--54px);
  letter-spacing: 0.16em;
  line-height: 1.46;
}
.page-contact #contact .section_inner .contact_text > p {
  padding: 8.11% 8.54% 0 1.92%;
  font-size: var(--20px);
  letter-spacing: 0.08em;
  text-align: justify;
}
.page-contact #contact .section_inner .contact_text > dl {
  margin-top: auto;
  padding-left: 2.13%;
}
.page-contact #contact .section_inner .contact_text > dl dt {
  font-size: var(--47px);
  letter-spacing: 0.08em;
}
.page-contact #contact .section_inner .contact_text > dl dt span:first-child {
  margin-right: 2.18%;
}
.page-contact #contact .section_inner .contact_text > dl dd {
  font-size: var(--16px);
  letter-spacing: 0.08em;
}
.page-contact #contact .section_inner #form {
  width: 50%;
}
.page-contact #contact .section_inner #form form .input_wrap {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.page-contact #contact .section_inner #form form .input_wrap dl {
  margin-top: 1.31vw;
}
.page-contact #contact .section_inner #form form .input_wrap .half {
  width: 48.18%;
}
.page-contact #contact .section_inner #form form .input_wrap dl:not(.half) {
  width: 100%;
}
.page-contact #contact .section_inner #form form .input_wrap dl dt label {
  font-size: var(--16px);
  line-height: 1.8;
  color: #000;
}
.page-contact #contact .section_inner #form form .input_wrap dl dt label span {
  margin-left: 0.5em;
}
.page-contact #contact .section_inner #form form .input_wrap dl dd {
  margin-top: 0.41vw;
}
.page-contact #contact .section_inner #form form .input_wrap dl dd input[type="text"],
.page-contact #contact .section_inner #form form .input_wrap dl dd input[type="url"],
.page-contact #contact .section_inner #form form .input_wrap dl dd input[type="password"],
.page-contact #contact .section_inner #form form .input_wrap dl dd input[type="email"],
.page-contact #contact .section_inner #form form .input_wrap dl dd input[type="search"],
.page-contact #contact .section_inner #form form .input_wrap dl dd input[type="tel"],
.page-contact #contact .section_inner #form form .input_wrap dl dd input[type="date"],
.page-contact #contact .section_inner #form form .input_wrap dl dd textarea {
  background-color: #F3F75F;
  background-image: none;
  border: 2px solid #000;
  border-radius: 0px;
  outline: 0;
  /* box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset; */
  box-shadow: none;
  color: #000;
  /* display: block; */
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 700;
  font-size: var(--16px);
  line-height: 1.8;
  padding: 0.5em 1em;
  transition: border-color 0.15s ease-in-out 0s, box-shadow 0.15s ease-in-out 0s;
  width: 100%;
  box-sizing: border-box;
  -webkit-appearance: none;
}
.page-contact #contact .section_inner #form form .input_wrap dl dd textarea {
  height: 10.8em;
}
.page-contact #contact .section_inner #form form .input_wrap dl dd span[data-name="your-inquiry"] {
  position: relative;
  display: block;
}
.page-contact #contact .section_inner #form form .input_wrap dl dd select {
  box-sizing: border-box;
  width: 100%;
  appearance: none;
  outline: 0;
  background: #F3F75F;
  background-image: none;
  border: 2px solid #000;
  border-radius: 0;
  box-shadow: none;
  padding: 0.5em 1em;
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 700;
  font-size: var(--16px);
  line-height: 1.8;
  cursor: pointer;
}
.page-contact #contact .section_inner #form form .input_wrap dl dd span[data-name="your-inquiry"]::before {
  position: absolute;
  top: 0.8em;
  right: 0.6em;
  width: 0.7em;
  height: 0.7em;
  border-width: 0 2px 2px 0;
  border-style: solid;
  border-color: #000;
  content: "";
  pointer-events: none;
  transform: rotate(45deg);
  font-size: var(--16px);
}
.page-contact #contact .section_inner #form form .btn_submit input[type="submit"] {
  box-sizing: border-box;
  display: block;
  border: 2px solid #000;
  border-radius: 100vh;
  background: #F3F75F;
  width: 100%;
  margin: 4% 0 0;
  padding: 0.72% 1%;
  font-size: var(--20px);
  line-height: 1.8;
  letter-spacing: 0;
  color: #000;
  text-decoration: none;
  text-align: center;
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 700;
  cursor: pointer;
  -webkit-appearance: none;
}
.page-contact #contact .section_inner #form form .wpcf7-not-valid-tip {
  color: #FF0000;
  font-size: var(--13px);
  font-weight: 700;
  display: block;
}
.page-contact #contact .section_inner #form form .wpcf7-response-output {
  margin: 0;
  padding: 0;
  border: none;
  font-size: var(--13px);
  text-align: center;
  color: #FF0000;
}


/* スマホ */
@media screen and (max-width:750px) {

  /* お問い合わせ */
  .page-contact #contact .section_inner {
    display: block;
    padding: 10% 6% 17.5%;
  }
  .page-contact #contact .section_inner .contact_text {
    width: 100%;
  }
  .page-contact #contact .section_inner .contact_text > h1 {
    font-size: var(--44px);
    letter-spacing: 0.08em;
  }
  .page-contact #contact .section_inner .contact_text > p {
    padding: 9.09% 0 0;
  }
  .page-contact #contact .section_inner .contact_text > dl {
    position: relative;
    margin-top: 19.31%;
    padding-left: 0;
  }
  .page-contact #contact .section_inner .contact_text > dl dt span:first-child {
    display: block;
    margin-right: 0;
  }
  .page-contact #contact .section_inner .contact_text > dl dt span:last-child {
    display: block;
    border-bottom: 2px solid #000;
    margin-top: -6%;
  }
  .page-contact #contact .section_inner .contact_text > dl dt span a {
    display: block;
  }
  .page-contact #contact .section_inner .contact_text > dl dd {
    position: absolute;
    top: 0;
    right: 0;
    text-align: right;
    line-height: 1.5;
  }
  .page-contact #contact .section_inner .contact_text > dl dd span {
    display: block;
  }
  .page-contact #contact .section_inner #form {
    width: 100%;
    margin-top: 13.35%;
  }
  .page-contact #contact .section_inner #form form .input_wrap {
    display: block;
  }
  .page-contact #contact .section_inner #form form .input_wrap dl {
    margin-top: 5.39%;
  }
  .page-contact #contact .section_inner #form form .input_wrap .half {
    width: 100%;
  }
  .page-contact #contact .section_inner #form form .input_wrap dl dd {
    margin-top: 1.7%;
  }
  .page-contact #contact .section_inner #form form .input_wrap dl dd input[type="text"],
  .page-contact #contact .section_inner #form form .input_wrap dl dd input[type="url"],
  .page-contact #contact .section_inner #form form .input_wrap dl dd input[type="password"],
  .page-contact #contact .section_inner #form form .input_wrap dl dd input[type="email"],
  .page-contact #contact .section_inner #form form .input_wrap dl dd input[type="search"],
  .page-contact #contact .section_inner #form form .input_wrap dl dd input[type="tel"],
  .page-contact #contact .section_inner #form form .input_wrap dl dd input[type="date"],
  .page-contact #contact .section_inner #form form .input_wrap dl dd textarea {
    padding: 2.13% 4.54%;
  }
  .page-contact #contact .section_inner #form form .input_wrap dl dd textarea {
    height: 10.8em;
  }
  .page-contact #contact .section_inner #form form .input_wrap dl dd select {
    padding: 2.13% 4.54%;
    color: #000000;
    -webkit-appearance: none;
    appearance: none;
  }
  .page-contact #contact .section_inner #form form .input_wrap dl dd span[data-name="your-inquiry"]::before {
    right: 1em;
  }
  .page-contact #contact .section_inner #form form .btn_submit input[type="submit"] {
    margin: 6% 0 0;
  }

}



/*************************************************************************

** プライバシーポリシー

**************************************************************************/

/* プライバシーポリシー */
.page-privacy-policy #privacy-policy {
  width: 100%;
}
.page-privacy-policy #privacy-policy .section_inner {
  width: 55.55%;
  margin: 0 auto;
  padding: 6.94% 0;
}
.page-privacy-policy #privacy-policy .section_inner > h1 {
  font-size: var(--28px);
  letter-spacing: 0.18em;
  line-height: 1.8;
}
.page-privacy-policy #privacy-policy .section_inner > h1 + p {
  margin: 6.25% 0;
  font-size: var(--20px);
  letter-spacing: 0.08em;
  text-align: justify;
}
.page-privacy-policy #privacy-policy .section_inner > dl {
  margin-top: 4%;
}
.page-privacy-policy #privacy-policy .section_inner > dl dt {
  font-size: var(--28px);
  letter-spacing: 0.18em;
  line-height: 1.8;
}
.page-privacy-policy #privacy-policy .section_inner > dl dd {
  margin-top: 2%;
  font-size: var(--20px);
  letter-spacing: 0.08em;
  text-align: justify;
}
.page-privacy-policy #privacy-policy .section_inner .policy_date {
  margin-top: 6.25%;
  font-size: var(--20px);
  letter-spacing: 0.08em;
  text-align: justify;
}


/* スマホ */
@media screen and (max-width:750px) {

  /* プライバシーポリシー */
  .page-privacy-policy #privacy-policy .section_inner {
    width: 88%;
    padding: 12.5% 0 10%;
  }
  .page-privacy-policy #privacy-policy .section_inner > h1 + p {
    font-size: var(--16px);
    margin: 8.52% 0 0;
  }
  .page-privacy-policy #privacy-policy .section_inner > dl {
    margin-top: 15.62%;
  }
  .page-privacy-policy #privacy-policy .section_inner > dl dt {
    font-size: var(--18px);
  }
  .page-privacy-policy #privacy-policy .section_inner > dl dd {
    font-size: var(--16px);
    margin-top: 3.4%;
  }
  .page-privacy-policy #privacy-policy .section_inner .policy_date {
    font-size: var(--16px);
    margin-top: 15.62%;
  }

}



/*************************************************************************

** カテゴリーページ

**************************************************************************/

.category {}
.category #main {
  margin: 0 auto 0 auto;
}
.category #list-page {}
.category #list-page-inner {
  width: 80%;
  margin: 0 auto;
  overflow: hidden;
}
.category #list-page #archive-title {
  
}
.category #list-page #list {
  display: block;
  width: 100%;
  margin: 0 auto;
}
.category .list-inner {
  width: 100%;
  margin: 0;
}
.category #list-page .list-inner article {
  width: 100%;
  margin: 0;
  padding: 0;
}
.category #list-page .list-inner article figure {
  width: 25%;
  border-bottom: 1px solid #000;
}
.category #list-page .list-inner article img,
.tag #list-page .list-inner article img{
  display: block;
  width: 100%;
  height: auto !important;
}
.category #list-page .list-inner article .entry-card-content {
  width: 65%;
}
.category #list-page .list-inner article .post-meta {}
.category #list-page .list-inner article .post-meta .post-date {
  display: block;
  font-size: 14px;
  line-height: 1;
  margin-bottom: .5em;
}
.category #list-page .list-inner article h2 {
  margin-bottom: 0;
}
.category #list-page .list-inner article h2,
.category #list-page .list-inner article h2 a,
.category #ajax-load-more .alm-listing article h2 {
  font-size: 16px;
  letter-spacing: inherit;
}
.category #list-page .list-inner article .entry-snippet {
  display: none;
}

/* pagenation */
.category .pagination {
  display: none;
}

/* navigation */
.category .navigation .navigation-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0 auto;
  padding: 2.5vw 5vw;
}

/* not found */
.category .notfound {
  position: relative;
  z-index: 100;
  text-align: center;
  background-color: #F3F75F;
  margin-bottom: 0 !important;
  padding: 14.1vw 0;
  border-bottom: 1px solid #000;
}

/* home button */
.category .notfound .home_btn {
  position: relative;
  display: inline-block;
  margin: 2rem auto;
}
.category .notfound .home_btn a{
  padding: 0.5em 3em 0.5em 1em;
}

.category .notfound .home_btn a .btn_text {
  margin-right: 0.6em;
}
.category .notfound .home_btn a .btn_text:before,
.category .notfound .home_btn a .btn_text:after{
  position: absolute;
  margin: auto;
  content: "";
  vertical-align: middle;
  transition: 1s 0.5s all ease;
}
.category .notfound .home_btn a .btn_text:before{
  content: '';
  display: inline-block;
  left: -90vw;
  top: calc(50% - 3px);
  width: 6px;
  height: 6px;
  border-top: 2px solid #000;
  border-left: 2px solid #000;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
.category .notfound .home_btn a .btn_text:after{
  content: '';
  display: inline-block;
  left: calc(-100vw + 20px);
  top: calc(50% - 0px);
  width: 20px;
  height: 2px;
  background-color: #000;
}
.category .notfound .home_btn a:hover .btn_text:before{
  left: calc(-4vw - 1px);
}
.category .notfound .home_btn a:hover .btn_text:after{
  width: calc(95vw + 2px);
}

.category .notfound .home_btn a .arrow:before,
.category .notfound .home_btn a .arrow:after{
  position: absolute;
  margin: auto;
  content: "";
  vertical-align: middle;
  transition: 1s all ease;
}
.category .notfound .home_btn a .arrow:before{
  content: '';
  display: inline-block;
  right: 20px;
  top: calc(50% - 3px);
  width: 6px;
  height: 6px;
  border-top: 2px solid #000;
  border-left: 2px solid #000;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
.category .notfound .home_btn a .arrow:after{
  content: '';
  display: inline-block;
  right: 20px;
  top: calc(50% - 0px);
  width: 20px;
  height: 2px;
  background-color: #000;
}
.category .notfound .home_btn a:hover .arrow:before{
  right: calc(-100px - 50vw);
}
.category .notfound .home_btn a:hover .arrow:after{
  right: calc(-100px - 50vw);
  width: calc(140px + 50vw);
}



/* スマホ */
@media screen and (max-width:750px) {
  .category #main {
    margin: 2em auto 0 auto;
  }
  .category #list-page-inner {
    width: 90%;
    margin: 0 auto 20vw auto;
  }
  .category #list-page #archive-title {
    
  }
  .category #list-page .list-inner article {
    width: 95%;
    padding: 5% 2.5%;
  }
  .category #list-page .list-inner article .post-meta .post-date {
    font-size: 12px;
  }
  .category #list-page .list-inner article h2,
  .category #list-page .list-inner article h2 a {
    font-size: 13px;
  }
}



/*************************************************************************

** カテゴリーページ（施工事例/ニュース一覧）

**************************************************************************/

.category-3,
.category-4,
.category-5,
.category-6,
.category-7,
.category-9 {}

.category-3 #list-page,
.category-4 #list-page,
.category-5 #list-page,
.category-6 #list-page,
.category-7 #list-page,
.category-9 #list-page {}

.category-3 #list-page #archive-title,
.category-4 #list-page #archive-title,
.category-5 #list-page #archive-title,
.category-6 #list-page #archive-title,
.category-7 #list-page #archive-title,
.category-9 #list-page #archive-title {
  display: none;
  position: fixed;
  left: 0;
  top: 0;
}

.category   #list-page .category-navi,
.category-3 #list-page .category-navi,
.category-4 #list-page .category-navi,
.category-5 #list-page .category-navi,
.category-6 #list-page .category-navi,
.category-7 #list-page .category-navi,
.category-9 #list-page .category-navi {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 100%;
  margin: 0 0 2.5vw 0;
}
.category-3 #list-page .category-navi li,
.category-4 #list-page .category-navi li,
.category-5 #list-page .category-navi li,
.category-6 #list-page .category-navi li,
.category-7 #list-page .category-navi li,
.category-9 #list-page .category-navi li {
  width: calc(100% / 6);
  text-align: center;
  border: 1px solid #000;
  border-left: none;
}
.category-3 #list-page .category-navi li:nth-child(1),
.category-4 #list-page .category-navi li:nth-child(1),
.category-5 #list-page .category-navi li:nth-child(1),
.category-6 #list-page .category-navi li:nth-child(1),
.category-7 #list-page .category-navi li:nth-child(1),
.category-9 #list-page .category-navi li:nth-child(1) {
  /*border-left: 1px solid #000;*/
}
.category-3 #list-page .category-navi li:nth-last-child(1),
.category-4 #list-page .category-navi li:nth-last-child(1),
.category-5 #list-page .category-navi li:nth-last-child(1),
.category-6 #list-page .category-navi li:nth-last-child(1),
.category-7 #list-page .category-navi li:nth-last-child(1),
.category-9 #list-page .category-navi li:nth-last-child(1) {
  border-right: none;
}
.category-3 #list-page .category-navi li.active,
.category-4 #list-page .category-navi li.active,
.category-5 #list-page .category-navi li.active,
.category-6 #list-page .category-navi li.active,
.category-7 #list-page .category-navi li.active,
.category-9 #list-page .category-navi li.active {
  border-bottom: none;
}
.category-3 #list-page .category-navi li a,
.category-4 #list-page .category-navi li a,
.category-5 #list-page .category-navi li a,
.category-6 #list-page .category-navi li a,
.category-7 #list-page .category-navi li a,
.category-9 #list-page .category-navi li a {
  display: block;
  width: 100%;
  padding: 1em 0;
}

.category-3 #list-page-inner,
.category-4 #list-page-inner,
.category-5 #list-page-inner,
.category-6 #list-page-inner,
.category-7 #list-page-inner,
.category-9 #list-page-inner {
  width: 100%;
  margin: 0 auto;
}
.category-3 #list-page #archive-title,
.category-4 #list-page #archive-title,
.category-5 #list-page #archive-title,
.category-6 #list-page #archive-title,
.category-7 #list-page #archive-title,
.category-9 #list-page #archive-title {
  
}
.category-3 #list-page #list,
.category-4 #list-page #list,
.category-5 #list-page #list,
.category-6 #list-page #list,
.category-7 #list-page #list,
.category-9 #list-page #list {
  position: relative;
  display: block;
  width: 100%;
  margin: 0 auto;
}
.category-3 #list-page #list:before,
.category-4 #list-page #list:before,
.category-5 #list-page #list:before,
.category-6 #list-page #list:before,
.category-7 #list-page #list:before,
.category-9 #list-page #list:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  z-index: 1;
  width: 100%;
  height: 1px;
  background-color: #000;
}
.category-3 #list-page #list:after,
.category-4 #list-page #list:after,
.category-5 #list-page #list:after,
.category-6 #list-page #list:after,
.category-7 #list-page #list:after,
.category-9 #list-page #list:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  z-index: 1;
  width: 100%;
  height: 1px;
  background-color: #000;
}
.category-3 .list-inner,
.category-4 .list-inner,
.category-5 .list-inner,
.category-6 .list-inner,
.category-7 .list-inner,
.category-9 .list-inner {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: start;
  width: 100%;
  margin: 0;
}
.category-3 #list-inner
.category-4 #list-inner,
.category-5 #list-inner,
.category-6 #list-inner,
.category-7 #list-inner,
.category-9 #list-inner {
  border-top: 1px solid #000;
}
.category-3 .list-inner:before,
.category-4 .list-inner:before,
.category-5 .list-inner:before,
.category-6 .list-inner:before,
.category-7 .list-inner:before,
.category-9 .list-inner:before {
  content: "";
  display: block;
  position: absolute;
  left: calc(100% / 3 * 1);
  z-index: 1;
  width: 1px;
  height: 100%;
  background-color: #000;
}
.category-3 .list-inner:after,
.category-4 .list-inner:after,
.category-5 .list-inner:after,
.category-6 .list-inner:after,
.category-7 .list-inner:after,
.category-9 .list-inner:after {
  content: "";
  display: block;
  position: absolute;
  left: calc(100% / 3 * 2);
  z-index: 1;
  width: 1px;
  height: 100%;
  background-color: #000;
}
.category-3 #list-page .list-inner a.hover-card,
.category-4 #list-page .list-inner a.hover-card,
.category-5 #list-page .list-inner a.hover-card,
.category-6 #list-page .list-inner a.hover-card,
.category-7 #list-page .list-inner a.hover-card,
.category-9 #list-page .list-inner a.hover-card {
  position: relative;
  width: calc(100% / 3);
  margin: 0;
  border-bottom: 1px solid #000;
}
.category-3 #list-page .list-inner a.hover-card figure:before,
.category-4 #list-page .list-inner a.hover-card figure:before,
.category-5 #list-page .list-inner a.hover-card figure:before,
.category-6 #list-page .list-inner a.hover-card figure:before,
.category-7 #list-page .list-inner a.hover-card figure:before,
.category-9 #list-page .list-inner a.hover-card figure:before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 10;
  width: 100%;
  height: 100%;
  background-color: rgba(0,0,0,0.2);
  opacity: 0;
  transition: all 0.5s ease;
}
.category-3 #list-page .list-inner a.hover-card:hover figure:before,
.category-4 #list-page .list-inner a.hover-card:hover figure:before,
.category-5 #list-page .list-inner a.hover-card:hover figure:before,
.category-6 #list-page .list-inner a.hover-card:hover figure:before,
.category-7 #list-page .list-inner a.hover-card:hover figure:before,
.category-9 #list-page .list-inner a.hover-card:hover figure:before {
  opacity: 1;
}
.category-3 #list-page .list-inner a.hover-card figure:after,
.category-4 #list-page .list-inner a.hover-card figure:after,
.category-5 #list-page .list-inner a.hover-card figure:after,
.category-6 #list-page .list-inner a.hover-card figure:after,
.category-7 #list-page .list-inner a.hover-card figure:after,
.category-9 #list-page .list-inner a.hover-card figure:after {
  content: "詳しく見る";
  display: block;
  position: absolute;
  left: calc(50% - 5em);
  top: calc(50% - 22px);
  z-index: 20;
  width: 7em;
  background-color: #F3F75F;
  background-image: url(images/arrow-black-right1.svg);
  background-repeat: no-repeat;
  background-position: 8em center;
  background-size: 15px;
  text-align: center;
  padding: 0.5em 2em 0.5em 1em;
  border: 1px solid #000;
  /*border-radius: 25px;*/
  opacity: 0;
  transition: all 0.5s ease;
}
.category-3 #list-page .list-inner a.hover-card figure:hover:after,
.category-4 #list-page .list-inner a.hover-card figure:hover:after,
.category-5 #list-page .list-inner a.hover-card figure:hover:after,
.category-6 #list-page .list-inner a.hover-card figure:hover:after,
.category-7 #list-page .list-inner a.hover-card figure:hover:after,
.category-9 #list-page .list-inner a.hover-card figure:hover:after {
  opacity: 1;
}
.category-3 #list-page .list-inner article header,
.category-4 #list-page .list-inner article header,
.category-5 #list-page .list-inner article header,
.category-6 #list-page .list-inner article header,
.category-7 #list-page .list-inner article header,
.category-9 #list-page .list-inner article header {
  width: 100%;
}
.category-3 #list-page .list-inner article figure,
.category-4 #list-page .list-inner article figure,
.category-5 #list-page .list-inner article figure,
.category-6 #list-page .list-inner article figure,
.category-7 #list-page .list-inner article figure,
.category-9 #list-page .list-inner article figure {
  position: relative;
  width: 100%;
  aspect-ratio: 4/2.4;
  overflow: hidden;
}
.category-3 #list-page .list-inner article figure img,
.category-4 #list-page .list-inner article figure img,
.category-5 #list-page .list-inner article figure img,
.category-6 #list-page .list-inner article figure img,
.category-7 #list-page .list-inner article figure img,
.category-9 #list-page .list-inner article figure img {
  width: 100%;
}
.category-3 #list-page #list a:hover article figure img,
.category-4 #list-page #list a:hover article figure img,
.category-5 #list-page #list a:hover article figure img,
.category-6 #list-page #list a:hover article figure img,
.category-7 #list-page #list a:hover article figure img,
.category-9 #list-page #list a:hover article figure img {
  
}
.category-3 #list-page .list-inner article .entry-card-content,
.category-4 #list-page .list-inner article .entry-card-content,
.category-5 #list-page .list-inner article .entry-card-content,
.category-6 #list-page .list-inner article .entry-card-content,
.category-7 #list-page .list-inner article .entry-card-content,
.category-9 #list-page .list-inner article .entry-card-content {
  width: calc(100% - 2rem);
  padding: 1rem;
}
.category-3 #list-page .list-inner article .post-meta,
.category-4 #list-page .list-inner article .post-meta,
.category-5 #list-page .list-inner article .post-meta,
.category-6 #list-page .list-inner article .post-meta,
.category-7 #list-page .list-inner article .post-meta,
.category-9 #list-page .list-inner article .post-meta {
  
}
.category-3 #list-page .list-inner article h2,
.category-4 #list-page .list-inner article h2,
.category-5 #list-page .list-inner article h2,
.category-6 #list-page .list-inner article h2,
.category-7 #list-page .list-inner article h2,
.category-9 #list-page .list-inner article h2 {
  
}
.category-3 #list-page .list-inner article .post-meta .post-date,
.category-4 #list-page .list-inner article .post-meta .post-date,
.category-5 #list-page .list-inner article .post-meta .post-date,
.category-6 #list-page .list-inner article .post-meta .post-date,
.category-7 #list-page .list-inner article .post-meta .post-date,
.category-9 #list-page .list-inner article .post-meta .post-date {
  display: inline-block;
  font-size: 16px;
  line-height: 1;
  margin: 0 1em 0 0;
}
.category-3 #list-page .list-inner article .post-meta .category-name,
.category-4 #list-page .list-inner article .post-meta .category-name,
.category-5 #list-page .list-inner article .post-meta .category-name,
.category-6 #list-page .list-inner article .post-meta .category-name,
.category-7 #list-page .list-inner article .post-meta .category-name,
.category-9 #list-page .list-inner article .post-meta .category-name {
  line-height: 1;
}
.category-3 #list-page .list-inner article h2,
.category-4 #list-page .list-inner article h2,
.category-5 #list-page .list-inner article h2,
.category-6 #list-page .list-inner article h2,
.category-7 #list-page .list-inner article h2,
.category-9 #list-page .list-inner article h2 {
  margin: 0.4rem 0 0 0;
}

/* ajax load more */
.category-3 #ajax-load-more:after,
.category-4 #ajax-load-more:after,
.category-5 #ajax-load-more:after,
.category-6 #ajax-load-more:after,
.category-7 #ajax-load-more:after,
.category-9 #ajax-load-more:after {
  content: "";
  position: absolute;
  bottom: 0;
  background-color: #000;
  width: 100%;
  height: 1px;
}



/* スマホ */
@media screen and (max-width:750px) {
  
  .category-3 #list-page-inner,
  .category-4 #list-page-inner,
  .category-5 #list-page-inner,
  .category-6 #list-page-inner,
  .category-7 #list-page-inner,
  .category-9 #list-page-inner {
    
  }
  .category-3 #list-page #archive-title,
  .category-4 #list-page #archive-title,
  .category-5 #list-page #archive-title,
  .category-6 #list-page #archive-title,
  .category-7 #list-page #archive-title,
  .category-9 #list-page #archive-title {
    
  }
  .category-3 #list-page .category-navi,
  .category-4 #list-page .category-navi,
  .category-5 #list-page .category-navi,
  .category-6 #list-page .category-navi,
  .category-7 #list-page .category-navi,
  .category-9 #list-page .category-navi {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: start;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 90%;
    margin: 0 auto 2rem auto;
  }
  .category-3 #list-page .category-navi li,
  .category-4 #list-page .category-navi li,
  .category-5 #list-page .category-navi li,
  .category-6 #list-page .category-navi li,
  .category-7 #list-page .category-navi li,
  .category-9 #list-page .category-navi li {
    width: auto;
    text-align: left;
    margin-bottom: 0.5em;
    border: none;
  }
  .category-3 #list-page .category-navi li:after,
  .category-4 #list-page .category-navi li:after,
  .category-5 #list-page .category-navi li:after,
  .category-6 #list-page .category-navi li:after,
  .category-7 #list-page .category-navi li:after,
  .category-9 #list-page .category-navi li:after {
    content: "/";
    display: inline-block;
    padding: 0 .5em;
  }
  .category-3 #list-page .category-navi li:nth-child(1),
  .category-4 #list-page .category-navi li:nth-child(1),
  .category-5 #list-page .category-navi li:nth-child(1),
  .category-6 #list-page .category-navi li:nth-child(1),
  .category-7 #list-page .category-navi li:nth-child(1),
  .category-9 #list-page .category-navi li:nth-child(1) {
    border-left: none;
  }
  .category-3 #list-page .category-navi li a,
  .category-4 #list-page .category-navi li a,
  .category-5 #list-page .category-navi li a,
  .category-6 #list-page .category-navi li a,
  .category-7 #list-page .category-navi li a,
  .category-9 #list-page .category-navi li a {
    display: inline;
    width: inherit;
    padding: 0 0 .2em 0;
  }
  .category-3 #list-page .category-navi li.active a,
  .category-4 #list-page .category-navi li.active a,
  .category-5 #list-page .category-navi li.active a,
  .category-6 #list-page .category-navi li.active a,
  .category-7 #list-page .category-navi li.active a,
  .category-9 #list-page .category-navi li.active a {
    border-bottom: 1px solid #000;
  }
  .category-3 .list-inner,
  .category-4 .list-inner,
  .category-5 .list-inner,
  .category-6 .list-inner,
  .category-7 .list-inner,
  .category-9 .list-inner {
    
  }
  .category-3 .list-inner:before,
  .category-4 .list-inner:before,
  .category-5 .list-inner:before,
  .category-6 .list-inner:before,
  .category-7 .list-inner:before,
  .category-9 .list-inner:before {
    display: none;
  }
  .category-3 .list-inner:after,
  .category-4 .list-inner:after,
  .category-5 .list-inner:after,
  .category-6 .list-inner:after,
  .category-7 .list-inner:after,
  .category-9 .list-inner:after {
    display: none;
  }
  .category-3 #list-page .list-inner a.hover-card,
  .category-4 #list-page .list-inner a.hover-card,
  .category-5 #list-page .list-inner a.hover-card,
  .category-6 #list-page .list-inner a.hover-card,
  .category-7 #list-page .list-inner a.hover-card,
  .category-9 #list-page .list-inner a.hover-card {
    width: 100%;
    margin: 0;
  }
  .category-3 #list-page .list-inner a.hover-card:after ,
  .category-4 #list-page .list-inner a.hover-card:after ,
  .category-5 #list-page .list-inner a.hover-card:after ,
  .category-6 #list-page .list-inner a.hover-card:after ,
  .category-7 #list-page .list-inner a.hover-card:after ,
  .category-9 #list-page .list-inner a.hover-card:after  {
    top: calc(40% - 45px);
  }
  .category-3 #list-page .list-inner article,
  .category-4 #list-page .list-inner article,
  .category-5 #list-page .list-inner article,
  .category-6 #list-page .list-inner article,
  .category-7 #list-page .list-inner article,
  .category-9 #list-page .list-inner article {
    width: 100%;
    margin: 0;
    padding: 0;
  }
  .category-3 #list-page .list-inner article header,
  .category-4 #list-page .list-inner article header,
  .category-5 #list-page .list-inner article header,
  .category-6 #list-page .list-inner article header,
  .category-7 #list-page .list-inner article header,
  .category-9 #list-page .list-inner article header {
    width: 100%;
  }
  .category-3 #list-page .list-inner article figure,
  .category-4 #list-page .list-inner article figure,
  .category-5 #list-page .list-inner article figure,
  .category-6 #list-page .list-inner article figure,
  .category-7 #list-page .list-inner article figure,
  .category-9 #list-page .list-inner article figure {
    
  }
  .category-3 #list-page .list-inner article h2,
  .category-4 #list-page .list-inner article h2,
  .category-5 #list-page .list-inner article h2,
  .category-6 #list-page .list-inner article h2,
  .category-7 #list-page .list-inner article h2,
  .category-9 #list-page .list-inner article h2 {
    width: 100%;
  }
  .category-3 #list-page .list-inner article .post-meta,
  .category-4 #list-page .list-inner article .post-meta,
  .category-5 #list-page .list-inner article .post-meta,
  .category-6 #list-page .list-inner article .post-meta,
  .category-7 #list-page .list-inner article .post-meta,
  .category-9 #list-page .list-inner article .post-meta {
    width: inherit;
    font-size: 14px;
    margin: 0 0 0.5em 0;
  }
  .category-3 #list-page .list-inner article .post-meta .post-date,
  .category-4 #list-page .list-inner article .post-meta .post-date,
  .category-5 #list-page .list-inner article .post-meta .post-date,
  .category-6 #list-page .list-inner article .post-meta .post-date,
  .category-7 #list-page .list-inner article .post-meta .post-date,
  .category-9 #list-page .list-inner article .post-meta .post-date {
    padding-top: 0;
  }
  .category-3 #list-page .list-inner article h2,
  .category-3 #list-page .list-inner article h2 a,
  .category-4 #list-page .list-inner article h2,
  .category-4 #list-page .list-inner article h2 a,
  .category-5 #list-page .list-inner article h2,
  .category-5 #list-page .list-inner article h2 a,
  .category-6 #list-page .list-inner article h2,
  .category-6 #list-page .list-inner article h2 a,
  .category-7 #list-page .list-inner article h2,
  .category-7 #list-page .list-inner article h2 a,
  .category-9 #list-page .list-inner article h2,
  .category-9 #list-page .list-inner article h2 a {
    font-size: 14px;
  }
  
}



/*************************************************************************

** singleページ共通

**************************************************************************/

.single {}
.single #main {
  margin: 0 auto;
}
.single #single-page {
  margin: 0 auto;
}
.single #single-page-inner {
  position: relative;
  width: 100%;
  margin: 0 auto;
}
.single #single-page .post {
  width: 100%;
  margin: 0 auto;
  border-top: 1px solid #000;
}
.single #single-page .post_inner {
  position: relative;
  width: 100%;
  margin: 0 auto;
}

.categoryid-3 #single-page .category-navi,
.categoryid-4 #single-page .category-navi,
.categoryid-5 #single-page .category-navi,
.categoryid-6 #single-page .category-navi,
.categoryid-7 #single-page .category-navi,
.categoryid-9 #single-page .category-navi {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 100%;
  margin: 0 0 2.5vw 0;
}
.categoryid-3 #single-page .category-navi li,
.categoryid-4 #single-page .category-navi li,
.categoryid-5 #single-page .category-navi li,
.categoryid-6 #single-page .category-navi li,
.categoryid-7 #single-page .category-navi li,
.categoryid-9 #single-page .category-navi li {
  width: calc(100% / 6);
  text-align: center;
  border: 1px solid #000;
  border-left: none;
  list-style-type: none;
}
.categoryid-3 #single-page .category-navi li:nth-child(1),
.categoryid-4 #single-page .category-navi li:nth-child(1),
.categoryid-5 #single-page .category-navi li:nth-child(1),
.categoryid-6 #single-page .category-navi li:nth-child(1),
.categoryid-7 #single-page .category-navi li:nth-child(1),
.categoryid-9 #single-page .category-navi li:nth-child(1) {
  /*border-left: 1px solid #000;*/
}
.categoryid-3 #single-page .category-navi li:nth-last-child(1),
.categoryid-4 #single-page .category-navi li:nth-last-child(1),
.categoryid-5 #single-page .category-navi li:nth-last-child(1),
.categoryid-6 #single-page .category-navi li:nth-last-child(1),
.categoryid-7 #single-page .category-navi li:nth-last-child(1),
.categoryid-9 #single-page .category-navi li:nth-last-child(1) {
  border-right: none;
}
.categoryid-3 #single-page .category-navi li.active,
.categoryid-4 #single-page .category-navi li.active,
.categoryid-5 #single-page .category-navi li.active,
.categoryid-6 #single-page .category-navi li.active,
.categoryid-7 #single-page .category-navi li.active,
.categoryid-9 #single-page .category-navi li.active {
  border-bottom: none;
}
.categoryid-3 #single-page .category-navi li a,
.categoryid-4 #single-page .category-navi li a,
.categoryid-5 #single-page .category-navi li a,
.categoryid-6 #single-page .category-navi li a,
.categoryid-7 #single-page .category-navi li a,
.categoryid-9 #single-page .category-navi li a {
  display: block;
  width: 100%;
  padding: 1em 0;
}


.single #single-page .post_inner .post article {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: calc(100% - 10vw);
  margin: 0 0 2.5vw 0;
  padding: 2.5vw 2.5vw 7.5vw 2.5vw;
}
.single #single-page .post_inner article header {
  width: 42.5%;
}
.single #single-page .post_inner .post article .entry-content-wrap {
  width: 50%;
}


.single #single-page .post_inner .eye-catch {
  width: 100%;
}
.single #single-page .post_inner .eye-catch img {
  display: block;
  width: 100%;
}
.single #single-page .post_inner .post-tags {
  margin-top: 2em;
}
.single #single-page .post_inner .post-tags a {
  
}
.single #single-page .post_inner .post-address {
  margin-top: 1em;
}
.single #single-page .post_inner .post-meta {
  margin-top: 1em;
}
.single #single-page .post_inner .post-meta .post-date {
  font-size: 13px;
}
.single #single-page .post_inner .post-meta .post-date .fa-clock-o {
  display: none;
}



.single #single-page .post_inner .article h1 {
  font-size: 2vw;
  line-height: 1.6;
  margin: 1em 0;
}
.single #single-page .post_inner .entry-content {
  width: 100%;
  margin: 0 auto;
}
.single #single-page .post_inner .post h2,
.single #single-page .post_inner .post h3,
.single #single-page .post_inner .post h4 {
  margin-top: 1em;
}
.single #single-page .post_inner .post h2 {
  font-size: 22px;
}
.single #single-page .post_inner .post h3 {
  font-size: 20px;
}
.single #single-page .post_inner .post h4 {
  font-size: 18px;
}
.single #single-page .post_inner .post strong {}
.single #single-page .post_inner .post p {
  font-size: 1vw;
  line-height: 2.2;
  text-align: justify;
  letter-spacing: 0.05em;
  padding: 0 0 1em 0;
}
.single #single-page .post_inner .post p a {
  color: #838383;
}
.single #single-page .post_inner .post ul {
  margin: 2em 0 2em 2em;
}
.single #single-page .post_inner .post ul li {
  font-size: 14px;
  list-style-type: disc;
  margin-bottom: 1em;
}
.single #single-page .post_inner .post blockquote {
  margin: 2em 0;
  border: none;
}

.single #single-page .post_inner .post dl {
  margin-bottom: 2em;
}
.single #single-page .post_inner .post .before-after {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 95%;
  margin: 0 auto;
  padding: 2.5vw;
  border-top: 1px solid #000;
}
.single #single-page .post_inner .post .before-after > div {
  width: 48.75%;
}

.single #single-page #under-entry-body {
  width: 100%;
  /*margin: 10em auto 25em auto;*/
  border-top: 1px solid #000;
}
.single #single-page #under-entry-body h2 {
  width: 100%;
  font-size: 22px;
  text-align: center;
  margin: 0 auto 4em auto;
  padding-bottom: 1em;
  border-bottom: 3px solid #000;
}

/* navigation */
.single #single-page .navigation .navigation-inner {
  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;
  margin: 0 auto;
  padding: 2.5vw 5vw;
}

/* related entries */
.single #single-page #related-entries {
  border-top: 1px solid #000;
}
.single #single-page #related-entries-inner {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 100%;
}
.single #single-page #related-entries-inner:before {
  content: "";
  display: block;
  position: absolute;
  left: calc(100% / 3 * 1);
  z-index: 1;
  width: 1px;
  height: 100%;
  background-color: #000;
}
.single #single-page #related-entries-inner:after {
  content: "";
  display: block;
  position: absolute;
  left: calc(100% / 3 * 2);
  z-index: 1;
  width: 1px;
  height: 100%;
  background-color: #000;
}
.single #single-page #related-entries .related-entry-item {
  width: calc(100% / 3);
  font-size: 1.1vw;
  line-height: 1.8;
  margin: 0;
  /*border-right: 1px solid #000;*/
}
.single #single-page #related-entries .related-entry-item a.hover-card {
  display: block;
}
.single #single-page #related-entries .related-entry-item a.hover-card:hover {
  
}
.single #single-page #related-entries .related-entry-thumb {
  position: relative;
  display: block;
  float: inherit;
  width: 100%;
  aspect-ratio: 4/2.4;
  margin: 0;
  padding: 0;
  overflow: hidden;
  border-bottom: 1px solid #000;
}
.single #single-page #related-entries .related-entry-thumb:before {
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(0,0,0,0.2);
  opacity: 0;
}
.single #single-page #related-entries .related-entry-thumb:after {
  content: "詳しく見る";
  display: block;
  position: absolute;
  left: calc(50% - 5em);
  top: calc(50% - 22px);
  z-index: 20;
  width: 7em;
  background-color: #F3F75F;
  background-image: url(images/arrow-black-right1.svg);
  background-repeat: no-repeat;
  background-position: 8em center;
  background-size: 15px;
  text-align: center;
  padding: 0.5em 2em 0.5em 1em;
  border: 1px solid #000;
  opacity: 0;
  transition: all 0.5s ease;
}
.single #single-page #related-entries a.hover-card:hover .related-entry-thumb:before {
  opacity: 1;
}
.single #single-page #related-entries a.hover-card:hover .related-entry-thumb:after {
  opacity: 1;
}
.single #single-page #related-entries .related-entry-thumb img {
  display: block;
  width: 100%;
  height: auto;
}
.single #single-page #related-entries .related-entry-content {
  display: block;
  margin: 0;
  padding: 1em 0;
}
.single #single-page #related-entries .related-entry-meta {
  display: block;
  margin: 0;
  padding: 0 1em;
}
.single #single-page #related-entries .related-entry-date {
  display: inline-block;
  margin-right: 1em;
}
.single #single-page #related-entries .related-entry-cat {
  
}
.single #single-page #related-entries .related-entry-title {
  display: block;
  height: 1.8em;
  margin: .5em 0 0 0;
  padding: 0 1em;
  overflow: hidden;
}



/* スマホ */
@media screen and (max-width:750px) {
  
  .single #single-page {
    
  }
  .single #single-page .post_inner {
    width: 100%;
  }
  
  .categoryid-3 #single-page .category-navi,
  .categoryid-4 #single-page .category-navi,
  .categoryid-5 #single-page .category-navi,
  .categoryid-6 #single-page .category-navi,
  .categoryid-7 #single-page .category-navi,
  .categoryid-9 #single-page .category-navi {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: start;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 90%;
    margin: 0 auto 2rem auto;
  }
  .categoryid-3 #single-page .category-navi li,
  .categoryid-4 #single-page .category-navi li,
  .categoryid-5 #single-page .category-navi li,
  .categoryid-6 #single-page .category-navi li,
  .categoryid-7 #single-page .category-navi li,
  .categoryid-9 #single-page .category-navi li {
    width: auto;
    text-align: left;
    margin-bottom: 0.5em;
    border: none;
  }
  .categoryid-3 #single-page .category-navi li:after,
  .categoryid-4 #single-page .category-navi li:after,
  .categoryid-5 #single-page .category-navi li:after,
  .categoryid-6 #single-page .category-navi li:after,
  .categoryid-7 #single-page .category-navi li:after,
  .categoryid-9 #single-page .category-navi li:after {
    content: "/";
    display: inline-block;
    padding: 0 .5em;
  }
  .categoryid-3 #single-page .category-navi li:nth-child(1),
  .categoryid-4 #single-page .category-navi li:nth-child(1),
  .categoryid-5 #single-page .category-navi li:nth-child(1),
  .categoryid-6 #single-page .category-navi li:nth-child(1),
  .categoryid-7 #single-page .category-navi li:nth-child(1),
  .categoryid-9 #single-page .category-navi li:nth-child(1) {
    border-left: none;
  }
  .categoryid-3 #single-page .category-navi li a,
  .categoryid-4 #single-page .category-navi li a,
  .categoryid-5 #single-page .category-navi li a,
  .categoryid-6 #single-page .category-navi li a,
  .categoryid-7 #single-page .category-navi li a,
  .categoryid-9 #single-page .category-navi li a {
    display: inline;
    width: inherit;
    padding: 0 0 .2em 0;
  }
  .categoryid-3 #single-page .category-navi li.active a,
  .categoryid-4 #single-page .category-navi li.active a,
  .categoryid-5 #single-page .category-navi li.active a,
  .categoryid-6 #single-page .category-navi li.active a,
  .categoryid-7 #single-page .category-navi li.active a,
  .categoryid-9 #single-page .category-navi li.active a {
    border-bottom: 1px solid #000;
  }
  
  .single #single-page .post_inner .post article {
    display: block;
    width: 90%;
    margin: 0 auto;
    padding: 5vw 5%;
  }
  .single #single-page .post_inner article header {
    width: 100%;
  }
  .single #single-page .post_inner .post article .entry-content-wrap {
    width: 100%;
  }
  .single #single-page .post_inner .eye-catch {
    
  }
  .single #single-page .post_inner .post-meta {
    
  }
  .single #single-page .post_inner .article header {
    width: 100%;
  }
  .single #single-page .post_inner .article header .post-meta {
    
  }
  .single #single-page .post_inner .post-tags {
    
  }
  .single #single-page .post_inner .entry-content {
    width: 100%;
  }
  .single #single-page .post_inner .article h1 {
    font-size: 20px;
    text-align: left;
    margin: 20px 0 14px;
  }
  .single #single-page .post_inner .post h2 {
    font-size: 20px;
  }
  .single #single-page .post_inner .post h3 {
    font-size: 19px;
  }
  .single #single-page .post_inner .post h4 {
    font-size: 16px;
  }
  .single #single-page .post_inner .post p {
    font-size: 14px;
  }
  .single #single-page a.hover-card {
    width: 100% !important;
  }
  
  .single #single-page .post_inner .post .before-after {
    display: block;
    width: 90%;
    padding: 5vw;
  }
  .single #single-page .post_inner .post .before-after > div {
    width: 100%;
    margin-bottom: 5vw;
  }
  
  .single #single-page #under-entry-body {
    border-top: none;
  }
  
  .single #single-page #related-entries {
    padding-top: 10vw;
  }
  .single #single-page #related-entries-inner {
    display: block;
    width: 100%;
  }
  .single #single-page #related-entries-inner:before {
    display: none;
  }
  .single #single-page #related-entries-inner:after {
    display: none;
  }
  .single #single-page #related-entries .bx-wrapper  {
    width: 90%;
    margin: 0 auto;
  }
  .single #single-page #related-entries .related-entry-item {
    width: 100%;
    font-size: 14px;
    margin-right: 5vw;
    border: 1px solid #000;
  }
  
  .single #single-page #related-entries .bx-controls {
    position: relative;
    bottom: inherit;
    top: inherit;
    z-index: 100;
    outline: 0;
    width: 100%;
    margin: 0 auto;
    padding: 10vw 0;
  }
  
  .single #single-page #related-entries .bx-controls-direction {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%;
    margin: 0 auto;
  }
  .single #single-page #related-entries .bx-controls-direction a {
    display: block;
    position: relative;
    bottom: inherit;
    top: inherit;
    outline: 0;
    width: 3.5em;
    height: 2.2em;
    text-align: center;
    text-indent: inherit;
    border: 2px solid #000;
    border-radius: 20px;
  }
  
  .single #single-page #related-entries .bx-controls-direction a.bx-prev:before,
  .single #single-page #related-entries .bx-controls-direction a.bx-prev:after,
  .single #single-page #related-entries .bx-controls-direction a.bx-next:before,
  .single #single-page #related-entries .bx-controls-direction a.bx-next:after {
    position: absolute;
    content: '';
    display: inline-block;
    transition: all 1s ease;
  }
  .single #single-page #related-entries .bx-controls-direction a.bx-prev:before,
  .single #single-page #related-entries .bx-controls-direction a.bx-prev:hover:before{
    left: 20px;
    top: calc(50% - 3px);
    width: 6px;
    height: 6px;
    border-top: 2px solid #000;
    border-left: 2px solid #000;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  .single #single-page #related-entries .bx-controls-direction a.bx-prev:after,
  .single #single-page #related-entries .bx-controls-direction a.bx-prev:hover:after{
    left: 20px;
    top: calc(50% - 0px);
    width: 20px;
    height: 2px;
    background-color: #000;
  }
  .single #single-page #related-entries .bx-controls-direction a.bx-next:before,
  .single #single-page #related-entries .bx-controls-direction a.bx-next:hover:before{
    right: 20px;
    top: calc(50% - 3px);
    width: 6px;
    height: 6px;
    border-top: 2px solid #000;
    border-left: 2px solid #000;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
  }
  .single #single-page #related-entries .bx-controls-direction a.bx-next:after,
  .single #single-page #related-entries .bx-controls-direction a.bx-next:hover:after{
    right: 20px;
    top: calc(50% - 0px);
    width: 20px;
    height: 2px;
    background-color: #000;
  }
  
  .single #single-page #related-entries .bx-controls-direction a.bx-prev:hover,
  .single #single-page #related-entries .bx-controls-direction a.bx-prev:focus{
    left: 0px;
  }
  .single #single-page #related-entries .bx-controls-direction a.bx-next:hover,
  .single #single-page #related-entries .bx-controls-direction a.bx-next:focus{
    right: 0px;
  }
  /*
  .single #single-page #related-entries .bx-controls-direction a.bx-prev:hover:before{
    left: -100px;
  }
  .single #single-page #related-entries .bx-controls-direction a.bx-prev:hover:after{
    left: -100px;
    width: 139px;
  }
  .single #single-page #related-entries .bx-controls-direction a.bx-next:hover:before{
    right: -100px;
  }
  .single #single-page #related-entries .bx-controls-direction a.bx-next:hover:after{
    right: -100px;
    width: 140px;
  }
  */
  
}



/************************************
** 前の記事へ、次の記事へ
************************************/
.navigation{
  position: relative;
  width: 100%;
  /*border-top: 1px solid #000;*/
  /*border-bottom: 1px solid #000;*/
  overflow: hidden;
}
.navigation .navigation-inner {
  /*
  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;
  margin: 0 auto;
  padding: 2.5vw 5vw;
  */
}

.navigation div.prev,
.navigation div.next {
  display: block;
  width: 11em;
}
.navigation a span {
  display: inline-block;
}
.navigation div.prev{
  
}
.navigation div.next{
  
}
.navigation div .pc-only{
  display: inline !important;
}

.navigation div.prev a,
.navigation div.next a,
.navigation div.btn-more a,
.navigation div.back-to-top a{
  position: relative;
  display: block;
  font-size: 16px;
  text-align: center;
  white-space: nowrap;
  padding: 0.5em 1em;
  border: 2px solid #000;
  border-radius: 25px;
  cursor: pointer;
}

.navigation div.prev a{
  padding-left: 3em;
}
.navigation div.next a,
.navigation div.btn-more a,
.navigation div.back-to-top a{
  padding-right: 3em;
}


.navigation div.prev a .arrow:before,
.navigation div.prev a .arrow:after,
.navigation div.next a .arrow:before,
.navigation div.next a .arrow:after,
.navigation div.btn-more a .arrow:before,
.navigation div.btn-more a .arrow:after,
.navigation div.back-to-top a .arrow:before,
.navigation div.back-to-top a .arrow:after{
  position: absolute;
  margin: auto;
  content: "";
  vertical-align: middle;
  transition: 1s all ease;
}

/* prev button */
.navigation div.prev a .arrow:before{
  content: '';
  display: inline-block;
  left: 20px;
  top: calc(50% - 3px);
  width: 6px;
  height: 6px;
  border-top: 2px solid #000;
  border-left: 2px solid #000;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.navigation div.prev a .arrow:after{
  content: '';
  display: inline-block;
  left: 20px;
  top: calc(50% - 0px);
  width: 20px;
  height: 2px;
  background-color: #000;
}
.navigation div.prev a:hover .arrow:before{
  left: -100px;
}
.navigation div.prev a:hover .arrow:after{
  left: -100px;
  width: 140px;
}

/* next button */
.navigation div.next a .arrow:before{
  content: '';
  display: inline-block;
  right: 20px;
  top: calc(50% - 3px);
  width: 6px;
  height: 6px;
  border-top: 2px solid #000;
  border-left: 2px solid #000;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
.navigation div.next a .arrow:after{
  content: '';
  display: inline-block;
  right: 20px;
  top: calc(50% - 0px);
  width: 20px;
  height: 2px;
  background-color: #000;
}
.navigation div.next a:hover .arrow:before{
  right: -100px;
}
.navigation div.next a:hover .arrow:after{
  right: -100px;
  width: 140px;
}

/* back to index button */
.navigation div.back-to-index {
  display: block;
}
.navigation div.back-to-index a {
  display: block;
  text-align: center;
  white-space: nowrap;
  padding: 0.5em 1em;
  border: 2px solid #000;
  border-radius: 25px;
}
.navigation div.back-to-index a .arrow {
  display: none;
}

/* back to top button */
.navigation div.back-to-top a .arrow:before{
  content: '';
  display: inline-block;
  right: 25px;
  top: 1.15em;
  width: 6px;
  height: 6px;
  border-top: 2px solid #000;
  border-left: 2px solid #000;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.navigation div.back-to-top a .arrow:after{
  content: '';
  display: inline-block;
  right: 28px;
  top: 1.1em;
  width: 2px;
  height: 10px;
  background-color: #000;
}
.navigation div.back-to-top a:hover .arrow:before{
  top: -100px;
}
.navigation div.back-to-top a:hover .arrow:after{
  top: -100px;
  height: 126px;
}

/* more button */
#ajax-load-more{
  position: relative;
}
#ajax-load-more .alm-btn-wrap{
  position: absolute;
  left: 5vw;
  bottom: calc(-46.8px - 2.5vw);
  z-index: 30;
  display: inline-block;
  text-align: center;
  white-space: nowrap;
  margin: 0;
  padding: 0;
}
#ajax-load-more .alm-btn-wrap button {
  display: inline-block;
  background-color: transparent;
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-size: 16px;
  letter-spacing: inherit;
  line-height: 1.8;
  height: inherit;
  margin: 0;
  padding: 0.5em 1em;
  padding-right: 3em;
  border: 2px solid #000;
  border-radius: 25px;
}
#ajax-load-more .alm-btn-wrap button.btn-more:before,
#ajax-load-more .alm-btn-wrap button.btn-more:after{
  position: absolute;
  margin: auto;
  content: "";
  vertical-align: middle;
  transition: 1s all ease;
}
.navigation div.btn-more a .arrow:before,
#ajax-load-more .alm-btn-wrap button.btn-more:before{
  content: '';
  display: inline-block;
  right: 25px;
  top: calc(50% - 4px);
  width: 6px;
  height: 6px;
  border-top: 2px solid #000;
  border-left: 2px solid #000;
  -webkit-transform: rotate(225deg);
  transform: rotate(225deg);
}
.navigation div.btn-more a .arrow:after,
#ajax-load-more .alm-btn-wrap button.btn-more:after{
  content: '';
  display: inline-block;
  right: 28px;
  top: 17px;
  width: 2px;
  height: 10px;
  background-color: #000;
}
.navigation div.btn-more a:hover .arrow:before,
#ajax-load-more .alm-btn-wrap button.btn-more:hover:before{
  top: 90px;
}
.navigation div.btn-more a:hover .arrow:after,
#ajax-load-more .alm-btn-wrap button.btn-more:hover:after{
  height: 80px;
}
#ajax-load-more .alm-btn-wrap .alm-load-more-btn.done {
  opacity: 0.2;
  cursor: default;
  pointer-events: none;
}


/* スマホ */
@media screen and (max-width:960px) {
  
  .single .navigation{
    height: 10em;
  }
  .navigation .navigation-inner {
    margin: 0 auto;
    padding: 5vw 5% !important;
  }
  
  #ajax-load-more .alm-btn-wrap{
    bottom: calc(-43.18px - 5vw);
  }
  #ajax-load-more .alm-btn-wrap button {
    font-size: 14px;
  }
  
  .navigation div.prev .btn_text,
  .navigation div.next .btn_text {
    display: none;
  }
  .navigation div.prev a,
  .navigation div.next a,
  .navigation div.btn-more a,
  .navigation div.back-to-top a,
  .navigation div.back-to-index a{
    font-size: 14px;
  }
  .navigation div.prev,
  .navigation div.next {
    width: 3.5em;
  }
  
  /* prev button */
  .navigation div.prev a .arrow:before,
  .navigation div.prev a:hover .arrow:before{
    left: 20px;
  }
  .navigation div.prev a .arrow:after,
  .navigation div.prev a:hover .arrow:after{
    left: 20px;
    width: 20px;
  }

  /* next button */
  .navigation div.next a .arrow:before,
  .navigation div.next a:hover .arrow:before{
    right: 20px;
  }
  .navigation div.next a .arrow:after,
  .navigation div.next a:hover .arrow:after{
    right: 20px;
    width: 20px;
  }
  
  /* back to index */
  .navigation div.back-to-index {
    position: absolute;
    top: 5em;
    width: calc(100% - 2em - 4px);
  }
  .navigation div.back-to-index a {
    text-align: left;
    padding: 0.5em 3em 0.5em 1em;
  }
  .navigation div.back-to-index a .arrow {
    display: block;
  }
  .navigation div.back-to-index a .arrow:before,
  .navigation div.back-to-index a .arrow:after{
    position: absolute;
    margin: auto;
    content: "";
    vertical-align: middle;
    transition: 1s all ease;
  }
  .navigation div.back-to-index a .arrow:before,
  .navigation div.back-to-index a:hover .arrow:before{
    display: inline-block;
    right: -100px;
    top: calc(50% - 3px);
    width: 6px;
    height: 6px;
    border-top: 2px solid #000;
    border-left: 2px solid #000;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
  }
  .navigation div.back-to-index a .arrow:after,
  .navigation div.back-to-index a:hover .arrow:after{
    display: inline-block;
    right: -100px;
    top: calc(50% - 0px);
    width: 140px;
    height: 2px;
    background-color: #000;
  }
  
  .navigation div.back-to-top a .arrow:before,
  .navigation div.back-to-top a:hover .arrow:before{
    top: -100px;
  }
  .navigation div.back-to-top a .arrow:after,
  .navigation div.back-to-top a:hover .arrow:after{
    top: -100px;
    height: 126px;
  }
  
  .navigation div.btn-more a .arrow:before,
  #ajax-load-more .alm-btn-wrap button.btn-more:before,
  .navigation div.btn-more a:hover .arrow:before,
  #ajax-load-more .alm-btn-wrap button.btn-more:hover:before{
    top: 90px;
  }
  .navigation div.btn-more a .arrow:after,
  #ajax-load-more .alm-btn-wrap button.btn-more:after,
  .navigation div.btn-more a:hover .arrow:after,
  #ajax-load-more .alm-btn-wrap button.btn-more:hover:after{
    height: 80px;
  }
  
}




/*************************************************************************

** 404

**************************************************************************/

.error404 .msg {
  width: 100%;
  margin: 9.3% auto 10.41%;
}
.error404 .msg > h1 {
  font-size: var(--54px);
  letter-spacing: 0.12em;
  line-height: 1.46;
  text-align: center;
}
.error404 .msg .msg-inner > p {
  margin-top: 3.33%;
  font-size: var(--20px);
  letter-spacing: 0.08em;
  text-align: center;
}
.error404 .msg .home_btn {
  justify-content: center;
  margin-top: 5.2%;
}


/* スマホ */
@media screen and (max-width:960px) {

  .error404 .msg {
    margin: 12.5% auto 30%;
  }
  .error404 .msg > h1 {
    font-size: var(--28px);
    letter-spacing: 0.18em;
    line-height: 1.8;
  }
  .error404 .msg .msg-inner > p {
    margin: 5.75% 6% 0;
  }
  .error404 .msg .home_btn {
    margin-top: 9%;
  }

}