@charset "UTF-8";
/*
Theme Name: 
Theme URI: 
Author: EXCEET
*/
/* width */
.u-width__min, .u-width__slim, .u-width__mid, .u-width__wide, .u-width__full {
  width: 85.72%;
  margin-left: auto;
  margin-right: auto;
}
@media (width: 540px) {
  .u-width__min, .u-width__slim, .u-width__mid, .u-width__wide, .u-width__full {
    width: 89.3%;
  }
}

.u-width__slim {
  max-width: 840px;
}

.u-width__min {
  max-width: 1050px;
}

.u-width__wide {
  max-width: 1200px;
}

.u-width__full {
  max-width: 1400px;
  -width: 100%;
}

img {
  width: auto;
  height: auto;
  max-width: 100%;
}

/*ベース設定*/
body {
  font-size: 16px;
  line-height: 1.8;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  letter-spacing: 0.05em;
  color: #222;
  font-smoothing: antialiased;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  word-wrap: break-word;
  overflow-wrap: break-word;
  margin: 0;
  opacity: 0;
  -webkit-animation: fadeIn 0.5s ease 0.1s 1 forwards;
          animation: fadeIn 0.5s ease 0.1s 1 forwards;
}

::-webkit-search-cancel-button {
  -webkit-appearance: none;
}

a {
  text-decoration: none;
  -webkit-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
}
a:hover {
  opacity: 0.5;
}

/* font */
a:focus {
  outline: none;
}

section {
  position: relative;
}

textarea {
  padding: 1em;
  letter-spacing: 0.1em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

i {
  font-style: normal;
}

input {
  padding-left: 1em;
  letter-spacing: 0.1em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

input::-ms-clear {
  visibility: hidden;
}

input::-ms-reveal {
  visibility: hidden;
}

input:focus,
textarea:focus,
select:focus {
  outline: none;
}

select::-ms-expand {
  display: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  padding: 0;
  font-size: 16px;
  font-weight: normal;
  letter-spacing: 0.05em;
}

@media screen and (max-width: 540px) {
  h3,
  h4 {
    letter-spacing: 0.025em;
  }
}

h3 {
  font-weight: 500;
}
select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 0;
}

#notfound #content {
  padding: 200px 0;
  text-align: center;
}

.notfound-wrapper {
  line-height: 2;
}

.slick-slide {
  outline: none;
}

li {
  list-style-type: none;
}

/*Safariでplaceholderの位置がずれるのを修正*/
body.js_isSafari input::-webkit-input-placeholder {
  position: relative;
  top: 0.18em;
}

/*Firefoxでplaceholdertextのopacityが小さくなるのを修正*/
input:-moz-placeholder,
input::-moz-placeholder {
  opacity: 1;
}

/* Android系で出るタップ時の青い枠を出さない */
* {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

/* animetion */
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.l-main {
  padding-top: 84px;
}
@media screen and (max-width: 840px) {
  .l-main {
    padding-top: 70px;
  }
}
@media screen and (max-width: 540px) {
  .l-main {
    padding-top: 56px;
  }
}

.__bg-gy {
  background-color: #f8f9fa;
}

.__word-br {
  display: inline-block;
  word-break: keep-all;
  white-space: nowrap;
}

.p-parts_breadcrumb {
  margin-top: 10px;
}

@media screen and (max-width: 840px) {
  .p-parts_breadcrumb__inner span {
    font-size: 14px;
  }
}
@media screen and (max-width: 540px) {
  .p-parts_breadcrumb__inner span {
    font-size: 12px;
  }
}

.p-parts_hero {
  border-bottom: 1px solid #c3c3c3;
}

.p-parts_hero__inner {
  padding: 54px 0 46px;
}
@media screen and (max-width: 840px) {
  .p-parts_hero__inner {
    padding: 44px 0 35px;
  }
}
@media screen and (max-width: 540px) {
  .p-parts_hero__inner {
    padding: 30px 0 22px;
  }
}

.p-parts_hero__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.p-parts_hero__box .__jp {
  font-size: 40px;
  font-weight: 700;
}
@media screen and (max-width: 840px) {
  .p-parts_hero__box .__jp {
    font-size: 28px;
  }
}
@media screen and (max-width: 540px) {
  .p-parts_hero__box .__jp {
    font-size: 20px;
  }
}
.p-parts_hero__box .__en {
  font-size: 22px;
}
@media screen and (max-width: 840px) {
  .p-parts_hero__box .__en {
    font-size: 18px;
  }
}
@media screen and (max-width: 540px) {
  .p-parts_hero__box .__en {
    font-size: 14px;
  }
}

.p-container {
  width: 1200px;
  max-width: 90%;
  margin: 0 auto;
}
.p-section_title {
  text-align: center;
  margin-bottom: 50px;
}
.p-section_title .__en_title {
  font-size: 14px;
  color: #999;
  text-transform: uppercase;
  letter-spacing: 2px;
  margin-bottom: 10px;
  display: block;
}
.p-section_title h2 {
  font-size: 32px;
  color: #333;
  margin-bottom: 10px;
  position: relative;
  display: inline-block;
  padding-bottom: 15px;
  font-weight: 700;
}
.p-section_title h2:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 60px;
  height: 3px;
  background: #667eea;
}
@media (max-width: 840px) {
  .p-section_title h2 {
    font-size: 24px;
  }
}

