/*! --------------------------------------------------------------
　　このCSSファイルは .scssファイルからコンパイルされたものです。
　　修正する際はscssファイルを編集するように注意してください。
--------------------------------------------------------------- */
.main_page {
  height: 30vh;
  background: url(images/about/bg_main.jpg) center center/cover no-repeat;
  position: relative
}

@media(min-width: 1200px) {
  .main_page {
    padding-top: 72px
  }
}

@media(max-width: 767px) {
  .main_page {
    height: 30vh
  }
}

.main_page .inner {
  height: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  align-content: unset
}

.main_page .pagettl {
  font-size: 1.8125rem;
  color: #fff;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: .1em
}

@media(max-width: 767px) {
  .main_page .pagettl {
    font-size: 1.25rem
  }
}

.main_page .pagettl span {
  display: block;
  font-size: 1rem;
  font-weight: 400;
  text-transform: uppercase
}

@media(max-width: 767px) {
  .main_page .pagettl span {
    font-size: 0.75rem
  }
}

.about_message {
  position: relative
}

.about_message::before {
  content: "";
  width: 100%;
  height: 250%;
  background-color: #e9e9e9;
  clip-path: polygon(0 0, 100% 30%, 100% 100%, 0 70%);
  position: absolute;
  top: 0;
  left: 0%;
  z-index: -1;
  opacity: .3;
  transform: translateY(-5%)
}

.about_mvv {
  position: relative
}

.about_mvv::before {
  content: "";
  width: 96vw;
  height: 100%;
  background-color: #deecf9;
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1
}

