@charset "UTF-8";
/*
CTC Separate Stylesheet
Updated: 2023-11-20 02:59:04
Theme Name: Vantage Child
Theme URI: https://siteorigin.com/theme/vantage/
Template: vantage
Author: SiteOrigin
Author URI: https://siteorigin.com/
Description: Vantage is a flexible multipurpose theme. Its strength lies in its tight integration with some powerful plugins like Page Builder for responsive page layouts, Smart Slider 3 for big beautiful sliders and WooCommerce to help you sell online. Vantage is fully responsive and retina ready. Use it to start a business site, portfolio or online store. We offer free support on our forum (https://siteorigin.com/thread/).
Tags: two-columns,left-sidebar,right-sidebar,grid-layout,custom-background,custom-colors,custom-menu,custom-logo,featured-images,footer-widgets,full-width-template,post-formats,rtl-language-support,sticky-post,theme-options,threaded-comments,translation-ready,blog,e-commerce
Version: 1.20.17.1700416744
*/
/*************************************************************************************
** 全ページ共通スタイル
*************************************************************************************/
:root {
  --bg-color-main: #001326;
  --bg-color-sub1: #a2a4a3;
  --bg-color-sub2: #0d83aa;
  --bg-color-sub3: #f5f5f5;
}

body {
  font-size: 16px;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 500;
}

h1, h2, h3, h4, h5, h6 {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
}

/* ヘッダー部 */
#masthead.site-header .hgroup {
  padding-top: 5px;
  padding-bottom: 5px;
}
#masthead.site-header .hgroup h1.site-title {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
}
#masthead.site-header .hgroup h1.site-title, #masthead.site-header .hgroup p.site-title {
  font-size: 26px;
  font-weight: 600;
}
#masthead.site-header .hgroup h1.logo-title, #masthead.site-header .hgroup .site-title.logo-title {
  margin-left: 5px;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
}
#masthead.site-header .hgroup .logo img {
  display: inline-block;
  width: 3rem;
}
#masthead.site-header .hgroup .support-text {
  margin: auto 0;
  max-width: 50%;
  font-style: normal;
  font-size: 1.8rem;
  font-weight: 600;
  background: var(--bg-color-main);
  color: #fff;
  padding: 0.6rem 1.6rem;
  border-radius: 3px;
}
#masthead.site-header .main-navigation {
  background: var(--bg-color-main);
}
#masthead.site-header .main-navigation ul li:hover > a, #masthead.site-header .main-navigation .main-navigation ul li.focus > a {
  background: var(--bg-color-sub2);
}
#masthead.site-header .main-navigation #search-icon {
  display: none;
}

.entry-content {
  /* 固定ページ記事タイトル非表示の代わりにH2タグ */
}
.entry-content h2 {
  text-align: center;
  font-size: 2rem;
  font-weight: 700;
}
.entry-content > *:last-child {
  margin-bottom: 3rem;
}
.entry-content dl dt {
  font-weight: normal;
}

/* 固定ページ記事タイトル非表示 */
.type-page h1,
.type-page .post-meta {
  display: none;
}

section {
  margin: 3rem 0 4rem;
}

section.infoModule h2.section-title {
  font-size: 2rem;
  font-weight: 700;
}
section.infoModule .description {
  padding: 3rem 6rem;
  margin: 1rem auto 2rem;
  width: 1100px;
  max-width: 100%;
  text-align: left;
  line-height: 1.85;
  background: var(--bg-color-sub3);
  border-radius: 5px;
}
section.infoModule .description.no-frame {
  padding-top: 0;
  padding-bottom: 0;
  width: 80%;
  max-width: 80%;
  background: none;
}
section.infoModule .description.bulleted {
  width: 100%;
  max-width: 100%;
}
section.infoModule .description.bulleted div {
  padding: 1rem 2rem;
  border-bottom: 1px dashed #676767;
  font-size: 1.5rem;
}
section.infoModule .description.bulleted div:last-child {
  border-bottom: 0;
}
section.infoModule .description span.user-action {
  display: inline-block;
}
section.infoModule .description span.user-action::after {
  content: "クリック";
  display: block;
  margin: 0;
  padding: 0;
}

#pgc-home-0-0,
#pgc-home-0-1,
#pgc-home-0-2 {
  width: 33.333%;
}

#pg-home-0,
#pg-home-1,
#pl-home .panel-grid-cell .panel {
  margin-bottom: 35px;
}

