@charset "UTF-8";
/*
=======================================================
# 共通
=======================================================
*/
/* body.architect .site-header {
  display: none;
} */
body.architect:not(.logged-in) .keni-mv_wide .keni-mv_outer {
  display: none;
}

body.architect .keni-main_inner {
  margin-top: -88px;
  padding: 0;
} 

body.architect .article-body {
  margin-top: 0;
}
body.architect .keni-section_wrap {
  max-width: none;
  padding: 0;
}
body.architect .behind-article-area {
  display: none;
}
.mincho {
  font-family: "Times New Roman", 游明朝, "Yu Mincho", 游明朝体, YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", HiraMinProN-W3, HGS明朝E, "ＭＳ Ｐ明朝", "MS PMincho", serif;
}

/* ハンバーガーメニュー*/
@media (max-width: 767px){
  body.architect:not(.logged-in) .keni-gnav_wrap {
    position: relative;
  }
  body.architect:not(.logged-in) .keni-gnav_btn {
    background: rgba(0,0,0,0.9);
    right: 20px;
  }
  body.architect:not(.logged-in) .keni-gnav_inner {
    top: 0;
    background: rgba(0,0,0,0.9);
  }
  body.architect:not(.logged-in) .keni-gnav_btn_icon-close::before {
    width: 100%;
  }
  body.architect:not(.logged-in) .login-mobile-menu ul {
      padding-top: 60px;
  }
  body.architect:not(.logged-in) ul.keni-gnav_cont li:not(li.responsive-menu-02,ul.sub-menu li,li.menu-search) {
    background: transparent;
  }
}

/* フッターパネル */
@media (orientation: landscape) and (max-width: 767px){
  .keni-footer-panel_wrap {
    display: none;
  }
}

