/*
Theme Name: Ponopono スマートフォン対応版
Theme URI: 
Description: 小売電気事業向け 一元管理システム「FPポノポノ」公式サイト用テーマ スマートフォン対応版
Author: 
Author URI: 
Version: 2.0
Text Domain: ponopono スマートフォン対応版
*/

/*-------------------------------------
  リセットCSS
-------------------------------------*/
*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html{
	height: 100%;
	scrollbar-width: none;
}

html::-webkit-scrollbar {
    display: none;
}

html,
body {
	width: 100%;
	font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
	color: #1a1a1a;
	line-height: 1.5;
	scroll-behavior: smooth;
    overflow-x: hidden;
	margin: 0 !important;
	background-color: transparent;
	min-width: 1300px;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
  border: 0;
}

ul,
li {
  list-style: none;
}

a {
  text-decoration: none;
  color: inherit;
  cursor: pointer;
}

button {
  border: none;
  cursor: pointer;
  background: none;
  padding: 0;
  font-family: inherit;
}

/* PCでのみ改行を有効にしたい場合 */
.pc-only {
  display: none;
}
@media (min-width: 769px) {
  .pc-only {
    display: inline;
  }
}

/*-------------------------------------
  全体レイアウトの基本設定
-------------------------------------*/
.container {
  margin: 90px auto 0;
}

/*-------------------------------------
  その他の基本設定
-------------------------------------*/
.header-left img:hover, .header-contact-btn:hover, .main-visual-left a:hover, .service-link:hover, .contact-box:hover, .main-visual-btn:hover, .service-footer-left:hover, .service-footer-contact-btn:hover, .wpcf7-submit:hover, .service-about a:hover {
	opacity: 0.8;
}

/*-------------------------------------
  ヘッダー
-------------------------------------*/
.site-header {
	width: 100%;
    background: #FFFFFF;
    position: fixed;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
	z-index: 1000;
    margin: 0;
}
.header-container {
	width: 100%;
    padding: 20px 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto;
	max-width: 1200px;
}

.site-header .header-left {
  display: flex;
  align-items: center;
}

.site-header .header-left img {
  width: 171px; /* 指定：横幅171px、縦自動 */
}

.site-header .header-right {
  display: flex;
  align-items: center;
}

.site-header .header-right a {
  font-size: 16px;
  font-weight: 500;
  color: #1a1a1a;
  margin-right: 30px; /* 各リンク間の余白 */
}

.site-header .header-right a:hover, .footer-menu-col a:hover, .service-footer-right a:hover {
	color: #004E98;
}

.site-header .header-right a:last-child {
	margin-right: 0; /* 最後の要素は余白を消す */
	color: #ffffff;
}