#pg-home-0 .panel-grid-cell,
#pg-home-2 .panel-grid-cell {
  float: left;
}

#pgc-home-2-0 {
  width: 66.585%;
}

#pgc-home-2-1 {
  width: 33.415%;
}

#pl-home .panel-grid-cell .panel:last-child {
  margin-bottom: 0;
}

#pg-home-0,
#pg-home-2 {
  margin-left: -15px;
  margin-right: -15px;
}

#pg-home-0 .panel-grid-cell,
#pg-home-2 .panel-grid-cell {
  padding-left: 15px;
  padding-right: 15px;
}

/* 必要に応じて、親要素のスタイルも調整 */
#pg-home-0 {
  overflow: hidden;
  /* フロートのクリア */
}

/* #pg-home-0 .panel-grid-cellの整形 */
#pg-home-0 .panel-grid-cell {
  /*float: none;
     display: flex;*/
}

/* フロート後のクリア */
.clearfix::after {
  content: "";
  display: table;
  clear: both;
}

#pg-home-0 .panel-grid-cell {
  box-sizing: border-box;
  /* ボックスサイジングの変更 */
  /* width: calc(33.333% - 30px); paddingを考慮した幅 */
  padding-left: 15px;
  padding-right: 15px;
  float: left;
}

/* cards */
.card-group {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  /* 左端から子ボックスを配置 */
  padding: 0;
  /* 子ボックス間の余白の半分 */
}

.card {
  --columns_number: 3;
  --gutter: 5%;
  flex: 0 0 calc((100% - var(--gutter) * (var(--columns_number) - 1) - var(--columns_number) * 2px) / var(--columns_number));
  /* 3カラム */
  margin: 0 5% 5% 0;
  /* 子ボックス間の余白 */
  border: 1px solid #333333;
  border-radius: 7px;
  /* box-sizing: border-box; */
}

.card:nth-child(3n) {
  margin-right: 0;
}

.card-head {
  padding: 1.5rem 0;
  width: 100%;
  text-align: center;
  color: #ffffff;
  border-bottom: 1px solid #333333;
  border-radius: 5px 5px 0 0;
  background: var(--bg-color-sub1); /*#868e96;*/
  display: flex;
}

.card-head span {
  margin: auto;
}

.card-body {
  padding: 1rem;
}