.l-header {
  background: #fff;
  border-bottom: 1px solid #e0e0e0;
  -webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
          box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
  position: fixed;
  width: 100%;
  z-index: 100;
}

.l-header_inner {
  max-width: 1200px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 30px;
  height: 84px;
}
@media (max-width: 840px) {
  .l-header_inner {
    padding: 0 20px;
    height: 70px;
  }
}
@media (max-width: 540px) {
  .l-header_inner {
    height: 56px;
  }
}

.l-header_logo .__logo_link {
  font-size: 24px;
  font-weight: bold;
  color: #222222;
}
@media (max-width: 840px) {
  .l-header_logo .__logo_link {
    font-size: 20px;
  }
}

.l-header_global__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  list-style: none;
  gap: 30px;
  margin: 0;
  padding: 0;
}
@media (max-width: 840px) {
  .l-header_global__list {
    gap: 20px;
  }
}
.l-header_global__list li {
  list-style: none;
}
.l-header_global__list a {
  text-decoration: none;
  color: #333;
  font-weight: 500;
  font-size: 16px;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}
.l-header_global__list a:hover {
  color: #2c5f2d;
  opacity: 1;
}

.p-hamburger_nav {
  display: none;
}

.sc-main_visual {
  position: relative;
  width: 100%;
  height: 500px;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  color: white;
}
@media (max-width: 840px) {
  .sc-main_visual {
    height: 350px;
  }
}

.p-main_visual__content {
  max-width: 90%;
  width: 1200px;
  margin: 0 auto;
  text-align: left;
  position: absolute;
  z-index: 10;
  bottom: 0;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.p-main_visual__content h1 {
  font-size: 42px;
  margin-bottom: 15px;
  font-weight: 700;
  line-height: 1.4;
}
@media (max-width: 840px) {
  .p-main_visual__content h1 {
    font-size: 28px;
  }
}
.p-main_visual__content p {
  font-size: 18px;
  margin-bottom: 0;
}
@media (max-width: 840px) {
  .p-main_visual__content p {
    font-size: 16px;
  }
}

.p-index_slick-fv {
  height: 580px;
}

.p-index_slick-fv .slick-list,
.p-index_slick-fv .slick-track {
  height: 100%;
}

section#cover .p-index_slick-fv p.image {
  width: 100%;
  height: 100%;
}

.sc-index_fv-slide {
  position: relative;
  background-color: #dbdbdb;
}

.p-index_fv-catch {
  position: absolute;
  left: 7%;
  bottom: 130px;
  z-index: 10;
  color: #ffffff;
  font-size: 4.5rem;
  font-weight: 700;
  line-height: 1.5;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
}

@-webkit-keyframes slideImgSp {
  0% {
    -webkit-transform: translateX(-6.5%);
            transform: translateX(-6.5%);
  }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}

