@charset "UTF-8";
/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.2
*/
/* =======================
Lazy Blocks
======================= */
/*アイキャッチ*/
@media screen and (max-width: 480px) {
  .top_wrap .more_btn a {
    letter-spacing: 1px !important;
  }
}

.top_wrap .more_btn a:after {
  content: "";
  display: inline-block;
  margin: 0 0 0.1em 0.5em;
  border-top: 9px solid transparent;
  border-bottom: 9px solid transparent;
  border-left: 15px solid #228edc;
  border-right: 0px solid transparent;
}

@media screen and (max-width: 800px) {
  .top_wrap .more_btn a:after {
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-left: 10px solid #228edc;
  }
}

/* 3つのポイント(丸型) */
.ppa-wrap .point3-wrap {
  min-height: 950px;
}

@media screen and (max-width: 800px) {
  .ppa-wrap .point3-wrap {
    min-height: 680px;
  }
}

@media screen and (max-width: 480px) {
  .ppa-wrap .point3-wrap {
    /*min-height: 710px;*/
    min-height: 850px;
  }
}

.reco-wrap .point3-wrap {
  max-height: 770px;
}

.point3-wrap {
  width: 100%;
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
}

.point3-wrap > * {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0;
}

@media screen and (max-width: 1200px) {
  .point3-wrap > * {
    padding: 0 1em;
  }
}

.point3-wrap .img-box {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
  padding: 5em 0 3.5em;
}

@media screen and (max-width: 1200px) {
  .point3-wrap .img-box {
    padding: 5em 1em 3.5em;
  }
}

@media screen and (max-width: 800px) {
  .point3-wrap .img-box {
    padding: 5em 1em 2em;
  }
}

.point3-wrap .img-box > div {
  width: calc(100% / 3);
  margin-right: 5%;
  border-radius: 100%;
  line-height: 0;
  box-shadow: 8px 8px 25px rgba(0, 0, 0, 0.2);
}

.point3-wrap .img-box > div:last-child {
  margin-right: 0;
}

@media screen and (max-width: 800px) {
  .point3-wrap .img-box > div {
    box-shadow: 4px 4px 15px rgba(0, 0, 0, 0.2);
  }
}

@media screen and (max-width: 480px) {
  .point3-wrap .img-box {
    justify-content: center;
  }
  .point3-wrap .img-box > div {
    width: 45%;
  }
  .point3-wrap .img-box > div:nth-child(1) {
    order: 2;
    margin: -40% 0 0;
  }
  .point3-wrap .img-box > div:nth-child(2) {
    order: 1;
    margin: 40% -20% 0 0;
  }
  .point3-wrap .img-box > div:nth-child(3) {
    order: 3;
    margin: 40% 0 0 -20%;
  }
}

.point3-wrap .text-area {
  padding: 2em;
  background-color: #e9eff6;
}

@media screen and (max-width: 1200px) {
  .point3-wrap .text-area {
    margin: 0 1em;
  }
}

@media screen and (max-width: 800px) {
  .point3-wrap .text-area {
    padding: 1.2em;
  }
}

.point3-wrap .text-area .title {
  text-align: center;
  font-size: 40px;
  font-weight: 500;
  color: #228edc;
  line-height: 1.2em;
}

@media screen and (max-width: 800px) {
  .point3-wrap .text-area .title {
    font-size: 20px;
  }
}

.point3-wrap .text-area .text {
  text-align: left;
  font-size: 18px;
  margin-top: 2em;
  background-color: #e9eff6;
}

@media screen and (max-width: 800px) {
  .point3-wrap .text-area .text {
    margin-top: 1em;
    font-size: 14px;
  }
}

/* こんな企業様におすすめ */
.reco-wrap .point3-wrap {
  padding: 8em 0;
}

@media screen and (max-width: 800px) {
  .reco-wrap .point3-wrap {
    padding: 5em 0;
  }
}