section.overviewCardModule p.description.no-frame {
  margin: 1rem auto;
  width: 80%;
}
section.overviewCardModule .overviewCard-group {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-column-gap: 3rem;
  grid-row-gap: 5rem;
  width: 100%;
}
section.overviewCardModule .overviewCard-group .overviewCard {
  padding: 2rem;
  background: #f5f5f5;
  line-height: 1.85;
  font-size: 14px;
  text-align: center;
  border-radius: 5px;
  box-shadow: 3px 3px 7px rgba(0, 0, 0, 0.1882352941);
  display: flex;
  flex-direction: column;
  /*justify-content: space-between;*/
}
section.overviewCardModule .overviewCard-group .overviewCard h3 {
  height: 5rem;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.25;
}
section.overviewCardModule .overviewCard-group .overviewCard h3::before {
  content: "";
  margin-bottom: 1rem;
  width: 100%;
  height: 12px;
  display: block;
  background-image: url("data:image/svg+xml;base64,PHN2ZyBpZD0iYSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMzY4LjUgMTUuNTIiPjxnPjxnPjxyZWN0IHg9IjIyLjA0IiB5PSI3Ljg4IiB3aWR0aD0iMTQ1LjI0IiBoZWlnaHQ9Ii45NSIgc3R5bGU9ImZpbGw6I2EyYTRhMzsiLz48cmVjdCB4PSIyMDEuMjMiIHk9IjcuODgiIHdpZHRoPSIxNDUuMjQiIGhlaWdodD0iLjk1IiBzdHlsZT0iZmlsbDojYTJhNGEzOyIvPjxyZWN0IHg9IjIyLjA0IiB5PSI5LjYiIHdpZHRoPSIxNDguNjMiIGhlaWdodD0iLjk1IiBzdHlsZT0iZmlsbDojYTJhNGEzOyIvPjxyZWN0IHg9IjE5Ny44NCIgeT0iOS42IiB3aWR0aD0iMTQ4LjYzIiBoZWlnaHQ9Ii45NSIgc3R5bGU9ImZpbGw6I2EyYTRhMzsiLz48L2c+PGc+PGc+PHBhdGggZD0iTTE4Mi4yNCw4LjdjLS4zMi0uOTctMi4xNi00LjMtNC45MS00LjA3LTEuODQsLjE1LS42MiwxLjQ5LC44NCwyLjM3LS40OSwuMS0uNywuMzktLjAzLDEuMDgsLjg0LC44NiwyLjI3LC40MywzLjA1LDEuMjQsMS4yLDEuMjYsMS4wOSwyLjY1LC40MiwzLjY3LC4xNi0uNjktLjA1LTEuNDktLjQ1LTEuOTctLjMyLS40LTEuMTktLjkxLTEuNzctLjc3LDEuMSwuNCwxLjU1LDEuMDUsMS42NywxLjM1LC4zMSwuNzUsLjEyLDEuODgtMS4xNCwyLjEtMi4xLC4zNy00LjY2LTEuNjUtNS45OC0zLjEtLjQ3LS41MS0uODgtMS4xNS0xLjAzLTEuODItLjE0LS42MiwuMDUtMS43MywuNjctMi4xLC40OS0uMjksLjg3LTEuMDYsLjU0LTEuNTktLjQyLS42OC0xLjctLjQ5LTIuMjUtLjA5LS42MywuNDYtLjk3LDEuMzEtLjk0LDIuMDcsLjE0LDMuMTMsMy44LDUuODcsNi41Miw2Ljk0LC42LC4yMywxLjM5LC40NSwyLjE0LC40My0yLjMxLC41OC01LTEuMDUtNi42Ni0yLjUtMS43MS0xLjUtNS4xOC00Ljc5LTMuMzctNy40MiwuOC0xLjE3LDMuNC0xLjI3LDQuMjUsLjEzLTEuMDctMi4wMi00LjQ1LTEuODEtNS40OS0uNDMtLjY4LC45LS44OSwxLjY4LS44NCwyLjQzLTEuOTItMS4xNS00LjMxLTIuMy02LjUxLTEuOTgtMiwuMy0yLjQ2LDEuODYtMS44OSwyLjg2LC40NCwuNzcsMi4yNCwuNzcsMy40MiwuNjUtLjQ2LC43NiwuNDIsMS41OSwyLjExLC45MiwxLjQyLS41Nyw0LjMxLDEuNTEsNi4wNiwyLjkzLDEuMjEsMS4xOCwyLjYxLDIuMTgsMy44OSwyLjc3LDEuOTEsLjg3LDQuNDYsMS4wOCw2LjM1LC4wOSwxLjg5LS45OCwyLjA3LTIuOTMsMS43Mi00Ljc0LS4wOS0uNDktLjIzLS45Ny0uMzgtMS40M1oiIHN0eWxlPSJmaWxsOiNhMmE0YTM7Ii8+PHBhdGggZD0iTTIwNy41NSw0LjY1Yy0yLjItLjMzLTQuNTksLjgzLTYuNTEsMS45OCwuMDUtLjc1LS4xNi0xLjUzLS44NC0yLjQzLTEuMDQtMS4zOC00LjQyLTEuNTktNS40OSwuNDMsLjg1LTEuMzksMy40NS0xLjI5LDQuMjUtLjEzLDEuODEsMi42My0xLjY2LDUuOTMtMy4zNyw3LjQyLTEuNjYsMS40NS00LjM0LDMuMDgtNi42NiwyLjUsLjc1LC4wMiwxLjU0LS4yLDIuMTQtLjQzLDIuNzItMS4wNiw2LjM3LTMuOCw2LjUxLTYuOTQsLjAzLS43Ni0uMzEtMS42MS0uOTQtMi4wNy0uNTYtLjQtMS44My0uNi0yLjI1LC4wOS0uMzMsLjUzLC4wNSwxLjI5LC41NCwxLjU5LC42MSwuMzcsLjgsMS40OCwuNjcsMi4xLS4xNSwuNjgtLjU3LDEuMzEtMS4wMywxLjgyLTEuMzEsMS40NS0zLjg4LDMuNDctNS45OCwzLjEtMS4yNi0uMjItMS40NS0xLjM1LTEuMTQtMi4xLC4xMi0uMjksLjU3LS45NSwxLjY3LTEuMzUtLjU4LS4xNC0xLjQ1LC4zNy0xLjc3LC43Ny0uNCwuNDktLjYxLDEuMjgtLjQ1LDEuOTctLjY3LTEuMDItLjc4LTIuNCwuNDItMy42NywuNzctLjgxLDIuMi0uMzgsMy4wNS0xLjI0LC42Ny0uNjksLjQ2LS45Ny0uMDMtMS4wOCwxLjQ3LS44OCwyLjY5LTIuMjIsLjg0LTIuMzctMi43NS0uMjMtNC41OSwzLjEtNC45MSw0LjA3LS4xNSwuNDUtLjI5LC45My0uMzgsMS40My0uMzYsMS44MS0uMTcsMy43NiwxLjcyLDQuNzQsMS44OSwuOTksNC40NSwuNzgsNi4zNS0uMDksMS4yOC0uNTksMi42OS0xLjU5LDMuODktMi43NywxLjc1LTEuNDIsNC42NC0zLjUsNi4wNi0yLjkzLDEuNjksLjY3LDIuNTctLjE2LDIuMTEtLjkyLDEuMTksLjEyLDIuOTksLjEyLDMuNDItLjY1LC41Ni0uOTksLjEtMi41Ni0xLjg5LTIuODZaIiBzdHlsZT0iZmlsbDojYTJhNGEzOyIvPjwvZz48cGF0aCBkPSJNMTg3LjM0LDMuMTdjMS4zMi0xLjg2LS4yNC0zLjA0LTEuODMtMS4zOC0uMDIsLjAyLS4wMywuMDQtLjA1LC4wNi0uMjEtMS4xNS0uNjctMS44NS0xLjIxLTEuODVzLTEsLjctMS4yMSwxLjg2Yy0uMDItLjAyLS4wMy0uMDQtLjA1LS4wNi0xLjU4LTEuNjYtMy4xNS0uNDgtMS44MywxLjM4LTEuOTUtLjYxLTIuODMtLjA0LS4xNCwyLjQ2LDIuMTMsMS45OSwzLjIsNS45NywzLjIsNS45NywwLDAsLjAyLS4xOCwuMDMtLjQ4LC4wMiwuMywuMDMsLjQ4LC4wMywuNDgsMCwwLDEuMDctMy45OCwzLjItNS45NywyLjY5LTIuNSwxLjgxLTMuMDctLjE0LTIuNDZaIiBzdHlsZT0iZmlsbDojYTJhNGEzOyIvPjwvZz48L2c+PGc+PGc+PHBhdGggZD0iTTM0NS45NSw5LjIyYzAsMS4zNywxLjE2LDIuNDgsMi41OSwyLjQ4czIuNTktMS4xMSwyLjU5LTIuNDgtMS4xNi0yLjQ4LTIuNTktMi40OC0yLjU5LDEuMTEtMi41OSwyLjQ4WiIgc3R5bGU9ImZpbGw6I2EyYTRhMzsiLz48Zz48cGF0aCBkPSJNMzY2LjgxLDcuNGMyLjEyLS42MSwxLjY0LTIuODcsMS42NC0yLjg3LTQuMTUsMy45My0xNS44Niw0Ljg3LTE1Ljg2LDQuODcsMCwwLDkuNDMsLjE0LDEzLjQ1LS42LDQuMDMtLjc1LC43Ni0xLjQsLjc2LTEuNFoiIHN0eWxlPSJmaWxsOiNhMmE0YTM7Ii8+PHBhdGggZD0iTTM2Ni44MSwxMS4wM2MyLjEyLC42MSwxLjY0LDIuODcsMS42NCwyLjg3LTQuMTUtMy45My0xNS44Ni00Ljg3LTE1Ljg2LTQuODcsMCwwLDkuNDMtLjE0LDEzLjQ1LC42LDQuMDMsLjc1LC43NiwxLjQsLjc2LDEuNFoiIHN0eWxlPSJmaWxsOiNhMmE0YTM7Ii8+PC9nPjxwYXRoIGQ9Ik0zNTUuNjIsMTEuOTZjMy4yNywyLjI5LDQuMDEsMS41NCwzLjIyLS4xMiwyLjQzLDEuMTIsMy45Ni0uMjEsMS44MS0xLjU2LS4wMy0uMDItLjA2LS4wMy0uMDgtLjA1LDEuNTEtLjE3LDIuNDItLjU3LDIuNDItMS4wM3MtLjkxLS44NS0yLjQyLTEuMDNjLjAyLS4wMiwuMDUtLjAzLC4wOC0uMDUsMi4xNi0xLjM1LC42My0yLjY4LTEuODEtMS41NiwuNzktMS42NiwuMDUtMi40MS0zLjIyLS4xMi0yLjYsMS44MS03LjgxLDIuNzItNy44MSwyLjcyLDAsMCwuMjMsLjAxLC42MiwuMDMtLjM5LC4wMS0uNjIsLjAzLS42MiwuMDMsMCwwLDUuMjEsLjkxLDcuODEsMi43MloiIHN0eWxlPSJmaWxsOiNhMmE0YTM7Ii8+PC9nPjxnPjxwYXRoIGQ9Ik0yMi41NSw5LjIyYzAsMS4zNy0xLjE2LDIuNDgtMi41OSwyLjQ4cy0yLjU5LTEuMTEtMi41OS0yLjQ4LDEuMTYtMi40OCwyLjU5LTIuNDgsMi41OSwxLjExLDIuNTksMi40OFoiIHN0eWxlPSJmaWxsOiNhMmE0YTM7Ii8+PGc+PHBhdGggZD0iTTEuNjksNy40Qy0uNDMsNi43OSwuMDUsNC41MywuMDUsNC41M2M0LjE1LDMuOTMsMTUuODYsNC44NywxNS44Niw0Ljg3LDAsMC05LjQzLC4xNC0xMy40Ni0uNi00LjAzLS43NS0uNzYtMS40LS43Ni0xLjRaIiBzdHlsZT0iZmlsbDojYTJhNGEzOyIvPjxwYXRoIGQ9Ik0xLjY5LDExLjAzQy0uNDMsMTEuNjQsLjA1LDEzLjksLjA1LDEzLjljNC4xNS0zLjkzLDE1Ljg2LTQuODcsMTUuODYtNC44NywwLDAtOS40My0uMTQtMTMuNDYsLjYtNC4wMywuNzUtLjc2LDEuNC0uNzYsMS40WiIgc3R5bGU9ImZpbGw6I2EyYTRhMzsiLz48L2c+PHBhdGggZD0iTTEyLjg5LDExLjk2Yy0zLjI3LDIuMjktNC4wMSwxLjU0LTMuMjItLjEyLTIuNDMsMS4xMi0zLjk2LS4yMS0xLjgtMS41NiwuMDMtLjAyLC4wNS0uMDMsLjA4LS4wNS0xLjUxLS4xNy0yLjQyLS41Ny0yLjQyLTEuMDNzLjkxLS44NSwyLjQyLTEuMDNjLS4wMy0uMDItLjA1LS4wMy0uMDgtLjA1LTIuMTYtMS4zNS0uNjMtMi42OCwxLjgtMS41Ni0uNzktMS42Ni0uMDUtMi40MSwzLjIyLS4xMiwyLjYsMS44MSw3LjgxLDIuNzIsNy44MSwyLjcyLDAsMC0uMjMsLjAxLS42MiwuMDMsLjM5LC4wMSwuNjIsLjAzLC42MiwuMDMsMCwwLTUuMjEsLjkxLTcuODEsMi43MloiIHN0eWxlPSJmaWxsOiNhMmE0YTM7Ii8+PC9nPjwvZz48L3N2Zz4=");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}