.header-contact-btn {
  /* お問い合わせボタン */
  display: flex;
  align-items: center;
  justify-content: center;
  width: 188px;
  height: 50px;
  border-radius: 25px;
  background: linear-gradient(to right, #004E98, #369AE9);
  color: #FFFFFF;
  font-size: 16px;
  font-weight: 500;
  text-align: center;
  border: none;
}

/*-------------------------------------
  メインビジュアル
-------------------------------------*/
.main-visual {
  width: 100%;
  margin: 0 auto;
}
.main-visual-container {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
    flex-wrap: wrap;
    padding: 50px 0;
    max-width: 1200px;
}
.main-visual-left {
    flex: 1 1 55%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin-bottom: 40px;
}

.main-visual-left h1 {
    font-size: 72px;
    font-weight: 800;
    color: #1a1a1a;
    line-height: 1.2;
    margin-bottom: 15px;
    text-align: center;
}

.main-visual-left h1 span {
    font-size: 40px;
    font-weight: 600;
    color: #004E98;
    line-height: 2.2;
}

.main-visual-left .main-visual-btn, .service-main-visual-container .main-visual-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 350px;
  height: 70px;
  border-radius: 35px;
  background: linear-gradient(to right, #004E98, #369AE9);
  color: #FFFFFF;
  font-size: 20px;
  font-weight: 500;
  text-align: center;
  border: none;
  margin-top: 20px;
}

.main-visual-left .main-visual-btn img, .service-main-visual-container .main-visual-btn img {
  width: 22px;
  height: 22px;
  margin-left: 8px;
}

.main-visual-right {
    flex: 1 1 45%;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}

/*-------------------------------------
  カルーセル
-------------------------------------*/
.carousel {
    width: 420px;
    height: 350px;
    position: relative;
    overflow: hidden;
}

/* 各スライド */
.carousel .slide {
  /* フェードアニメーションを実現するため absolute & opacity */
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;

  /* スライドのレイアウト用に flexを使う（必要に応じて調整） */
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;

  opacity: 0;
  transition: opacity 0.4s ease-in-out; /* 切り替え時のアニメーション速度 */
  z-index: 1; /* activeスライドより下に配置 */
}

/* スライドがアクティブなとき */
.carousel .slide.active {
  opacity: 1;
  z-index: 2; /* 前面に表示 */
}

/* スライド内の画像の調整 */
.carousel img {
    width: auto;
    height: auto;
}

/* Serviceラベルボックス */
.service-label-box {
  display: inline-block;
  padding: 3px 5px;
  border-radius: 3px;
  margin: 0;
}

.slide h4 {
  font-size: 20px;
  font-weight: 500;
  color: #1a1a1a;
  line-height: 1.4;
  margin: 6px 0 10px;
}

.slide h4 span {
    color: #FF7831;
    font-weight: 700;
    font-size: 24px;
}

.slide h5 {
  font-size: 26px;
  font-weight: 800;
  line-height: 1;
  margin-bottom: 5px;
}

.slide hr {
    width: 100%;
    height: 1px;
    border: none;
    margin: 15px 0;
}

/* インジケーター */
.carousel-indicators {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 10px;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
	z-index: 2;
}

.indicator {
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background-color: #D9D9D9;
    margin: 0 10px;
    cursor: pointer;
}

.indicator.active {
  /* JSで data-color を反映 */
}

/*-------------------------------------
  サービスセクション
-------------------------------------*/
.service-section, .service-about {
  width: 100%;
  background-color: #004E98;
  padding: 110px 0;
  margin: 0 auto;
}

.service-section .service-content, .service-about .service-about-container {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  text-align: center;
}

.service-section h2, .service-about h2, .plan-area h2 {
  font-size: 40px;
  font-weight: 800;
  color: #FFFFFF;
  margin-bottom: 10px;
	line-height: 1;
}

.service-section h3, .service-about h3, .plan-area h3 {
    font-size: 30px;
    font-weight: 700;
    color: #80A6CB;
    margin-bottom: 40px;
    line-height: 1;
}
.service-about a {
	color: #004e98;
	text-decoration: underline;
}

/* サービス詳細コンテンツ */
.service-detail-wrapper {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 40px;
}

.service-box {
    width: calc(50% - 20px);
    background-color: #FFFFFF;
    border-radius: 12px;
    padding: 30px 0;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.service-box h4 {
  font-size: 30px;
  font-weight: 700;
  text-align: center;
}

.service-box h5 {
  font-size: 20px;
  font-weight: 600;
  text-align: center;
  margin-bottom: 20px;
}

.service-box p {
  font-size: 20px;
  font-weight: 500;
  color: #1a1a1a;
  line-height: 1.6;
  text-align: center;
  margin-bottom: 20px;
  white-space: pre-line; /* <br>が効くように */
}

.service-box img {
  width: 80%;
  margin-bottom: 20px;
}

.service-box .service-link {
  display: inline-flex;
  align-items: center;
  font-size: 18px;
  font-weight: 500;
  color: #1a1a1a;
}

.service-box .service-link img {
  width: 22px;
  height: 22px;
  margin: 0 0 0 8px;
}

/*-------------------------------------
  アバウトセクション
-------------------------------------*/
.about-section {
  width: 100%;
  background-color: #FFFFFF;
  padding: 110px 0;
  margin: 0 auto;
}

.about-section .about-content {
  max-width: 1200px;
  margin: 0 auto;
  text-align: center;
}

.about-section h2 {
    font-size: 40px;
    font-weight: 800;
    color: #1a1a1a;
    margin-bottom: 15px;
    line-height: 1;
}

.about-section h3 {
    font-size: 30px;
    font-weight: 700;
    color: #80A6CB;
    margin-bottom: 60px;
    line-height: 1;
}

/* アバウト詳細コンテンツ */
.about-detail-wrapper, .service-about-box {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 30px;
}

.about-detail-wrapper .about-left {
    flex: 1 1 45%;
}

.about-detail-wrapper .about-left img. .service-about-box .service-about-box-left img {
  width: 540px;
  max-width: 100%;
}

.about-detail-wrapper .about-right, .service-about-box .service-about-box-right {
    flex: 1 1 55%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    text-align: left;
}

.about-detail-wrapper .about-right h4, .service-about-box .service-about-box-right h4, .bubble h4 {
  font-size: 30px;
  font-weight: 700;
  color: #1a1a1a;
  line-height: 1.4;
  margin-bottom: 20px;
}

.about-detail-wrapper .about-right p, .service-about-box .service-about-box-right p, .bubble p {
  font-size: 18px;
  font-weight: 400;
  color: #1a1a1a;
  line-height: 1.8;
  white-space: pre-line; /* <br>が効くように */
	margin-bottom: 1em;
}

/*-------------------------------------
  お問い合わせセクション
-------------------------------------*/
.contact-section {
  width: 100%;
  background-color: #004E98;
  padding: 110px 0;
  margin: 0 auto;
}

.contact-section .contact-content {
  max-width: 1200px;
  margin: 0 auto;
  text-align: center;
}

.contact-section h2 {
    font-size: 40px;
    font-weight: 800;
    color: #FFFFFF;
    margin-bottom: 15px;
    line-height: 1;
}

.contact-section h3 {
    font-size: 30px;
    font-weight: 700;
    color: #80A6CB;
    margin-bottom: 30px;
    line-height: 1;
}

.contact-section p {
    font-size: 30px;
    font-weight: 500;
    color: #FFFFFF;
    line-height: 1.5;
    margin-bottom: 40px;
    white-space: pre-line;
}

.contact-detail-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 20px;
}

.contact-box {
    background-color: #FFFFFF;
    border-radius: 12px;
    width: calc(33% - 13.3px);
    padding: 30px 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    height: 340px;
}

/* 電話ボックス内要素など */
.contact-box img {
    margin: 0;
    width: 280px !important;
}

.contact-box p {
    font-size: 22px;
    font-weight: 500;
    color: #1a1a1a;
    margin: 15px 0;
    line-height: 1;
}

.contact-box .contact-tel {
    font-size: 40px;
    font-weight: 400;
    color: #1a1a1a;
    margin-bottom: 0;
    line-height: 1.2;
}

.contact-box .contact-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 320px;
  height: 50px;
  border-radius: 25px;
  background: linear-gradient(to right, #004E98, #369AE9);
  font-size: 16px;
  font-weight: 500;
  color: #FFFFFF;
}

/*-------------------------------------
  フッター
-------------------------------------*/
.site-footer {
  width: 100%;
  background-color: #FFFFFF;
  padding: 110px 0;
  margin: 0 auto;
}

.footer-content {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 50px;
}

.footer-left,
.footer-right {
  width: 50%;
  display: flex;
  flex-direction: column;
}

/* 左ボックス（ロゴとメニュー2列） */
.footer-logo {
  margin-bottom: 30px;
}

.footer-menu-wrapper {
  display: flex;
  gap: 50px;
}

.footer-menu-col {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.footer-menu-col a {
  font-size: 16px;
  font-weight: 500;
  color: #1a1a1a;
  text-align: left;
}

.footer-divider {
  width: 1px;
  background-color: #D9D9D9;
  margin: 0 20px;
  height: 160px;
}

/* 会社概要 */
.company-info-table {
  display: table;
  width: 100%;
  border-collapse: collapse;
}

.company-info-row {
  display: table-row;
  margin-bottom: 10px;
}

.company-info-row div {
  display: table-cell;
  padding: 5px 0;
  vertical-align: top;
  font-size: 16px;
  font-weight: 400;
  color: #1a1a1a;
}

.company-info-row div:first-child {
  width: 120px; /* 左側の見出し幅 */
}

.company-info-row div + div {
  padding-left: 10px;
}

.company-info {
	margin-bottom: 0.6em;
    font-weight: 600;
}

/*-------------------------------------
  顧客管理システム
-------------------------------------*/
.service-main-visual-container {
    max-width: 1200px;
    margin: 0 auto 110px;
    text-align: center;
}
.service-main-visual-container img {
	margin: 100px 0 50px;
}
.service-main-visual-container .main-visual-btn img {
    margin: 0 0 0 8px;
}
.service-about-box {
    background-color: #FFFFFF;
    border-radius: 12px;
    padding: 20px 40px;
    align-items: center;
    margin-bottom: 50px;
	gap: 30px;
}
.service-about-box .service-about-box-left {
    flex: 1 1 28%;
}
.service-about-box .service-about-box-right {
    flex: 1 1 72%;
}
.service-about-box .service-about-box-right h4, .bubble h4 {
	color: #FF7831;
	margin-bottom: 15px;
}
.service-about hr, .bubble hr {
	width: 100%;
    border: none;
    border-top: 1px solid #FF7831;
    margin-bottom: 20px;
}
.service-about-pr {
    max-width: 1200px;
    margin: 0 auto 50px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    padding: 0;
    gap: 40px;
}
.service-about-pr-box {
    width: 74%;
}
.bubble {
    position: relative;
    background-color: #FFFFFF;
    border-radius: 12px;
    padding: 25px 40px;
    height: auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: left;
	min-height: 300px;
}
.bubble h4 span {
	font-size: 20px;
}
.bubble-arrow, .bubble-arrow2 {
    position: absolute;
    top: 80px;
    right: -40px;
    width: 0;
    height: 0;
    border-left: 20px solid transparent;
    border-right: 20px solid transparent;
    border-bottom: 40px solid #FFFFFF;
    transform: rotate(90deg);
}
.bubble-arrow2 {
	top: 80px;
    right: 0;
	left: -40px;
	transform: rotate(270deg);
}
.service-about-pr-image {
    width: 26%;
    text-align: center;
}
.service-about-pr-image img {
    width: auto;
    height: auto;
}
.service-about {
	padding: 110px 0 60px;
}
/* -------------------------------------- */
/* 顧客管理システム 料金プラン関連 CSS     */
/* -------------------------------------- */

/* --------------------------------------
   全体・タイトル付近
--------------------------------------- */
.cisplan-section {
    padding: 0;
    background-color: #FFF;
    text-align: center;
    max-width: 1200px;
    margin: 110px auto;
}
.plan-area h2 {
	color: #1a1a1a;
}
.cisplan-description {
    font-weight: 500 !important;
    font-size: 30px !important;
    color: #004E98;
    margin: 40px 0 50px !important;
}

/* aタグの基本 */
.plan-area a {
    text-decoration: none !important;
}
.plan-area a:hover {
    opacity: 0.8 !important;
    color: #FFF !important;
    text-decoration: none !important;
}

/* --------------------------------------
   ポップアップ共通（料金表など）
--------------------------------------- */
.popup-link {
    color: #1967d2;
    text-decoration: underline;
    cursor: pointer;
}
.popup-link:hover {
    color: #1967d2;
    opacity: 0.8;
}

/* 背景全体を覆うオーバーレイ */
.popup-overlay {
    display: none;
    position: fixed !important; /* transformに影響されないよう上書き */
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background-color: rgba(0, 0, 0, 0.5);
    justify-content: center;
    align-items: center;
    z-index: 999999 !important; /* 大きい値に変更 */
}
.popup-content {
    background-color: #fff;
    padding: 50px;
    border-radius: 10px;
    width: 80%;
    max-width: 1000px;
    text-align: left;
    position: relative; /* 閉じるボタンの絶対配置に必要 */
}
.popup-table {
    display: flex;
    justify-content: space-between;
    gap: 20px;
}
.popup-column {
    width: 28%;
}
.popup-column h3 {
    font-size: 24px;
    font-weight: 600;
    color: #004E98;
    margin-bottom: 15px;
}
.popup-column p,
.popup-column .popup-cell {
    font-size: 16px;
    font-weight: 500;
    color: #1A1A1A;
    margin-bottom: 0;
}
.popup-row {
    display: flex;
    justify-content: space-between;
    margin-bottom: 0;
}
.popup-cell {
    width: 50%;
}
.close-button {
    position: absolute;
    top: 10px;
    right: 10px;
    font-size: 24px;
    cursor: pointer;
    color: #004E98;
}

.popup-table.scroll{
	max-height:500px;
	overflow-y:scroll;
}
#popup-overlay .popup-table.header{
  margin-bottom:0 !important;
}
.takuso-storage-length{
	text-align:right;
}

/* ポップアップ内部テキスト調整 */
#popup-overlay p {
    font-weight: 500 !important;
    font-size: 16px !important;
    color: #1A1A1A;
    margin: 0;
}
#popup-overlay .popup-table {
    margin-bottom: 30px !important;
}

/* --------------------------------------
   長期保存のポップアップ (別ID)
--------------------------------------- */
.longterm-popup-overlay {
    display: none;
    position: fixed !important; /* transformに影響されないよう上書き */
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background-color: rgba(0, 0, 0, 0.5);
    justify-content: center;
    align-items: center;
    z-index: 999999 !important; /* 大きい値に変更 */
}
.longterm-popup-content {
    background-color: #fff;
    padding: 50px;
    border-radius: 10px;
    width: 80%;
    max-width: 800px;
    text-align: left;
    position: relative; /* 閉じるボタンの絶対配置に必要 */
}
.longterm-popup-table {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.longterm-popup-column {
    width: 100%;
    margin-bottom: 30px;
}
.longterm-popup-row {
    display: flex;
    justify-content: flex-start;
    margin-bottom: 0;
}
.longterm-popup-cell {
    width: 20%;
    font-size: 16px;
    font-weight: 500;
    color: #1A1A1A;
}
.longterm-popup-overlay .close-button {
    position: absolute;
    top: 10px;
    right: 10px;
    font-size: 24px;
    cursor: pointer;
    color: #004E98;
}

/* ポップアップ内部テキスト */
#longterm-popup-overlay p {
    font-weight: 500 !important;
    font-size: 16px !important;
    color: #1A1A1A;
    margin: 0;
}

/* --------------------------------------
   料金プラン表 (unique-plan-block)
--------------------------------------- */
.unique-plan-block {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    line-height: 1;
}
.unique-plan-block .small-text {
    text-align: left;
    padding-left: 1%;
    line-height: 1.4;
}