.reco-wrap .point3-wrap .heading {
  font-size: 40px;
  font-weight: 500;
  color: #228edc;
  text-align: center;
  line-height: 1.2em;
}

@media screen and (max-width: 800px) {
  .reco-wrap .point3-wrap .heading {
    font-size: 20px;
  }
}

.reco-wrap .point3-wrap .heading span {
  display: inline-block;
  position: relative;
}

.reco-wrap .point3-wrap .heading span:before {
  content: "";
  position: absolute;
  top: -0.6em;
  left: -0.6em;
  width: 50px;
  height: 50px;
  background-image: url(http://m-e-partners.co.jp/wp-content/uploads/2021/06/reco-icon.png);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: contain;
}

@media screen and (max-width: 800px) {
  .reco-wrap .point3-wrap .heading span:before {
    width: 25px;
    height: 25px;
  }
}

.reco-wrap .point3-wrap .img-box {
  padding-bottom: 0;
}

@media screen and (max-width: 800px) {
  .reco-wrap .point3-wrap .img-box {
    padding: 2em 1em 0;
  }
}

/* mepとは */
.mep-wrap .parts2_wrap .parts_title {
  padding-top: 0;
}

.mep-wrap .parts2_wrap ul {
  margin-bottom: 0;
  padding-left: 1em;
}

/* 電力購入契約の仕組み */
.contract_column {
  margin-bottom: 3rem !important;
}

@media screen and (max-width: 800px) {
  .contract_column {
    flex-wrap: nowrap;
    flex-direction: column;
  }
}

.contract_column .contract_wrap {
  max-width: 490px;
  margin: 0;
  padding: 1.5em 1.2em;
  background-color: #e9eff6;
}

@media screen and (max-width: 800px) {
  .contract_column .contract_wrap {
    max-width: none;
    width: 100%;
  }
}

.contract_column .contract_wrap .images {
  max-width: 290px;
  margin: auto;
}

.contract_column .contract_wrap .title {
  margin: 1rem 0;
  font-size: 40px;
  font-weight: 500;
  color: #228edc;
  text-align: center;
}

@media screen and (max-width: 800px) {
  .contract_column .contract_wrap .title {
    font-size: 20px;
  }
}

.contract_column .contract_path {
  margin: 0 3%;
  text-align: center;
}

@media screen and (max-width: 800px) {
  .contract_column .contract_path {
    flex-basis: 100% !important;
    max-width: 320px;
    margin: 1.5em 0;
  }
}

.contract_column .contract_path .wp-block-image.alignfull.size-large {
  margin: 0;
}

@media screen and (max-width: 800px) {
  .contract {
    margin-top: -2em;
    text-align: left;
  }
}

/* 試算事例 */
.sample-box .wp-block-column:not(:first-child) {
  margin-left: 2%;
}

.sample-box .sample-wrap {
  padding: 1em;
  border-radius: 15px;
  background-color: #fff;
}

.sample-box .sample-wrap .name {
  font-size: 24px;
  margin: 0.5em 0;
}

@media screen and (max-width: 800px) {
  .sample-box .sample-wrap .name {
    font-size: 14px;
  }
}

.sample-box .sample-wrap .image {
  line-height: 0;
}

.sample-box .sample-wrap dl {
  margin: 1em 0;
}

.sample-box .sample-wrap dl div {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}

.sample-box .sample-wrap dl div dt {
  flex: 1;
  width: 50%;
  text-align: left;
}

.sample-box .sample-wrap dl div dd {
  flex: 1;
  width: 50%;
  margin: 0;
  text-align: right;
}

.sample-box .sample-wrap .list-title {
  margin: 0.1em 0;
  font-weight: 500;
  text-align: left;
  color: #228edc;
}

.sample-box .sample-wrap table {
  margin: 0.2em 0 0.8em !important;
  border-spacing: 0;
  border-collapse: collapse;
}

.sample-box .sample-wrap table tr th,
.sample-box .sample-wrap table tr td {
  padding: 0.2em 0.4em !important;
  border-color: #9f9fa0;
}

.sample-box .sample-wrap table tr th {
  font-weight: normal;
  text-align: left;
  background-color: #e9eff6;
}

.sample-box .sample-wrap table tr td {
  text-align: right;
  color: #ffbb38;
}

.sample-box .sample-wrap table tr td span {
  display: block;
  color: #2e2e2e;
  font-size: 14px;
}

@media screen and (max-width: 800px) {
  .sample-box .wp-block-columns {
    flex-direction: column;
  }
  .sample-box .wp-block-columns .wp-block-column {
    flex-basis: auto !important;
    width: 100%;
    margin-bottom: 0.5em;
  }
  .sample-box .wp-block-columns .wp-block-column:not(:first-child) {
    margin-left: 0;
  }
  .sample-box .wp-block-columns .sample-wrap {
    max-width: 600px;
    margin: auto;
  }
  .sample-box .wp-block-columns .sample-wrap > * {
    max-width: 500px;
  }
  .sample-box .wp-block-columns .sample-wrap .name {
    margin: 0.5em auto;
  }
  .sample-box .wp-block-columns .sample-wrap .image {
    margin: auto;
    text-align: center;
  }
  .sample-box .wp-block-columns .sample-wrap dl {
    margin: 1em auto;
  }
  .sample-box .wp-block-columns .sample-wrap .list-title {
    margin: 0.1em auto;
  }
  .sample-box .wp-block-columns .sample-wrap table {
    margin: 0.2em auto 0.8em !important;
  }
}

/* よくあるご質問 */
.faq_wrap dt {
  position: relative;
  padding: 0.3em 0.3em 0.3em 1.8em;
  font-size: 24px;
  font-weight: 500;
  text-align: justify;
  background-color: #f5f8fa;
}

.faq_wrap dt:before {
  content: "Q.";
  position: absolute;
  top: 5px;
  left: 15px;
  color: #228edc;
}

@media screen and (max-width: 800px) {
  .faq_wrap dt:before {
    left: 9px;
  }
}

@media screen and (max-width: 800px) {
  .faq_wrap dt {
    padding: 0.3em 0.5em 0.3em 1.8em;
    font-size: 18px;
  }
}

.faq_wrap dd {
  position: relative;
  margin-left: 0;
  margin-bottom: 2.7em;
  padding: 0.3em 0.7em 0.3em 2.5em;
  text-align: justify;
}

.faq_wrap dd .faq_main {
  margin-bottom: 0.5em;
  font-size: 24px;
  font-weight: 500;
}

@media screen and (max-width: 800px) {
  .faq_wrap dd .faq_main {
    margin-bottom: 0;
    font-size: 18px;
  }
}

.faq_wrap dd .faq_main:before {
  content: "A.";
  position: absolute;
  top: 5px;
  left: 18px;
  color: #ffbb38;
}

@media screen and (max-width: 800px) {
  .faq_wrap dd .faq_main:before {
    left: 11px;
  }
}

/* リンクボタン */
.link_button {
  max-width: 500px;
  width: 100%;
  margin: 3em auto 8em;
}

@media screen and (max-width: 800px) {
  .link_button {
    max-width: 290px;
    margin: 0 auto 4em;
  }
}

.link_button a {
  display: block;
  padding: 0.1em 0.2em 0.2em;
  font-size: 29px;
  text-align: center;
  border: solid 3px #228edc;
}

@media screen and (max-width: 800px) {
  .link_button a {
    font-size: 20px;
  }
}

.link_button a:after {
  content: "";
  display: inline-block;
  margin: 0 0 0.1em 0.5em;
  border-top: 9px solid transparent;
  border-bottom: 9px solid transparent;
  border-left: 15px solid #228edc;
  border-right: 0px solid transparent;
}

@media screen and (max-width: 800px) {
  .link_button a:after {
    margin: 0 0 0 0.5em;
    border-top: 7px solid transparent;
    border-bottom: 7px solid transparent;
    border-left: 12px solid #228edc;
  }
}

/* 会社概要 */
.company_wrap {
  border-spacing: 0;
  border-collapse: collapse;
}

.company_wrap th,
.company_wrap td {
  padding: 1.5em;
  border-top: 1px solid #9f9fa0 !important;
  border-color: #9f9fa0;
}

@media screen and (max-width: 800px) {
  .company_wrap th,
  .company_wrap td {
    padding: 0.8em;
    font-size: 14px;
  }
}

.company_wrap th {
  width: 285px;
  text-align: left;
  font-weight: normal;
  border-right: 1px solid #9f9fa0;
  background-color: #e9eff6;
}

@media screen and (max-width: 800px) {
  .company_wrap th {
    width: 120px;
    text-align: center;
  }
}

/* お問い合わせ */
.contact_wrap {
  max-width: 1150px;
  margin: 0 auto;
}

@media screen and (max-width: 800px) {
  .contact_wrap {
    padding: 0 1em;
  }
}

.contact_wrap > div {
  display: flex;
  justify-content: flex-start;
  flex-wrap: nowrap;
  margin-bottom: 1.2em;
}

@media screen and (max-width: 800px) {
  .contact_wrap > div {
    flex-direction: column;
  }
}

.contact_wrap > div dt {
  position: relative;
  max-width: 187px;
  width: 20%;
}

@media screen and (max-width: 800px) {
  .contact_wrap > div dt {
    max-width: none;
    width: 100%;
    margin-bottom: 0.3em;
  }
}

.contact_wrap > div dt.required span {
  position: relative;
}

.contact_wrap > div dt.required span:after {
  content: "*";
  position: absolute;
  top: 80%;
  color: #e60033;
  font-size: 40px;
  font-weight: 100;
  line-height: 0;
}

@media screen and (max-width: 800px) {
  .contact_wrap > div dt.required span:after {
    font-size: 20px;
  }
}

.contact_wrap > div dd {
  width: 100%;
}

@media screen and (max-width: 800px) {
  .contact_wrap > div dd {
    margin: 0;
  }
}

.contact_wrap > div dd textarea {
  max-height: 150px;
}

.contact_wrap > div dd input,
.contact_wrap > div dd select,
.contact_wrap > div dd textarea {
  font-family: "Noto Sans JP", sans-serif !important;
  border-radius: 0;
  border: solid 1px #c7c7c8 !important;
}

@media screen and (max-width: 800px) {
  .contact_wrap > div dd input,
  .contact_wrap > div dd select,
  .contact_wrap > div dd textarea {
    padding: 0.5em;
    font-size: 14px;
  }
}

.contact_wrap > div dd input:focus,
.contact_wrap > div dd select:focus,
.contact_wrap > div dd textarea:focus {
  outline: none;
  border-radius: 0;
}

/*インナーブロック*/
.commonInnerBlock {
  margin: 0 auto;
  max-width: 980px;
}

/*電力管内ブロック*/
.pipelineWrap h4 {
  border-bottom: solid 1px #e9eff6;
  color: #0054a6;
  font-weight: 500;
  font-size: 1.4em;
}

.pipelineWrap h4 .count {
  font-size: 0.8em;
}

.pipelineWrap .pipeline {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: flex-start;
}

@media screen and (max-width: 480px) {
  .pipelineWrap .pipeline {
    font-size: 1em;
  }
}

.pipelineWrap .pipeline .pipelineCard {
  flex: 0 0 calc(33.333% - 20px * 2 / 3);
  box-sizing: border-box;
  padding: 0.9em;
  margin-bottom: 1em;
  background: #f5f8fa;
  border-radius: 0.7em;
  font-size: 0.8em;
}

.pipelineWrap .pipeline .pipelineCard:nth-child(n + 4) {
  display: none;
}

@media screen and (max-width: 480px) {
  .pipelineWrap .pipeline .pipelineCard {
    flex-basis: 100%;
    font-size: 1em;
  }
}

.pipelineWrap .pipeline .pipelineCard h5 {
  margin-top: 0.2em;
  padding: 0;
  border-bottom: none;
  color: #0054a6;
  margin-bottom: 0.2em;
  font-weight: 500;
  font-size: 1.2em;
}

.pipelineWrap .pipeline .pipelineCard h5 a:not([href]) {
  cursor: default;
}

.pipelineWrap .pipeline .pipelineCard h5 a:not([href]):hover {
  opacity: 1;
}

.pipelineWrap .pipeline .pipelineCard .location {
  font-size: 0.8em;
  padding: 0 0 0.6em;
}

.pipelineWrap .pipeline .pipelineCard .status {
  background: #fff;
  padding: 0.5em;
  border-radius: 0.6em;
}

.pipelineWrap .pipeline .pipelineCard .status > div {
  display: flex;
  justify-content: space-between;
  padding: 0.5em 0;
  border-bottom: solid 1px #9f9fa0;
}

.pipelineWrap .pipeline .pipelineCard .status > div .val {
  color: #f7931d;
}

.pipelineWrap .pipeline .pipelineCard .status .totalPeriod {
  width: 100%;
  text-align: right;
  display: block;
  font-size: 0.8em;
  border-bottom: none;
}

.pipelineWrap .pipeline .pipeline-btn-container {
  width: 100%;
  text-align: center;
}

.pipelineWrap .pipeline .pipeline-btn-container .show-more-btn {
  background: none;
  border: solid 1px;
  padding: 0.7em 2em;
  color: #0054a6;
}

.pipelineWrap .pipeline.is-expanded .pipelineCard {
  display: block;
}

@media (max-width: 1024px) {
  .pipelineCard {
    flex: 0 0 calc(50% - 20px / 2);
  }
}

@media (max-width: 768px) {
  .pipelineCard {
    flex: 0 0 100%;
  }
}

/*集計*/
#elResults {
  margin-top: -4em;
}

