/*
Template: homme_tcd107
Theme Name: nodoka_homme_child
Theme URI: https://bright-inc.jp
Author: Bright Inc.
Author URI: https://bright-inc.jp
Description: WordPress Theme for no-do-ka.jp
Version: 1.9.1
License: 2025 copyright Bright inc. all rights reserved.
License URI: https://bright-inc.jp
Tags:
*/

@import url('../homme_tcd107/style.css');

.pc-view {
  display: block;
}
.sp-view {
  display: none;
}

.sp-view img {
  width: 100%;
  vertical-align: top;
}

#nodoka_page_contents {
  margin-top: 40px;
  text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%; /* Safari */
}

@media (max-width: 750px) {
  .pc-view {
    display: none;
  }
  .sp-view {
    display: block;
  }
}

/* ドロワーメニューの表示を確実にする */
@media screen and (max-width: 1250px) {
  #drawer_menu {
    display: block !important;
  }
  .open_drawer_menu #drawer_menu {
    transform: translate3d(0, 0, 0) !important;
    pointer-events: auto !important;
  }
  .open_drawer_menu #drawer_menu_overlay {
    opacity: 1 !important;
    pointer-events: auto !important;
  }
}

@media screen and (max-width: 600px) {
  body:not(.home) .blog_list {
    display: flex !important;
  }
  .cb_blog_carousel_wrap .blog_list .item {
    margin-right: 20px !important;
  }
  .cb_blog_carousel_wrap .blog_list {
    margin: 0 !important;
  }
}

.cb_blog_carousel_button_prev {
  left: -70px !important;
  top: 170px !important;
}

.cb_blog_carousel_button_next {
  right: -70px !important;
  top: 170px !important;
}

.img1200 {
  width: 100%;
  margin: 0 auto;
}

.img1200 img {
  width: 100%;
  max-width: 1200px;
}

#footer .reserve_button {
  display: block;
  border: 1px solid rgba(255, 255, 255, 0.3);
  color: #fff;
  margin-top: 20px;
  padding: 10px 40px;
}

.bg-black {
  background: #000;
}

.nodoka-top-flow {
  background: #fff2ff;
  width: 100%;
  text-align: center;
  padding-bottom: 40px;
}
.nodoka-flow-child {
  padding: 0px 30px;
}
.nodoka-flow-child img {
  padding: 0 20px;
}
.nodoka-flow-child h3 {
  font-size: 1.8rem;
  color: #172a88;
  margin: 0 !important;
  line-height: 1 !important;
}
.nodoka-flow-child p {
  font-size: 1rem;
  font-weight: bold;
  color: #e7327b;
  line-height: 1.2 !important;
}
.nodoka-flow-child span.red {
  color: #c30d23;
  line-height: 1.2 !important;
}

.border-title {
  width: 100%;
  margin: 0 auto !important;
  text-align: center;
}

.border-title img {
  width: 30%;
  margin: 0 auto;
}

@media screen and (max-width: 600px) {
  .nodoka-flow-child h3 {
    font-size: 1rem;
    color: #172a88;
    margin: 0 !important;
    line-height: 1 !important;
  }
  .nodoka-flow-child p {
    font-size: 0.8rem;
    font-weight: bold;
    color: #e7327b;
    line-height: 1.2 !important;
  }
}

/*********** トップページ内スライダー ***********/
.carousel {
  width: 800px;
  height: calc(950px * 0.7);
  position: relative;
  margin: 0 auto;
  overflow: hidden;
  font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体",
    "YuGothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ",
    "Meiryo", "verdana", sans-serif;
}
.carousel-area {
  height: 100%;
  position: absolute;
  display: flex;
}

.carousel-list {
  border: solid 1px #000;
  width: 800px;
  text-align: center;
}

.carousel-list h3 {
  padding: 1rem 0;
  margin-bottom: 20px;
  background: #000;
  color: #fff;
  font-size: 1.5rem;
}