/*
=======================================================
# メインビジュアル
=======================================================
*/
@media (max-width: 519px){
  .keni-main .keni-section_wrap {
      padding: 0;
  }
  }
  
  
  .main-visual {
    position: relative;
    display: grid;
    place-items: center;
    width: 100%;
    height: 88vh;
    height: 88svh;
    overflow: hidden;
    z-index: 100;
  }
  .main-visual:not(.logged-in .main-visual) {
    z-index: 100;
  }
  .main-visual .overlay {
    background-color: rgba(0, 0, 0, 0.4);
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: 2;
  }
  .main-visual__image {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0;
    animation: slider-1 24s ease-in-out infinite;
  }
  #img_01 {
    animation-delay: -2s;
  }
  #img_02 {
    animation-delay: 4s;
  }
  #img_03 {
    animation-delay: 10s;
  }
  #img_04 {
    animation-delay: 16s;
  }
  @keyframes slider-1 {
    0% {
      opacity: 0;
      transform: scale(1);
    }
    4.16% {
      opacity: 1;
    }
    25.00% {
      opacity: 1;
    }
    41.66% {
      opacity: 0;
      transform: scale(1.2);
    }
    100% {
    opacity: 0;
    }
  }
  
  
  .main-visual__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 30% 84%;
  }
  .main-visual__image img#img-01 {
    object-position: 40% 50%;
  }
  .main-visual__image img#img-02 {
    object-position: 50% 50%;
  }
  
  @media (max-width:767px) {
    .main-visual__image img#img-01 {
      object-position: 0% 50%;
    }
    .main-visual__image img#img-02 {
      object-position: 30% 50%;
    }
    .main-visual__image img#img-03 {
      object-position: 50% 50%;
    }
    .main-visual__image img#img-04 {
      object-position: 30% 50%;
    }
  }
  
  .main-visual .link-box {
    line-height: 1.5;
    position: absolute;
    right: 40px;
    top: 32px;
    white-space: nowrap;
    z-index: 2;
  }

  .main-visual .link-box .sub-title {
    border: 1px solid #fff;
    color: #fff !important;
    font-size: 1.1rem;
    font-weight: 200;
    padding: 4px 16px;
    position: absolute;
    right: 0;
    top:0;
  }
  .main-visual .link-box .sub-title.inactive {
    display: none;
  }
  .main-visual .link-box:hover .sub-title.active {
    display: none;
  }
  .main-visual .link-box:hover .sub-title.inactive {
    display: inline-block;
  }

  .main-visual .login-text {
    position: absolute;
    right: 60px;
    top: 60px;
    z-index: 2;
  }
  .main-visual .login-text a {
    color: #ffffff;
    font-size: 1.1rem;
  }
  .main-visual .login-text a span {
    padding-left: 8px;
  }

  .content-box {
    margin: 0 auto;
    position: absolute;
    top:36%;
    left: 50%;
    -webkit-transform: translate(-50%,0%);
    transform: translate(-50%,0%);
    width: calc(100% - 20px);
    max-width: 1100px;
    z-index: 3;
  }
  .content-box_inner {
    z-index: 2;
  }
  
  .text-box p {
    color: #ffffff;
    font-size: 3.6rem;
    line-height: 1.3;
    margin: 0;
    padding: 0;
    text-align: center;
  }
  .text-box p .text-bold {
    font-size: 5.4rem;
    font-weight: bold;
    line-height: 1.8;
    padding: 0 8px;
}
  .logo-area {
    margin-top: 96px;
    text-align: center;
  }
  .logo-area img {
    width: 520px;
    height: 100px;
  }
  .logo-area p {
    color: #ffffff;
    font-size: 1.6rem;
    text-align: center;
    margin-top: 8px;
    left: -8px;
    position: relative;
}
  .logo-area p .name {
    padding-left: 4px;
  }

  @media (max-width:767px) {
    html {
      margin-top: 0 !important;
    }
    .main-visual .link-box, 
    .main-visual .login-text {
      display: none;
    }
    .content-box {
      max-width: 440px;
    }
    .text-box p {
      font-size: 3.0rem;
      text-align: left;
    }
    .text-box p .text-bold {
      font-size: 4.1rem;
  }
    /* .text-box h1 {
      font-size: 1.9rem !important;
    } */
    .logo-area {
      margin-top: 46px;
  }
    .logo-area img {
      width: 420px;
      height: auto; 
    }
    .logo-area p {
      line-height: 1.6;
      font-size: 1.3rem;
    }
    .main-visual .col4-wrap.navi {
      display: none;
    }
  }
  
  @media (max-width:519px) {
    .content-box {
      top:30%;
      padding: 0 16px;
    }
    .text-box p {
      font-size: 2.4rem;
    }
    .text-box p .text-bold {
      font-size: 3.0rem;
    }
    .logo-area {
      margin-top: 80px;
    }
    .logo-area img {
      width: 320px;
      height: auto;
    }
    .logo-area p {
      max-width: 320px;
      margin: 8px auto;
  }
  }
  @media (max-width:320px) {
    .keni-main_inner {
      margin-top: -58px;
  }
    /* .text-box h1 {
      font-size: 1.2rem !important;
    } */
    .text-box p {
      font-size: 3.2rem;
    }
    .logo-area img {
      width: 240px;
      height: auto;
    }
  }
  
  @media (orientation: landscape) and (max-width: 959px) {
    .content-box {
      top:20%;
    }
    .logo-area {
      margin-top: 32px;
    }
    .scrolldown1 {
      left: 90%;
    }
  }
  
  
  .scrolldown1{
    /*描画位置※位置は適宜調整してください*/
  position:absolute;
  left:50%;
  bottom:10px;
    /*全体の高さ*/
  height:50px;
  z-index: 3;
  }
  
  /*Scrollテキストの描写*/
  .scrolldown1 span{
    /*描画位置*/
  position: absolute;
  left:-15px;
  top: -15px;
    /*テキストの形状*/
  color: #ffffff;
  font-size: 0.7rem;
  letter-spacing: 0.05em;
  }
  
  /* 線の描写 */
  .scrolldown1::after{
  content: "";
    /*描画位置*/
  position: absolute;
  top: 0;
    /*線の形状*/
  width: 1px;
  height: 30px;
  background: #ffffff;
    /*線の動き1.4秒かけて動く。永遠にループ*/
  animation: pathmove 1.4s ease-in-out infinite;
  opacity:0;
  }
  
  /*高さ・位置・透過が変化して線が上から下に動く*/
  @keyframes pathmove{
  0%{
    height:0;
    top:0;
    opacity: 0;
  }
  30%{
    height:30px;
    opacity: 1;
  }
  100%{
    height:0;
    top:50px;
    opacity: 0;
  }
  }