.unique-plan-row {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 0;
    gap: 10px;
    justify-content: space-between;
}
.unique-plan-col {
    box-sizing: border-box;
    margin-right: 0;
    text-align: left;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    line-height: 1.4;
}
.unique-plan-row .unique-plan-col:nth-child(1) {
    width: 420px;
    padding-left: 1%;
}
.unique-plan-row .unique-plan-col:nth-child(n+2) {
    width: 185px;
}
.unique-plan-col:nth-last-child(1) {
    margin-right: 0;
}

/* マウスホバー時リンク色 */
.unique-plan-row a:hover {
    color: #1967d2 !important;
}

/* ---------- 1行目 ---------- */
.plan-row-1 {
    height: 60px;
    color: #FFFFFF;
    font-size: 24px;
    font-weight: 600;
    text-align: center;
}
.plan-row-1 .unique-plan-col {
    justify-content: center;
    background-color: #004E98;
    padding-left: 0 !important;
}

/* ---------- 2行目 ---------- */
.plan-row-2 {
    background-color: #FFFFFF;
    color: #1A1A1A;
    font-size: 18px;
    font-weight: 400;
    text-align: left;
    padding: 20px 0 25px;
    line-height: 1.4;
}
.plan-row-2 .unique-plan-col {
    align-items: flex-start;
}

/* ---------- 3行目（横線） ---------- */
.plan-row-3 {
    padding-bottom: 25px;
}
.plan-row-3 .unique-plan-col {
    align-items: center;
    justify-content: center;
    padding-left: 0 !important;
}
.plan-row-3 hr {
    width: 100%;
    border: none;
    border-bottom: 1px solid #DDDDDD;
    margin: 0;
}

/* ---------- 4行目 ---------- */
.plan-row-4 {
    height: 40px;
    color: #1A1A1A;
    text-align: center;
}
.plan-row-4 .unique-plan-col:nth-child(1) {
    font-size: 16px;
    font-weight: 600;
    padding-left: 0 !important;
}
.plan-row-4 .unique-plan-col:nth-child(n+2) {
    font-size: 22px;
    font-weight: 700;
}
.plan-row-4 .unique-plan-col {
    justify-content: center;
    background-color: #F1F5F9;
}

/* ---------- 5行目 ---------- */
.plan-row-5 {
    background-color: #FFFFFF;
    color: #1A1A1A;
    font-size: 14px;
    font-weight: 400;
    text-align: left;
    padding: 20px 0 30px;
    line-height: 1.4;
}
.plan-row-5 .unique-plan-col {
    align-items: flex-start;
}

/* ---------- 6行目（横線） ---------- */
.plan-row-6 {
    padding-bottom: 0;
}
.plan-row-6 .unique-plan-col {
    justify-content: center;
    padding-left: 0 !important;
}
.plan-row-6 hr {
    width: 100%;
    border: none;
    border-bottom: 1px solid #DDDDDD;
    margin: 0;
}

/* ---------- 7行目 ---------- */
.plan-row-7 {
    background-color: #FFFFFF;
    color: #1A1A1A;
    font-size: 20px;
    font-weight: 600;
    text-align: left;
    padding: 20px 0;
}
.plan-row-7 .unique-plan-col {
    align-items: flex-start;
}

/* ---------- 8行目 ---------- */
.plan-row-8 {
    height: 40px;
    color: #1A1A1A;
    font-size: 16px;
    font-weight: 600;
    text-align: center;
    margin-bottom: 10px;
}
.plan-row-8 .unique-plan-col {
    justify-content: left;
    background-color: #F1F5F9;
}

/* ---------- 9～14行目 (共通) ---------- */
.plan-row-9, .plan-row-10, .plan-row-11, .plan-row-12, .plan-row-13, .plan-row-14 {
    background-color: #FFFFFF;
    font-size: 14px;
    font-weight: 400;
    padding: 10px 0;
    color: #1A1A1A;
    text-align: left;
}
.plan-row-9 .unique-plan-col:nth-child(1),
.plan-row-10 .unique-plan-col:nth-child(1),
.plan-row-11 .unique-plan-col:nth-child(1),
.plan-row-12 .unique-plan-col:nth-child(1),
.plan-row-13 .unique-plan-col:nth-child(1),
.plan-row-14 .unique-plan-col:nth-child(1) {
    align-items: flex-start;
}
.plan-row-9 .unique-plan-col:nth-child(n+2),
.plan-row-10 .unique-plan-col:nth-child(n+2),
.plan-row-11 .unique-plan-col:nth-child(n+2),
.plan-row-12 .unique-plan-col:nth-child(n+2),
.plan-row-13 .unique-plan-col:nth-child(n+2),
.plan-row-14 .unique-plan-col:nth-child(n+2) {
    justify-content: center;
}
/* アイコン（fa-check）サイズ・色 */
.plan-row-9 i, .plan-row-10 i, .plan-row-11 i, .plan-row-12 i, .plan-row-13 i, .plan-row-14 i {
    font-size: 16px;
    color: #004E98;
}

/* ---------- 15行目 ---------- */
.plan-row-15 {
    height: 40px;
    color: #1A1A1A;
    font-size: 16px;
    font-weight: 600;
    text-align: center;
    margin: 20px 0 10px;
}
.plan-row-15 .unique-plan-col {
    justify-content: left;
    background-color: #F1F5F9;
}

/* ---------- 16～21行目 (共通) ---------- */
.plan-row-16, .plan-row-17, .plan-row-18, .plan-row-19, .plan-row-20, .plan-row-21 {
    background-color: #FFFFFF;
    font-size: 14px;
    font-weight: 400;
    padding: 10px 0;
    color: #1A1A1A;
    text-align: left;
}
.plan-row-16 .unique-plan-col:nth-child(1),
.plan-row-17 .unique-plan-col:nth-child(1),
.plan-row-18 .unique-plan-col:nth-child(1),
.plan-row-19 .unique-plan-col:nth-child(1),
.plan-row-20 .unique-plan-col:nth-child(1),
.plan-row-21 .unique-plan-col:nth-child(1) {
    align-items: flex-start;
}
.plan-row-16 .unique-plan-col:nth-child(n+2),
.plan-row-17 .unique-plan-col:nth-child(n+2),
.plan-row-18 .unique-plan-col:nth-child(n+2),
.plan-row-19 .unique-plan-col:nth-child(n+2),
.plan-row-20 .unique-plan-col:nth-child(n+2),
.plan-row-21 .unique-plan-col:nth-child(n+2) {
    justify-content: center;
}
.plan-row-16 i, .plan-row-17 i, .plan-row-18 i, .plan-row-19 i, .plan-row-20 i, .plan-row-21 i {
    font-size: 16px;
    color: #004E98;
}

/* ---------- 22行目 ---------- */
.plan-row-22 {
    height: 40px;
    color: #1A1A1A;
    font-size: 16px;
    font-weight: 600;
    text-align: center;
    margin: 20px 0 10px;
}
.plan-row-22 .unique-plan-col {
    justify-content: left;
    background-color: #F1F5F9;
}

/* ---------- 23～24行目 ---------- */
.plan-row-23, .plan-row-24 {
    background-color: #FFFFFF;
    font-size: 14px;
    font-weight: 400;
    padding: 10px 0;
    color: #1A1A1A;
    text-align: left;
}
.plan-row-23 .unique-plan-col:nth-child(1),
.plan-row-24 .unique-plan-col:nth-child(1) {
    align-items: flex-start;
}
.plan-row-23 .unique-plan-col:nth-child(n+2),
.plan-row-24 .unique-plan-col:nth-child(n+2) {
    justify-content: center;
}
.plan-row-23 i, .plan-row-24 i {
    font-size: 16px;
    color: #004E98;
}

/* ---------- 25～28行目 ---------- */
.plan-row-25, .plan-row-26, .plan-row-27, .plan-row-28 {
    height: 40px;
    color: #1A1A1A;
    font-size: 16px;
    font-weight: 600;
    text-align: center;
    margin: 20px 0 10px;
}
.plan-row-26 {
    height: auto;
    margin: 0 0 10px;
}
.plan-row-27, .plan-row-28 {
    margin: 0 0 10px;
}
.plan-row-25 .unique-plan-col,
.plan-row-26 .unique-plan-col,
.plan-row-27 .unique-plan-col,
.plan-row-28 .unique-plan-col {
    justify-content: left;
    background-color: #F1F5F9;
}
.plan-row-26 .unique-plan-col {
    line-height: 1.4;
    padding: 10px 0;
}
.plan-row-25 .unique-plan-col:nth-child(n+2),
.plan-row-26 .unique-plan-col:nth-child(n+2),
.plan-row-27 .unique-plan-col:nth-child(n+2),
.plan-row-28 .unique-plan-col:nth-child(n+2) {
    justify-content: center;
}
.plan-row-25 i, .plan-row-26 i, .plan-row-27 i, .plan-row-28 i {
    font-size: 16px;
    color: #004E98;
}

/* ---------- 29行目 ---------- */
.plan-row-29 {
    height: 40px;
    color: #1A1A1A;
    font-size: 16px;
    font-weight: 600;
    text-align: center;
    margin: 0 0 10px;
}
.plan-row-29 .unique-plan-col {
    justify-content: left;
    background-color: #F1F5F9;
}