.about_mvv .ul01 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem 5.5555555556%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .about_mvv .ul01 {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media(max-width: 767px) {
  .about_mvv .ul01 {
    grid-template-columns: repeat(1, 1fr)
  }
}

.about_mvv .ul01 li figure {
  margin-bottom: .66rem
}

.about_mvv .ul01 li figure img {
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover
}

.about_mvv .ul01 li .ttl01 {
  margin-bottom: .2em
}

.about_mvv .ul01 li .ttl01 em {
  font-size: 1.75rem;
  font-weight: 400;
  line-height: 1;
  margin-right: .2em
}

@media(max-width: 767px) {
  .about_mvv .ul01 li .ttl01 em {
    font-size: 1.25rem
  }
}

.about_company .dl_cmn {
  max-width: 940px;
  -moz-columns: auto 2;
  columns: auto 2;
  -moz-column-gap: 2.5rem;
  column-gap: 2.5rem;
  margin-inline: auto
}

@media(min-width: 768px)and (max-width: 1199px) {
  .about_company .dl_cmn {
    -moz-columns: unset;
    columns: unset
  }
}

@media(max-width: 767px) {
  .about_company .dl_cmn {
    -moz-columns: unset;
    columns: unset
  }
}

dl.dl_cmn>div {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: flex-start;
  border-top: 1px dashed #b2bcd0;
  padding: 2rem 2%;
  border-bottom: 1px dashed #b2bcd0
}

@media(min-width: 768px)and (max-width: 1199px) {
  dl.dl_cmn>div {
    padding: .8rem 0
  }
}

@media(max-width: 767px) {
  dl.dl_cmn>div {
    padding: .8rem 0
  }
}

dl.dl_cmn>div:not(:first-child) {
  margin-top: -1px
}

dl.dl_cmn>div dt {
  width: 35%
}

dl.dl_cmn>div dd {
  width: 62%
}

.feature_first {
  background: url(https://kamikura-inc.com/wp-content/uploads/2026/05/img_feature01.jpg) right center/auto 100% no-repeat
}

.feature_first h3 {
  line-height: 2.4
}

@media(max-width: 767px) {
  .feature_first h3 {
    line-height: 1.8
  }
}

.feature_content {
  position: relative
}

.feature_content::before {
  content: "";
  width: 100%;
  height: 100%;
  background-color: #e9e9e9;
  clip-path: polygon(0 0, 100% 30%, 100% 100%, 0 70%);
  position: absolute;
  top: 0;
  left: 0%;
  z-index: -1;
  opacity: .3;
  transform: translateY(-5%)
}

.feature_content .over_cmn:not(:last-child) {
  margin-bottom: 3.5rem
}

@media(max-width: 767px) {
  .feature_content .over_cmn:not(:last-child) {
    margin-bottom: 2.5rem
  }
}

@media(min-width: 1200px) {
  .feature_content .over_cmn .txt {
    width: 520px
  }
}

.feature_content .over_cmn .txt h3.ttl_cmn2 {
  min-height: 100px;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  padding-left: 126px;
  position: relative
}

@media(min-width: 768px)and (max-width: 1199px) {
  .feature_content .over_cmn .txt h3.ttl_cmn2 {
    min-height: unset;
    padding-left: 80px
  }
}

@media(max-width: 767px) {
  .feature_content .over_cmn .txt h3.ttl_cmn2 {
    min-height: unset;
    padding-left: 16vw
  }
}

.feature_content .over_cmn .txt h3.ttl_cmn2 .num {
  display: grid;
  place-items: center;
  width: 146px;
  aspect-ratio: 1/1;
  background: url(images/index/bg_num01.svg) center center/100% auto no-repeat;
  font-size: 3.5625rem;
  color: #10254e;
  font-weight: 400;
  line-height: 1;
  text-align: center;
  position: absolute;
  top: 50%;
  left: -20px;
  transform: translateY(-50%)
}

@media(min-width: 768px)and (max-width: 1199px) {
  .feature_content .over_cmn .txt h3.ttl_cmn2 .num {
    width: 100px;
    font-size: 2.5rem
  }
}

@media(max-width: 767px) {
  .feature_content .over_cmn .txt h3.ttl_cmn2 .num {
    width: 20vw;
    font-size: 2.25rem
  }
}

.account_first {
  padding-top: 2.5rem
}

.account_first .box {
  max-width: 95vw;
  background: url(images/account/bg_account01.png) center center/cover no-repeat;
  border-radius: 1rem;
  margin-inline: auto
}

.account_problem {
  position: relative
}

.account_problem::before {
  content: "";
  width: 100%;
  height: 400%;
  background-color: rgba(233, 233, 233, .3);
  clip-path: polygon(0 0, 100% 30%, 100% 100%, 0 70%);
  position: absolute;
  top: 0;
  left: 0%;
  z-index: -1;
  transform: translateY(-20%)
}

.account_problem .ul01 {
  max-width: 910px;
  -moz-columns: auto 2;
  columns: auto 2;
  -moz-column-gap: 1.5rem;
  column-gap: 1.5rem;
  margin-inline: auto
}

@media(min-width: 768px)and (max-width: 1199px) {
  .account_problem .ul01 {
    -moz-columns: unset;
    columns: unset
  }
}

@media(max-width: 767px) {
  .account_problem .ul01 {
    -moz-columns: unset;
    columns: unset
  }
}

.account_problem .ul01 li {
  background-color: #fff;
  border-radius: 5px;
  padding: .9rem 2%;
  text-align: center;
  margin-bottom: 10px
}

.account_problem .ul01 li i {
  color: #0670d8;
  margin-right: 1em
}

.account_cost {
  background: url(images/account/bg_account02.jpg) center center/cover no-repeat
}

.account_cost .ul01 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.5rem 2.7777777778%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .account_cost .ul01 {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media(max-width: 767px) {
  .account_cost .ul01 {
    grid-template-columns: repeat(1, 1fr)
  }
}

.account_cost .ul01 li figure {
  margin-bottom: .66rem
}

.account_cost .ul01 li figure img {
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover
}

.account_service {
  position: relative
}

.account_service::before {
  content: "";
  width: 100%;
  height: 60%;
  background-color: rgba(233, 233, 233, .3);
  clip-path: polygon(0 30%, 100% 0%, 100% 70%, 0 100%);
  position: absolute;
  top: 0;
  left: 0%;
  z-index: -1;
  transform: translateY(-40%)
}

.account_service .side_cmn:not(:last-child) {
  margin-bottom: .8rem
}

.account_service .side_cmn h3.ttl_cmn2 {
  margin-bottom: .5em
}

.account_price {
  position: relative
}

.account_price::before {
  content: "";
  width: 100%;
  height: 280%;
  background-color: rgba(233, 233, 233, .3);
  clip-path: polygon(0 0, 100% 30%, 100% 100%, 0 70%);
  position: absolute;
  top: 0;
  left: 0%;
  z-index: -1;
  transform: translateY(-10%)
}

.tbl_price {
  max-width: 880px;
  width: 100%;
  border: 2px solid #b2bcd0;
  margin-inline: auto
}

.tbl_price col.tbl_ttl01 {
  width: 35%
}

.tbl_price col.tbl_con01 {
  width: 30%
}

.tbl_price col.tbl_con02 {
  width: 35%
}

.tbl_price th,
.tbl_price td {
  padding: 1.5em 1%;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5;
  text-align: center
}

@media(max-width: 767px) {

  .tbl_price th,
  .tbl_price td {
    padding: .8em 1%;
    font-size: 0.75rem
  }
}

.tbl_price th span,
.tbl_price td span {
  font-size: 0.75rem
}

@media(max-width: 767px) {

  .tbl_price th span,
  .tbl_price td span {
    font-size: 0.5625rem
  }
}

.tbl_price thead th {
  background-color: #b2bcd0;
  color: #fff
}

.tbl_price thead th:not(:last-child) {
  border-right: 1px dashed #fff
}

.tbl_price tbody tr:not(:last-child) th,
.tbl_price tbody tr:not(:last-child) td {
  border-bottom: 1px dashed #b2bcd0
}

.tbl_price tbody td {
  border-left: 1px dashed #b2bcd0
}

.account_flow .ul01 {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1rem 1.1111111111%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .account_flow .ul01 {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media(max-width: 767px) {
  .account_flow .ul01 {
    grid-template-columns: repeat(1, 1fr)
  }
}

.account_flow .ul01 li {
  background-color: #e2e5eb;
  border-radius: 4px;
  padding: 1.2rem 5% 2rem;
  box-shadow: 0 3px 6px rgba(0, 0, 0, .16)
}

@media(max-width: 767px) {
  .account_flow .ul01 li {
    padding: .8rem 4% 1.2rem
  }
}

.account_flow .ul01 li:not(:last-child) {
  position: relative
}

.account_flow .ul01 li:not(:last-child)::after {
  content: "";
  width: 19px;
  aspect-ratio: 19/39;
  background-color: #0670d8;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  position: absolute;
  top: 50%;
  left: calc(100% - .2rem);
  transform: translateY(-50%);
  z-index: 1
}

@media(max-width: 767px) {
  .account_flow .ul01 li:not(:last-child)::after {
    top: calc(100% - .2rem);
    left: 50%;
    transform: translateX(-50%);
    rotate: 90deg
  }
}

.account_flow .ul01 li figure {
  margin-bottom: .8rem
}

.account_flow .ul01 li figure img {
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover
}

.account_flow .ul01 li h3.txt_cmn {
  margin-bottom: .5em
}

.account_voice {
  background-color: #b2bcd0
}

.account_voice .ul01 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem 2.7777777778%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .account_voice .ul01 {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media(max-width: 767px) {
  .account_voice .ul01 {
    grid-template-columns: repeat(1, 1fr)
  }
}

.account_voice .ul01 li {
  background-color: #fff;
  border-radius: 4px;
  padding: 2rem 6% 0rem;
  box-shadow: 0 3px 6px rgba(0, 0, 0, .16)
}

@media(max-width: 767px) {
  .account_voice .ul01 li {
    padding: .8rem 4% 0rem
  }
}

.account_voice .ul01 li figure {
  margin-bottom: 1.5rem
}

@media(max-width: 767px) {
  .account_voice .ul01 li figure {
    margin-bottom: .7rem
  }
}

.account_voice .ul01 li figure img {
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover
}

.account_voice .ul01 li h3.txt_cmn {
  margin-bottom: .5em
}

.account_voice .ul01 li p.txt01 {
  margin-bottom: 1.2em
}

.account_voice .ul01 li .under {
  border-top: 1px solid #e2e5eb;
  padding: .8rem 2%
}

.account_faq .wrap_faq {
  max-width: 900px;
  margin-inline: auto;
  margin-bottom: 2.5rem
}

.other_first .side_cmn {
  margin-bottom: 5rem
}

@media(max-width: 767px) {
  .other_first .side_cmn {
    margin-bottom: 3rem
  }
}

.other_first .colwrap {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem 3.7037037037%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .other_first .colwrap {
    grid-template-columns: repeat(1, 1fr)
  }
}

@media(max-width: 767px) {
  .other_first .colwrap {
    grid-template-columns: repeat(1, 1fr)
  }
}

.other_first .colwrap .col figure {
  margin-bottom: .7rem
}

.other_first .colwrap .col figure img {
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover
}

.other_first h3.ttl_cmn2 {
  margin-bottom: .4em
}

.other_first h4.ttl_cmn2 {
  margin-bottom: .5em
}

.other_first .under {
  margin-top: 2rem
}

.other_first .under p.txt02+h4.txt_cmn {
  margin-top: .5em
}

.temp_first .box.bg01 {
  background: url(images/payroll/bg_temp01.png) center center/cover no-repeat
}

.temp_first .box.bg02 {
  background: url(images/general/bg_temp01.png) center center/cover no-repeat
}

.temp_first .box.bg03 {
  background: url(images/system/bg_temp01.png) center center/cover no-repeat
}

.temp_first .box.bg04 {
  background: url(images/finance/bg_temp01.png) center center/cover no-repeat
}

.temp_first .box.bg05 {
  background: url(images/subsidy/bg_temp01.png) center center/cover no-repeat
}

.temp_cost.bg01 {
  background: url(images/payroll/bg_temp02.jpg) center center/cover no-repeat
}

.temp_cost.bg02 {
  background: url(images/general/bg_temp02.jpg) center center/cover no-repeat
}

.temp_cost.bg03 {
  background: url(images/system/bg_temp02.jpg) center center/cover no-repeat
}

.temp_cost.bg04 {
  background: url(images/finance/bg_temp02.jpg) center center/cover no-repeat
}

.temp_cost.bg05 {
  background: url(images/subsidy/bg_temp02.jpg) center center/cover no-repeat
}

.contact_form .area {
  max-width: 1000px;
  background-color: #e2e5eb;
  border-radius: .8rem;
  padding: 2.5rem 6% 4rem;
  margin-inline: auto
}

@media(max-width: 767px) {
  .contact_form .area {
    padding: 1.8rem 4% 2.5rem
  }
}

.contact_form .privacy01 {
  margin-bottom: 2.5rem
}

.contact_form .privacy01 h4.txt_cmn {
  margin-bottom: .5em
}

.tbl_contact {
  width: 100%;
  max-width: 830px;
  margin-inline: auto;
  table-layout: fixed;
  border-collapse: separate;
  margin-bottom: 1rem
}

@media(max-width: 767px) {
  .tbl_contact {
    margin-bottom: 1rem
  }
}

.tbl_contact .col_th {
  width: 35%
}

@media(max-width: 767px) {
  .tbl_contact .col_th {
    display: none
  }
}

.tbl_contact .col_td {
  width: 65%
}

@media(max-width: 767px) {
  .tbl_contact .col_td {
    display: none
  }
}

.tbl_contact tr:not(:last-child) th,
.tbl_contact tr:not(:last-child) td {
  border-bottom: 1px solid #fff
}

@media(max-width: 767px) {

  .tbl_contact tr:not(:last-child) th,
  .tbl_contact tr:not(:last-child) td {
    border-bottom: unset
  }
}

@media(max-width: 767px) {
  .tbl_contact tr:not(:last-child) td {
    border-bottom: 1px solid #fff
  }
}

.tbl_contact tr.tr_mail th,
.tbl_contact tr.tr_mail td {
  border-bottom: none
}

.tbl_contact th,
.tbl_contact td {
  padding: 1.8rem 0;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5
}

@media(max-width: 767px) {

  .tbl_contact th,
  .tbl_contact td {
    display: block;
    padding: 1rem 0;
    font-size: 0.8125rem
  }
}

.tbl_contact th {
  text-align: left;
  position: relative
}

@media(max-width: 767px) {
  .tbl_contact th {
    padding-bottom: .4rem
  }
}

.tbl_contact .required::before,
.tbl_contact .any::before {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1;
  padding: .2rem .4rem;
  margin-right: .5rem;
  position: relative;
  top: -0.1rem
}

@media(max-width: 767px) {

  .tbl_contact .required::before,
  .tbl_contact .any::before {
    padding: .1rem .5rem;
    margin-right: .3rem
  }
}

.tbl_contact .required::before {
  content: "必須";
  background-color: #0670d8;
  color: #fff
}

.tbl_contact td input[type=text],
.tbl_contact td input[type=tel],
.tbl_contact td input[type=email],
.tbl_contact td input[type=date] {
  background-color: #f4f6f8;
  border-radius: 5px;
  padding: 6px 5px
}

.tbl_contact td input[type=text],
.tbl_contact td input[type=email] {
  width: 100%
}

.tbl_contact td input[type=tel] {
  width: 100%
}

.tbl_contact td input[type=date] {
  width: 30%
}

.tbl_contact td select {
  width: 100%;
  background-color: #f4f6f8;
  border-radius: 5px;
  padding: 8px 5px
}

.tbl_contact td input[type=file] {
  backdrop-filter: blur(20px);
  border-radius: 5px;
  padding: 3px 5px;
  color: #fff
}

.tbl_contact td textarea {
  width: 100%;
  height: 330px;
  background-color: #f4f6f8;
  border-radius: 5px;
  padding: 5px
}

.tbl_contact td span.wpcf7-list-item {
  margin: 0 2em 0 0
}

.th_textarea {
  vertical-align: top
}

.th_textarea.required::before,
.th_textarea.any::before {
  top: .5rem
}

@media(max-width: 767px) {

  .th_textarea.required::before,
  .th_textarea.any::before {
    top: .3rem
  }
}

.btn_submit {
  display: table;
  margin: 0 auto;
  font-size: 1.125rem;
  color: #fff;
  font-weight: 700;
  line-height: 1.5;
  position: relative
}

@media(max-width: 767px) {
  .btn_submit {
    font-size: 0.875rem
  }
}

.btn_submit input[type=submit] {
  width: 280px;
  height: 60px;
  background-color: #10254e;
  border-radius: 4px;
  text-align: center
}

@media(max-width: 767px) {
  .btn_submit input[type=submit] {
    width: 80vw;
    height: 3rem
  }
}

.btn_submit input[type=submit]:hover {
  transition: .3s ease
}

.btn_submit i {
  font-size: 0.75rem;
  color: #fff;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 6%
}

.btn_submit input[type=submit][disabled] {
  opacity: .3
}

.btn_submit input[type=submit]:not([disabled]):hover {
  cursor: pointer;
  opacity: .8
}

.ajax-loader {
  display: none !important
}

.wpcf7-spinner {
  display: none !important
}

.thanks_first p.txt01 {
  margin-bottom: 2.5em
}

@media(max-width: 767px) {
  .thanks_first p.txt01 {
    margin-bottom: 1.5em
  }
}

.news_list ul {
  padding-left: .8rem;
  margin-bottom: 4rem
}

@media(max-width: 767px) {
  .news_list ul {
    margin-bottom: 2.5rem
  }
}

.news_list ul li {
  padding-bottom: 1rem;
  border-bottom: 1px dashed #b2bcd0
}

@media(max-width: 767px) {
  .news_list ul li {
    padding-bottom: .6rem
  }
}

.news_list ul li:not(:last-child) {
  margin-bottom: 1.2rem
}

@media(max-width: 767px) {
  .news_list ul li:not(:last-child) {
    margin-bottom: .6rem
  }
}

.news_list ul li a {
  position: relative
}

.news_list ul li a time.date {
  display: inline-block;
  line-height: 1.5rem;
  margin-bottom: .4em
}

.news_list ul li a .ttl01 {
  line-height: 1.5rem
}

.wp-pagenavi {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  align-content: unset;
  text-align: center
}

.wp-pagenavi a,
.wp-pagenavi span {
  width: 24px;
  height: 24px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  align-content: unset;
  font-size: 1.125rem;
  font-weight: 400;
  font-family: "Aboreto", system-ui;
  line-height: 1;
  white-space: nowrap;
  text-align: center;
  margin: 0 10px
}

@media(max-width: 767px) {

  .wp-pagenavi a,
  .wp-pagenavi span {
    width: 6vw;
    height: 6vw;
    font-size: 0.9375rem;
    margin: 0 5px
  }
}

.wp-pagenavi a:hover {
  opacity: .7
}

.wp-pagenavi span.current {
  background: #333;
  color: #fff
}

.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
  font-size: 0.625rem;
  line-height: 1;
  text-align: center
}

@media(max-width: 767px) {

  .wp-pagenavi .previouspostslink,
  .wp-pagenavi .nextpostslink {
    font-size: 0.5rem
  }
}

.blog_single:not(:last-child) {
  margin-bottom: 5rem
}

@media(max-width: 767px) {
  .blog_single:not(:last-child) {
    margin-bottom: 2.5rem
  }
}

.blog_single .top {
  margin-bottom: 3.5rem
}

@media(max-width: 767px) {
  .blog_single .top {
    margin-bottom: 1.8rem
  }
}

.blog_single .top .wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: .5rem
}

.blog_single article>p:not(:last-child) {
  margin-bottom: 2.5rem
}

@media(max-width: 767px) {
  .blog_single article>p:not(:last-child) {
    margin-bottom: 1.5rem
  }
}

.blog_single h2,
.blog_single h3,
.blog_single h4,
.blog_single p,
.blog_single figcaption {
  font-family: "Noto Serif JP", serif
}

.blog_single article>:is(.side_cmn, .area):not(:last-child) {
  margin-bottom: 2rem
}

@media(max-width: 767px) {
  .blog_single article>:is(.side_cmn, .area):not(:last-child) {
    margin-bottom: 1.5rem
  }
}

.blog_single h2:not(.ttl_post) {
  background-color: #b2bcd0;
  padding: .4em .8em;
  font-size: 1.75rem;
  color: #fff;
  font-weight: 500;
  line-height: 1.5;
  margin-bottom: .6em
}

@media(min-width: 768px)and (max-width: 1199px) {
  .blog_single h2:not(.ttl_post) {
    font-size: 1.5rem
  }
}

@media(max-width: 767px) {
  .blog_single h2:not(.ttl_post) {
    font-size: 1.375rem
  }
}

.blog_single h3:not(.ttl01) {
  font-size: 1.375rem;
  font-weight: 500;
  line-height: 1.5;
  margin-bottom: .8em;
  position: relative
}

@media(min-width: 768px)and (max-width: 1199px) {
  .blog_single h3:not(.ttl01) {
    font-size: 1.25rem
  }
}

@media(max-width: 767px) {
  .blog_single h3:not(.ttl01) {
    font-size: 1.1875rem
  }
}

.blog_single h3:not(.ttl01)::before {
  content: "●";
  font-size: 1rem;
  color: #b2bcd0;
  margin-right: .4em;
  position: relative;
  top: -0.1em
}

.blog_single p {
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.9
}

@media(max-width: 767px) {
  .blog_single p {
    font-size: 16px
  }
}

.blog_single article>figure {
  text-align: center
}

.blog_single article>figure:not(:last-child) {
  margin-bottom: 2.4rem
}

@media(max-width: 767px) {
  .blog_single article>figure:not(:last-child) {
    margin-bottom: 1.8rem
  }
}

.blog_single .btn_cmn {
  margin-top: 3.5rem
}

@media(max-width: 767px) {
  .blog_single .btn_cmn {
    margin-top: 2rem
  }
}

.column_list .txt_catch {
  line-height: 2.5;
  margin-bottom: 7em
}

@media(max-width: 767px) {
  .column_list .txt_catch {
    line-height: 2;
    margin-bottom: 4em
  }
}

.column_list .ttl02 {
  margin-bottom: 2em
}

.column_list ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 3.5rem 2.7777777778%;
  margin-bottom: 5rem
}

@media(min-width: 768px)and (max-width: 1199px) {
  .column_list ul {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.8rem 4%
  }
}

@media(max-width: 767px) {
  .column_list ul {
    grid-template-columns: repeat(1, 1fr);
    gap: 1.8rem 4%;
    margin-bottom: 2.5rem
  }
}

.column_list ul li figure {
  margin-bottom: .2rem;
  position: relative
}

.column_list ul li figure img {
  width: 100%;
  max-height: 220px;
  -o-object-fit: cover;
  object-fit: cover
}

.column_list ul li time {
  display: inline-block;
  margin-bottom: .2em
}

.column_list ul li .ttl01 {
  line-height: 1.5
}

.column_list .wp-pagenavi {
  color: #fff
}

.column_list .wp-pagenavi span.current {
  border-radius: 0
}

.column_single .top {
  margin-bottom: 2.2rem
}

@media(max-width: 767px) {
  .column_single .top {
    margin-bottom: 1.5rem
  }
}

.column_single .top .wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center
}

.column_single article>p:not(:last-child) {
  margin-bottom: 2.5rem
}

@media(max-width: 767px) {
  .column_single article>p:not(:last-child) {
    margin-bottom: 1.5rem
  }
}

.column_single h2,
.column_single h3,
.column_single h4,
.column_single p,
.column_single figcaption {
  font-family: "Zen Old Mincho", serif
}

.column_single .ttl_post {
  font-size: 2rem;
  color: #fff;
  font-weight: 700;
  line-height: 1.33;
  margin-bottom: .2em
}

@media(min-width: 768px)and (max-width: 1199px) {
  .column_single .ttl_post {
    font-size: 1.625rem
  }
}

@media(max-width: 767px) {
  .column_single .ttl_post {
    font-size: 1.5rem
  }
}

.column_single article>:is(.side_cmn, .area):not(:last-child) {
  margin-bottom: 2.5rem
}

@media(max-width: 767px) {
  .column_single article>:is(.side_cmn, .area):not(:last-child) {
    margin-bottom: 1.5rem
  }
}

.column_single h2:not(.ttl_post) {
  border: 1px solid #fff;
  background-color: #b2bcd0;
  padding: .4em .8em;
  font-size: 1.75rem;
  color: #fff;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: .9em
}

@media(min-width: 768px)and (max-width: 1199px) {
  .column_single h2:not(.ttl_post) {
    font-size: 1.5rem
  }
}

@media(max-width: 767px) {
  .column_single h2:not(.ttl_post) {
    font-size: 1.375rem
  }
}

.column_single h3:not(.ttl01) {
  background-color: #2c2c2c;
  padding: .3em .6em;
  padding-left: 1.4em;
  font-size: 1.5rem;
  color: #fff;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: .8em;
  position: relative
}

@media(min-width: 768px)and (max-width: 1199px) {
  .column_single h3:not(.ttl01) {
    font-size: 1.25rem
  }
}

@media(max-width: 767px) {
  .column_single h3:not(.ttl01) {
    font-size: 1.1875rem
  }
}

.column_single h3:not(.ttl01)::before {
  content: "";
  width: 1.1em;
  height: 1px;
  background-color: currentColor;
  position: absolute;
  top: 50%;
  left: 0
}

.column_single h4 {
  font-size: 1.25rem;
  color: #fff;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: .8em;
  display: flex;
  align-items: center;
  gap: .6em
}

@media(max-width: 767px) {
  .column_single h4 {
    font-size: 1rem
  }
}

.column_single h4::before {
  content: "●";
  font-size: 0.5rem;
  color: #b4a216
}

.column_single h4::after {
  content: "";
  height: 1px;
  background-color: currentColor;
  flex-grow: 1
}

.column_single article>p,
.column_single article .side_cmn .txt>p {
  font-size: 1rem;
  color: #fff;
  font-weight: 400;
  line-height: 1.9
}

@media(max-width: 767px) {

  .column_single article>p,
  .column_single article .side_cmn .txt>p {
    font-size: 16px
  }
}

.column_single article>p b,
.column_single article .side_cmn .txt>p b {
  -webkit-text-decoration: underline #fff500 solid .2em;
  text-decoration: underline #fff500 solid .2em;
  text-underline-offset: .2em
}

.column_single article>p em,
.column_single article .side_cmn .txt>p em {
  color: #ff0;
  font-weight: 700
}

.column_single article>p strong,
.column_single article .side_cmn .txt>p strong {
  background-color: #b4a216;
  padding: .2em .4em;
  font-weight: 700
}

.column_single .area {
  max-width: 780px;
  background-color: hsla(0, 0%, 100%, .8);
  padding: 1.5rem 3%
}

.column_single .area ul li {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5
}

@media(max-width: 767px) {
  .column_single .area ul li {
    font-size: 16px
  }
}

.column_single .area ul li::before {
  content: "●";
  font-size: 0.5rem;
  color: #b4a216;
  margin-right: 1em;
  position: relative;
  top: -0.3em
}

.column_single .area ul li:not(:last-child) {
  margin-bottom: .5em
}

.column_single article>figure {
  text-align: center
}

.column_single article>figure:not(:last-child) {
  margin-bottom: 2.4rem
}

@media(max-width: 767px) {
  .column_single article>figure:not(:last-child) {
    margin-bottom: 1.8rem
  }
}

.column_single .btn_cmn {
  margin-top: 3.5rem
}

@media(max-width: 767px) {
  .column_single .btn_cmn {
    margin-top: 2rem
  }
}

.account_voice .ul02 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem 2.7777777778%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .account_voice .ul02 {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media(max-width: 767px) {
  .account_voice .ul02 {
    grid-template-columns: repeat(1, 1fr)
  }
}

.account_voice .ul02 li {
  background-color: #fff;
  border-radius: 4px;
  padding: 2rem 6% 0rem;
  box-shadow: 0 3px 6px rgba(0, 0, 0, .16)
}

@media(max-width: 767px) {
  .account_voice .ul02 li {
    padding: .8rem 4% 0rem
  }
}

.account_voice .ul02 li figure {
  margin-bottom: 1.5rem
}

@media(max-width: 767px) {
  .account_voice .ul02 li figure {
    margin-bottom: .7rem
  }
}

.account_voice .ul02 li figure img {
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover
}

.account_voice .ul02 li h3.txt_cmn {
  margin-bottom: .5em
}

.account_voice .ul02 li p.txt01 {
  margin-bottom: 1.2em
}

.account_voice .ul02 li .under {
  border-top: 1px solid #e2e5eb;
  padding: .8rem 2%
}

/*# sourceMappingURL=lower-style.css.map */