/*
=======================================================
# スクロール
=======================================================
*/
/* .scroll .center-box {
  background-color: #000000;
  color: #ffffff;
}
.scroll .center-box h1 {
  color: #ffffff;
  font-size: 2.4rem !important;
  font-weight: normal;
  line-height: 1.3;
  margin: 24px auto 0;
  text-align: center;
  position: relative;
  display: inline-block;
  padding: 0 55px;
} */
/*
=======================================================
# サービス
=======================================================
*/

/* 共通 */
#service h1 {
  font-size: 2.4rem !important;
  font-weight: normal;
  line-height: 1.3;
  margin: 24px auto 0;
  text-align: center;
  position: relative;
  display: inline-block;
  padding: 0 55px;
}
h1:before, h1:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 45px;
  height: 1px;
  background-color: black;
}

h1:before {
  left:0;
}
h1:after {
  right: 0;
}
#service h3.no-style {
  color: #000000;
  margin-top:120px !important;
  text-align: center;
  font-size: 2.4rem;
  font-weight: normal;
}
/* リードコピー */
#service {
  max-width: 1200px;
  margin: 0 auto;
  padding: 24px 20px 20px;
  display: block;
}
#service .center-box {
  max-width: 920px;
}
#service .center-box h3 {
  font-size: 1.4rem;
  color: #cccccc;
  margin: 0 0 24px;
  font-weight: 600;
}
#service .center-box h4 {
  font-size: calc(28px + 6 * ((100vw - 320px) / 447));
  font-weight: bold;
  line-height: 1.4;
  margin: 0 auto 32px;
  max-width: 660px;
  padding: 0 24px;
  text-align: left;
}
#service .lead-copy {
  font-size: 1.6rem;
  max-width: 900px;
}
@media (min-width: 768px) {
  #service .center-box h4 {
    font-size: 3.4rem;
    text-align: center;
    max-width: 700px;
}
}

#service .center-box ul {
  text-align: left;
  padding: 0 48px 16px;
}
#service .center-box li {
  font-size: 1.8rem;
}
#service .center-box li span {
  padding-right: 8px;
}
.icon-check-square:before {
  content: "\e94a";
}
#service .center-box li span.underline {
  text-decoration: underline 1px wavy #cccccc !important;
  text-underline-offset: 4px;
}

/*
=======================================================
# 用途別カテゴリ―
=======================================================
*/
.use_categorys {
  margin: 0 auto;
  max-width: 900px;
  padding: 0 40px;
}
.use_categorys .center-box {
  max-width: 800px;
}
.use_categorys .top-lead-copy {
  font-size: 2.2rem;
  line-height: 2.0;
  margin-bottom: 40px !important;
  padding: 0 40px;
  text-align: left;
}
.logged-in .top-lead-copy {
  margin-top: 80px;
}
.col4-wrap.use_category {
margin: 0;
}
.use_category .col {
  background: #000000;
  padding: 12px;
  text-align: center;
  margin-bottom: 1%;
}
.use_category .col p {
  line-height: 1.4;
  margin-bottom: 0;
}

.use_category a {
color: #ffffff;
pointer-events: none;

}
/* .use_category a:hover,
.use_category a:active,
.use_category a:focus {
color: #00a0e9 !important;
} */
.use_category P {
margin: 0;
}
.category-name {
  font-size: 1.6rem;
}
.use-category-japanese {
  font-size: 0.8rem;
}
.use_category .button:hover {
letter-spacing: 2px;
}
@media (min-width: 768px){
  .use_categorys {
    padding: 0 20px;
  }
  .col4-wrap > .col {
    width: 23.5% !important;
    margin-right: 1% !important;
}
  .col4-wrap .col:first-child {
    margin-left: 1% !important;
  }
  .col4-wrap > .col:nth-child(4n) {
    margin-right: 1% !important;
  }
  }
  @media (min-width: 480px) {
    .col4-wrap > .col:nth-child(odd) {
      margin-right: 1% !important;
  }
  }

/*
=======================================================
# サービスの特長
=======================================================
*/
#features {
  margin-top: 120px;
}

.features-box {
  height: 520px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}