.photo-area {
  width: 700px;
  height: calc(400px * 0.825);
  margin: 0 auto;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.carousel-list p.sub-title {
  margin: 20px 0;
  padding: 10px 20px;
  color: #fa0a6e;
  text-align: left;
  font-size: 1.6rem;
  font-weight: bold;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 800;
  font-style: normal;
}
.carousel-list p.sub-title::before {
  content: "【目的】";
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 800;
  font-style: normal;
}

.carousel-list p.menu-text {
  padding: 0px 20px;
  text-align: left;
  line-height: 2;
  font-weight: lighter;
}

@media screen and (max-width: 600px) {
  .carousel {
    width: 350px;
    height: calc(900px * 0.7);
  }
  .carousel-list {
    width: 350px;
  }
  .photo-area {
    width: 350px;
    height: calc(300px * 0.7625);
    margin-right: 0;
  }
  .carousel-list p.sub-title {
    margin: 10px 0;
    font-size: 1.2rem;
    line-height: 1.5;
  }
}
.photo-space1 {
  background-image: url("/wp-content/uploads/2024/06/fotter_background.jpg");
}
.photo-space2 {
  background-image: url("/wp-content/uploads/2024/07/d12110544.jpg");
}
.photo-space3 {
  background-image: url("/wp-content/uploads/2024/07/d12111093.jpg");
}
.photo-space4 {
  background-image: url("/wp-content/uploads/2024/07/d12110838.jpg");
}
<!--.photo-space5 {
  background-image: url("/wp-content/uploads/2024/06/blog-thum-01.jpg");
}
-- > .carousel-img {
  width: 1px;
  height: 1px;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%);
  margin: -1px;
  padding: 0;
  overflow: hidden;
  position: absolute;
}
/*********** スライド送りボタン ***********/
/* 共有パーツ */
.arow-wrap {
  width: 100%;
  height: 100%;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.arrow-btn {
  width: 60px;
  height: 60px;
  background-color: rgba(248, 23, 211, 0.804);
  border-radius: 50%;
  transition: 0.2s;
  border: none;
}
.arrow-btn:focus {
  box-shadow: 0px 1px 10px -2px rgba(0, 0, 0, 0.2);
}
.arrow-btn:hover {
  background-color: rgb(233, 14, 68);
  box-shadow: 0px 1px 10px -2px rgba(0, 0, 0, 0.2);
}
/* 左 */
.arrow-left {
  position: relative;
}
.arrow-left:before {
  content: "";
  width: 10px;
  height: 10px;
  border-top: 2px solid #fefefe;
  border-left: 2px solid #fefefe;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-30%, -50%) rotate(-45deg);
}
/* 右 */
.arrow-right {
  position: relative;
}
.arrow-right:before {
  content: "";
  width: 10px;
  height: 10px;
  border-top: 2px solid #fefefe;
  border-left: 2px solid #fefefe;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-70%, -50%) rotate(135deg);
}
@media screen and (max-width: 600px) {
  .arrow-btn {
    width: 30px;
    height: 30px;
  }
}
/*********** ページネーション ***********/
.pagination {
  width: 150px;
  margin: 15px auto 0;
  display: flex;
  justify-content: space-around;
}
.pagination-circle {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: rgb(10, 10, 10);
}
/* jsでtargetクラスがついたら背景色を変える */
.pagination-circle.target {
  background-color: rgba(253, 7, 151, 0.804);
}

/*********** トップページ内スライダーここまで ***********/

/*********** 固定ページ用CSS ***********/

.nodoka-wrapper-page {
  width: 100%;
  max-width: 750px;
  margin: 0 auto;
  text-align: center;
}

.nodoka-wrapper-page img {
  vertical-align: top;
  width: 100%;
}

.nodoka-read-text {
  font-size: 2.5rem !important;
  font-weight: bold;
}

.nodoka-exclusive #archive_headline .desc {
  margin-top: 10px !important;
}

.faq_list .item:nth-child(odd) {
  border: 1px solid #bf027a;
  background: #bf027a;
  color: #fff;
}
.faq_list .item:nth-child(even) {
  border: 1px solid #fa96d5;
  background: #fa96d5;
  color: #fff;
}
.faq_list .desc span {
  color: #000;
}

.faq_list .title span {
  color: #fff;
}

@media (max-width: 750px) {
  .nodoka-read-text {
    font-size: 1.5rem !important;
  }
}

.map-field {
  padding: 40px;
}
.map-field span {
  display: inline-block;
  padding: 10px;
  font-size: 1.5rem;
  border-bottom: solid 1px #e4007f;
}

.map-field p {
  display: block;
  padding: 10px;
  line-height: 1.5rem;
}

/*********** お問い合わせページ用CSS ***********/
.required {
  color: #f00;
}

.vmiddle,
.vmiddle td,
.vmiddle th {
  vertical-align: middle !important;
}

.table01 {
  width: 100%;
  border-top: 1px solid #cdcdcd;
  border-left: 1px solid #cdcdcd;
}
.table01 td,
.table01 th {
  border-bottom: 1px solid #cdcdcd;
  border-right: 1px solid #cdcdcd;
  padding: 14px 20px;
  vertical-align: top;
}
.table01 th {
  background: #f4f4f4;
}
.size35 {
  width: 29.16666667%;
}
form .size80,
form .size100 {
  min-width: 230px;
}
.size80 {
  width: 66.66666667%;
}
.size120 {
  width: 100%;
}
.mb-xl {
  margin-bottom: 60px !important;
}
.tcenter {
  text-align: center !important;
}

input[type="submit"] {
  margin-bottom: 20px !important;
}

@media screen and (max-width: 820px) {
  .table01 tr td,
  .table01 tr th {
    padding: 8px 10px;
  }
  .mb-xl {
    display: block;
    padding-bottom: 10px;
  }
}
@media screen and (max-width: 820px) {
  table.table01.sp-break,
  table.table01.sp-break tbody,
  table.table01.sp-break thead,
  table.table01.sp-break tr,
  table.table01.sp-break tr td,
  table.table01.sp-break tr th {
    display: block;
    width: 100%;
  }
}