section.qaModule h3.qaCaption {
  margin: 0.5rem 0 1rem;
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
}
section.qaModule .qa {
  margin: 0 auto;
  width: 1100px;
  width: 80%;
}
section.qaModule .qa .list-item {
  list-style: none;
}
section.qaModule .qa .list-item:not(.list-item:first-child) {
  margin-top: 2rem;
}
section.qaModule .qa .list-item .list-item-head {
  padding: 1rem 2rem;
  font-size: 1.6rem;
  font-weight: 700;
  border-left: 5px solid var(--bg-color-sub2);
  cursor: pointer;
  position: relative;
  overflow: hidden;
  transition: all 0.5s ease-in-out;
  mix-blend-mode: normal;
  z-index: 1;
}
section.qaModule .qa .list-item .list-item-head:hover {
  color: #ffffff;
}
section.qaModule .qa .list-item .list-item-head::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  border-top-right-radius: 2px;
  border-bottom-right-radius: 2px;
  background-color: var(--bg-color-sub2);
  transition: all 0.5s ease-in-out;
  z-index: -1;
}
section.qaModule .qa .list-item .list-item-head:hover::before {
  left: 0;
}
section.qaModule .qa .list-item .list-item-detail {
  padding: 0.5rem 0 0.5rem 0;
  font-size: 1.5rem;
  line-height: 2;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.5s ease-in-out;
}