/* ---------- 30～40行目 ---------- */
.plan-row-30, .plan-row-31, .plan-row-32, .plan-row-33, .plan-row-34, .plan-row-35,
.plan-row-36, .plan-row-37, .plan-row-38, .plan-row-39, .plan-row-40 {
    background-color: #FFFFFF;
    font-size: 14px;
    font-weight: 400;
    padding: 10px 0;
    color: #1A1A1A;
    text-align: left;
}
.plan-row-30 .unique-plan-col:nth-child(1),
.plan-row-31 .unique-plan-col:nth-child(1),
.plan-row-32 .unique-plan-col:nth-child(1),
.plan-row-33 .unique-plan-col:nth-child(1),
.plan-row-34 .unique-plan-col:nth-child(1),
.plan-row-35 .unique-plan-col:nth-child(1),
.plan-row-36 .unique-plan-col:nth-child(1),
.plan-row-37 .unique-plan-col:nth-child(1),
.plan-row-38 .unique-plan-col:nth-child(1),
.plan-row-39 .unique-plan-col:nth-child(1),
.plan-row-40 .unique-plan-col:nth-child(1) {
    align-items: flex-start;
}
.plan-row-30 .unique-plan-col:nth-child(n+2),
.plan-row-31 .unique-plan-col:nth-child(n+2),
.plan-row-32 .unique-plan-col:nth-child(n+2),
.plan-row-33 .unique-plan-col:nth-child(n+2),
.plan-row-34 .unique-plan-col:nth-child(n+2),
.plan-row-35 .unique-plan-col:nth-child(n+2),
.plan-row-36 .unique-plan-col:nth-child(n+2),
.plan-row-37 .unique-plan-col:nth-child(n+2),
.plan-row-38 .unique-plan-col:nth-child(n+2),
.plan-row-39 .unique-plan-col:nth-child(n+2),
.plan-row-40 .unique-plan-col:nth-child(n+2) {
    justify-content: center;
}
.plan-row-30 i, .plan-row-31 i, .plan-row-32 i, .plan-row-33 i, .plan-row-34 i, .plan-row-35 i,
.plan-row-36 i, .plan-row-37 i, .plan-row-38 i, .plan-row-39 i, .plan-row-40 i {
    font-size: 16px;
    color: #004E98;
}

/* ---------- 41～42行目 ---------- */
.plan-row-41, .plan-row-42 {
    height: 40px;
    color: #1A1A1A;
    font-size: 16px;
    font-weight: 600;
    text-align: center;
    margin: 20px 0 10px;
}
.plan-row-42 {
    margin: 0 0 10px;
}
.plan-row-41 .unique-plan-col, .plan-row-42 .unique-plan-col {
    justify-content: left;
    background-color: #F1F5F9;
}
.plan-row-41 .unique-plan-col:nth-child(n+2),
.plan-row-42 .unique-plan-col:nth-child(n+2) {
    justify-content: center;
}
.plan-row-41 i {
    font-size: 16px;
    color: #004E98;
}
.plan-row-42 .unique-plan-col:nth-child(n+2) {
    font-size: 14px;
    font-weight: 400;
}

/* --------------------------------------
   43～49行目周り（基本設定料金・オプション等）
--------------------------------------- */
/* 43行目：基本設定料金 */
.plan-row-43 {
    height: 60px;
    background-color: #004E98;
    color: #FFFFFF;
    font-size: 24px;
    font-weight: 600;
    text-align: left;
    display: flex;
    align-items: center;
    padding-left: 15px;
    margin-top: 50px;
}
.plan-row-43 .unique-plan-col {
    width: 100%;
    justify-content: flex-start;
    padding-left: 0 !important;
}

/* 44～47行目、49行目：2カラム構成 */
.plan-row-44,
.plan-row-45,
.plan-row-46,
.plan-row-47,
.plan-row-49 {
    background-color: #FFFFFF;
    padding: 0 0 15px;
    display: flex;
    flex-wrap: wrap;
}
.plan-row-44, .plan-row-49 {
    padding: 20px 0 15px;
}
.plan-row-44 .unique-plan-col,
.plan-row-45 .unique-plan-col,
.plan-row-46 .unique-plan-col,
.plan-row-47 .unique-plan-col,
.plan-row-49 .unique-plan-col {
    display: flex;
    align-items: flex-start;
    color: #1A1A1A;
    text-align: left;
}
/* カラム1：幅380px、16px/600 */
.plan-row-44 .unique-plan-col:nth-child(1),
.plan-row-45 .unique-plan-col:nth-child(1),
.plan-row-46 .unique-plan-col:nth-child(1),
.plan-row-47 .unique-plan-col:nth-child(1),
.plan-row-49 .unique-plan-col:nth-child(1) {
    width: 380px;
    font-size: 16px;
    font-weight: 600;
}
/* カラム2：幅780px、14px/400 */
.plan-row-44 .unique-plan-col:nth-child(2),
.plan-row-45 .unique-plan-col:nth-child(2),
.plan-row-46 .unique-plan-col:nth-child(2),
.plan-row-47 .unique-plan-col:nth-child(2),
.plan-row-49 .unique-plan-col:nth-child(2) {
    width: 780px;
    font-size: 14px;
    font-weight: 400;
}

/* 48行目・50行目：区切りタイトル */
.plan-row-48, .plan-row-50 {
    height: 60px;
    background-color: #004E98;
    color: #FFFFFF;
    font-size: 24px;
    font-weight: 600;
    text-align: left;
    display: flex;
    align-items: center;
    padding-left: 15px;
    margin-top: 40px;
}
.plan-row-48 .unique-plan-col, .plan-row-50 .unique-plan-col {
    width: 100% !important;
    justify-content: flex-start;
    padding-left: 0 !important;
}

/* --------------------------------------
   備考欄・小さい文字など
--------------------------------------- */
.pricing-item {
    display: flex;
    justify-content: space-between;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 14px;
    color: #1A1A1A;
    margin-bottom: 0;
}
.small-text {
    font-size: 12px;
    color: #666;
}

/* --------------------------------------
   動画エリア
--------------------------------------- */
.about-video-area {
    width: 1200px;
    background-color: #F1F5F9;
    margin: 0 auto;
    padding: 50px 0;
}
.about-video {
    display: inline-block;
    max-width: 100%;
}
.about-video video {
    max-width: 100%;
    height: auto;
}

/* --------------------------------------
   区切り線
--------------------------------------- */
.divider {
    margin: 30px 0;
    border: none;
    border-top: 1px solid #DDD;
}

.page-template-cis-page .footer-right, .page-template-cis-page .footer-divider {
	display: none;
}

/* --------------------------------------
   サービスフッター
--------------------------------------- */
.service-footer {
	width: 100%;
    background: #FFFFFF;
	margin: 0;
}
.service-footer-container {
	width: 100%;
    padding: 20px 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto;
    max-width: 1200px;
}
.service-footer-left img {
	width: 171px;
}
.service-footer-right {
	display: flex;
    align-items: center;
}
.service-footer-right a {
	font-size: 16px;
    font-weight: 500;
    color: #1a1a1a;
    margin-right: 30px;
}
.service-footer-contact-btn {
	display: flex;
    align-items: center;
    justify-content: center;
    width: 188px;
    height: 50px;
    border-radius: 25px;
    background: linear-gradient(to right, #004E98, #369AE9);
    color: #FFFFFF;
    font-size: 16px;
    font-weight: 500;
    text-align: center;
    border: none;
}
.service-footer-right a:last-child {
    margin-right: 0;
    color: #ffffff;
}

/************************************
** 託送・発電管理システム料金リニューアル（250116）
************************************/

/* ラップ全体 */
#tokusou-services .unique-plan-block {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  line-height: 1;
}

#tokusou-services .unique-plan-block .small-text, #tokusou-services .choice-of-options .small-text {
	text-align: left;
	padding-left: 1%;
    line-height: 1.4;
}

/* 各行のベーススタイル */
#tokusou-services .unique-plan-row {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 0;
  gap: 10px;
  justify-content: space-between;
}

#tokusou-services .unique-plan-col {
  box-sizing: border-box;
  margin-right: 0;
  text-align: left;
  display: flex;
  align-items: center;
  justify-content: flex-start;
	line-height: 1.4;
}

#tokusou-services .unique-plan-row .unique-plan-col:nth-child(1) {
  width: 432px;
  padding-left: 1%;
	padding-right: 1%;
}

#tokusou-services .unique-plan-row .unique-plan-col:nth-child(n+2) {
  width: 246px;
}

#tokusou-services .unique-plan-col:nth-last-child(1) {
  margin-right: 0;
}

#tokusou-services .unique-plan-row a:hover {
	color: #1967d2 !important;
}

/************************************
** 行ごとのスタイル指定
************************************/

/* 1行目 */
#tokusou-services .plan-row-1 {
  height: 60px;
  color: #FFFFFF;
  font-size: 24px;
  font-weight: 600;
  text-align: center;
}

#tokusou-services .plan-row-1 .unique-plan-col {
  justify-content: center;
  background-color: #FF7831;
	padding-left: 0 !important;
}

/* 2行目 */
#tokusou-services .plan-row-2 {
  background-color: #FFFFFF;
  color: #1A1A1A;
  font-size: 18px;
  font-weight: 400;
  text-align: left;
  padding: 20px 0 25px;
  line-height: 1.4;
}

#tokusou-services .plan-row-2 .unique-plan-col {
  align-items: flex-start;
}

#tokusou-services .plan-row-2 .unique-plan-col a {
  color: #FF7831;
}

#tokusou-services .plan-row-2 .unique-plan-col:nth-child(n+3) {
    display: block;
}

/* 3行目（横線） */
#tokusou-services .plan-row-3 {
  padding-bottom: 25px;
}

#tokusou-services .plan-row-3 .unique-plan-col {
  align-items: center;
  justify-content: center;
	padding-left: 0 !important;
}