.features-box .content {
  -ms-flex: 1 1 0%;
  -webkit-flex: 1 1 0%;
  flex: 1 1 0%;
  position: relative;
}
.features-box .feature-number {
  color: #ffffff;
  background: #000000;
  font-size: 14px;
}
.features-box .feature-number {
  height: 50px;
  line-height: 50px;
  min-width: 160px;
  text-align: center;
  display: inline;
  position: absolute;
  top: 0px;
  z-index: 3;
  left: 50%;
  -ms-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
.features-box .content_inner {
  width: 320px;
  position: absolute;
  z-index: 3;
  left: 50%;
  top: 54%;
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.features-box .feature-text {
  color: #ffffff;
  font-size: 2.6rem;
  font-weight: bold;
  line-height: 1.5;
  margin-bottom: 48px;
  padding: 0 8px;
  text-align: left;
}
@media(min-width:387px) {
  .features-box .feature-text.al-l {
    display: none;
}
}
@media(max-width:386px) {
  .features-box .feature-text.al-c {
    display: none;
}

}
.features-box .desc {
  color: #ffffff;
}
html.pc .features-box .content .feature-text {
  opacity: 1;
  top: 0;
  -webkit-transition: all 1.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s, opacity 1.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s;
  transition: all 1.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s, opacity 1.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s;
}
html.pc .features-box .content .desc {
  opacity: 1;
  top: 0;
  -webkit-transition: all 1.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0.6s, opacity 1.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0.6s;
  transition: all 1.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0.6s, opacity 1.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0.6s;
}
.features-box .overlay {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0px;
  left: 0px;
  z-index: 2;
}
.features-box #feature-1 .overlay {
  background-color: rgba(2,118,2,0.6);
}
.features-box #feature-2 .overlay {
  background-color: rgba(221,32,91,0.6);
}
.features-box #feature-3 .overlay {
  background-color: rgba(2,104,141,0.6);
}

.features-box .bg_img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0px;
  left: 0px;
  z-index: 1;
}
.features-box .bg_img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0px;
  left: 0px;
  z-index: 1;
}
@media screen and (max-width: 1151px) {
  .features-box .content_inner {
    width: 100%;
    padding: 0 60px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  html.mobile .features-box .content .catch, 
  html.mobile .features-box .content .desc, 
  html.mobile .features-box .content .design_button {
    opacity: 1;
    top: 0;
    -webkit-transition: all 1.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s, opacity 1.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s;
    transition: all 1.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s, opacity 1.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s;
  }
  .features-box .content .catch {
    font-size: 18px;
  }
}

@media screen and (max-width: 1050px){
  .features-box {
    height: auto;
    display: block;
}
  .features-box .content {
    height: 480px;
  }
  .features-box .content_inner {
    max-width: 400px;
    padding: 0 40px;
  }
}

/* さらに */
#feature-4 {
  margin-top: 80px;
}
#feature-4 .box-text span {
  background-color: #000000;
  color: #f9f9f9;
  padding: 8px 16px;
  margin: 0 8px;
  font-size: 2.4rem;
}
#feature-4 h5 {
  color: #000000;
  font-size: 2.6rem;
  font-weight: bold;
  line-height: 1.6;
  margin: 64px auto;
}

@media (max-width: 768px) {
  #feature-4 h5 {
    max-width: 480px;
    padding: 0 40px;
    text-align: left;
  }
}
/*
=======================================================
# 申し込みボタン  
=======================================================
*/
.request-btn {
  margin: 0 auto;
  padding: 24px 40px;
  text-align: center;
}
.request-btn .simple_square_btn {
  display: inline-block;
  position: relative;
  width: 400px;
  padding: 12px 0 12px 24px;
  text-align: left;
  text-decoration: none;
  color: #ffffff;
  background: #ff3a77;
  border: 1px solid #ff3a77;
  margin: 0 auto;
}

.request-btn-01 a {
  /* display: flex;
  justify-content: space-between;
  align-items: center; */
  position: relative;
  margin: 0 auto;
  padding: 1em 2em;
  width: 400px;
  color: #ffffff;
  font-size: 2.0rem;
  background-color: #ff3a77;
  border: 1px solid #ff3a77;
  transition: 0.3s;
}

.request-btn-01 a::before {
  content: '';
  position: absolute;
  bottom: -7px;
  right: -5px;
  width: 97%;
  height: 2px;
  background-color: rgb(255 58 119 / 70%);
  transition: 0.2s ease 0s;
}

.request-btn-01 a::after {
  content: '';
  position: absolute;
  top: 7px;
  right: -7px;
  width: 2px;
  height: 100%;
  background-color: rgb(255 58 119 / 70%);
  transition: 0.2s ease 0.2s;
}