input[type="text"],
input[type="email"],
select,
textarea {
  padding: 8px;
  border: 1px solid #e5e5e5;
  background-color: #e5e5e5;
  border-radius: 4px;
  box-sizing: border-box;
  resize: vertical;
  margin-bottom: 10px;
}
input[type="submit"] {
  margin: 0 205px;
  padding: 10px 3rem;
  background-color: #545454;
  color: #ffffff;
}
@media print, (max-width: 768px) {
  input[type="text"],
  input[type="email"],
  select,
  textarea {
    width: 100%;
  }
  input[type="submit"] {
    margin: 10px 25%;
  }
}

/* カスタムCSS */
.cb_white_bg{
	padding:60px 0;
}

.video-area{
	width:100%;
	margin:40px auto;
	text-align:center;
}

.nodoka-video{
	width:95%;
	max-width:500px;
}

/**
 * スマホ用固定フッターバーの設定
 */
@media not all and (max-width: 800px) {
  .p-footer-bar { display:none; }
}
body.show_footer_bar { padding-bottom:50px; }


/* フッターバー */
.p-footer-bar { opacity:0; transition: opacity 0.5s ease; position:fixed; bottom:0; z-index:1000; height:50px; width:100%; pointer-events: none; box-shadow: 0 0 10px 1px rgba(0,0,0,0.2); }
.p-footer-bar.is-active { opacity:1; }
.p-footer-bar__inner { overflow: hidden; }
.p-footer-bar__list { width:100%; display:flex; }

.p-footer-bar__item { flex:1 1 0%; }
.p-footer-bar__item-link { display:flex; flex-direction: column; align-items: center; justify-content: flex-end; height:50px; padding-bottom:8px; color:inherit; transition:opacity 0.3s ease; }

/* アニメーション - スライドイン */
html:not(.show-drawer) .p-footer-bar.is-active { pointer-events: auto; }
.p-footer-bar__list { }
html:not(.show-drawer) .p-footer-bar.is-active .p-footer-bar__list {  }

/* タイプ 2 - ダークカラー */
.p-footer-bar--type2 { color:#fff; font-size:10px; background:#000; }
.p-footer-bar--type2 .p-footer-bar__item:not(:first-of-type) { border-left:1px solid rgba(255,255,255,0.3); }

/* タイプ 3 - ライトカラー */
.p-footer-bar--type3 { color:#000; font-size:10px; background:#fafafa; border-top:1px solid #ddd; }
.p-footer-bar--type3 .p-footer-bar__item:not(:first-of-type) { border-left:1px solid #ddd; }

/* タイプ 4 - アイコン無し */
.p-footer-bar--type4 { color:#fff; font-size:12px; background:#000; }
.p-footer-bar--type4 .p-footer-bar__item-link { padding-bottom:0; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }

/* ホバー */
@media (hover: hover) and (pointer: fine) {
  .p-footer-bar__item-link:hover { opacity:0.7; }
}


/* アイコン */
.p-footer-bar .icon_type_google {
  font-family: 'Material Symbols Rounded'; font-weight: 300; font-style: normal; margin:0 0 5px 0;
  font-size: 20px; letter-spacing: normal; text-transform: none;
  display: inline-block; white-space: nowrap; word-wrap: normal; direction: ltr;
  -webkit-font-feature-settings: 'liga'; -webkit-font-smoothing: antialiased;
}
.p-footer-bar .icon_type_sns { font-family: "sns_icon"; font-size:17px; margin:0 0 5px 0; }
.p-footer-bar .icon_type_sns.Twitter { font-size:15px; }
.p-footer-bar .icon_type_sns.Facebook { font-size:19px; }


/* モーダル */
.p-footer-bar__modal {
  position:fixed; top:0; left:0; width:100%; height:100%; z-index:99999;
  display:-webkit-box; display:-ms-flexbox; display:flex;
  -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center;
  -webkit-box-align: end; -ms-flex-align: end; align-items: flex-end;
}
.p-footer-bar__modal:not(.is-active) { display:none; }
.p-footer-bar__modal-share { position:relative; z-index:1; display:-webkit-box; display:-ms-flexbox; display:flex; padding-bottom:150px; }
.p-footer-bar__modal-share-item { width:50px; }
.p-footer-bar__modal-share-item a { display:block; }
.p-footer-bar__modal-share-item + .p-footer-bar__modal-share-item { margin-left:5px; }
.p-footer-bar__modal-overlay { position: absolute; top:0; left:0; width:100%; height:100%; background:rgba(0,0,0,0.5); }
.p-footer-bar__modal-share-item img:not(.c-logo__image) { max-width:100%; height:auto; vertical-align: bottom; }