#elResults .totalresults {
  color: #f7931d;
  font-size: 1.8em;
  margin-bottom: 1em;
  text-align: center;
}

#elResults .totalresults h4 {
  border-top: none;
  border-bottom: none;
  font-weight: 500;
  padding-bottom: 0;
  margin-bottom: 0;
  font-size: 0.8em;
}

#elResults .totalresults .num,
#elResults .totalresults .heading {
  font-size: 0.8em;
}

#elResults .sectionList {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1em;
}

@media screen and (max-width: 480px) {
  #elResults .sectionList {
    grid-template-columns: 1fr;
  }
}

#elResults .sectionList .sectionPanel {
  width: 100%;
  box-sizing: border-box;
  background: #fff;
  color: #0054a6;
  border: solid 3px #0054a6;
  display: flex;
  align-items: center;
  justify-content: space-between;
  text-align: center;
}

#elResults .sectionList .sectionPanel > div {
  width: 100%;
}

@media screen and (max-width: 480px) {
  #elResults .sectionList .sectionPanel > div:first-child {
    display: flex;
    justify-content: space-between;
    padding: 0.6em 2.6em;
  }
}

#elResults .sectionList .sectionPanel > div.deco {
  height: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  width: 4.1em;
  font-size: 0.8em;
  background: #0054a6;
  color: #fff;
}