#tokusou-services .plan-row-3 hr {
  width: 100%;
  border: none;
  border-bottom: 1px solid #DDDDDD;
  margin: 0;
}

/* 4行目 */
#tokusou-services .plan-row-4 {
  height: 40px;
  color: #1A1A1A;
  text-align: center;
}

#tokusou-services .plan-row-4 .unique-plan-col:nth-child(1) {
  font-size: 16px;
  font-weight: 600;
	padding-left: 0 !important;
}

#tokusou-services .plan-row-4 .unique-plan-col:nth-child(n+2) {
  font-size: 22px;
  font-weight: 700;
}

#tokusou-services .plan-row-4 .unique-plan-col {
  justify-content: center;
  background-color: #FCF5EE;
}

#tokusou-services .popup-link {
	color: #FF7831;
}

#tokusou-services .unique-plan-col a:hover {
	color: #FF7831 !important;
}

/* 5行目 */
#tokusou-services .plan-row-5 {
  background-color: #FFFFFF;
  color: #1A1A1A;
  font-size: 14px;
  font-weight: 400;
  text-align: left;
  padding: 20px 0 30px;
  line-height: 1.4;
}

#tokusou-services .plan-row-5 .unique-plan-col {
  align-items: flex-start;
}

/* 6行目（横線） */
#tokusou-services .plan-row-6 {
  padding-bottom: 0;
}

#tokusou-services .plan-row-6 .unique-plan-col {
  justify-content: center;
	padding-left: 0 !important;
}

#tokusou-services .plan-row-6 hr {
  width: 100%;
  border: none;
  border-bottom: 1px solid #DDDDDD;
  margin: 0;
}

/* 7行目 */
#tokusou-services .plan-row-7 {
  background-color: #FFFFFF;
  color: #1A1A1A;
  font-size: 20px;
  font-weight: 600;
  text-align: left;
  padding: 20px 0;
}

#tokusou-services .plan-row-7 .unique-plan-col {
  align-items: flex-start;
}

/* 8行目 */
#tokusou-services .plan-row-8 {
  height: 40px;
  color: #1A1A1A;
  font-size: 16px;
  font-weight: 600;
  text-align: center;
  margin-bottom: 10px;
}

#tokusou-services .plan-row-8 .unique-plan-col {
  justify-content: left;
  background-color: #FCF5EE;
}

/* 9～12行目（共通） */
#tokusou-services .plan-row-9, .plan-row-10, .plan-row-11, .plan-row-12 {
  background-color: #FFFFFF;
  font-size: 14px;
  font-weight: 400;
  padding: 10px 0;
  color: #1A1A1A;
  text-align: left;
}

#tokusou-services .plan-row-9 .unique-plan-col:nth-child(1),
#tokusou-services .plan-row-10 .unique-plan-col:nth-child(1),
#tokusou-services .plan-row-11 .unique-plan-col:nth-child(1),
#tokusou-services .plan-row-12 .unique-plan-col:nth-child(1) {
  align-items: flex-start;
}

#tokusou-services .plan-row-9 .unique-plan-col:nth-child(n+2),
#tokusou-services .plan-row-10 .unique-plan-col:nth-child(n+2),
#tokusou-services .plan-row-11 .unique-plan-col:nth-child(n+2),
#tokusou-services .plan-row-12 .unique-plan-col:nth-child(n+2) {
  justify-content: center;
}

/* アイコンサイズ・色 */
#tokusou-services .plan-row-9 i, #tokusou-services .plan-row-10 i, #tokusou-services .plan-row-11 i, #tokusou-services .plan-row-12 i {
  font-size: 16px;
  color: #FF7831;
}


/* 13～14行目 */
#tokusou-services .plan-row-13, #tokusou-services .plan-row-14 {
  height: 40px;
  color: #1A1A1A;
  font-size: 16px;
  font-weight: 600;
  text-align: center;
  margin-bottom: 10px;
	padding: 0;
}

#tokusou-services .plan-row-13 {
	margin-top: 20px;
}

#tokusou-services .plan-row-13 .unique-plan-col, #tokusou-services .plan-row-14 .unique-plan-col {
  justify-content: center;
  background-color: #FCF5EE;
}

#tokusou-services .plan-row-13 .unique-plan-col:nth-child(1), #tokusou-services .plan-row-14 .unique-plan-col:nth-child(1) {
  justify-content: flex-start;
  background-color: #FCF5EE;
}

#tokusou-services .plan-row-13 i, #tokusou-services .plan-row-14 i {
  font-size: 16px;
  color: #FF7831;
}

#tokusou-services .plan-row-15 {
    height: auto;
    margin: 0 0 10px;
}

#tokusou-services .plan-row-15 .unique-plan-col {
    line-height: 1.4;
    padding: 10px 0;
    justify-content: center;
    background-color: #FCF5EE;
}

#tokusou-services .plan-row-15 i {
    font-size: 16px;
    color: #FF7831;
}

#tokusou-services .plan-row-16 {
    height: 40px;
    color: #1A1A1A;
    font-size: 16px;
    font-weight: 600;
    text-align: center;
    margin: 0 0 10px;
	padding: 0;
}

#tokusou-services .plan-row-16 .unique-plan-col {
    justify-content: left;
    background-color: #FCF5EE;
}

#tokusou-services .plan-row-17, .plan-row-18, .plan-row-19, .plan-row-20 {
  background-color: #FFFFFF;
  font-size: 14px;
  font-weight: 400;
  padding: 10px 0;
  color: #1A1A1A;
  text-align: left;
}

#tokusou-services .plan-row-17 .unique-plan-col:nth-child(1),
#tokusou-services .plan-row-18 .unique-plan-col:nth-child(1),
#tokusou-services .plan-row-19 .unique-plan-col:nth-child(1),
#tokusou-services .plan-row-20 .unique-plan-col:nth-child(1) {
  align-items: flex-start;
}

#tokusou-services .plan-row-17 .unique-plan-col:nth-child(n+2),
#tokusou-services .plan-row-18 .unique-plan-col:nth-child(n+2),
#tokusou-services .plan-row-19 .unique-plan-col:nth-child(n+2),
#tokusou-services .plan-row-20 .unique-plan-col:nth-child(n+2) {
  justify-content: center;
}

/* アイコンサイズ・色 */
#tokusou-services .plan-row-17 i, #tokusou-services .plan-row-18 i, #tokusou-services .plan-row-19 i, #tokusou-services .plan-row-20 i {
  font-size: 16px;
  color: #FF7831;
}

#tokusou-services .plan-row-21 {
    height: 40px;
    color: #1A1A1A;
    font-size: 16px;
    font-weight: 600;
    text-align: center;
    margin: 20px 0 10px;
	padding: 0;
}

#tokusou-services .plan-row-21 .unique-plan-col {
    justify-content: left;
    background-color: #FCF5EE;
}

#tokusou-services .plan-row-22, #tokusou-services .plan-row-23 {
  background-color: #FFFFFF;
  font-size: 14px;
  font-weight: 400;
  padding: 10px 0;
  color: #1A1A1A;
  text-align: left;
	margin: 0;
}

#tokusou-services .plan-row-22 .unique-plan-col {
    justify-content: left;
    background-color: #FFFFFF;
}

#tokusou-services .plan-row-22 .unique-plan-col:nth-child(1),
#tokusou-services .plan-row-23 .unique-plan-col:nth-child(1) {
  align-items: flex-start;
}

#tokusou-services .plan-row-22 .unique-plan-col:nth-child(n+2),
#tokusou-services .plan-row-23 .unique-plan-col:nth-child(n+2) {
  justify-content: center;
}

/* アイコンサイズ・色 */
#tokusou-services .plan-row-22 i, #tokusou-services .plan-row-23 i {
  font-size: 16px;
  color: #FF7831;
}

#tokusou-services .plan-row-24 {
    height: auto;
    margin: 20px 0 10px;
	font-size: 16px;
    font-weight: 600;
	padding: 0;
}

#tokusou-services .plan-row-24 .unique-plan-col {
    line-height: 1.4;
    padding: 10px 0;
    justify-content: center;
    background-color: #FCF5EE;
}

#tokusou-services .plan-row-24 i {
    font-size: 16px;
    color: #FF7831;
}

.choice-of-options {
	width: 1200px;
	margin: 60px auto 0;
    padding: 50px 0;
    border-top: 4px solid #FF7831;
	padding: 20px 0 60px;
}

.choice-of-options {
	color: #FF7831;
	font-size: 23px;
	font-weight: 600;
}

#tokusou-services .plan-row-25 {
    height: auto;
    margin: 20px 0 10px;
    font-size: 16px;
    font-weight: 600;
    padding: 0;
}

#tokusou-services .plan-row-25 .unique-plan-col, #tokusou-services .plan-row-26 .unique-plan-col, #tokusou-services .plan-row-27 .unique-plan-col, #tokusou-services .plan-row-28 .unique-plan-col, #tokusou-services .plan-row-29 .unique-plan-col, #tokusou-services .plan-row-30 .unique-plan-col, #tokusou-services .plan-row-31 .unique-plan-col, #tokusou-services .plan-row-32 .unique-plan-col, #tokusou-services .plan-row-33 .unique-plan-col, #tokusou-services .plan-row-34 .unique-plan-col, #tokusou-services .plan-row-35 .unique-plan-col {
    line-height: 1.4;
    padding: 10px 0;
    justify-content: center;
    background-color: #FCF5EE;
}