.request-btn-01 a:hover::before {
  width: 0%;
}

.request-btn-01 a:hover::after {
  height: 0%;
}

.request-btn-01 a:hover {
  text-decoration: none;
  background-color: #ffffff;
}

.label-free-02 {
  background: #ffffff;
  border: 1px solid #ff3a77;
  color: #ff3a77;
  padding: 1px 4px;
  font-size: 1.4rem !important;
  line-height: 1.5;
  margin-bottom: 4px;
  margin-left: 16px;
  vertical-align: middle;
}
.label-free-02:focus,
.label-free-02:hover {
  background: #ff3a77;
  color: #ffffff;
}
@media (max-width:519px) {
  .request-btn-01 a {
    display: block;
    padding: 1em;
    width: auto;
  }
}

/*
=======================================================
# 事例紹介
=======================================================
*/
#posting {
  margin: 120px auto 40px;
}
#posting .center-box {
  max-width: 600px;
}
#posting h3 {
  font-size: 2.4rem;
}
#posting p {
  padding: 0 40px;
  text-align: left;
}
/*
=======================================================
# サービスの流れ
=======================================================
*/
#service-flow {
  margin: 120px auto 0px;
  padding: 80px 20px 80px;
  position: relative;
}
#service-flow .center-box {
  max-width: 1100px;
  position: relative;
  z-index: 3;
}
#service-flow h3 {
  color: #ffffff;
  font-size: 28px;
  line-height: 1.6;
  margin: 0;
  padding: 4px 0;
}
#service-flow .caption {
  color: #ffffff;
  padding: 24px 40px;
  text-align: left;
  margin: 0 auto;
  max-width: 780px;
}
#service-flow .flow-a {
  margin: 24px auto;
  padding-top: 5px;
  width: 140px;
  height: 140px;
  background-color: rgb(255 255 255 / 20%);
  position: relative;
  border: 1px solid #ffffff;
}

#service-flow .flow-b {
  margin: 24px auto;
  padding-top: 5px;
  width: 140px;
  height: 140px;
  background-color: rgb(255 255 255 / 20%);
  position: relative;
  border: 1px dashed rgb(255 255 255 / 100%);
}
#service-flow .flow-a::after,
#service-flow .flow-b::after{
  position: absolute;
  top: 36%;
  margin-left: 80px;
  content: "\e96c";
  color: #ffffff;
  font-family: 'icomoon';
}
#service-flow .last .flow-b::after {
  content: "";
}
#service-flow p.number {
  font-style: italic;
  font-family: heisei-mincho-std, serif;
  font-weight: 300;
  font-size: 2.8rem;
  text-align: center;
  color: #fff;
  margin: 24px auto 12px;
}
#service-flow p.number-b {
  font-style: italic;
  font-family: heisei-mincho-std, serif;
  font-weight: 300;
  font-size: 2.8rem;
  text-align: center;
  color: #fff;
  margin: 24px auto 12px;
}
#service-flow p.flow-text {
  position: relative;
  top: 20%;
  transform: translateY(-50%);
  font-size: 1.3rem;
  text-align: center;
  color: #fff;
  line-height: 1.2;
}
#service-flow p.flow-text-b {
  position: relative;
  top: 20%;
  transform: translateY(-50%);
  font-size: 1.3rem;
  text-align: center;
  color: #fff;
  line-height: 1.2;
}
@media (min-width: 1051px){
  #service-flow .bg_img.tablet {
    display: none;
  }
}
@media (max-width: 1050px){
  #service-flow .col6-wrap {
    margin: 0 auto 1em;
    max-width: 800px;
}
  #service-flow .col6-wrap>.col_ns {
    width: 33.33333333%;
  }
  #service-flow .flow-a::after, 
  #service-flow .flow-b::after {
    margin-left: 74px;
}
#service-flow .bg_img.pc-2 {
  display: none;
}
}
@media (max-width: 519px){
  #service-flow .col6-wrap>.col_ns {
    width: 100%;
  }
  #service-flow .flow-a::after, 
  #service-flow .flow-b::after {
    top: 100%;
    margin-left: -8px;
    content: "\e960";
    font-family: 'icomoon';
}
}

#service-flow .overlay {
  background-color: rgb(198 128 45 / 10%);
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0px;
  left: 0px;
  z-index: 2;
}
#service-flow .bg_img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0px;
  left: 0px;
  z-index: 1;
}