section.areaModule h2.area-title {
  padding: 1rem 0;
  margin: 3rem 0 2rem;
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
  border-top: 3px solid rgba(51, 51, 51, 0.1882352941);
  border-bottom: 3px solid rgba(51, 51, 51, 0.1882352941);
}
section.areaModule .callme .announce {
  padding: 2rem 4rem;
  width: 800px;
  max-width: calc(100% - 70px);
  background: var(--bg-color-sub3);
  border-radius: 5px;
  font-size: 1.5rem;
  line-height: 1.85;
}
section.areaModule .callme .tel {
  padding: 0.5rem 1rem;
  width: 300px;
  color: #ffffff;
  font-size: 26px;
  text-align: center;
}
section.areaModule .callme .tel a {
  padding: 1.35rem 2.7rem;
  font-weight: 600;
  background: var(--bg-color-main);
  border-radius: 0.375rem;
}
section.areaModule .callme .tel a svg {
  position: relative;
  top: -2px;
}
@media (min-width: 769px) {
  section.areaModule .callme .tel a[href^="tel:"] {
    pointer-events: none;
  }
  section.areaModule .callme .tel a[href^="tel:"] svg {
    display: none;
  }
}
section.areaModule .area-list {
  margin: 1rem 0;
}
section.areaModule .area-list dl {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto 1fr;
}
section.areaModule .area-list dt {
  text-align: center;
}
section.areaModule .area-list .city-list {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  grid-column-gap: 5px;
  grid-row-gap: 5px;
}
section.areaModule .area-list .city-list dd {
  padding: 1.4rem;
  margin: 0;
  text-align: center;
  font-size: 14px;
  color: #ffffff;
  background: var(--bg-color-sub2);
  border-radius: 2px;
}