#tokusou-services .plan-row-25 i, #tokusou-services .plan-row-26 i, #tokusou-services .plan-row-27 i, #tokusou-services .plan-row-28 i, #tokusou-services .plan-row-29 i, #tokusou-services .plan-row-30 i, #tokusou-services .plan-row-31 i, #tokusou-services .plan-row-32 i, #tokusou-services .plan-row-33 i, #tokusou-services .plan-row-34 i, #tokusou-services .plan-row-35 i {
    font-size: 16px;
    color: #FF7831;
}

#tokusou-services .plan-row-26, #tokusou-services .plan-row-27, #tokusou-services .plan-row-28, #tokusou-services .plan-row-29, #tokusou-services .plan-row-30, #tokusou-services .plan-row-31, #tokusou-services .plan-row-32, #tokusou-services .plan-row-33, #tokusou-services .plan-row-34, #tokusou-services .plan-row-35 {
    height: auto;
    color: #1A1A1A;
    font-size: 16px;
    font-weight: 600;
    text-align: center;
    margin-bottom: 10px;
    padding: 0;
}

#tokusou-services .plan-row-27, #tokusou-services .plan-row-29, #tokusou-services .plan-row-34 {
	height: auto;
}

#tokusou-services .plan-row-26 .unique-plan-col:nth-child(1), #tokusou-services .plan-row-27 .unique-plan-col:nth-child(1), #tokusou-services .plan-row-28 .unique-plan-col:nth-child(1), #tokusou-services .plan-row-29 .unique-plan-col:nth-child(1), #tokusou-services .plan-row-30 .unique-plan-col:nth-child(1), #tokusou-services .plan-row-31 .unique-plan-col:nth-child(1), #tokusou-services .plan-row-32 .unique-plan-col:nth-child(1), #tokusou-services .plan-row-33 .unique-plan-col:nth-child(1), #tokusou-services .plan-row-34 .unique-plan-col:nth-child(1), #tokusou-services .plan-row-35 .unique-plan-col:nth-child(1) {
    justify-content: left;
}

#tokusou-services .plan-row-35 .unique-plan-col:nth-child(n+2) {
	font-size: 14px;
    font-weight: 400;
}

#tokusou-services .plan-row-36 {
    height: 60px;
    background-color: #FF7831;
    color: #FFFFFF;
    font-size: 24px;
    font-weight: 600;
    text-align: left;
    display: flex;
    align-items: center;
    padding-left: 15px;
}

#tokusou-services .plan-row-36 .unique-plan-col {
	padding: 0 !important;
}

#tokusou-services .plan-row-37, #tokusou-services .plan-row-38, #tokusou-services .plan-row-39, #tokusou-services .plan-row-40 {
    background-color: #FFFFFF;
    padding: 0 0 15px;
    display: flex;
    flex-wrap: wrap;
}

#tokusou-services .plan-row-37 .unique-plan-col:nth-child(1), #tokusou-services .plan-row-38 .unique-plan-col:nth-child(1), #tokusou-services .plan-row-39 .unique-plan-col:nth-child(1), #tokusou-services .plan-row-40 .unique-plan-col:nth-child(1) {
    width: 380px;
    font-size: 16px;
    font-weight: 600;
}

#tokusou-services .plan-row-37 .unique-plan-col:nth-child(2), #tokusou-services .plan-row-38 .unique-plan-col:nth-child(2), #tokusou-services .plan-row-39 .unique-plan-col:nth-child(2), #tokusou-services .plan-row-40 .unique-plan-col:nth-child(2) {
    width: 780px;
    font-size: 14px;
    font-weight: 400;
}

#tokusou-services .plan-row-37 {
    padding: 20px 0 15px;
}

#tokusou-services .plan-row-41 {
    height: 60px;
    background-color: #FF7831;
    color: #FFFFFF;
    font-size: 24px;
    font-weight: 600;
    text-align: left;
    display: flex;
    align-items: center;
    padding-left: 15px;
	margin: 40px 0 10px;
}

#tokusou-services .plan-row-41 .unique-plan-col {
    padding: 0 !important;
    background-color: #FF7831;
}

#tokusou-services .plan-row-41 .unique-plan-col:nth-child(1) {
    width: 100%;
	align-items: baseline;
}

#tokusou-services .plan-row-41 .small-text {
    color: #FFFFFF;
	padding-left: 10px;
	font-weight: 400;
	font-size: 14px;
}

#tokusou-services .plan-row-48, #tokusou-services .plan-row-50 {
    height: auto;
    background-color: #FFFFFF;
    color: #1a1a1a;
    font-size: 16px;
    font-weight: 400;
    text-align: left;
    display: flex;
    align-items: baseline;
    margin-top: 10px;
	padding-left: 0px;
}

#tokusou-services .plan-row-42 .unique-plan-col, #tokusou-services .plan-row-44 .unique-plan-col, #tokusou-services .plan-row-46 .unique-plan-col, #tokusou-services .plan-row-48 .unique-plan-col, #tokusou-services .plan-row-50 .unique-plan-col, #tokusou-services .plan-row-52 .unique-plan-col, #tokusou-services .plan-row-54 .unique-plan-col, #tokusou-services .plan-row-56 .unique-plan-col, #tokusou-services .plan-row-58 .unique-plan-col, #tokusou-services .plan-row-60 .unique-plan-col {
    justify-content: left;
    background-color: #FFFFFF;
}

#tokusou-services .plan-row-42 .unique-plan-col:nth-child(1), #tokusou-services .plan-row-44 .unique-plan-col:nth-child(1), #tokusou-services .plan-row-46 .unique-plan-col:nth-child(1), #tokusou-services .plan-row-48 .unique-plan-col:nth-child(1), #tokusou-services .plan-row-50 .unique-plan-col:nth-child(1), #tokusou-services .plan-row-52 .unique-plan-col:nth-child(1), #tokusou-services .plan-row-54 .unique-plan-col:nth-child(1), #tokusou-services .plan-row-56 .unique-plan-col:nth-child(1), #tokusou-services .plan-row-58 .unique-plan-col:nth-child(1), #tokusou-services .plan-row-60 .unique-plan-col:nth-child(1) {
    width: 290px !important;
	font-size: 16px;
}

#tokusou-services .plan-row-48 .unique-plan-col:nth-child(1), #tokusou-services .plan-row-50 .unique-plan-col:nth-child(1) {
	padding-left: 1% !important;
}

#tokusou-services .plan-row-44 .unique-plan-col:nth-child(1), #tokusou-services .plan-row-44 .unique-plan-col:nth-child(3), #tokusou-services .plan-row-48 .unique-plan-col:nth-child(1), #tokusou-services .plan-row-48 .unique-plan-col:nth-child(3), #tokusou-services .plan-row-58 .unique-plan-col:nth-child(1), #tokusou-services .plan-row-58 .unique-plan-col:nth-child(3), #tokusou-services .plan-row-60 .unique-plan-col:nth-child(1), #tokusou-services .plan-row-60 .unique-plan-col:nth-child(3) {
	align-items: baseline;
	font-weight: 400;
}

#tokusou-services .plan-row-46 .unique-plan-col:nth-child(1), #tokusou-services .plan-row-46 .unique-plan-col:nth-child(1) {
	font-weight: 400;
}

#tokusou-services .plan-row-44, #tokusou-services .plan-row-46, #tokusou-services .plan-row-48, #tokusou-services .plan-row-50, #tokusou-services .plan-row-52, #tokusou-services .plan-row-54, #tokusou-services .plan-row-56, #tokusou-services .plan-row-58, #tokusou-services .plan-row-60 {
	padding: 0;
	align-items: baseline;
}

#tokusou-services .plan-row-42 .unique-plan-col:nth-child(2), #tokusou-services .plan-row-44 .unique-plan-col:nth-child(2), #tokusou-services .plan-row-46 .unique-plan-col:nth-child(2), #tokusou-services .plan-row-48 .unique-plan-col:nth-child(2), #tokusou-services .plan-row-50 .unique-plan-col:nth-child(2), #tokusou-services .plan-row-52 .unique-plan-col:nth-child(2), #tokusou-services .plan-row-54 .unique-plan-col:nth-child(2), #tokusou-services .plan-row-56 .unique-plan-col:nth-child(2), #tokusou-services .plan-row-58 .unique-plan-col:nth-child(2), #tokusou-services .plan-row-60 .unique-plan-col:nth-child(2) {
    width: 660px !important;
	font-size: 16px;
    font-weight: 400;
}

#tokusou-services .plan-row-42 .unique-plan-col:nth-child(2) {
    font-weight: 600;
}

#tokusou-services .plan-row-44 .unique-plan-col:nth-child(2), #tokusou-services .plan-row-48 .unique-plan-col:nth-child(2), #tokusou-services .plan-row-58 .unique-plan-col:nth-child(2), #tokusou-services .plan-row-60 .unique-plan-col:nth-child(2) {
	display: block;
}

#tokusou-services .plan-row-42 .unique-plan-col:nth-child(3), #tokusou-services .plan-row-44 .unique-plan-col:nth-child(3), #tokusou-services .plan-row-46 .unique-plan-col:nth-child(3), #tokusou-services .plan-row-48 .unique-plan-col:nth-child(3), #tokusou-services .plan-row-50 .unique-plan-col:nth-child(3), #tokusou-services .plan-row-52 .unique-plan-col:nth-child(3), #tokusou-services .plan-row-54 .unique-plan-col:nth-child(3), #tokusou-services .plan-row-56 .unique-plan-col:nth-child(3), #tokusou-services .plan-row-58 .unique-plan-col:nth-child(3), #tokusou-services .plan-row-60 .unique-plan-col:nth-child(3) {
    width: 200px !important;
	font-size: 16px;
    font-weight: 600;
}