/*
=======================================================
# よくある質問
=======================================================
*/
#faq-list {
  margin: 0 auto 0px;
  padding: 80px 20px 0;
}
#faq-list .center-box {
  max-width: 1100px;
}
#faq-list h3 {
  font-size: 28px;
  line-height: 1.6;
  margin: -0.3em 0;
}
#faq-list .lead-copy {
  font-size: 16px;
  padding: 0 0 14px 40px;
  text-indent: -42px;
}
#faq-list .lead-copy span {
  font-size: 2.8rem;
  padding-right: 8px;
  vertical-align: text-bottom;
}
.faq-check {
  display: none;
}
.faq-label {
  box-sizing: border-box;
  border-left: 1px solid #cccccc;
  border-right: 1px solid #cccccc;
  border-top: 1px solid #cccccc;
  display: flex;
  justify-content: space-between;
  margin: 0 auto;
  padding: 23px 55px 19px 30px;
  text-align: left;
}
#acd-check5 + .faq-label {
  border-bottom: 1px solid #cccccc;
}
.faq-label::after {
  display: flex;
  align-items: center;
  font-family: "icomoon";
  content: "\e960";
  transition: all 0.3s;
}

.faq-content {
  height: 0;
  opacity: 0;
  transition: 0.3s;
  visibility: hidden;
  padding: 0;
  margin: 0 auto;
}
.faq-content p {
  margin: 0;
  padding: 40px 84px 40px 30px;
  word-break: break-all;
}
.faq-content ol {
  margin: 0 0 0 30px;
  padding: 0 84px 0 30px;
}
.faq-content .attention {
  font-size: 1.3rem;
  line-height: 1.6;
  margin-left: 30px;
  text-indent: -18px;
}
.faq-check:checked + .faq-label + .faq-content {
  height: auto;
  opacity: 1;
  padding: 15px 0;
  visibility: visible;
  word-break: break-all;
  background: #f9f9f9;
  border-left: 1px solid #cccccc;
  border-right: 1px solid #cccccc;
  border-top: 1px solid #cccccc;
  text-align: left;
}
#acd-check5.faq-check:checked + .faq-label + .faq-content {
  border-bottom: 1px solid #cccccc;
  border-top: none;
  display: block;
}
#acd-check5.faq-check:checked + .faq-label + .faq-content p {
  padding-bottom: 16px;
}
#acd-check5.faq-check:checked + .faq-label + .faq-content figure {
  padding-left: 40px;
}
.faq-check:checked + .faq-label::after {
  transform: rotate(180deg);
}

@media screen and (max-width: 960px) {
  .faq-label {
      width: 95%;
  }
  .faq-content {
      width: 95%;
  }
  .faq-check:checked + .faq-label + .faq-content {
      padding: 10px 0;
  }
}
/*
=======================================================
# ナビゲーション
=======================================================
*/
#navigation {
  margin: 0px auto;
  padding: 120px 40px 0;
  position: relative;
}
#navigation .center-box {
  max-width: 1100px;
  padding-top: 120px;
  position: relative;
  z-index: 3;
}
#navigation .feature-number {
  color: #ffffff;
  background: #000000;
  font-size: 14px;
}
#navigation .feature-number {
  height: 50px;
  line-height: 50px;
  min-width: 160px;
  text-align: center;
  display: inline;
  position: absolute;
  top: 0px;
  z-index: 3;
  left: 50%;
  -ms-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
.navigation-box {
  max-width: 1100px;
  width: calc(100% - 50px);
  margin: 0 auto;
}

