@charset "UTF-8";

/* ==========================================================================
   page.css
   中ページ専用CSS（トップページ以外）
   ========================================================================== */

.l-pageHeader {
  position: relative;
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
}
@media screen and (min-width: 820px), print {
  .l-pageHeader {
    padding-left: 10rem;
    padding-right: 10rem;
  }
}
@media screen and (max-width: 819px) {
  .l-pageHeader {
    padding-left: 0;
    padding-right: 0;
  }
}
.l-pageHeader > *:first-child {
  margin-top: 0 !important;
}
.l-pageHeader > *:last-child {
  margin-bottom: 0 !important;
}
.l-pageHeader::after {
  right: 0;
  bottom: 0;
  z-index: 1;
  position: absolute;
  content: "";
  display: block;
  background-image: url(../img/common/page-header-bg.svg);
  background-repeat: no-repeat;
  background-position: right bottom;
  background-size: 100%;
}
@media screen and (min-width: 820px), print {
  .l-pageHeader::after {
    width: 57.6rem;
    height: 18.8rem;
  }
}
@media screen and (max-width: 819px) {
  .l-pageHeader::after {
    width: 24rem;
    height: 7.8rem;
  }
}

.l-pageHeader__cont {
  z-index: 2;
  position: relative;
}
@media screen and (min-width: 820px), print {
  .l-pageHeader__cont {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding: 2rem 0 4rem;
  }
}
@media print {
  .l-pageHeader__cont {
    margin-top: 80px;
  }
}
@media screen and (max-width: 819px) {
  .l-pageHeader__cont {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding: 3rem 4rem;
  }
}

.l-pageHeader__title {
  display: flex;
  align-items: center;
  margin-bottom: 2rem;
  padding-right: 3rem;
}
.l-pageHeader__title .__icon {
  display: inline-block;
  width: 100%;
}
.l-pageHeader__title .__icon img {
  width: 100%;
  height: auto;
}
@media screen and (min-width: 820px), print {
  .l-pageHeader__title .__icon {
    max-width: 5rem;
    min-width: 5rem;
    margin-right: 2rem;
  }
  .l-pageHeader__title--about .__icon {
    max-width: 6.5rem;
    min-width: 6.5rem;
  }
  .l-pageHeader__title--features .__icon {
    max-width: 6.5rem;
    min-width: 6.5rem;
  }
  .l-pageHeader__title--case .__icon {
    max-width: 4.5rem;
    min-width: 4.5rem;
  }
  .l-pageHeader__title--company .__icon {
    max-width: 4.2rem;
    min-width: 4.2rem;
  }
}
@media screen and (max-width: 819px) {
  .l-pageHeader__title .__icon {
    max-width: 3rem;
    min-height: 3rem;
    margin-right: 1rem;
  }
  .l-pageHeader__title--about .__icon {
    max-width: 3.5rem;
    min-width: 3.5rem;
  }
  .l-pageHeader__title--features .__icon {
    max-width: 3.5rem;
    min-width: 3.5rem;
  }
  .l-pageHeader__title--case .__icon {
    max-width: 2.8rem;
    min-width: 2.8rem;
  }
  .l-pageHeader__title--company .__icon {
    max-width: 2.7rem;
    min-width: 2.7rem;
  }
}
.l-pageHeader__title .__text {
  display: inline-block;
  line-height: 1.5;
  font-weight: bold;
  white-space: nowrap;
}
@media screen and (min-width: 820px), print {
  .l-pageHeader__title .__text {
    font-size: 4rem;
  }
}
@media screen and (max-width: 819px) {
  .l-pageHeader__title .__text {
    font-size: 2.8rem;
  }
}

.l-pageHeader__button {
  width: 100%;
}
@media screen and (min-width: 820px), print {
  .l-pageHeader__button {
    max-width: 22rem;
    margin-left: 4rem;
  }
}
@media screen and (max-width: 819px) {
  .l-pageHeader__button {
    max-width: inherit;
    width: -moz-fit-content;
    width: fit-content;
    margin-top: 2rem;
  }
}
@media screen and (min-width: 820px), print {
  .l-pageHeader__cont__txt {
    width: 100%;
    min-height: 60px;
    text-align: center;
  }
}
@media screen and (max-width: 819px) {
  .l-pageHeader__cont__txt {
    margin-bottom: 1.8rem;

  }
}
@media screen and (min-width: 820px), print {
  .l-pageHeader__cont__btnWrap {
    display: flex;
    gap: 1rem;
  }
  .l-pageHeader__cont__btnWrap .c-button-square {
    min-width: 350px;
  }
  .l-pageHeader__cont__btnWrap .c-button-square.--contact {
    min-width: 230px;
  }
}
@media screen and (max-width: 819px) {
  .l-pageHeader__cont__btnWrap {

  }
  .l-pageHeader__cont__btnWrap .c-button-square {
    min-width: 250px;
  }
  .l-pageHeader__cont__btnWrap .c-button-square .__label {
    line-height: 1.2 !important;
  }
  .l-pageHeader__cont__btnWrap .c-button-square:first-child {
    margin-bottom: 1rem;
  }
}