section.tableModule h3.tableCaption {
  margin: 0.5rem 0 1rem;
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
}
section.tableModule dl.table {
  margin: 0 auto;
  width: 600px;
  border-radius: 0.5rem;
}
section.tableModule dl.table .tableRow {
  font-size: 14px;
  border-bottom: 0.1px solid #a2a4a377;
  display: flex;
  justify-content: center;
}
section.tableModule dl.table .tableRow:last-child {
  border-bottom: 0;
}
section.tableModule dl.table .tableRow.head dt, section.tableModule dl.table .tableRow.head dd {
  font-weight: 500;
  color: #ffffff;
  background: var(--bg-color-sub2);
}
section.tableModule dl.table .tableRow dt, section.tableModule dl.table .tableRow dd {
  padding: 1rem 1.5rem;
  margin: 0;
}
section.tableModule dl.table .tableRow dt {
  width: 70%;
  min-width: 200px;
  font-weight: normal;
}
section.tableModule dl.table .tableRow dd {
  min-width: 200px;
}

section.tableModule.company dl.table .tableRow {
  justify-content: left;
}
section.tableModule.company dl.table .tableRow dt {
  width: 30%;
  color: #ffffff;
  background: #454545;
}

section.privacyModule h3.privacyCaption {
  margin: 0.5rem 0 1rem;
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
}
section.privacyModule h3 + .description {
  margin: 0 auto 2rem;
  padding: 2rem 4rem;
  width: 800px;
  max-width: calc(100% - 70px);
  background: var(--bg-color-sub3);
  border-radius: 5px;
  font-size: 1.5rem;
  line-height: 1.85;
}
section.privacyModule .privacy {
  margin: 0 auto;
  width: 800px;
  max-width: calc(100% - 70px);
  border-radius: 0.5rem;
  list-style: none;
}
section.privacyModule .privacy > .list-item {
  margin-right: 1.5em;
  margin-bottom: 3rem;
}
section.privacyModule .privacy > .list-item .list-item-head {
  padding: 1rem 2rem;
  font-size: 1.6rem;
  font-weight: 700;
  border-left: 5px solid var(--bg-color-sub2);
}
section.privacyModule .privacy > .list-item .list-item-detail {
  margin-top: 0.5rem;
  font-size: 1.5rem;
  line-height: 2;
}
section.privacyModule .privacy > .list-item .list-item-detail p {
  margin: 0;
  font-size: 1.5rem;
}
section.privacyModule .privacy > .list-item .list-item-detail .list-item-group {
  margin-left: 0.6rem;
  list-style-type: disc;
}
section.privacyModule .privacy > .list-item .list-item-detail .list-item-group .list-item.head {
  margin-left: 1rem;
  margin-top: 0.75rem;
  font-weight: 700;
  list-style-type: none;
}
.mailaddress.hide::before {
  content: "compliance@kowahome.jp";
  display: inline-block;
}