@keyframes slideImgSp {
  0% {
    -webkit-transform: translateX(-6.5%);
            transform: translateX(-6.5%);
  }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@-webkit-keyframes slideImg {
  0% {
    -webkit-transform: translateX(-2.8%);
            transform: translateX(-2.8%);
  }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@keyframes slideImg {
  0% {
    -webkit-transform: translateX(-2.8%);
            transform: translateX(-2.8%);
  }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.p-index_slick-fv .slide-item {
  overflow: hidden;
  position: relative;
  height: 100%;
  display: block;
}

.p-index_slick-fv .slide-item .__img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.p-index_slick-fv .__img img {
  width: 103%;
  max-width: none;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
}

.p-index_slick-fv .is-panning .__img img {
  -webkit-animation: slideImgSp 7s linear 0s 1 normal forwards;
          animation: slideImgSp 7s linear 0s 1 normal forwards;
}

@media screen and (min-width: 768px) {
  .p-index_slick-fv .is-panning .__img img {
    -webkit-animation-name: slideImg;
            animation-name: slideImg;
  }
}
.sc-index_column {
  margin-top: 120px;
}
@media (max-width: 840px) {
  .sc-index_column {
    margin-top: 74px;
  }
}

.p-index_column__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-column-gap: 2.5%;
     -moz-column-gap: 2.5%;
          column-gap: 2.5%;
}
@media (max-width: 840px) {
  .p-index_column__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    width: 440px;
    max-width: 100%;
    row-gap: 20px;
    margin-left: auto;
    margin-right: auto;
  }
}

.p-index_column__item {
  width: 31.66%;
  border-radius: 8px;
  background-color: #fff;
  -webkit-box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.16);
          box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.16);
  overflow: hidden;
}
@media (max-width: 840px) {
  .p-index_column__item {
    width: 100%;
  }
}
.p-index_column__item .__link {
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: 206px 1fr;
  grid-template-rows: 206px 1fr;
  height: 100%;
}
@media (max-width: 1040px) {
  .p-index_column__item .__link {
    -ms-grid-rows: 160px 1fr;
    grid-template-rows: 160px 1fr;
  }
}
.p-index_column__item .__link .__img {
  height: 206px;
}
@media (max-width: 1040px) {
  .p-index_column__item .__link .__img {
    height: 160px;
  }
}
.p-index_column__item .__link .__img img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-index_column__content {
  padding: 16px 24px 32px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  height: 100%;
}
@media (max-width: 1040px) {
  .p-index_column__content {
    padding: 16px 20px 26px;
  }
}

.p-index_column__content__wrapper .__date {
  font-size: 14px;
}
@media (max-width: 1040px) {
  .p-index_column__content__wrapper .__date {
    font-size: 12px;
  }
}
.p-index_column__content__wrapper .__ttl {
  font-size: 18px;
  font-weight: 700;
  margin-top: 7px;
}
@media (max-width: 1040px) {
  .p-index_column__content__wrapper .__ttl {
    font-size: 16px;
  }
}

.p-index_column__content__cats {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-column-gap: 10px;
     -moz-column-gap: 10px;
          column-gap: 10px;
  margin-top: 22px;
}
@media (max-width: 1040px) {
  .p-index_column__content__cats {
    margin-top: 18px;
  }
}
.p-index_column__content__cats .__cat {
  font-size: 14px;
}
@media (max-width: 1040px) {
  .p-index_column__content__cats .__cat {
    font-size: 12px;
  }
}