@media screen and (max-width: 480px) {
  #elResults .sectionList .sectionPanel > div.deco {
    width: 4em;
  }
}

#elResults .sectionList .sectionPanel > div.deco > div {
  width: 100%;
  text-align: center;
}

#elResults .sectionList .sectionPanel > div.deco .icon {
  background-image: url("data:image/svg+xml,%3Csvg width='18' height='19' viewBox='0 0 18 19' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M15.4102 8.81153C16.0119 8.34706 16.8798 8.40424 17.4141 8.96778C17.9484 9.53148 17.9591 10.4015 17.4629 10.9775L17.3574 11.0889L9.97171 18.0889C9.68067 18.3646 9.30814 18.4989 8.93655 18.4981C8.92841 18.4983 8.92028 18.4979 8.91214 18.4981C8.904 18.4979 8.89586 18.4983 8.88772 18.4981C8.51648 18.4987 8.1443 18.3643 7.85354 18.0889L0.467801 11.0889L0.362332 10.9775C-0.133836 10.4015 -0.123135 9.53147 0.41116 8.96778C0.945406 8.40422 1.81329 8.34709 2.41507 8.81153L2.53225 8.91114L8.91214 14.959L15.293 8.91114L15.4102 8.81153ZM15.4102 0.311532C16.0119 -0.15294 16.8798 -0.0957586 17.4141 0.467782C17.9484 1.03148 17.9591 1.90145 17.4629 2.47755L17.3574 2.58888L9.97171 9.58888C9.68067 9.86456 9.30814 9.99894 8.93655 9.99806C8.92841 9.99833 8.92028 9.99791 8.91214 9.99806C8.904 9.9979 8.89586 9.99834 8.88772 9.99806C8.51648 9.99868 8.1443 9.86431 7.85354 9.58888L0.467801 2.58888L0.362332 2.47755C-0.133836 1.90146 -0.123135 1.03147 0.41116 0.467782C0.945406 -0.0957801 1.81329 -0.152915 2.41507 0.311532L2.53225 0.411141L8.91214 6.45899L15.293 0.411141L15.4102 0.311532Z' fill='white'/%3E%3C/svg%3E%0A");
  color: #fff;
  height: 1.3em;
  background-repeat: no-repeat;
  background-position: center;
  width: 100%;
  background-size: contain;
}