.p-mediaDefWrap {
  
}
.p-mediaDefWrap.p-mediaDef__line .p-mediaDef {
  padding: 3rem;
  background-color: #fff;
  border: 3px solid #ace5e4;
}
@media screen and (max-width: 819px) {
  .p-mediaDefWrap.p-mediaDef__line .p-mediaDef {
    padding: 2rem 2rem 0;
  }
}
.p-mediaDef {
  margin-bottom: 2rem;
}
.p-mediaDef__imgWrap {
  width: 25rem;
}
@media screen and (max-width: 819px) {
  .p-mediaDef__imgWrap {
    width: 100%;
    margin-bottom: 2rem;
  }
  .p-mediaDef__imgWrap > img {
    width: 100%
  }
}
.p-mediaDef__col {
  display: flex;
  flex-wrap: wrap;
  position: relative;
}
@media screen and (max-width: 819px) {
  .p-mediaDef__col {
    margin-bottom: 3rem;
  }
  .p-mediaDef__col:last-child {
    margin-bottom: 0;
  }
}
.p-mediaDef__body {
  flex: 1;
  margin-left: 3rem;
}
@media screen and (max-width: 819px) {
  .p-mediaDef__body {
    margin-left: 0;
  }
}
.p-mediaDef__body .p-mediaDef__ttl {
  font-size: 2.2rem;
  font-weight: bold;
  margin-bottom: 1rem;
}
@media screen and (max-width: 819px) {
  .p-mediaDef__body .p-mediaDef__ttl {
    font-size: 1.8rem;
  }
}
.p-mediaDef__txt {
  font-size: 1.6rem;
}



@media screen and (max-width: 819px) {
  .c-breadcrumbs {
    overflow-x: scroll;
  }
}

.c-breadcrumbs__list {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  margin: 0;
  list-style: none;
}
@media screen and (min-width: 820px), print {
  .c-breadcrumbs__list {
    padding: 2rem 0;
  }
}
@media screen and (max-width: 819px) {
  .c-breadcrumbs__list {
    flex-wrap: nowrap;
    padding: 1rem 2rem;
  }
}
.c-breadcrumbs__list li {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  line-height: 1;
  margin-right: 0.5rem;
  font-size: 1.2rem;
  white-space: nowrap;
}
.c-breadcrumbs__list li::after {
  content: ">";
  display: inline-block;
  margin-left: 0.5rem;
}
.c-breadcrumbs__list li:last-child::after {
  display: none;
}
.c-breadcrumbs__list li a {
  color: currentColor;
}
.c-breadcrumbs__list li span {
  opacity: 0.5;
}