.p-more_link {
  text-align: center;
  margin-top: 56px;
}
@media (max-width: 840px) {
  .p-more_link {
    margin-top: 42px;
  }
}
.p-more_link a {
  display: inline-block;
  padding: 12px 40px;
  border: 2px solid #667eea;
  color: #667eea;
  text-decoration: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  font-weight: 500;
}
.p-more_link a:hover {
  background: #667eea;
  color: white;
  opacity: 1;
}
.p-more_link.__catalog {
  text-align: left;
  margin-top: 34px;
}
@media (max-width: 840px) {
  .p-more_link.__catalog {
    text-align: center;
  }
}
.p-more_link.__catalog a {
  border: 2px solid #667eea;
  color: #fff;
  background: #667eea;
}
.p-more_link.__catalog a:hover {
  background: #fff;
  color: #667eea;
  opacity: 1;
}
.p-more_link.__catalog-contact {
  margin-top: 54px;
}
.sc-index_products-catalog {
  background: white;
  margin-top: 120px;
}
@media (max-width: 840px) {
  .sc-index_products-catalog {
    margin-top: 74px;
  }
}

.p-index_products-catalog__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 5%;
     -moz-column-gap: 5%;
          column-gap: 5%;
  row-gap: 30px;
}
@media (max-width: 840px) {
  .p-index_products-catalog__wrapper {
    width: 500px;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.p-index_products-catalog__img {
  width: 320px;
  max-width: 100%;
}
@media (max-width: 840px) {
  .p-index_products-catalog__img {
    width: 300px;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
}
.p-index_products-catalog__img img {
  display: block;
  width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.p-index_products-catalog__container {
  width: 57.5%;
  max-width: 500px;
  min-width: 400px;
}
@media (max-width: 840px) {
  .p-index_products-catalog__container {
    width: 100%;
    min-width: unset;
  }
}

.p-index_products-catalog__detail .__ttl {
  font-size: 28px;
  font-weight: 700;
}
@media (max-width: 840px) {
  .p-index_products-catalog__detail .__ttl {
    text-align: center;
    font-size: 22px;
  }
}

.p-index_products-catalog__detail__list {
  margin-top: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  row-gap: 0.6em;
}
@media (max-width: 840px) {
  .p-index_products-catalog__detail__list {
    width: 140px;
    margin-left: auto;
    margin-right: auto;
  }
}

.p-index_products-catalog__detail__item {
  position: relative;
  padding-left: 0.4em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-column-gap: 14px;
     -moz-column-gap: 14px;
          column-gap: 14px;
}
.p-index_products-catalog__detail__item .__checked {
  width: 16px;
  height: 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border: 1px solid #878787;
  position: relative;
}
.p-index_products-catalog__detail__item .__checked:before {
  content: "";
  display: block;
  width: 18px;
  height: 10px;
  border-left: 4px solid #d72c66;
  border-bottom: 4px solid #d72c66;
  -webkit-transform: rotate(-49deg);
          transform: rotate(-49deg);
  position: absolute;
  top: -3px;
  left: 0;
}
.p-index_products-catalog__detail__item .__txt font-.sc-company {
  padding: 60px 0;
}
.p-index_products-catalog__detail__item .__txt font-.sc-company .p-company_inner h2.__ttl {
  font-size: 32px;
  font-weight: 700;
  text-align: center;
}
.p-index_products-catalog__detail__item .__txt font-.sc-company .p-company_inner .p-company_txt {
  margin-top: 40px;
}
.p-index_products-catalog__detail__item .__txt {
  size: 22px;
  font-weight: 500;
}

.sc-index_company {
  margin-top: 120px;
  padding: 60px 0;
  background: #f8f9fa;
  margin-bottom: 0;
}
@media (max-width: 840px) {
  .sc-index_company {
    padding: 40px 0;
    margin-top: 80px;
  }
}

.p-index_company__inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 30px;
}
@media (max-width: 840px) {
  .p-index_company__inner {
    padding: 0 20px;
  }
}

.p-index_company__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 50px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (max-width: 848px) {
  .p-index_company__wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 30px;
    width: 440px;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
}

.p-index_company__img {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.p-index_company__img img {
  width: 100%;
  height: auto;
  display: block;
}

.p-index_company__descrip {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.p-parts_ttl.__title {
  margin-bottom: 25px;
}
.p-parts_ttl.__title .__jp {
  display: block;
  font-size: 28px;
  font-weight: 700;
  color: #333;
  margin-bottom: 8px;
}
@media (max-width: 840px) {
  .p-parts_ttl.__title .__jp {
    font-size: 22px;
  }
}
.p-parts_ttl.__title .__en {
  display: block;
  font-size: 14px;
  color: #999;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-weight: 400;
}

.p-index_company__descrip__txt {
  margin-bottom: 30px;
  color: #666;
  line-height: 1.9;
  font-size: 15px;
}

.p-parts_arrow__btn.__link {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  padding: 12px 30px;
  border: 2px solid #667eea;
  color: #667eea;
  text-decoration: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  font-weight: 500;
  position: relative;
}
.p-parts_arrow__btn.__link:hover {
  background: #667eea;
  color: white;
  opacity: 1;
}
.p-parts_arrow__btn.__link .__tab {
  width: 16px;
  height: 16px;
  position: relative;
  display: inline-block;
}
.p-parts_arrow__btn.__link .__tab::before {
  content: "→";
  font-size: 16px;
}

.l-footer {
  background: #e96290;
  color: white;
  padding: 40px 0 20px;
  margin-top: 180px;
}
@media screen and (max-width: 840px) {
  .l-footer {
    margin-top: 100px;
  }
}

.p-footer_inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 30px;
}
@media (max-width: 840px) {
  .p-footer_inner {
    padding: 0 20px;
  }
}

.p-footer_wrapper {
  margin-bottom: 30px;
}

.p-footer_company__info_wrapper {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 40px 2fr;
  grid-template-columns: 1fr 2fr;
  gap: 40px;
}
@media (max-width: 848px) {
  .p-footer_company__info_wrapper {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 30px;
  }
}

.p-footer_company__info_box .p-footer_company__logo {
  display: block;
  margin-bottom: 20px;
}

.p-footer_company__info__access .__store_name {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 10px;
}
.p-footer_company__info__access .__store_address {
  color: #fff;
  margin-bottom: 5px;
}

.p-footer_company_info__links {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 30px 1fr 30px 1fr;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
}
@media (max-width: 848px) {
  .p-footer_company_info__links {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 20px;
  }
}

.p-footer_section__title {
  margin-bottom: 20px;
  font-size: 18px;
  font-weight: 700;
}
.p-footer_section__list {
  list-style: none;
  padding: 0;
  margin: 0;
}
.p-footer_section__list li {
  margin-bottom: 10px;
  list-style: none;
}
.p-footer_section__list a {
  color: #Fff;
  text-decoration: none;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}
.p-footer_section__list a:hover {
  color: white;
  opacity: 1;
}

.el-footer_bottom {
  display: block;
  text-align: center;
  padding-top: 20px;
  border-top: 1px solid #fff;
  color: #fff;
  font-size: 14px;
}

.p-ttl_wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.p-ttl_wrapper .__title {
  font-size: 32px;
  font-weight: bold;
  letter-spacing: 0.15em;
  font-weight: 700;
}
@media (max-width: 1040px) {
  .p-ttl_wrapper .__title {
    font-size: 28px;
  }
}
@media (max-width: 540px) {
  .p-ttl_wrapper .__title {
    font-size: 24px;
  }
}
.p-ttl_wrapper .__sub_title {
  font-size: 14px;
  margin-top: -0.4em;
  letter-spacing: 0.05em;
  font-weight: 400;
}
@media (max-width: 1040px) {
  .p-ttl_wrapper .__sub_title {
    font-size: 12px;
  }
}
@media (max-width: 540px) {
  .p-ttl_wrapper .__sub_title {
    font-size: 10px;
    margin-top: -0.3em;
  }
}

.p-contact_form {
  padding: 80px 0 90px;
}
@media screen and (max-width: 540px) {
  .p-contact_form {
    padding: 40px 0 70px;
  }
}

.p-contact_form_wrapper {
  width: 1120px;
  max-width: 89.8666666667%;
  -webkit-box-shadow: 2px 3px 7px 2px rgba(0, 0, 0, 0.16);
          box-shadow: 2px 3px 7px 2px rgba(0, 0, 0, 0.16);
  background: #fdfdfd;
  border-radius: 20px;
  margin-left: auto;
  margin-right: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 70px 0 80px;
}
@media screen and (max-width: 540px) {
  .p-contact_form_wrapper {
    padding: 50px 0 48px;
  }
}

.p-contact_form__title {
  text-align: center;
}

.p-bownow_form {
  width: 90%;
  max-width: 980px;
  margin: 47px auto 0;
}
@media screen and (max-width: 1040px) {
  .p-bownow_form {
    max-width: 640px;
  }
}
.p-bownow_form iframe {
  display: block;
  width: 100%;
  border: none;
}

.p-thanks {
  width: 90%;
  max-width: 980px;
  margin: 0 auto;
}
.p-thanks .p-thanks__title {
  text-align: center;
  font-size: 22px;
  font-weight: 400;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 1040px) {
  .p-thanks .p-thanks__title {
    font-size: 20px;
  }
}
@media screen and (max-width: 540px) {
  .p-thanks .p-thanks__title {
    font-size: 18px;
  }
}
.p-thanks .p-thanks__txt {
  margin-top: 30px;
  text-align: center;
}
@media screen and (max-width: 1040px) {
  .p-thanks .p-thanks__txt {
    text-align: left;
  }
}
@media screen and (max-width: 540px) {
  .p-thanks .p-thanks__txt {
    font-size: 12px;
  }
}
.p-thanks .p-thanks__txt p + p {
  margin-top: 1em;
}

.p-contact_form__tel {
  width: 90%;
  max-width: 980px;
  margin-top: 100px;
}
@media screen and (max-width: 1040px) {
  .p-contact_form__tel {
    margin-top: 80px;
  }
}
@media screen and (max-width: 540px) {
  .p-contact_form__tel {
    margin-top: 60px;
  }
}
.p-contact_form__tel a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid #73150d;
  width: 560px;
  max-width: 100%;
  line-height: 1;
  padding: 35px 0 39px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 540px) {
  .p-contact_form__tel a {
    padding: 25px 0 29px;
  }
}
.p-contact_form__tel a .__title {
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.05em;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(40%, transparent), color-stop(0%, rgba(253, 237, 200, 0.5)));
  background: linear-gradient(transparent 40%, rgba(253, 237, 200, 0.5) 0%);
  padding: 0 4px 3px;
}
@media screen and (max-width: 540px) {
  .p-contact_form__tel a .__title {
    font-size: 14px;
  }
}
.p-contact_form__tel a .__num {
  font-size: 30px;
  font-weight: 400;
  letter-spacing: 0.15em;
  color: #73150d;
  margin-top: 25px;
}
@media screen and (max-width: 1040px) {
  .p-contact_form__tel a .__num {
    font-size: 27px;
    letter-spacing: 0.125em;
    margin-top: 20px;
  }
}
@media screen and (max-width: 540px) {
  .p-contact_form__tel a .__num {
    font-size: 24px;
    margin-top: 15px;
    letter-spacing: 0.1em;
  }
}
.p-contact_form__tel a .__time {
  color: #73150d;
  font-size: 16px;
  letter-spacing: 0.05em;
  margin-top: 16px;
}
@media screen and (max-width: 1040px) {
  .p-contact_form__tel a .__time {
    margin-top: 10px;
  }
}
@media screen and (max-width: 540px) {
  .p-contact_form__tel a .__time {
    font-size: 14px;
    margin-top: 8px;
  }
}

.sc-company {
  padding-top: 60px;
}
@media screen and (max-width: 840px) {
  .sc-company {
    padding-top: 45px;
  }
}
.sc-company .p-company_inner h2.__ttl {
  font-size: 32px;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 840px) {
  .sc-company .p-company_inner h2.__ttl {
    font-size: 24px;
  }
}
.sc-company .p-company_inner .p-company_txt {
  margin-top: 40px;
}
@media screen and (max-width: 840px) {
  .sc-company .p-company_inner .p-company_txt {
    margin-top: 32px;
  }
}
.sc-company .p-company_inner .p-company_txt p {
  line-height: 2;
}
.sc-company .p-company_inner .p-company_txt p + p {
  margin-top: 1.4em;
}