#elResults .sectionList .sectionPanel h5 {
  margin-top: 0;
  margin-bottom: 0;
  font-weight: 500;
  padding-bottom: 0em;
}

#elResults .sectionList .sectionPanel .val {
  color: #f7931d;
  font-size: 1.6em;
}

/*インナーブロック用*/
.innerWrap {
  padding: 0 1em;
}

/* =======================
ベース設定
======================= */
.demo_class {
  display: none;
}

body {
  font-size: 18px;
}

@media screen and (max-width: 800px) {
  body {
    font-size: 14px !important;
  }
}

#container {
  background-color: #fff;
}

a {
  color: #228edc;
  text-decoration: none;
  transition: 0.3s;
}

a:hover {
  opacity: 0.6;
  color: #228edc;
}

.pcnone {
  display: none;
}

@media screen and (max-width: 800px) {
  .pcnone {
    display: block;
  }
}

.spnone {
  display: block;
}

@media screen and (max-width: 800px) {
  .spnone {
    display: none;
  }
}

/* =======================
cocoon設定
======================= */
/* ヘッダー */
@media screen and (max-width: 800px) {
  #header-container-in {
    display: none;
  }
  ul.mobile-header-menu-buttons.mobile-menu-buttons.has-logo-button li.search-menu-button.menu-button {
    opacity: 0;
  }
}