.c-pagenation {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  margin: 0;
  list-style: none;
}
@media screen and (min-width: 820px), print {
  .c-pagenation {
    margin-bottom: 6.8rem;
  }
}
@media screen and (max-width: 819px) {
  .c-pagenation {
    margin-bottom: 4rem;
  }
}
@media screen and (min-width: 820px), print {
  .c-pagenation li {
    padding: 0 0.6rem;
    margin-bottom: 1.2rem;
  }
}
@media screen and (max-width: 819px) {
  .c-pagenation li {
    padding: 0 0.6rem;
    margin-bottom: 0.8rem;
  }
}
.c-pagenation li a {
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  background-image: url(../img/common/pagenation-bg--off.svg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  font-weight: bold;
  color: #333333;
  text-align: center;
}
@media screen and (min-width: 820px), print {
  .c-pagenation li a {
    width: 4rem;
    height: 4.6rem;
    font-size: 2rem;
  }
}
@media screen and (max-width: 819px) {
  .c-pagenation li a {
    width: 3rem;
    height: 3.5rem;
    font-size: 1.2rem;
  }
}
.c-pagenation li a:active, .c-pagenation li a:hover {
  background-image: url(../img/common/pagenation-bg--on.svg);
  color: #FFFFFF;
  text-decoration: none;
}
.c-pagenation li.is-selected a {
  background-image: url(../img/common/pagenation-bg--on.svg);
  color: #FFFFFF;
  text-decoration: none;
}
.c-pagenation .c-pagenation__prev a,
.c-pagenation .c-pagenation__next a {
  display: block;
  overflow: hidden;
  background-image: url(../img/common/pagenation-arrow.svg);
  background-repeat: no-repeat;
  background-position: center center;
  white-space: nowrap;
  text-align: left;
  text-indent: 100%;
}
@media screen and (min-width: 820px), print {
  .c-pagenation .c-pagenation__prev a,
  .c-pagenation .c-pagenation__next a {
    width: 2.2rem;
    height: 2.2rem;
    background-size: 1rem 1.6rem;
  }
}
@media screen and (max-width: 819px) {
  .c-pagenation .c-pagenation__prev a,
  .c-pagenation .c-pagenation__next a {
    width: 1.6rem;
    height: 1.6rem;
    background-size: 0.5rem 0.8rem;
  }
}
.c-pagenation .c-pagenation__prev a:active, .c-pagenation .c-pagenation__prev a:hover,
.c-pagenation .c-pagenation__next a:active,
.c-pagenation .c-pagenation__next a:hover {
  background-image: url(../img/common/pagenation-arrow.svg);
  text-align: left;
}
.c-pagenation .c-pagenation__prev a {
  transform: rotate(180deg);
}
.c-pagenation .c-pagenation__first a,
.c-pagenation .c-pagenation__last a {
  display: block;
  overflow: hidden;
  background-image: url(../img/common/pagenation-arrow-double.svg);
  background-repeat: no-repeat;
  background-position: center center;
  white-space: nowrap;
  text-align: left;
  text-indent: 100%;
}
@media screen and (min-width: 820px), print {
  .c-pagenation .c-pagenation__first a,
  .c-pagenation .c-pagenation__last a {
    width: 2rem;
    height: 2.2rem;
    background-size: 2rem 1.6rem;
  }
}
@media screen and (max-width: 819px) {
  .c-pagenation .c-pagenation__first a,
  .c-pagenation .c-pagenation__last a {
    width: 1.4rem;
    height: 1.6rem;
    background-size: 1rem 0.8rem;
  }
}
.c-pagenation .c-pagenation__first a:active, .c-pagenation .c-pagenation__first a:hover,
.c-pagenation .c-pagenation__last a:active,
.c-pagenation .c-pagenation__last a:hover {
  background-image: url(../img/common/pagenation-arrow-double.svg);
  text-align: left;
}
.c-pagenation .c-pagenation__first a {
  transform: rotate(180deg);
}
@media screen and (min-width: 820px), print {
  .c-categoryTag {
    margin-bottom: 2.8rem;
  }
}
@media screen and (max-width: 819px) {
  .c-categoryTag {
    margin-bottom: 3.2rem;
  }
}

.c-categoryTag__list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding: 0;
  margin: 0;
  list-style: none;
}
@media screen and (min-width: 820px), print {
  .c-categoryTag__list {
    justify-content: center;
  }
}
@media screen and (max-width: 819px) {
  .c-categoryTag__list {
    justify-content: stretch;
  }
}
@media screen and (min-width: 820px), print {
  .c-categoryTag__list li {
    padding: 0 0.6rem;
    margin-bottom: 1.2rem;
  }
}
@media screen and (max-width: 819px) {
  .c-categoryTag__list li {
    padding: 0 0.8rem 0 0;
    margin-bottom: 0.8rem;
  }
}
.c-categoryTag__list li span,
.c-categoryTag__list li a {
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  background-color: #FFFFFF;
  border: 1px solid #49BDBD;
  border-radius: 10rem;
  color: #49BDBD;
  font-weight: bold;
  text-align: center;
  white-space: nowrap;
}
@media screen and (min-width: 820px), print {
  .c-categoryTag__list li span,
  .c-categoryTag__list li a {
    padding: 1rem 1.5rem;
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 819px) {
  .c-categoryTag__list li span,
  .c-categoryTag__list li a {
    padding: 0.6rem 0.9rem;
    font-size: 1.2rem;
  }
}
.c-categoryTag__list li span:active, .c-categoryTag__list li span:hover,
.c-categoryTag__list li a:active,
.c-categoryTag__list li a:hover {
  background-color: #49BDBD;
  color: #FFFFFF;
  text-decoration: none;
}
.c-categoryTag__list li.-active span,
.c-categoryTag__list li.-active a {
  background-color: #49BDBD;
  color: #FFFFFF;
  text-decoration: none;
}


.c-numList {
  padding: 0;
}
.c-numList.c-numList__w80 {
  max-width: 80%;
  width: 100%;
  margin: auto;
}
@media screen and (max-width: 819px) {
  .c-numList.c-numList__w80 {
    max-width: 100%;
  }
}
.c-numList > li {
  list-style: none;
}
.c-numList > li .c-numList__header {
  display: flex;
  margin-bottom: 1rem;
}
.c-numList > li .c-numList__num {
  display: block;
  width: 40px;
  height: 40px;
  margin: .2rem 1rem 0 0;
  color: #fff;
  font-size: 2.5rem;
  font-weight: bold;
  line-height: 1.5;
  text-align: center;
  background: url("../img/common/hw-no-bg.svg") center center no-repeat;
  background-size: contain;
}
@media screen and (max-width: 819px) {
  .c-numList > li .c-numList__num {
    width: 35px;
    margin-right: .5rem;
    height: 35px;
    font-size: 2rem;
    line-height: 1.7;
  }
}
.c-numList > li .c-numList__ttl {
  flex: 1;
  font-size: 2.5rem;
  font-weight: bold;
  margin: .5rem 0 0;
}
@media screen and (max-width: 819px) {
  .c-numList > li .c-numList__ttl {
    font-size: 2rem;
    margin-top: .5rem;
  }
}
.c-numList > li .c-numList__body {
  padding-left: 5rem;
}
@media screen and (max-width: 819px) {
  .c-numList > li .c-numList__body {
    padding-left: 4rem;
  }
}


.c-horizTable {

}
.c-horizTable th,
.c-horizTable td {
  border: 1px solid #ccc;
  padding: 2rem 3rem;
}
.c-horizTable th {
  background-color: #eee;
}
.c-horizTable.c-horizTable__profile {
  width: 80%;
  margin: auto;
}
@media screen and (max-width: 819px) {
  .c-horizTable.c-horizTable__profile {
    width: 100%;
  }
}
.c-horizTable.c-horizTable__profile th,
.c-horizTable.c-horizTable__profile td {
  padding-right: 2rem;
  padding-left: 2rem;
}
.c-horizTable.c-horizTable__profile th {
  width: 23%;
}
.c-horizTable.c-horizTable__profile td a {
  color: #333;
  text-decoration: underline;
}
.c-horizTable.c-horizTable__profile td a:focus,
.c-horizTable.c-horizTable__profile td a:hover {
  text-decoration: none;
}
@media screen and (max-width: 819px) {
  .c-horizTable.c-horizTable__profile th,
  .c-horizTable.c-horizTable__profile td {
    display: block;
    width: 100%;
    padding: 1rem 2rem;
    border-bottom: 0;
  }
}
@media screen and (max-width: 819px) {
  .c-horizTable {
    border-bottom: 1px solid #ccc;
  }
}


.c-googleMap {
  width: 100%;
  height: 500px;
  border: 0;
}
@media screen and (max-width: 819px) {
  .c-googleMap {
    height: 350px;
  }
}


.c-lv2HeadingTtl {
  position: relative;
  margin-bottom: 3rem;
  padding-left: 2rem;
  font-size: 2.6rem;
  font-weight: bold;
}
@media screen and (max-width: 819px) {
  .c-lv2HeadingTtl {
    margin-bottom: 2rem;
    padding-left: 1rem;
    font-size: 1.8rem;
  }
}
.c-lv2HeadingTtl::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: .5rem;
  height: 3rem;
  background-color: #1fbebd;
}
@media screen and (max-width: 819px) {
  .c-lv2HeadingTtl::before {
    top: .5rem;
    width: .3rem;
    height: 2rem;
  }
}