#tokusou-services .plan-row-44 .unique-plan-col:nth-child(3), #tokusou-services .plan-row-46 .unique-plan-col:nth-child(3), #tokusou-services .plan-row-48 .unique-plan-col:nth-child(3), #tokusou-services .plan-row-50 .unique-plan-col:nth-child(3), #tokusou-services .plan-row-52 .unique-plan-col:nth-child(3), #tokusou-services .plan-row-54 .unique-plan-col:nth-child(3), #tokusou-services .plan-row-56 .unique-plan-col:nth-child(3), #tokusou-services .plan-row-58 .unique-plan-col:nth-child(3), #tokusou-services .plan-row-60 .unique-plan-col:nth-child(3) {
    font-weight: 400;
}

#tokusou-services .plan-row-44 .small-text, #tokusou-services .plan-row-48 .small-text, #tokusou-services .plan-row-58 .small-text, #tokusou-services .plan-row-60 .small-text {
    font-weight: 400;
	font-size: 14px;
}

#tokusou-services .plan-row-43 hr, #tokusou-services .plan-row-45 hr, #tokusou-services .plan-row-47 hr, #tokusou-services .plan-row-49 hr, #tokusou-services .plan-row-51 hr, #tokusou-services .plan-row-53 hr, #tokusou-services .plan-row-55 hr, #tokusou-services .plan-row-57 hr, #tokusou-services .plan-row-59 hr {
    width: 100%;
    border: none;
    border-bottom: 2px solid #FCF5EE;
    margin: 0;
}

#tokusou-services .plan-row-43 .unique-plan-col:nth-child(1), #tokusou-services .plan-row-45 .unique-plan-col:nth-child(1), #tokusou-services .plan-row-47 .unique-plan-col:nth-child(1), #tokusou-services .plan-row-49 .unique-plan-col:nth-child(1), #tokusou-services .plan-row-51 .unique-plan-col:nth-child(1), #tokusou-services .plan-row-53 .unique-plan-col:nth-child(1), #tokusou-services .plan-row-55 .unique-plan-col:nth-child(1), #tokusou-services .plan-row-57 .unique-plan-col:nth-child(1), #tokusou-services .plan-row-59 .unique-plan-col:nth-child(1) {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
}

#tokusou-services .plan-row-43, #tokusou-services .plan-row-45, #tokusou-services .plan-row-47, #tokusou-services .plan-row-49, #tokusou-services .plan-row-51, #tokusou-services .plan-row-53, #tokusou-services .plan-row-55, #tokusou-services .plan-row-57, #tokusou-services .plan-row-59 {
    height: 2px;
    background-color: #FFFFFF;
    color: #FFFFFF;
    font-size: 24px;
    font-weight: 600;
    text-align: left;
    display: flex;
    align-items: center;
	padding: 0;
    margin-top: 12px;
    margin-bottom: 12px;
}

#tokusou-services .plan-row-61 {
    height: 60px;
    background-color: #FF7831;
    color: #FFFFFF;
    font-size: 24px;
    font-weight: 600;
    text-align: left;
    display: flex;
    align-items: center;
    padding-left: 15px;
	margin-top: 55px;
}

#tokusou-services .plan-row-61 .unique-plan-col {
    padding: 0 !important;
}

#tokusou-services .plan-row-62 .unique-plan-col:nth-child(1) {
    width: 100%;
	margin: 20px 0;
	font-size: 16px;
}

#tokusou-services .electronic-certificate .unique-plan-col:nth-child(1) {
    width: 120px;
    padding-left: 1%;
	font-size: 16px;
	font-weight: 600;
}

#tokusou-services .electronic-certificate .unique-plan-row {
    justify-content: flex-start;
	padding: 5px 0;
}

#tokusou-services .electronic-certificate {
	border-left: 6px solid #FCF5EE;
	margin-left: 12px;
	margin-bottom: 20px;
}

#tokusou-services .electronic-certificate .unique-plan-col:nth-child(n+2) {
    width: 660px;
	font-size: 16px;
}

#tokusou-services .plan-row-67 .unique-plan-col:nth-child(1) {
    width: 100%;
	font-size: 16px;
}

#tokusou-services .plan-row-68 {
    height: 60px;
    background-color: #FF7831;
    color: #FFFFFF;
    font-size: 24px;
    font-weight: 600;
    text-align: left;
    display: flex;
    align-items: center;
	margin-bottom: 50px;
}

#tokusou-services .plan-row-68 .unique-plan-col:nth-child(1) {
    width: 100%;
    padding-left: 15px;
}

/* --------------------------------------
   託送・発電管理システム
--------------------------------------- */
.page-template-tdm-page .main-visual-btn {
	background: linear-gradient(to right, #40A538, #58E44D);
}
.page-template-tdm-page .service-about {
    background-color: #D3703C;
}
.page-template-tdm-page .service-about h3 {
	color: #F8E7DE;
}
.page-template-tdm-page .service-about-box .service-about-box-right h4, .page-template-tdm-page .bubble h4 {
	color: #40A538;
}
.page-template-tdm-page .service-about hr {
	border-top: 1px solid #40A538;
}
.page-template-tdm-page .plan-area h2 {
    color: #FF7831;
}
.page-template-tdm-page .plan-area h3 {
	color: #FF7831;
	font-size: 22px;
	margin-bottom: 0;
}
.page-template-tdm-page .cisplan-description {
	color: #1a1a1a;
}
.page-template-tdm-page .about-video-area2 {
    width: 1200px;
    background-color: #FFFAF5;
    margin: 55px auto 150px;
    padding: 0 0 50px;
}
.about-video {
    width: 800px;
    text-align: center;
    margin: 0 auto;
}
/*-------------------------------------
  託送・発電管理システムポップアップ用
-------------------------------------*/

/* 「.td-popup-column」内のスタイル */
.td-popup-column {
  width: 33.333%;
  display: flex;
  flex-direction: column;
  margin: 0;
  padding: 0 10px; /* カラム間の余白調整 */
}
.td-popup-column h3 {
  font-size: 20px;
  font-weight: 700;
  color: #004E98; /* 見やすい色で調整 */
  margin-bottom: 10px;
}
.td-popup-column .popup-row {
  margin-bottom: 5px; /* 行の余白 */
}
.td-popup-column .popup-cell {
  width: 50%;
  font-size: 14px;
  font-weight: 500;
  color: #1A1A1A;
}

/* 託送ポップアップ内部ヘッダー */
.popup-title {
  font-size: 18px;
  font-weight: 700;
  color: #004E98;
  margin-bottom: 20px;
}
#takuso-storage-popup-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    justify-content: center;
    align-items: center;
    z-index: 1000;
}

#takuso-storage-popup-overlay .popup-content {
    background-color: #fff;
    padding: 20px;
    border-radius: 8px;
    max-width: 600px;
    width: 90%;
    text-align: center;
    position: relative;
}

#takuso-storage-popup-overlay .close-button {
    position: absolute;
    top: 10px;
    right: 10px;
    cursor: pointer;
    font-size: 24px;
}

#takuso-storage-popup-overlay .popup-title {
    font-size: 24px;
    font-weight: 600;
    text-align: left;
    margin-bottom: 20px;
}

#takuso-storage-popup-overlay .popup-table {
    display: flex;
    justify-content: space-between;
    padding: 20px;
}

#takuso-storage-popup-overlay .popup-column {
    width: 48%;
    text-align: center;
}

#takuso-storage-popup-overlay .popup-column-header {
    font-weight: 600;
    margin-bottom: 15px;
    font-size: 18px;
}

#takuso-storage-popup-overlay .popup-column-item {
    margin-bottom: 10px;
    font-size: 16px;
}

#takuso-storage-popup-overlay .popup-note {
    padding-top: 20px;
    text-align: center;
    font-size: 14px;
}
.page-template-tdm-page .close-button {
    color: #FF7831;
}

/*お問い合わせページ*/
.ponopono-form-radio input[type="radio"], 
.ponopono-form-checkbox input[type="checkbox"] {
    cursor: default;
    width: 22px;
    height: 22px;
    vertical-align: middle; /* 中央揃え */
    margin-top: -2px; /* 微調整 */
}
.wpcf7-form-control-wrap input[type="checkbox"] {
    cursor: default;
    width: 22px;
    height: 22px;
    vertical-align: middle; /* 中央揃え */
    margin-top: -2px; /* 微調整 */
}
.ponopono-form-label {
    cursor: default;
    display: flex;
    align-items: center;
    margin-bottom: 10px;
}
.post-174 .article-header {
    display: none !important;
}
.contact-page-title {
    font-size: 20px;
    font-weight: 600 !important;
    color: #004E98;
    text-align: center;
    margin-top: 160px !important;
}

.contact-page-subtitle {
    font-size: 28px !important;
    font-weight: 600 !important;
    color: #004E98;
    text-align: center;
}

.contact-page-container {
    width: 1200px;
    display: flex;
    justify-content: space-between;
    padding: 0;
    margin: 60px auto 0;
}

.contact-page-left-content, .contact-page-right-content {
    width: 48%;
}

.contact-page-heading {
    font-size: 32px !important;
    font-weight: 500 !important;
    color: #1A1A1A;
    text-align: left;
    margin-bottom: 20px !important;
}

.contact-page-description {
    font-size: 18px;
    font-weight: 400;
    color: #1A1A1A;
    text-align: left;
}