/* ハンバーガーメニュー */
#navi-menu-content {
  background-color: #f5f8fa;
}

#navi-menu-content .menu-close-button {
  max-width: 50px;
  max-height: 70px;
  padding: 0.5em 0 0 0.3em;
  text-align: left;
}

#navi-menu-content .menu-close-button .fa-remove:before,
#navi-menu-content .menu-close-button .fa-close:before,
#navi-menu-content .menu-close-button .fa-times:before {
  content: "" !important;
  display: block;
  width: 40px;
  height: 50px;
  background-image: url("data:image/svg+xml,%3Csvg width='30' height='54' viewBox='0 0 30 54' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3.71 35.71V36.4H1.82V35.71H3.71ZM1.82 37.8V37.06H3.71V37.8H1.82ZM4.59 38.49V35.01H0.9V43.79H1.82V38.49H4.59ZM7.5 40.31V39.55H6.07V38.72H5.23V39.55H2.53V40.31H4.84C4.21 41.1 3.17 41.87 2.24 42.26C2.41 42.42 2.68 42.72 2.81 42.93C3.65 42.51 4.56 41.77 5.23 40.97V42.65C5.23 42.75 5.19 42.78 5.07 42.78C4.95 42.78 4.56 42.78 4.17 42.77C4.28 42.99 4.4 43.32 4.45 43.55C5.04 43.55 5.43 43.54 5.71 43.41C5.99 43.27 6.07 43.06 6.07 42.66V40.31H7.5ZM6.27 37.82V37.06H8.22V37.82H6.27ZM8.22 35.71V36.4H6.27V35.71H8.22ZM9.16 35.01H5.38V38.51H8.22V42.6C8.22 42.78 8.16 42.84 7.97 42.85C7.78 42.85 7.12 42.86 6.5 42.83C6.64 43.09 6.78 43.52 6.82 43.78C7.71 43.78 8.3 43.77 8.67 43.62C9.04 43.46 9.16 43.17 9.16 42.61V35.01ZM16.08 36.02L15.38 36.32C15.73 36.81 16.04 37.37 16.31 37.94L17.03 37.63C16.8 37.15 16.35 36.41 16.08 36.02ZM17.4 35.5L16.71 35.82C17.06 36.29 17.38 36.83 17.67 37.4L18.38 37.06C18.14 36.6 17.67 35.87 17.4 35.5ZM12.14 35.23C12.21 35.56 12.25 35.96 12.25 36.37C12.25 37.33 12.15 39.88 12.15 41.29C12.15 42.93 13.15 43.58 14.66 43.58C16.88 43.58 18.21 42.3 18.87 41.36L18.16 40.49C17.45 41.55 16.42 42.53 14.68 42.53C13.83 42.53 13.17 42.17 13.17 41.13C13.17 39.75 13.25 37.47 13.29 36.37C13.31 36.02 13.35 35.6 13.4 35.24L12.14 35.23ZM24.96 42.55C24.29 42.55 23.78 42.28 23.78 41.85C23.78 41.54 24.08 41.3 24.49 41.3C25.15 41.3 25.58 41.78 25.66 42.51C25.44 42.54 25.21 42.55 24.96 42.55ZM27.05 35.38C26.94 35.42 26.76 35.44 26.42 35.48C25.88 35.53 23.64 35.59 23.12 35.59C22.88 35.59 22.58 35.57 22.33 35.54L22.36 36.57C22.58 36.54 22.84 36.52 23.09 36.5C23.61 36.47 25.3 36.4 25.82 36.38C25.32 36.81 24.18 37.76 23.63 38.22C23.05 38.7 21.81 39.74 21.04 40.37L21.77 41.11C22.94 39.87 23.88 39.13 25.46 39.13C26.67 39.13 27.61 39.79 27.61 40.72C27.61 41.44 27.24 41.97 26.57 42.27C26.43 41.32 25.72 40.53 24.49 40.53C23.52 40.53 22.85 41.21 22.85 41.94C22.85 42.83 23.77 43.45 25.14 43.45C27.36 43.45 28.63 42.32 28.63 40.73C28.63 39.35 27.4 38.33 25.74 38.33C25.35 38.33 24.97 38.37 24.57 38.5C25.27 37.92 26.47 36.87 26.98 36.51C27.16 36.38 27.39 36.23 27.59 36.1L27.05 35.38Z' fill='%232E2E2E'/%3E%3Cpath d='M27 1L2 26' stroke='%232E2E2E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M27 26L2 0.999999' stroke='%232E2E2E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}

#navi-menu-content .menu-drawer {
  padding: 0 1.8em 30px;
}