section.contactModule h3.contactCaption {
  margin: 0.5rem 0 1rem;
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
}
section.contactModule h3 + .description {
  margin: 0 auto 2rem;
  padding: 2rem 4rem;
  width: 800px;
  max-width: calc(100% - 70px);
  background: var(--bg-color-sub3);
  border-radius: 5px;
  font-size: 1.5rem;
  line-height: 1.85;
}
section.contactModule div.wpcf7 {
  margin: 0 auto;
  width: 80%;
}
section.contactModule div.wpcf7 label span.badge {
  width: 4rem;
  height: 1.6rem;
  display: inline-block;
  position: relative;
}
section.contactModule div.wpcf7 label span.badge::before {
  content: "";
  padding: 0.2rem 0.8rem;
  width: 4rem;
  font-size: 10px;
  color: #ffffff;
  text-align: center;
  border-radius: 3px;
  display: inline-block;
  box-sizing: content-box;
  position: absolute;
  bottom: -0.2rem;
}
section.contactModule div.wpcf7 label span.badge.required::before {
  content: "必須";
  width: 4rem;
  background: var(--bg-color-sub2);
}
section.contactModule div.wpcf7 label span.badge.not-required::before {
  content: "任意";
  width: 4rem;
  background: var(--bg-color-sub1);
}
section.contactModule div.wpcf7 label span.badge.hide::before {
  content: "";
  width: 4rem;
  background: none;
}

footer#colophon {
  background: var(--bg-color-main);
}
footer #footer-widgets ul li {
  padding-top: 0;
}
footer #footer-widgets ul li a {
  padding-top: 1rem;
  margin: 1px 0 0;
}
footer .copyright {
  text-align: center;
  margin-top: 25px;
  color: #aaa;
}

#theme-attribution {
  display: none;
}