.contact-page-image {
    display: block;
    width: 500px;
    height: auto;
    margin: 0 auto;
}

.contact-page-info-box {
    background-color: #FFFAF5;
    padding: 20px 30px;
    margin-top: 20px;
    margin-bottom: 20px;
}

.contact-page-info-item {
    font-size: 16px;
    font-weight: 600;
    color: #1A1A1A;
    text-align: left;
    margin: 0 0 5px !important;
}

.contact-page-followup {
    font-size: 20px;
    font-weight: 600;
    color: #004E98;
    text-align: left;
}

.contact-page-right-content {
    background-color: #F1F5F9;
    padding: 40px;
}

/* フォーム内のデザイン */
.ponopono-contact-form .ponopono-form-title {
    font-size: 22px;
    font-weight: 600;
    color: #1A1A1A;
    text-align: left;
    margin-bottom: 30px;
}

.ponopono-contact-form .ponopono-form-section {
    font-size: 20px;
    font-weight: 600;
    color: #1A1A1A;
    text-align: left;
    margin-bottom: 15px;
    margin-top: 40px;
}
.ponopono-contact-form p {
    margin-bottom: 10px !important;
    font-size: 14px;
}
.ponopono-contact-form label {
    font-size: 20px;
    font-weight: 500;
	color: #1a1a1a;
}

.ponopono-contact-form .required {
    background-color: #AC1B00;
    font-size: 14px;
    font-weight: 400;
    color: #FFFFFF;
    text-align: center;
    padding: 1px 5px 3px;
    border-radius: 4px;
    margin-left: 5px;
}
.ponopono-contact-form .required2 {
    background-color: #AC1B00;
    font-size: 14px;
    font-weight: 400;
    color: #FFFFFF;
    text-align: center;
    padding: 1px 5px 3px;
    border-radius: 4px;
    margin-left: 15px;
}

.ponopono-contact-form .ponopono-form-label {
    font-size: 20px;
    font-weight: 600;
    color: #1A1A1A;
    text-align: left;
    display: flex;
    align-items: center;
    margin-bottom: 10px;
    line-height: 1.5;
}

.ponopono-contact-form .ponopono-form-input {
    background-color: #FFFFFF;
    border: 1px solid #A1BAD2;
    border-radius: 4px;
    padding: 18px 10px;
    width: 100%;
}
.ponopono-contact-form .ponopono-form-radio:checked::before,
.ponopono-contact-form .ponopono-form-checkbox:checked::before {
    display: block;
    text-align: center;
    color: #1A1A1A;
}

.ponopono-contact-form .ponopono-form-radio:checked::before {
    content: '';
    width: 12px;
    height: 12px;
    background-color: #1A1A1A;
    border-radius: 50%;
    display: block;
    margin: 5px auto;
}

.ponopono-contact-form .ponopono-form-checkbox:checked::before {
    display: block;
    text-align: center;
    color: #1A1A1A;
}

.ponopono-contact-form .ponopono-form-submit {
    background-image: url('https://ponopono.flower-payment.co.jp/wp-content/uploads/2024/06/contactpage2.png');
    background-size: cover;
    width: auto;
    height: auto;
    font-size: 18px;
    font-weight: 400;
    color: #FFFFFF;
    text-align: center;
    border: none;
    padding: 10px 20px;
    cursor: pointer;
}

.wpcf7-form-control-wrap {
    font-size: 18px;
    font-weight: 400;
}

.wpcf7-list-item {
    display: block; /* 行揃え */
    margin: 0;
}

.wpcf7-list-item + .wpcf7-list-item {
    margin-left: 0; /* 左側の余白をなくす */
}

.wpcf7-list-item-label {
    margin-left: 5px;
    font-size: 18px;
    font-weight: 400;
}

input[type=submit] {
    border: none;
    background-color: #f5f8fa;
    color: #333;
    background-image: url(https://ponopono.flower-payment.co.jp/wp-content/uploads/2024/06/contactpage2.png);
    height: 60px;
    background-size: 100%;
    color: #FFF;
	font-size: 18px;
    font-weight: 400;
	margin-top: 30px;
	width: 100%;
}
.datepicker,.timepicker {
    padding: 20px 10px !important;
    border: 1px solid #A1BAD2 !important;
    border-radius: 4px !important;
    font-size: inherit;
    width: 48% !important;
    display: inline-block;
	margin-top: 10px;
	margin-bottom: 5px;
}
.datepicker {
	margin-right: 10px;
}
.ui-widget.ui-widget-content {
    border: 1px solid #A1BAD2;
    width: 238px;
	padding: 10px;
}
.ponopono-form-policy{
	margin-top: 30px;
}
.ponopono-form-voltage,.ponopono-form-provision,.ponopono-form-consumer,.ponopono-form-other,.ponopono-form-pr2 {
	margin-top: 20px;
}
.page-id-174 .hlt-tm-right .navi-in > ul {
    display: none;
}
.page-id-174 .header-container-in.hlt-top-menu {
    display: block;
    padding-top: 6px;
}
.page-id-174 #header-container .navi {
    display: none;
}
.page-id-174 .breadcrumb {
    display: none;
}
.page-id-174 .footer-bottom-content {
    display: none;
}
.page-id-174 .footer-bottom {
    margin: 50px auto 0 !important;
    display: grid;
}
.ponopono-additional-info {
    width: 100%;
	margin: 0;
    text-align: left;
    padding: 0;
}
.ponopono-form-voltage2 .wpcf7-checkbox {
    display: flex;
    flex-wrap: wrap;
}
.ponopono-form-voltage2 .wpcf7-list-item {
    margin-right: 15px;
}
.ui-timepicker-div .ui-widget-header {
    display: none;
}
.ui-datepicker .ui-datepicker-buttonpane {
    display: none;
}
.ui-timepicker-div.ui-timepicker-oneLine .ui_tpicker_time_label {
    padding-top: 5px;
}
.ponopono-form-provision2 .wpcf7-list-item:nth-child(3),
.ponopono-form-provision2 .wpcf7-list-item:nth-child(4),
.ponopono-form-provision2 .wpcf7-list-item:nth-child(5),
.ponopono-form-provision2 .wpcf7-list-item:nth-child(6),
.ponopono-form-provision2 .wpcf7-list-item:nth-child(7),
.ponopono-form-provision2 .wpcf7-list-item:nth-child(8),
.ponopono-form-provision2 .wpcf7-list-item:nth-child(9),
.ponopono-form-provision2 .wpcf7-list-item:nth-child(10),
.ponopono-form-provision2 .wpcf7-list-item:nth-child(11){
	display: inline-block;
    margin-right: 20px !important;
}
#introduction_info_container {
    margin-left: 35px;
}
.ponopono-form-pr p {
    margin-bottom: 5px !important;
}
.ui_tpicker_time_label {
	display: none;
}
.ui-timepicker-div .ui_tpicker_time .ui_tpicker_time_input {
    display: none;
}

/* 未回答の選択肢とそのラベルを完全に非表示にする */
input[name="system_satisfaction[]"][value="未回答"],
input[name="system_satisfaction[]"][value="未回答"] + span {
    display: none !important;
}

.meeting-type {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin: 0 0 20px;
}

.meeting-type label {
    margin-right: 30px;
    font-size: 14px;
}

.meeting-type .wpcf7-list-item {
	display: inline-block;
}

.page-template-contact-page .header-container {
	justify-content: center;
}
.contact-footer-container {
    text-align: center;
    margin: 60px 0 15px;
}
.contact-footer-container img {
	width: 171px;
}
.ponopono-form-policy a {
	color: #004E98;
    text-decoration: underline;
}

/* --------------------------------------
   利用規約
--------------------------------------- */
.terms-container {
  max-width: 1200px;
  margin: 120px auto 100px; /* 上部固定ヘッダー等があれば余白は適宜調整 */
  padding: 40px 30px;
  background-color: #FFFFFF;
  color: #1a1a1a;
  line-height: 1.8;
  font-size: 16px;
}

.terms-container h1 {
  font-size: 28px;
  font-weight: 700;
  margin-bottom: 10px;
  color: #1a1a1a;
}

.terms-container .terms-updated {
  font-size: 14px;
  margin-bottom: 40px;
  color: #555555;
}

.terms-container h2 {
  font-size: 22px;
  font-weight: 700;
  margin: 60px 0 20px;
  color: #004E98;
  line-height: 1.3;
}

.terms-container h3 {
  font-size: 18px;
  font-weight: 700;
  margin: 40px 0 15px;
  color: #1a1a1a;
  line-height: 1.4;
}

.terms-container p {
  margin-bottom: 15px;
}

.terms-container ol,
.terms-container ul {
  margin: 0 0 15px 0; /* 箇条書きのインデント */
  padding: 0;
}

.terms-container li {
  margin-bottom: 5px;
}

.terms-container li li {
  margin-bottom: 3px;
}

.terms-container strong {
  font-weight: 700;
  color: #1a1a1a;
}

.terms-container ol.decimal-list {
  list-style-type: decimal;
  margin-bottom: 20px;
  padding-left: 0;
}
.terms-container ol.decimal-list li {
  margin-bottom: 10px;
  line-height: 1.8;
}

.terms-container ul.none-list {
  list-style-type: none;
  margin-bottom: 20px;
  padding-left: 0;
}
.terms-container ul.none-list li {
  margin-bottom: 10px;
  line-height: 1.8;
}

.no-marker {
  list-style: none;
  margin-left: 1.5em;
  padding-left: 0;
}