@media screen and (max-width: 480px) {
  #navi-menu-content .menu-drawer {
    margin-top: 0.5em;
    padding: 0 0.8em 30px;
    font-size: 14px;
  }
}

#navi-menu-content .menu-drawer li:after {
  content: "";
  display: block;
  height: 1px;
  background-image: linear-gradient(to right, #9f9fa0, #9f9fa0 3px, transparent 3px, transparent 8px);
  background-size: 5px 1px;
  background-repeat: repeat-x;
}

#navi-menu-content .menu-drawer li a {
  position: relative;
  padding: 1.2em 6px;
}

#navi-menu-content .menu-drawer li a:after {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 3px;
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  margin: auto;
  border-top: 1px solid #2e2e2e;
  border-right: 1px solid #2e2e2e;
  transform: rotate(45deg);
}

/* フッター */
@media screen and (max-width: 800px) {
  #footer .menu-footer {
    flex-direction: column;
  }
  #footer .menu-footer .menu-item {
    width: 100%;
    margin: 5px;
  }
}

/* =======================
コンテンツ設定
======================= */
/* 見出し帯 */
.article h3 {
  margin: 0 0 2em !important;
  padding: 0.5em;
  font-size: 40px;
  color: #fff;
  background-color: #228edc;
  border: none;
}