/* Flocss Project */
.p-article > *:last-child {
  margin-bottom: 0 !important;
}
.p-article strong {
  font-weight: bold;
}
.p-article em {
  font-weight: bold;
  font-style: normal;
}
.p-article ul {
  list-style: disc;
}
.p-article ol {
  list-style-type: decimal;
}
.p-article h2 {
  margin: 0;
  font-weight: 700;
  line-height: 1.4;
}
@media screen and (min-width: 820px), print {
  .p-article h2 {
    margin-top: 6rem;
    margin-bottom: 3rem;
    font-size: 2.6rem;
  }
}
@media screen and (max-width: 819px) {
  .p-article h2 {
    margin-top: 4rem;
    margin-bottom: 2rem;
    font-size: 1.8rem;
  }
}
.p-article h2:first-child {
  margin-top: 0;
}
.p-article h3 {
  margin: 0;
  font-style: normal;
  font-weight: 700;
  line-height: 1.6;
}
@media screen and (min-width: 820px), print {
  .p-article h3 {
    margin-top: 4rem;
    margin-bottom: 2rem;
    font-size: 2rem;
  }
}
@media screen and (max-width: 819px) {
  .p-article h3 {
    margin-top: 4rem;
    margin-bottom: 2rem;
    font-size: 1.6rem;
  }
}
.p-article h3:first-child {
  margin-top: 0;
}
.p-article h2 + h3 {
  margin-top: 0;
}
.p-article h4 {
  margin: 0;
  font-weight: 700;
  line-height: 1.7;
}
@media screen and (min-width: 820px), print {
  .p-article h4 {
    margin-top: 4rem;
    margin-bottom: 2rem;
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 819px) {
  .p-article h4 {
    margin-top: 4rem;
    margin-bottom: 2rem;
    font-size: 1.6rem;
  }
}
.p-article h5 {
  margin-top: 0;
  font-size: 1em;
}
@media screen and (min-width: 820px), print {
  .p-article h5 {
    margin-top: 4rem;
    margin-bottom: 2rem;
  }
}
@media screen and (max-width: 819px) {
  .p-article h5 {
    margin-top: 4rem;
    margin-bottom: 2rem;
  }
}
.p-article h6 {
  margin-top: 0;
  font-size: 1em;
}
@media screen and (min-width: 820px), print {
  .p-article h6 {
    margin-top: 2rem;
    margin-bottom: 2rem;
  }
}
@media screen and (max-width: 819px) {
  .p-article h6 {
    margin-top: 2rem;
    margin-bottom: 2rem;
  }
}

@media screen and (min-width: 820px), print {
  .p-section {
    margin-bottom: 12.8rem;
  }
}
@media screen and (max-width: 819px) {
  .p-section {
    margin-bottom: 6rem;
  }
}
.p-section > *:last-child {
  margin-bottom: 0;
}


.c-otherPageUrl__list {
  padding: 0;
  text-align: center;
}
.c-otherPageUrl__list > li {
  list-style: none;
}
.c-otherPageUrl__list > li a {
  font-size: 1.8rem;
  color: #333;
  text-decoration: underline;
}
@media screen and (max-width: 819px) {
  .c-otherPageUrl__list > li a {
    font-size: 1.6rem;
  }
}
.c-otherPageUrl__list > li a:focus,
.c-otherPageUrl__list > li a:hover {
  text-decoration: none;
}


.p-calendar-title {
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
}
@media screen and (min-width: 820px), print {
  .p-calendar-title {
    margin-bottom: 4rem;
    font-size: 2rem;
  }
}
@media screen and (max-width: 819px) {
  .p-calendar-title {
    margin-bottom: 4rem;
    font-size: 1.4rem;
  }
}

@media screen and (max-width: 819px) {
  .p-calendar-wrap {
    width: calc(100% + 4rem);
    margin-left: -2rem;
    margin-right: -2rem;
  }
}

@media screen and (min-width: 820px), print {
  .p-formCont {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
  }
}
.p-formCont > *:last-child {
  margin-bottom: 0 !important;
}

@media screen and (min-width: 820px), print {
  .p-formCont__column {
    max-width: calc(50% - 4rem);
    min-width: calc(50% - 4rem);
  }
}
@media screen and (max-width: 819px) {
  .p-formCont__column {
    margin-bottom: 4rem;
  }
}

.p-formCont__contents {
  margin-bottom: 4rem;
}
.p-formCont__contents > *:last-child {
  margin-bottom: 0 !important;
}

.p-formCont__summary {
  background-color: #FFFFFF;
  border-radius: 2rem;
}
@media screen and (min-width: 820px), print {
  .p-formCont__summary {
    padding: 4rem;
  }
}
@media screen and (max-width: 819px) {
  .p-formCont__summary {
    padding: 2rem;
  }
}
.p-formCont__summary > *:last-child {
  margin-bottom: 0 !important;
}
.p-formCont__summary h2 {
  margin-bottom: 1.2rem;
  font-weight: bold;
}
@media screen and (min-width: 820px), print {
  .p-formCont__summary h2 {
    font-size: 2rem;
  }
}
@media screen and (max-width: 819px) {
  .p-formCont__summary h2 {
    font-size: 1.6rem;
  }
}
.p-formCont__summary ul {
  padding: 0;
  margin-left: 0;
}
.p-formCont__summary ul li {
  position: relative;
  padding-left: 1.2em;
}
@media screen and (min-width: 820px), print {
  .p-formCont__summary ul li {
    margin-bottom: 0.8rem;
  }
}
@media screen and (max-width: 819px) {
  .p-formCont__summary ul li {
    margin-bottom: 0;
  }
}
.p-formCont__summary ul li::before {
  position: absolute;
  content: "・";
  top: 0;
  left: 0;
  color: #49BDBD;
}
.p-formCont__summary ul li:last-child {
  margin-bottom: 0;
}

.p-form__box {
  background-color: #FFFFFF;
  border-radius: 2rem;
}
@media screen and (min-width: 820px), print {
  .p-form__box {
    padding: 4rem;
  }
}
@media screen and (max-width: 819px) {
  .p-form__box {
    padding: 2rem;
  }
}
.p-form__box > *:last-child {
  margin-bottom: 0 !important;
}

@media screen and (min-width: 820px), print {
  .p-form__group {
    display: flex;
    align-items: flex-start;
    justify-content: stretch;
    margin-bottom: 4rem;
  }
}
@media screen and (max-width: 819px) {
  .p-form__group {
    margin-bottom: 2rem;
  }
}

.p-form__group__head {
  display: flex;
  align-items: center;
  line-height: 1.6;
}
@media screen and (min-width: 820px), print {
  .p-form__group__head {
    justify-content: stretch;
    max-width: 22rem;
    min-width: 22rem;
    padding: 1rem 0;
    border-top: 1px solid transparent;
    border-bottom: 1px solid transparent;
    margin-right: 2rem;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 819px) {
  .p-form__group__head {
    justify-content: flex-start;
    margin-bottom: 1rem;
    font-size: 1.4rem;
  }
}

.p-form__group__field {
  width: 100%;
  line-height: 1.7;
}
.p-form__group__field input[type=text],
.p-form__group__field input[type=email],
.p-form__group__field input[type=tel],
.p-form__group__field input[type=url],
.p-form__group__field textarea {
  width: 100%;
  border: 1px solid #333333;
  border-radius: 0.4rem;
}
@media screen and (min-width: 820px), print {
  .p-form__group__field input[type=text],
  .p-form__group__field input[type=email],
  .p-form__group__field input[type=tel],
  .p-form__group__field input[type=url],
  .p-form__group__field textarea {
    padding: 1rem 1.4rem;
  }
}
@media screen and (max-width: 819px) {
  .p-form__group__field input[type=text],
  .p-form__group__field input[type=email],
  .p-form__group__field input[type=tel],
  .p-form__group__field input[type=url],
  .p-form__group__field textarea {
    padding: 0.8rem 1.2rem;
  }
}

.p-form__group__tag {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  line-height: 1;
  padding: 0.4rem 0.8rem;
  margin-left: auto;
  font-weight: bold;
  background-color: #CCCCCC;
  border-radius: 0.4rem;
  color: #FFFFFF;
}
@media screen and (min-width: 820px), print {
  .p-form__group__tag {
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 819px) {
  .p-form__group__tag {
    font-size: 1rem;
  }
}
.p-form__group__tag.--required {
  background-color: #49BDBD;
}

.p-form__privacy {
  text-align: center;
}
@media screen and (min-width: 820px), print {
  .p-form__privacy {
    margin-bottom: 4rem;
  }
}
@media screen and (max-width: 819px) {
  .p-form__privacy {
    font-size: 1.2rem;
    margin-bottom: 2rem;
  }
}
.p-form__privacy input[type=checkbox] {
  margin-right: 0.5em;
}
.p-form__privacy a {
  text-decoration: underline;
  color: currentColor;
}
.p-form__privacy a:active, .p-form__privacy a:hover {
  text-decoration: none;
}

.p-searchResult__form {
  width: 100%;
  height: 4.4rem;
  overflow: hidden;
  background-color: #FFFFFF;
  border-radius: 10rem;
  font-size: 1.6rem;
}
.p-searchResult__form form {
  display: flex;
  align-items: center;
  justify-content: stretch;
  width: 100%;
  height: 100%;
  padding: 0 2rem;
}
.p-searchResult__form input {
  width: 100%;
}
.p-searchResult__form button {
  min-width: 1.5rem;
  max-width: 1.5rem;
  line-height: 1;
}
.p-searchResult__form button img {
  width: 100%;
  height: auto;
}
@media screen and (min-width: 820px), print {
  .p-searchResult__form {
    margin-bottom: 3rem;
  }
}
@media screen and (max-width: 819px) {
  .p-searchResult__form {
    margin-bottom: 2rem;
  }
}
.p-searchResult__form > *:last-child {
  margin-bottom: 0;
}

@media screen and (min-width: 820px), print {
  .p-searchResult__count {
    margin-bottom: 3rem;
  }
}
@media screen and (max-width: 819px) {
  .p-searchResult__count {
    margin-bottom: 2rem;
  }
}
@media screen and (min-width: 820px), print {
  .p-searchResult__count span {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 819px) {
  .p-searchResult__count span {
    font-size: 1.4rem;
  }
}
.p-searchResult__count em {
  margin: 0 0.5rem;
  font-style: normal;
}
@media screen and (min-width: 820px), print {
  .p-searchResult__count em {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 819px) {
  .p-searchResult__count em {
    font-size: 1.8rem;
  }
}

.p-searchResult__list {
  background-color: #FFFFFF;
}
@media screen and (min-width: 820px), print {
  .p-searchResult__list {
    padding: 4rem;
    border-radius: 2rem;
    margin-bottom: 6rem;
  }
}
@media screen and (max-width: 819px) {
  .p-searchResult__list {
    padding: 2rem;
    border-radius: 2rem;
    margin-bottom: 3rem;
  }
}
.p-searchResult__list > *:last-child {
  margin-bottom: 0;
}

.p-searchResult__unit {
  border-top: 1px solid #D6D6D6;
}
.p-searchResult__unit:first-child {
  padding-top: 0;
  margin-top: 0;
  border-top: 0;
}
@media screen and (min-width: 820px), print {
  .p-searchResult__unit {
    padding-top: 2rem;
    margin-top: 2rem;
  }
}
@media screen and (max-width: 819px) {
  .p-searchResult__unit {
    padding-top: 2rem;
    margin-top: 2rem;
  }
}

.p-searchResult__unit__inner {
  display: block;
  color: currentColor;
  text-decoration: none;
}
.p-searchResult__unit__inner:active, .p-searchResult__unit__inner:hover {
  color: currentColor;
  text-decoration: underline;
}
.p-searchResult__unit__inner > *:last-child {
  margin-bottom: 0 !important;
}

.p-searchResult__unit__breadcrumb {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding: 0;
  margin: 0 0 0.5rem;
  list-style: none;
}
.p-searchResult__unit__breadcrumb li {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  line-height: 1;
  margin-right: 0.5rem;
  white-space: nowrap;
}
@media screen and (min-width: 820px), print {
  .p-searchResult__unit__breadcrumb li {
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 819px) {
  .p-searchResult__unit__breadcrumb li {
    font-size: 1rem;
  }
}
.p-searchResult__unit__breadcrumb li::after {
  content: ">";
  display: inline-block;
  margin-left: 0.5rem;
}

.p-searchResult__unit__title {
  line-height: 1.5;
  margin: 0 0 1rem;
  font-size: 1.8rem;
}



.wp-pagenavi {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  padding: 0;
  margin: 0;
  text-align: center;
  line-height: 4.5rem;
}
@media screen and (max-width: 819px) {
  .wp-pagenavi {
    line-height: 3.5rem;
  }
}
.wp-pagenavi a {
  display: block;
}
.wp-pagenavi a:focus,
.wp-pagenavi a:hover {
	background-image: url(../img/common/pagenation-bg--on.svg);
  color: #fff;
  text-decoration: none;
}
.wp-pagenavi .current {
	margin: 0 .6rem;
  background-image: url(../img/common/pagenation-bg--on.svg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  font-weight: bold;
  color: #fff;
}
@media screen and (min-width: 820px), print {
  .wp-pagenavi .current {
    width: 4rem;
    height: 4.6rem;
    font-size: 2rem;
  }
}
@media screen and (max-width: 819px) {
  .wp-pagenavi .current {
    width: 3rem;
    height: 3.5rem;
    font-size: 1.2rem;
  }
}
.wp-pagenavi .page {
	margin: 0 .6rem;
	background-image: url(../img/common/pagenation-bg--off.svg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  font-weight: bold;
  color: #333;
  text-align: center;
}
@media screen and (min-width: 820px), print {
  .wp-pagenavi .page {
    width: 4rem;
    height: 4.6rem;
    font-size: 2rem;
  }
}
@media screen and (max-width: 819px) {
  .wp-pagenavi .page {
    width: 3rem;
    height: 3.5rem;
    font-size: 1.2rem;
  }
}
.wp-pagenavi .extend {
	margin: 0 .6rem;
	background-image: url(../img/common/pagenation-bg--off.svg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  font-weight: bold;
  color: #333;
  text-align: center;
  line-height: 3rem;
}
@media screen and (min-width: 820px), print {
  .wp-pagenavi .extend {
    width: 4rem;
    height: 4.6rem;
    font-size: 2rem;
  }
}
@media screen and (max-width: 819px) {
  .wp-pagenavi .extend {
    width: 3rem;
    height: 3.5rem;
    font-size: 1.2rem;
  }
}
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
	margin: 0 .6rem;
	background-image: url(../img/common/pagenation-arrow.svg);
  background-repeat: no-repeat;
  background-position: center center;
  white-space: nowrap;
  text-align: left;
  text-indent: 100% !important;
  white-space: nowrap;
  overflow: hidden;
}
@media screen and (min-width: 820px), print {
  .wp-pagenavi .previouspostslink,
  .wp-pagenavi .nextpostslink {
    width: 2.2rem;
    height: 2.2rem;
    background-size: 1rem 1.6rem;
  }
}
@media screen and (max-width: 819px) {
  .wp-pagenavi .previouspostslink,
  .wp-pagenavi .nextpostslink {
    width: 1.6rem;
    height: 1.6rem;
    background-size: 0.5rem 0.8rem;
  }
}
.wp-pagenavi .previouspostslink:active,
.wp-pagenavi .previouspostslink:hover,
.wp-pagenavi .nextpostslink:active,
.wp-pagenavi .nextpostslink:hover {
  background-image: url(../img/common/pagenation-arrow.svg);
  text-align: left;
}
.wp-pagenavi .previouspostslink {
  transform: rotate(180deg);
}
.wp-pagenavi .first,
.wp-pagenavi .last {
  background-image: url(../img/common/pagenation-arrow-double.svg);
  background-repeat: no-repeat;
  background-position: center center;
  white-space: nowrap;
  text-align: left;
  text-indent: 100% !important;
  white-space: nowrap;
  overflow: hidden;
}
@media screen and (min-width: 820px), print {
  .wp-pagenavi .first,
  .wp-pagenavi .last {
    width: 2rem;
    height: 2.2rem;
    background-size: 2rem 1.6rem;
  }
}
@media screen and (max-width: 819px) {
  .wp-pagenavi .first,
  .wp-pagenavi .last {
    width: 1.4rem;
    height: 1.6rem;
    background-size: 1rem 0.8rem;
  }
}
.wp-pagenavi .first:active,
.wp-pagenavi .first:hover,
.wp-pagenavi .last:active,
.wp-pagenavi .last:hover {
  background-image: url(../img/common/pagenation-arrow-double.svg);
  text-align: left;
}
.wp-pagenavi .first {
  transform: rotate(180deg);
}


.c-pageNav {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: auto;
  text-align: center;
}
@media screen and (max-width: 819px) {
  .c-pageNav  {
    width: 100%;
  }
}
.c-pageNav a {
  display: block;
}
@media screen and (min-width: 820px), print {
  .c-pageNav a {
    width: 2.2rem;
    height: 2.2rem;
    background-size: 1rem 1.6rem;
  }
}
@media screen and (max-width: 819px) {
  .c-pageNav a  {
    width: 1.6rem;
    height: 1.6rem;
  }
}
.c-pageNav .c-pageNav__listTop a {
  position: relative;
  width: 15rem;
  margin: 0 4rem;
  height: 4.5rem;
  color: #fff;
  font-weight: bold;
  line-height: 4rem;
  text-decoration: none;
  background: url("../img/common/button-other-off.svg") no-repeat;
}
.c-pageNav .c-pageNav__listTop .c-pageNav__listTop__txt {
  display: block;
  height: 100%;
}
.c-pageNav .c-pageNav__listTop .c-pageNav__listTop__txt {
  display: block;
  margin: 0 1.3rem;
}
.c-pageNav .c-pageNav__listTop a:active,
.c-pageNav .c-pageNav__listTop a:hover {
  background: url("../img/common/button-other-on.svg") no-repeat;
  background-size: contain;
  color: #333;
  text-decoration: none;
}
.c-pageNav .c-pageNav__prev a,
.c-pageNav .c-pageNav__next a {
  overflow: hidden;
  background-image: url(../img/common/pagenation-arrow.svg);
  background-repeat: no-repeat;
  background-position: center center;
  white-space: nowrap;
  text-align: left;
  text-indent: 100%;
}
.c-pageNav .c-pageNav__prev a {
  transform: rotate(180deg);
}


/*　Custom Fields Editor　*/
.c-csEditor .aligncenter {
  display: block;
	margin-left: auto;
	margin-right: auto;
}
.c-csEditor .alignleft {
  float: left;
	margin: 5px 40px 5px 8px;
}
@media screen and (max-width: 819px) {
  .c-csEditor .alignleft {
    float: none;
    display: block;
    margin: 5px auto;
  }
}
.c-csEditor .alignright	{
  float: right;
	margin: 5px 8px 5px 40px;
}
@media screen and (max-width: 819px) {
  .c-csEditor .alignright {
    float: none;
    display: block;
    margin: 5px auto;
  }
}
.c-csEditor .alignnone {
  margin: 5px 10px;
}
.c-csEditor .wp-caption	{
  border: none;
	text-align: center;
	padding-top: 5px;
}
.c-csEditor .wp-caption-text {
  text-align:center;
}
.c-csEditor p {
  margin-bottom: 1.5rem;
}
.c-csEditor h2 {
  font-size: 2.6rem;
  font-weight: bold;
  position: relative;
  margin-bottom: 3rem;
  padding-left: 2rem;
}
.c-csEditor h2::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: .5rem;
  height: 3rem;
  background-color: #1fbebd;
}
@media screen and (max-width: 819px) {
  .c-csEditor h2 {
    font-size: 1.8rem;
    margin-bottom: 2rem;
    padding-left: 1rem;
  }
  .c-csEditor h2::before {
    top: .5rem;
    width: .3rem;
    height: 2rem;
  }
}
.c-csEditor h3 {
  font-size: 2rem;
  font-weight: bold;
  margin-bottom: 2rem;
  padding-bottom: .8rem;
  border-bottom: 1px solid #1fbebd;
}
@media screen and (max-width: 819px) {
  .c-csEditor h3 {
    font-size: 1.6rem;
  }
}
.c-csEditor h4 {
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: 1rem;
}
@media screen and (max-width: 819px) {
  .c-csEditor h4 {
    font-size: 1.5rem;
  }
}
.c-csEditor h5,
.c-csEditor h6 {
  font-weight: bold;
  margin-bottom: 1rem;
}
.c-csEditor img {
  margin-bottom: 2rem !important;
}
.c-csEditor .wp-block-column {
  padding: .5rem !important;
}
@media screen and (max-width: 819px) {
  .c-csEditor .wp-block-column {
    padding: 0 !important;
  }
}
.c-csEditor .wp-block-table {
  margin-bottom: 3rem;
}
.c-csEditor .wp-block-table table th,
.c-csEditor .wp-block-table table tr,
.c-csEditor .wp-block-table table td {
  border-color: #999 !important;
}
.c-csEditor ul {
  list-style: disc;
}
.c-csEditor ol {
  list-style: decimal;
}
.c-csEditor blockquote {
  background-color: #fff;
  border-radius: 1rem;
  padding: 1rem 2rem .1rem;
}
.c-csEditor .wp-caption {
  width: 100% !important;
}
.c-csEditor table {
  margin-bottom: 2rem;
  border: 1px solid #666;
}
.c-csEditor table th,
.c-csEditor table td {
  padding: 1rem 2rem;
  background-color: #fff;
  border: 1px solid #999;
}
.c-csEditor table th {
  background-color: #eee;
}
.c-csEditor hr {
  margin-bottom: 1.5rem;
}






.p-searchResult__unit__excerpt {
  line-height: 1.5;
}
@media screen and (min-width: 820px), print {
  .p-searchResult__unit__excerpt {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 819px) {
  .p-searchResult__unit__excerpt {
    font-size: 1.2rem;
  }
}