.navigation-banner {
  display: inline-block;
  width: calc(48% - 20px);
  position: relative;
  height: 160px;
  overflow: hidden;
}
.navigation-banner .content {
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 4;
  color: #fff;
  width: 100%;
  padding: 30px 30px 8px;
}
#navigation h3 {
  color: #ffffff;
  font-size: 28px;
  line-height: 1.6;
  margin: 0;
  padding: 4px 0;
}
#navigation h3::before {
  font-family: "icomoon";
  content: "\e905";
  padding-right: 8px;
  vertical-align: text-bottom;
}
#navigation .desc {
  line-height: 1.5;
  margin: 0 0 8px;
}
#navigation .overlay {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,.4);
}
.bg-img {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  background-size: cover!important;
  width: 100%;
  height: 100%;
  transition:1s all;
}
@media (max-width: 959px) {
  .navigation-box {
    width: 100%;
}
  .navigation-banner {
    display: block;
    float: none;
    margin: 0 auto;
    width: 100%;
}
.navigation-banner.right {
  margin-top: 40px;
}
}
@media (min-width: 768px) and (max-width: 959px) {
  #navigation {
    padding: 120px 40px 200px;
  }
}
/*
=======================================================
# 新規登録バナー
=======================================================
*/
#registration-link {
  margin: 120px auto 0px;
  padding: 100px 40px;
  position: relative;
}
#registration-link .center-box {
  max-width: 1000px;
  position: relative;
  z-index: 3;
}
#registration-link .overlay {
  background-color: rgba(0,0,0,0.75);
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0px;
  left: 0px;
  z-index: 2;
}
#registration-link .bg_img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0px;
  left: 0px;
  z-index: 1;
}
#registration-link h4 {
  color: #ffffff;
  font-size: 3.4rem;
  line-height: 1.5;
  padding: 0 0 24px;
}
#registration-link .simple_square_btn {
  padding: 16px 24px 16px 16px;
  text-align: center;
  text-decoration: none;
  color: #fff;
  background: rgb(255 58 119 / 96%);
  border: 1px solid #ff3a77;
  margin: 0 auto;
  border-radius: 0;
  font-size: 1.9rem;
  width: 400px;
}
#registration-link .simple_square_btn::after {
  padding-right: 40px;
}
@media (max-width: 767px) {
  #registration-link .center-box {
    max-width: 540px;
}
  #registration-link h4 {
    text-align: left;
}
}

/*
=======================================================
# 事例紹介
=======================================================
*/
.wp-block-group {
  margin: 0 24px;
}

#professional_post {
  margin: 0 auto;
  max-width: 1000px;
}
#professional_post .entry {
  position: relative;
}
.keni-main .entry-list_style02 .entry_thumb img {
  object-fit: cover;
  object-position: 50% 60%;
  width: revert-layer;
  height: 120px;
}
#professional_post .entry_inner {
  left: -16px;
  position: relative;
}
.entry-list h2.entry_title {
  font-weight: normal;
  font-size: 1.8rem;
}
.entry_status li.entry_category_item {
  border-radius: 0;
  margin-right: 8px;
  padding: 4px 8px;
  font-size: 1.1rem;
}
.entry_status .entry_category li.build {
  background: #ff8e20;
  border: 1px solid #ff8e20;
}
.entry_status .entry_category li.renovation {
  background: #5bc436;
  border: 1px solid #5bc436;
}
.entry_status .entry_category li.reform {
  background: #ed57d1;
  border: 1px solid #ed57d1;
}
.entry_category_item#term_plan_type a {
  color: #ffffff  !important;
}
.post .entry_status .entry_category_item a:hover,
.post .entry_status .entry_category_item a:active,
.post .entry_status .entry_category_item a:focus {
color: #ffffff !important;
opacity: 0.65;
}
.entry_status .entry_date {
  display: none !important;
}

.entry_description,
.ently_read-more {
  display: none !important;
}

/*
=======================================================
# 外部リンク
=======================================================
*/
#external-link {
  margin: 120px auto 80px;
}
.flex_test-box {
  padding: 12px 24px;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.flex_test-item {
  margin:  16px;                  /* 外側の余白 */
}

.flex_test-item a {
  color:  #fff;                   /* 文字色 */
  text-decoration:  none;         /* デフォルトCSS打ち消し */
}

.flex_test-item img {
  vertical-align: middle;
}
/*
=======================================================
# その他
=======================================================
*/
.page-id-19087 .footer-menu {
  margin: 8px auto 24px;
}
/* .footer-menu:not(.logged-in .footer-menu)  {
  display: none;
} */
/* .keni-footer_wrap:not(.logged-in .keni-footer_wrap) {
  display: none;
} */
/*
=======================================================
# テストページ 共通
=======================================================
*/
.keni-section_wrap {
  max-width: none !important;
  padding: 0 !important;
}
.keni-breadcrumb-list_wrap {
  display: none;
}

/*
=======================================================
# モバイル用リンクボタン
=======================================================
*/
@media (max-width:767px) {
  #features {
    margin-top: 0px;
  }
  #navigation {
    padding: 0px 40px 0;
    margin-top: 120px;
  }
}