@media screen and (max-width: 800px) {
  .article h3 {
    margin: 0 0 1em !important;
    font-size: 20px;
    font-weight: 500 !important;
  }
}

/* 背景ブルー */
.bg_blue {
  background-color: #f5f8fa;
}

/* 背景グレー */
.bg_gray {
  background-color: #e9eff6;
}

/* インナーボックス */
.content_box {
  margin-bottom: 0 !important;
}

.content_box > * {
  max-width: 1200px;
  margin: 0 auto;
  padding: 8em 0;
}

@media screen and (max-width: 1200px) {
  .content_box > * {
    padding: 8em 1em;
  }
}

@media screen and (max-width: 800px) {
  .content_box > * {
    padding: 5em 1em;
  }
}

/* 注意書き */
.caution {
  margin: 2em 0;
  text-align: center;
  font-size: 18px;
}

@media screen and (max-width: 800px) {
  .caution {
    text-align: left;
    font-size: 14px;
  }
}

/* お問い合わせフォーム */
form.wpcf7-form .submit_button {
  position: relative;
  max-width: 500px;
  width: 100%;
  margin: 4em auto 0 !important;
  display: flex;
  transition: 0.3s;
}

@media screen and (max-width: 800px) {
  form.wpcf7-form .submit_button {
    max-width: 290px;
  }
}

form.wpcf7-form .submit_button:hover {
  opacity: 0.6;
  color: #228edc;
}

form.wpcf7-form .submit_button:after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 17%;
  width: 0;
  height: 0;
  margin: auto;
  border-top: 9px solid transparent;
  border-bottom: 9px solid transparent;
  border-left: 15px solid #228edc;
  border-right: 0px solid transparent;
}

@media screen and (max-width: 800px) {
  form.wpcf7-form .submit_button:after {
    right: 10%;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-left: 10px solid #228edc;
  }
}

form.wpcf7-form .submit_button input[type="submit"] {
  padding: 0.2em 0.2em 0.3em !important;
  font-size: 29px;
  font-family: "Noto Sans JP", sans-serif;
  text-align: center;
  color: #228edc;
  border: solid 3px #228edc !important;
  background-color: transparent !important;
}

@media screen and (max-width: 800px) {
  form.wpcf7-form .submit_button input[type="submit"] {
    padding: 0.2em 0.2em 0.3em !important;
    font-size: 20px;
  }
}

form.wpcf7-form .submit_button .ajax-loader {
  position: absolute !important;
  bottom: -120px;
  left: 0;
  right: 0;
  margin: auto !important;
}

form.wpcf7-form .wpcf7-response-output {
  color: #228edc;
  text-align: center;
  border: none !important;
  font-size: 14px;
}

/*recapture位置調整*/
.grecaptcha-badge {
  bottom: 70px !important;
}