/*************************************************************************************
** メディアクエリ 全ページ共通スタイル
*************************************************************************************/
@media (max-width: 780px) {
  #pg-home-0 .panel-grid-cell,
  #pg-home-1 .panel-grid-cell,
  #pg-home-2 .panel-grid-cell {
    float: none;
    width: auto;
  }
  #pgc-home-0-0,
  #pgc-home-0-1,
  #pgc-home-2-0 {
    margin-bottom: 35px;
  }
  #pl-home .panel-grid {
    margin-left: 0;
    margin-right: 0;
  }
  #pl-home .panel-grid-cell {
    padding: 0;
  }
  section.overviewCardModule p.description.no-frame {
    width: 100%;
  }
  section.overviewCardModule .overviewCard-group {
    grid-template-columns: repeat(2, 1fr);
  }
  section.areaModule .area-list .city-list {
    grid-template-columns: repeat(4, 1fr);
  }
  section.privacyModule h3 + .description {
    margin: 0 0 2rem;
    padding: 2rem 3rem;
    width: 100%;
    max-width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .entry-content .section-title + .description {
    padding: 1.5rem;
    margin: 1rem auto 2rem;
    width: 100%;
    max-width: none;
  }
  .entry-content .section-title + .description.no-frame {
    padding-top: 0;
    background: none;
  }
  /* cards */
  .card-group {
    /* display: block; */
  }
  .card {
    --columns_number: 2;
    /* 2カラム */
    /* width: 100%; */
    /* min-width: 300px; */
  }
  .card:nth-child(3n) {
    margin-right: auto;
  }
  .card:nth-child(2n) {
    margin-right: 0;
  }
  .callme .announce {
    padding: 1rem 2rem;
    margin: 0;
    min-width: 100%;
  }
  .callme .tel a {
    font-size: 24px;
  }
  .callme .tel::after {
    content: "（こちらからお電話可能です）";
    margin-top: 2px;
    display: flex;
    flex-direction: column;
    color: #333;
    font-size: 13px;
  }
  .area-list .city-list {
    grid-template-columns: repeat(4, 1fr);
  }
  section.tableModule dl.table {
    margin: 0 auto;
    min-width: 100%;
    max-width: 100%;
  }
  section.tableModule dl.table .tableRow dt, section.tableModule dl.table .tableRow dd {
    width: 100%;
    flex-shrink: 1;
  }
  section.infoModule .description {
    padding: 1rem 1.5rem;
  }
  section.infoModule .description.bulleted {
    padding: 0;
  }
  section.infoModule .description span.user-action::after {
    content: "タップ";
  }
  section.qaModule .qa {
    width: 100%;
  }
  section.qaModule .qa .list-item {
    margin-left: 0;
  }
  section.contactModule div.wpcf7 {
    width: 100%;
  }
}
@media screen and (max-width: 680px) {
  body.responsive #masthead .hgroup .support-text, body.responsive #masthead .hgroup #header-sidebar {
    margin: 1rem 0;
  }
  body.responsive #footer-widgets .widget {
    float: left;
  }
  _::-webkit-full-page-media, _:future, :root section.tableModule dl.table {
    width: unset;
  }
}
@media screen and (max-width: 640px) {
  body.responsive #footer-widgets .widget {
    padding: 0 15px;
    width: 50%;
  }
}
@media screen and (max-width: 600px) {
  .full-container .so-mobilenav-mobile + * {
    display: block;
  }
  .full-container .so-mobilenav-standard + * {
    display: none;
  }
  .full-container .mobile-nav-frame form.search input[type=search] {
    display: none;
  }
  div.navigation-wrapper .slider_inner {
    font-size: 5vw;
  }
  section.overviewCardModule p.description.no-frame {
    width: 100%;
  }
  section.overviewCardModule .overviewCard-group {
    grid-template-columns: repeat(1, 1fr);
  }
  section.areaModule .area-list .city-list {
    grid-template-columns: repeat(2, 1fr);
  }
  section.privacyModule .privacy {
    width: 100%;
    max-width: 100%;
  }
  body.responsive #footer-widgets .widget {
    display: block;
    margin-bottom: 25px;
    width: 100%;
    float: none;
  }
  #colophon .widget_nav_menu .menu-item a {
    line-height: 1.8;
  }
}
@media screen and (max-width: 500px) {
  section.tableModule dl.table {
    margin: 0 auto;
    min-width: 100%;
    max-width: 100%;
    border-width: 0;
    border-radius: 0.5rem;
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1);
  }
  section.tableModule dl.table .tableRow {
    flex-direction: column;
    justify-content: flex-start;
  }
  section.tableModule dl.table .tableRow dt, section.tableModule dl.table .tableRow dd {
    width: 100%;
  }
  section.tableModule dl.table .tableRow dd {
    text-align: right;
  }
  section.tableModule.company dl.table .tableRow {
    flex-direction: column;
    justify-content: flex-start;
  }
  section.tableModule.company dl.table .tableRow dt, section.tableModule.company dl.table .tableRow dd {
    width: 100%;
  }
  section.tableModule.company dl.table .tableRow dd {
    text-align: right;
  }
  section.infoModule .description {
    padding: 2rem;
  }
  div.wpforms-container.wpforms-container-full.wpforms-render-modern {
    margin: 0 auto;
    width: 100%;
  }
  section.areaModule .callme .announce {
    padding: 1rem 1.5rem;
  }
}
@media screen and (max-width: 375px) {
  /* cards */
  .card-group {
    /* margin: auto 0;
          display: block; */
  }
  .card {
    --columns_number: 1;
    /* 1カラム */
    /* width: 100%; */
  }
  .card:nth-child(3n) {
    margin-right: auto;
  }
  .card:nth-child(n) {
    margin-right: 0;
  }
  .callme .announce {
    padding: 1rem 2rem;
    margin: 0;
    min-width: 100%;
  }
  .callme .tel a {
    font-size: 18px;
  }
  .callme .tel::after {
    content: "（こちらからお電話可能です）";
    margin-top: 2px;
    display: flex;
    flex-direction: column;
    color: #333;
    font-size: 13px;
  }
  .area-list .city-list {
    grid-template-columns: repeat(2, 1fr);
  }
  section.areaModule .area-list .city-list {
    grid-template-columns: repeat(1, 1fr);
  }
}