@charset "utf-8";
/**********************************/
/* top
/**********************************/
/* TopSlide */
.swiper_img{
  margin-bottom: 15px;
}

.c-slide .c-slide_list{
  position: relative;
}

.c-slide .c-slide_list .background{
  width: 100%;
  position: relative;
}

.c-slide .c-slide_list .background img{
  object-fit: cover;
  height: 100%;
  width: 100%;
}

.c-slide .c-slide_list .c-slide_textwrap{
  position: absolute;
  left: 50%;
  bottom: 50%;
  transform: translate(-50%,50%);
  width: 100%;
  z-index: 2;
}
@media (min-width: 576px){
  .c-slide .c-slide_list .c-slide_textwrap{
    left: 0;
    bottom: 7rem;
    transform: unset;
  }
}

.c-slide .c-slide_list .c-slide_textwrap > .container{
  text-align: center;
}
@media (min-width: 576px){
  .c-slide .c-slide_list .c-slide_textwrap > .container{
    text-align: left;
  }
}

.c-slide .c-slide_list .c-slide_text{
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
}
@media (min-width: 576px){
  .c-slide .c-slide_list .c-slide_text{
    gap: 10px;
    align-items: baseline;
  }
}

.c-slide .c-slide_list .c-slide_text span{
  display: block;
  font-size: 20px;
  font-weight: bold;
  color: #fff;
  text-shadow: 3px 3px 3px var(--green-color);
  text-align: center;
}
@media (min-width: 576px){
  .c-slide .c-slide_list .c-slide_text span{
    font-size: 25px;
    text-align: left;
    background-color: var(--green-color);
    padding: 5px 15px;
  }
}
@media (min-width: 992px){
  .c-slide .c-slide_list .c-slide_text span{
    font-size: 4rem;
  }
}

.swiper_content{
  position: relative;
  overflow: hidden;
}

.swiper_content li{
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  min-height: 564px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 5rem 15px;
}

.swiper_content .p-inner{
  background-color: rgba(255, 255, 255, 0.8);
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 5rem;
  max-width: 513px;
  width: 100%;
}

.pagination-wrap{
  position: relative
  }
  
  .swiper-pagination .swiper-pagination-bullet{
    background-color: #fff;
    opacity: 0.5;
    width: 10px;
    height: 10px;
    margin: 0 10px!important;
  }
  
  .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active{
    opacity: 1;
  }
  
  .swiper-horizontal>.swiper-pagination-bullets, 
  .swiper-pagination-bullets.swiper-pagination-horizontal, 
  .swiper-pagination-custom, 
  .swiper-pagination-fraction{
    bottom: 10px;
  }
  /* @media (min-width: 576px){
    .swiper-horizontal>.swiper-pagination-bullets, 
    .swiper-pagination-bullets.swiper-pagination-horizontal, 
    .swiper-pagination-custom, 
    .swiper-pagination-fraction{
      left: unset;
      bottom: 2.5rem;
    }
  } */


/* lead */
.p-top-lead .p-top-lead_cnt{
  position: relative;
}

.p-top-lead .p-top-lead_cnt img{
  width: 100%;
  object-fit: cover;
}

.p-top-lead .p-top-lead_cnt > h2{
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #202020;
  color: #fff;
  font-size: 12px;
  font-weight: 400;
  line-height: calc(27 / 16);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2rem 3rem;
  min-width:100%;
  text-align: center;
}
@media (min-width: 400px){
  .p-top-lead .p-top-lead_cnt > h2{
    font-size: 16px;
    line-height:calc(27/16);
    min-width: 37.5rem;
  }
}

.p-top-lead .p-top-lead_cnt:nth-child(2) > h2{
  right: 0;
  left: unset;
}

.p-top-lead .p-top-lead_text{
  padding: 8rem 15px 5rem;
}

.p-top-lead .p-top-lead_text > p{
  font-size: 16px;
  font-weight: 400;
  line-height: calc(27/16);
}

.p-top-lead .p-top-lead_text > p + p{
  margin-top:2rem;
}

/* Therefore… SIMPLE is not simple. */
.p-top-sinple{
  padding: 8rem 5rem;
  background-color: var(--lightgray-color);
}

.p-top-sinple img{
  width: 100%;
}

/* Models */
.p-top-plan{
  padding: 8rem 5rem 12rem;
  overflow-x: hidden;
}

.p-top-plan .swiper_plan{
margin: 0 -5rem;
}
.p-top-plan .swiper-pagination{
   bottom: -50px !important;

}

.p-top-plan .swiper-pagination .swiper-pagination-bullet{
  background-color: #707070 !important;
  opacity: 1;
}

.p-top-plan .swiper-pagination .swiper-pagination-bullet-active{
  background-color: #202020 !important;
  opacity: 1;
}

/* introduce */
.p-top-introduce{
background-color: var(--lightgray-color);
padding: 8rem 0;
}
@media (min-width: 576px){
  .p-top-introduce{
    padding: 8rem 0 8rem 5rem;
  }
}

.p-top-introduce > .p-inner{
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 5rem;
}
@media (min-width: 576px){
  .p-top-introduce > .p-inner{
    flex-direction: row;
  }
}
@media (min-width: 1200px){
  .p-top-introduce > .p-inner{
    flex-direction: column;
  }
}
@media (min-width: 1800px){
  .p-top-introduce > .p-inner{
    flex-direction: row;
  }
}

.p-top-introduce_left{
  width: 100%;
  padding: 0 15px;
  text-align: center;
}
@media (min-width: 576px){
  .p-top-introduce_left{
    width: auto;
    padding:0;
text-align: left;
  }
}

.p-top-introduce .p-top-introduce_right{
  flex: 1;
  width: 100%;
}


@media (min-width: 576px){
  .p-top-introduce .c-heading-en{
    text-align: left;
  }
}

.p-meeting-banner img{
  width: 100%;
}

/* advices */
.p-top-advices{
  padding: 8rem 0;
}

.p-top-advices .p-top-advices_list{
  display: flex;
  flex-direction: column;
  align-items: center;
  flex-wrap: wrap;
  gap: 15px;
}
@media (min-width: 576px){
  .p-top-advices .p-top-advices_list{
    flex-direction: row;
  }
}
@media (min-width: 992px){
  .p-top-advices .p-top-advices_list{
    margin-right: 15px;
  }
}

.p-top-advices .p-top-advices_item{
  width: 100%;
}
@media (min-width: 576px){
  .p-top-advices .p-top-advices_item{
    width: calc(100% / 2 - 15px / 2);
  }
}
@media (min-width: 768px){
  .p-top-advices .p-top-advices_item{
    width: calc(100% / 3 - 30px / 3);
  }
}

.p-top-advices .p-top-advices_link{
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  gap: 20px;
  padding: 5rem 15px;
  background-color: var(--lightgray-color);
}

.p-top-advices .p-top-advices_link img{
  /* width: 30%; */
}

.p-top-advices .p-top-advices_link h3{
  font-size: 16px;
  font-weight: bold;
  line-height: calc(27/16);
  text-align: center;
}


/* contact */
.p-top-contact{
  background-color: var(--lightgray-color);
  padding: 8rem 15px;
}
@media (min-width: 1200px){
  .p-top-contact{
    padding: 8rem 30px 8rem 15px;
  }
}
/**********************************/
/* about
/**********************************/
.p-about-inner{
  padding: 0 15px;
}
@media (min-width: 576px){
  .p-about-inner{
    padding: 0 4rem;
  }
}

.p-mission-section .c-heading-en,
.p-vision-section .c-heading-en,
.p-value-section .c-heading-en{
  text-align: left;
}

.p-value-group{
  display: flex;
  flex-direction: column;
  gap: 3rem;
}

.p-value-cnt > h3{
  font-size: 18px;
  font-weight: bold;
}

.p-value-cnt > h3 span{
  font-size: 23px;
  font-weight: bold;
}

.p-company-section{
  background-color: var(--lightgray-color);
  padding: 8rem 15px;
}
@media (min-width: 576px){
  .p-company-section{
    padding: 8rem 35px;
  }
}

.p-access-section .p-about-inner{
  padding: 0 15px;
}
@media (min-width: 576px){
  .p-access-section .p-about-inner{
    padding: 0 5rem;
  }
}

.p-access-section .c-table tr{
  max-width: 360px;
  margin-left: auto;
  margin-right: auto;
}

@media (min-width: 768px) {
  .p-access-section .c-table td:nth-child(1) {
      width: 80px;
  }
}

@media (min-width: 768px) {
  .p-access-section .c-table td:nth-child(2) {
      width: calc(100% - 80px);
  }
}

.p-access-section .p-map{
  text-align: center;
}

.p-access-section .p-map iframe{
  width: 100%;
  max-width: 668px;
  height: auto;
  object-fit: cover;
  aspect-ratio: 16 / 7.5;
}

.p-privacy-section{
  background-color: var(--lightgray-color);
  padding: 8rem 15px;
}
@media (min-width: 576px){
  .p-privacy-section{
    padding: 8rem 5rem;
  }
}

.p-privacy-section .c-editor-style h3{
  font-size: 18px;
  color: #202020;
  background-color: unset;
  font-weight: bold;
  border: none;
  padding: 0;
  margin-bottom: 15px;
}

.p-privacy-section .c-editor-style * + h3{
  margin-top: 3rem;
}

/**********************************/
/* column
/**********************************/
/* archive */
.p-column-list{
  display: flex;
  flex-direction: column;
  gap: 3rem;
  padding: 0 15px;
}
@media (min-width: 576px){
  .p-column-list{
    gap: 2rem;
  }
}
.p-column-item{
  width: 100%;
}
.p-column-link{
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2rem;
  padding-bottom: 3rem;
  border-bottom: 1px solid var(--darkgray-color);
}
@media (min-width: 576px){
  .p-column-link{
    flex-direction: row;
    padding-bottom: 2rem;
  }
}
.p-column-image img{
  width:100%;
}
@media (min-width: 576px){
  .p-column-image img{
    width: 200px;
    height: 200px;
    object-fit: cover;
  }
}
.p-column-text{
  width:100%;
}
@media (min-width: 576px){
  .p-column-text{
    flex: 1;
  }
}
.p-column-time{
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 2rem;
  font-weight: 500;
}
@media (min-width: 576px){
  .p-column-time{
    margin-bottom: 10px;
  }
}
.p-column-time::before{
  content: "";
  width: 20px;
  height: 1px;
  background-color: var(--darkgray-color);
}
.p-column-title{
  font-size: 2rem;
  font-weight: bold;
  line-height: calc(32/20);
}


/* single */
.p-column-single{
  padding: 0 15px;
}

.p-column-time--s{
  font-weight: 500;
}

.p-column-title--s{
  align-items: flex-start;
  text-align: left;
}

.p-column-header img{
  width: 100%;
}
/**********************************/
/* advice
/**********************************/
.p-advice{
  padding: 0 15px;
}

.p-advice .c-editor-style * + h2{
  margin-top: 5rem;
}


.p-advice .c-editor-style h3,
.p-advice .c-editor-style h4{
  font-size: 18px;
}

.p-advice .c-editor-style h3{
  background-color: unset;
  color: unset;
  padding: unset;
  margin-bottom: 10px;
}

.p-advice .c-editor-style * + h3{
  margin-top: 3rem;
}

.p-advice .c-editor-style h3 > span.c-f-Josefin{
  font-size: 23px;
  font-weight: bold;
}

.p-advice .c-editor-style h4{
  border-left: unset;
  margin-bottom: unset;
  padding: unset;
}

.p-advice .c-editor-style h5,
.p-advice .c-editor-style h6{
  font-size: 16px;
}

.p-advice .c-editor-style h5{
  background-color: unset;
  padding: unset;
}


.p-advice-header img{
  width: 100%;
}

.p-advice-other{
  padding: 0 15px;
}

.p-advice-other_inner{
  border: 1px solid var(--darkgray-color);
  padding: 3rem;
}

.p-advice-other h2{
  font-size: 2rem;
  line-height: calc(32.4/20);
  font-weight: bold;
  margin-bottom: 3rem;
  text-align: center;
}

.p-advice-other ul{
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.p-advice-other a{
  display: flex;
  align-items: center;
  gap: 20px;
  justify-content: space-between;
  border-bottom: 1px solid var(--darkgray-color);
  padding-bottom: 1rem;
}

.p-advice-other a h3{
  font-size: 16px;
  font-weight: 500;
  line-height: calc(27/16);
}

.p-advice-other a img{
  width: 30px;
}

/**********************************/
/* meeting
/**********************************/
.p-meeting-section + .p-meeting-section{
  margin-top: 5rem;
}
.p-meeting-section{
  padding: 0 15px;
}

.p-image-group{
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 15px;
  margin-bottom: 3rem;
}
@media (min-width: 576px){
  .p-image-group{
    flex-direction: row;
  }
}

.p-image-group > img{
  width: 100%;
}
@media (min-width: 576px){
  .p-image-group > img{
    width: calc(100% / 3 - 30px / 3);
  }
}

.p-meeting-section > h3{
  font-size: 20px;
  border-bottom: 1px solid var(--darkgray-color);
  padding-bottom: 1rem;
  margin-bottom: 3rem;
  color: #202020;
}

.p-lifeplan{
  background-color: var(--lightgray-color);
  padding: 8rem 0;
}

.p-lifeplan-flex{
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
}
@media (min-width: 992px){
  .p-lifeplan-flex{
    flex-direction: row;
    gap: 0;
  }
}
@media (min-width: 1200px){
  .p-lifeplan-flex{
    flex-direction: column;
    gap: 20px;
  }
}
@media (min-width: 2000px){
  .p-lifeplan-flex{
    flex-direction: row;
    gap: 0;
  }
}

.p-lifeplan-flex .p-lifeplan-flex_img{
  width: 310px;
  text-align: center;
}

.p-lifeplan .p-meeting-section:nth-of-type(1) .p-lifeplan-flex_img img{
  width: 192px;
}

.p-lifeplan .p-meeting-section:nth-of-type(2) .p-lifeplan-flex_img img{
  width: 246px;
}

.p-lifeplan-flex .c-editor-style{
  flex: 1;
}


.p-meeting-img{
  display: block;
  width: 100%;
  margin-bottom: 3rem;
}

/**********************************/
/* contact
/**********************************/

::placeholder {
  color: var(--darkgray-color);
  font-size: 12px;
  font-weight: 400;
  font-family: 'Noto Sans JP', sans-serif;
  letter-spacing: 0.1em;
}
@media (min-width: 576px){
  ::placeholder {
    font-size: 16px;
  }
}

.form-content th,
.form-content td {
  padding: 0;
}

.form-content th{
  font-size: 16px;
  font-weight: 500;
  width: 100%;
}

.form-content td{
  width: 100%;
}

.form-content .form-content__title {
  text-align: left;
  margin-bottom: 10px;
}
@media (min-width: 768px){
  .form-content .form-content__title {
    margin-bottom: 0px;
  }
}

.form-content .form-content__title p {
  font-size: 16px;
  font-weight: bold;
}

.form-content .form-content__must,
.form-content .form-content__any {
  font-size: 12px;
  font-weight: bold;
  padding: 2.5px 7px;
  margin-right: 10px;
  font-weight: 400;
  white-space: nowrap;
}

.form-content .form-content__must{
  color: #fff;
  background-color: #E33400;
}

.form-content .form-content__any{
  background-color: var(--darkgray-color);
  color: #fff;
}

.form-content .form-content__wrap {
  display: flex;
  flex-direction: column;
  gap: 15px;
  border-bottom: 1px solid var(--darkgray-color);
  padding-bottom: 2rem;
  margin-bottom: 2rem;
}


.form-content .form-content__input input {
  border-radius: unset;
  padding: 10px;
  width: 100%;
  min-height: 48px;
}

.form-content .tel .form-content__input input,
.form-content .postal .form-content__input input.p-postal-code{
  max-width: 300px;
}

.form-content .name .flex-name{
  display: flex;
  align-items: center;
  margin-right: 15px;
}

.form-content .name .flex-name:last-of-type{
  margin-right: 0;
}

.form-content .postal > td{
  display: flex;
  flex-direction: column;
  gap: 10px;
}




.form-content .name td {
  display: flex;
}

.form-content .name .form-content__input {
  display: flex;
  align-items: center;
  flex-direction: row;
  max-width: 300px;
}

.form-content .postal .form-content__input:first-child {
  margin-right: 15px;
  display: flex;
  align-items: center;
}

.form-content .name .form-content__input > p{
  width: 100%;
}

/* .form-content .name .flex-name span:first-child {
  margin-bottom: 3rem;
}
@media (min-width: 576px) {
  .form-content .name .flex-name span:first-child {
    margin-bottom: 0;
  }
} */

.form-oontent .select select{
  height: 4rem;
  border: 1px solid var(--darkgray-color);
  font-size: 16px;
  appearance: none;
  padding: 0 30px 0 15px;
  position: relative;
  background-color: #fff;
}

.form-content .select select.is-empty{
  color: var(--darkgray-color);
}

.form-content .select .wpcf7-form-control-wrap::after{
  width: 8px;
  height: 8px;
  border-top: 2px solid #404040;
  border-right: 2px solid #404040;
  position: absolute;
  top: 40%;
  right: 20px;
  transform: rotateZ(135deg);
  content: "";
  pointer-events: none;
}

.form-content .select .wpcf7-form-control-wrap:has(.is-empty )::after{
  border-top: 2px solid var(--sub-color);;
  border-right: 2px solid var(--sub-color);;
}

.form-content .form-content__wrap.radio input{
  width: auto;
  height: auto;
  position: relative;
}

.form-content .form-content__wrap.radio .wpcf7-list-item-label{
  font-size: 16px;
}

.form-content .radio .wpcf7-radio{
  display: flex;
  flex-wrap: wrap;
  gap: 10px 2rem;
}

.form-content .radio .wpcf7-radio .wpcf7-list-item > label{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
@media (min-width: 576px){
  .form-content .radio .wpcf7-radio .wpcf7-list-item > label{
    margin-top: 0;
  }
}

.form-content .radio .wpcf7-radio .wpcf7-list-item > label input{
  width: auto;
  vertical-align: baseline;
  height: auto;
  min-height: 5px;
  margin: 0;
}
@media (min-width: 576px){
  .form-content .radio .wpcf7-radio .wpcf7-list-item > label input{
    min-height: 10px;
  }
}

.form-content .radio .wpcf7-radio .wpcf7-list-item > label span{
  font-size: 14px;
  letter-spacing: 0.1em;
  margin-left: 5px;
}

.form-content .form-content__select select.is-empty {
  color: #a5a5a5;
}

.form-content .file th p{
  display: flex;
  align-items:flex-start;
  margin-right: 30px;
}

.form-content .check label{
  display: flex;
  align-items: center;
}

.form-content .check label input{
  width: 15px;
  margin-right: 5px;
  position: relative;
  top: 1px;
  min-height: auto;
}

.form-content .check .your-check{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0px 3rem;
  margin-bottom: 15px;
}

.form-content .check .your-check .wpcf7-list-item-label{
  font-size: 16px;
  font-weight: 400; 
  white-space: nowrap;
}

.form-content .check input.your-time{
  max-width: 100px;
  margin-right: 10px;
  margin-bottom: 5px;
}


.form-content .family td.form-content__input{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 2rem;
}

.form-content .family .flex-family{
  display: flex;
  align-items: center;
  gap: 10px;
}

.form-content .family .flex-family span.wpcf7-form-control-wrap{
  width: 80px;
  height: 48px;
}

.form-content__input select{
  width: 100%;
  height: 100%;
  text-align: center;
  color:#A3A3A3;
  border: none;
  background: #fff;
}

.form-content .file .form-content__file p:nth-child(n+2){
    line-height: 1.2;
    font-family: var(--NotoSans);
    letter-spacing: 0.1em;
    font-size: 12px;
    font-weight: 400;
}

/* ///// */

label.file_attachment{
  margin-bottom: 5px;
  display: inline-block;
}


span.filebutton
{
  color: #2b2b2b;
  font-size: 13px;
  background-color: #f1f1f1;
  border: 1px solid #2b2b2b;
  margin: 4px 0 0 0;
  padding: 2px 5px;
  border-radius: 16px;
  max-width: 160px;
  letter-spacing: 0.1em;
  text-align: center;
  transition: .3s;
  cursor: pointer;
  height: 35px;
  margin-right: 5px;
  position: relative;
  border-radius: 3px;

  font-weight: 100;
  width: 115px;
}
@media (min-width: 576px){
  span.filebutton{
    height: auto;
    width: 105px;
  }
}

span.filetextdefault{
  display: inline-block;
  font-weight: 400;
  letter-spacing: 0.05em;
  font-size: 14px;
  color: var(--main-color);
}

span.filebutton:hover{
  background-color: #c8c8c8;
}

input[type=file]{
  display: none;
}

input[type=file]:focus{
  outline: none;
}


/* ////// */

.form-content .textarea textarea {
  width: 100%;
  padding: 10px;
  min-height: 10rem;
}

.form-content .form-content__file p {
  color: #2b2b2b;
  font-size: 14px;
  margin-bottom: 10px;
}

.form-content .form-content__file p:first-of-type {
  display: flex;
  flex-direction: column;
}
.form-content .form-content__file p:last-of-type {
  margin-bottom: 0px;
}

td.form-content__file input {
  border: none !important;
}

.privacy-box{
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 3rem;
  gap: 10px 0;
}
@media (min-width: 768px){
  .privacy-box{
    flex-direction: row;
  }
}

.privacy-box > p{
  font-size: 16px;
  font-weight: bold;
  width: 100%;
  text-align: left;
  width: 100%;
}
@media (min-width: 768px){
  .privacy-box > p{
    width: 195px;
  }
}

.privacy-text{
  border: 1px solid var(--darkgray-color);
  padding: 15px;
  width: 100%;
}
@media (min-width: 768px){
  .privacy-text{
      width: calc(100% - 195px);
  }
}

.privacy-text > p{
  font-size: 14px;
  letter-spacing: 0.1em;
  line-height: calc(20/14);
  font-weight: 400;
}

.privacy-text > p + * {
  margin-top: 10px;
}

.privacy-text > ul li{
  text-indent: -0.6em;
  padding-left: 0.6em;
  font-weight: 400;
}

.privacy-btn {
  max-width: 100% !important;
  width: 100% !important;
  margin-bottom: 5rem;
  float: none !important;
}

.privacy-btn{
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: baseline;
}

.privacy-btn > p{
  display: flex;
  align-items: center;
  font-weight: bold;
  font-size: 16px;
  color: var(--main-color);
}

.privacy-btn .wpcf7-list-item input{
  transform: scale(1.4);
  margin: 0;
  margin-right: 10px;
  position: relative;
  top: -2px;
}

.privacy-btn a {
  display: flex;
  align-items: center;
}

.form .wpcf7 .wpcf7-submit:disabled {
  cursor: not-allowed;
}

.form .c-main-btn{
  padding: 0;
  background: #fff;
  color: var(--main-color);
  border: 1px solid var(--main-color);
  background-image: url("../images/common/arrow.png");
}

.p-contact .form .c-main-btn,
.p-download .form .c-main-btn{
  background:var(--contact-color);
  max-width: 42rem;
  border-radius: 35px;
  transition: 0.3s;
}

.p-contact .form .c-main-btn::before,
.p-download .form .c-main-btn::before{
  content: none;
}

.form .c-main-btn:hover{
  opacity: 1 !important;
  transition: 0.3s;
  background: var(--main-color);
}

.form .c-main-btn:hover input[type="submit"] {
  color: #fff !important;
}

.p-contact-text > p{
  font-size: 16px;
  line-height: calc(24/16);
  text-align: center;
}

.p-contact-text > p a{
  color: var(--main-color);
  font-weight: bold;
  border-bottom: 1px solid var(--main-color);
}

.p-download .form-content .tel .form-content__input input{
  width: 100%;
}


.form input[type="submit"],
input[type="button"] {
  color: #000410;
  font-size: 18px;
  font-weight: bold;
  padding: 10px 30px;
  background: none;
  height: 100%;
  width: 100%;
  height: 7.6rem;
  transition: 0.3s;
  letter-spacing: 0.1em;
}
@media (min-width: 576px){
  .form input[type="submit"],
  input[type="button"] {
    font-size: 1.8rem;
}
}
.wpcf7-list-item {
  margin: 0;
}

.wpcf7-spinner {
  display: none;
}


/**********************************/
/* thanks
/**********************************/
.p-thanks .c-main-btn{
  max-width: 42rem;
}

.p-thanks-text p{
  font-size: 16px;
  line-height: calc(24/16);
}

/**********************************/
/* download
/**********************************/
@media (min-width: 1200px){
  .p-download-inner{
    padding-right: 15px;
  }
}

/**********************************/
/* privacy
/**********************************/
.p-privacy .c-editor-style h2{
  font-size: 2.3rem;
  height: 7.4rem;
  color: #fff;
  background: var(--gra-blue);
}

.p-privacy .c-editor-style ol li:before{
  content: counter(cnt) ".";
}

.p-privacy .c-editor-style h3{
  font-size: 2rem;
  font-weight: bold;
  color: var(--main-color);
  background-color: var(--gray-color);
  padding: 10px 20px;
  min-height: 5.5rem;
  display: flex;
  align-items: center;
  margin-bottom: 2rem;
  border-left: none;
}

.p-privacy .c-editor-style * + h3{
  margin-top: 5rem;
}

.p-privacy .c-editor-style h4{
  font-size: 1.8rem;
  margin-bottom: 2rem;
  border-bottom: 1px solid var(--gray-color);
}

.p-privacy .c-editor-style * + h4{
  margin-top: 3rem;
}

.p-privacy table, .p-privacy  td{
  border: 0.5px solid #8B8B8B;
  border-collapse: collapse;
}

.p-privacy table tr{
  display: flex;
  flex-direction: column;
}
@media (min-width: 576px){
  .p-privacy table tr{
    flex-direction: row;
  }
}

.p-privacy table tr td:first-child{
  background-color: var(--lightgray-color);
  width: 100%;
}
@media (min-width: 576px){
  .p-privacy table tr td:first-child{
    width: 40%;
  }
}
@media (min-width: 768px){
  .p-privacy table tr td:first-child{
    width: 270px;
  }
}

.p-privacy table tr td{
  display: flex;
  align-items: center;
  padding: 10px;
  text-align: left;
}

.p-privacy table tr td:last-child{
  width: 100%;
}
@media (min-width: 576px){
  .p-privacy table tr td:last-child{
    flex: 1;
  }
}

.p-privacy .wp-block-table + .wp-block-table{
  margin-top: 1rem;
}

.p-privacy table tr a{
  display: inline-flex;
}





/* /gallay */ 
.p-gallay-list{
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  gap: 15px;
  padding: 0 15px;
}
@media (min-width: 576px){
  .p-gallay-list{
    flex-direction: row;
    padding: 0;
  }
}

.p-gallay-item{
  width: 100%;
  aspect-ratio: 1;
}
@media (min-width: 576px){
  .p-gallay-item{
    width: calc(50% - 15px / 2);
  }
}

.p-gallay-img img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.fancybox-wrap,
.fancybox-skin,
.fancybox-outer,
.fancybox-inner,
.fancybox-image,
.fancybox-wrap iframe,
.fancybox-wrap object,
.fancybox-nav,
.fancybox-nav span,
.fancybox-tmp
{
	padding: 0;
	margin: 0;
	border: 0;
	outline: none;
	vertical-align: top;
}

.fancybox-wrap {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 8020;
}

.fancybox-skin {
	position: relative;
	background: #f9f9f9;
	color: #444;
	text-shadow: none;
	-webkit-border-radius: 4px;
	   -moz-border-radius: 4px;
	        border-radius: 4px;
}

.fancybox-opened {
	z-index: 8030;
}

.fancybox-opened .fancybox-skin {
	-webkit-box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
	   -moz-box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
	        box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
}

.fancybox-outer, .fancybox-inner {
	position: relative;
}

.fancybox-inner {
	overflow: hidden;
}

.fancybox-type-iframe .fancybox-inner {
	-webkit-overflow-scrolling: touch;
}

.fancybox-error {
	color: #444;
	font: 14px/20px "Helvetica Neue",Helvetica,Arial,sans-serif;
	margin: 0;
	padding: 15px;
	white-space: nowrap;
}

.fancybox-image, .fancybox-iframe {
	display: block;
	width: 100%;
	height: 100%;
}

.fancybox-image {
	max-width: 100%;
	max-height: 100%;
}

#fancybox-loading, .fancybox-close, .fancybox-prev span, .fancybox-next span {
	background-image: url('fancybox_sprite.png');
}

#fancybox-loading {
	position: fixed;
	top: 50%;
	left: 50%;
	margin-top: -22px;
	margin-left: -22px;
	background-position: 0 -108px;
	opacity: 0.8;
	cursor: pointer;
	z-index: 8060;
}

#fancybox-loading div {
	width: 44px;
	height: 44px;
	background: url('fancybox_loading.gif') center center no-repeat;
}

.fancybox-close {
	position: absolute;
	top: -18px;
	right: -18px;
	width: 36px;
	height: 36px;
	cursor: pointer;
	z-index: 8040;
}

.fancybox-nav {
	position: absolute;
	top: 0;
	width: 40%;
	height: 100%;
	cursor: pointer;
	text-decoration: none;
	background: transparent url('blank.gif'); /* helps IE */
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	z-index: 8040;
}

.fancybox-prev {
	left: 0;
}

.fancybox-next {
	right: 0;
}

.fancybox-nav span {
	position: absolute;
	top: 50%;
	width: 36px;
	height: 34px;
	margin-top: -18px;
	cursor: pointer;
	z-index: 8040;
	visibility: hidden;
}

.fancybox-prev span {
	left: 10px;
	background-position: 0 -36px;
}

.fancybox-next span {
	right: 10px;
	background-position: 0 -72px;
}

.fancybox-nav:hover span {
	visibility: visible;
}

.fancybox-tmp {
	position: absolute;
	top: -99999px;
	left: -99999px;
	visibility: hidden;
	max-width: 99999px;
	max-height: 99999px;
	overflow: visible !important;
}

/* Overlay helper */

.fancybox-lock {
    overflow: hidden !important;
    width: auto;
}

.fancybox-lock body {
    overflow: hidden !important;
}

.fancybox-lock-test {
    overflow-y: hidden !important;
}

.fancybox-overlay {
	position: absolute;
	top: 0;
	left: 0;
	overflow: hidden;
	display: none;
	z-index: 8010;
  background-color: rgba(255, 255, 255, 0.8);
}

.fancybox-overlay-fixed {
	position: fixed;
	bottom: 0;
	right: 0;
}

.fancybox-lock .fancybox-overlay {
	overflow: auto;
	overflow-y: scroll;
}

/* Title helper */

.fancybox-title {
	visibility: hidden;
	font: normal 13px/20px "Helvetica Neue",Helvetica,Arial,sans-serif;
	position: relative;
	text-shadow: none;
	z-index: 8050;
}

.fancybox-opened .fancybox-title {
	visibility: visible;
}

.fancybox-title-float-wrap {
	position: absolute;
	bottom: 0;
	right: 50%;
	margin-bottom: -35px;
	z-index: 8050;
	text-align: center;
}

.fancybox-title-float-wrap .child {
	display: inline-block;
	margin-right: -100%;
	padding: 2px 20px;
	background: transparent; /* Fallback for web browsers that doesn't support RGBa */
	background: rgba(0, 0, 0, 0.8);
	-webkit-border-radius: 15px;
	   -moz-border-radius: 15px;
	        border-radius: 15px;
	text-shadow: 0 1px 2px #222;
	color: #FFF;
	font-weight: bold;
	line-height: 24px;
	white-space: nowrap;
}

.fancybox-title-outside-wrap {
	position: relative;
	margin-top: 10px;
	color: #fff;
}

.fancybox-title-inside-wrap {
	padding-top: 10px;
}

.fancybox-title-over-wrap {
	position: absolute;
	bottom: 0;
	left: 0;
	color: #fff;
	padding: 10px;
	background: #000;
	background: rgba(0, 0, 0, .8);
}

/*Retina graphics!*/
@media only screen and (-webkit-min-device-pixel-ratio: 1.5),
	   only screen and (min--moz-device-pixel-ratio: 1.5),
	   only screen and (min-device-pixel-ratio: 1.5){

	#fancybox-loading, .fancybox-close, .fancybox-prev span, .fancybox-next span {
		background-image: url('../images/common/fancybox_sprite.png');
		background-size: 44px 152px; /*The size of the normal image, half the size of the hi-res image*/
	}

	#fancybox-loading div {
		background-image: url('fancybox_loading@2x.gif');
		background-size: 24px 24px; /*The size of the normal image, half the size of the hi-res image*/
	}
}

#fancybox-thumbs {
	position: fixed;
	left: 0;
	width: 100%;
	overflow: hidden;
	z-index: 8050;
}

#fancybox-thumbs.bottom {
	bottom: 2px;
}

#fancybox-thumbs.top {
	top: 2px;
}

#fancybox-thumbs ul {
	position: relative;
	list-style: none;
	margin: 0;
	padding: 0;
}

#fancybox-thumbs ul li {
	float: left;
	padding: 1px;
	opacity: 0.5;
}

#fancybox-thumbs ul li.active {
	opacity: 0.75;
	padding: 0;
	border: 1px solid #fff;
}

#fancybox-thumbs ul li:hover {
	opacity: 1;
}

#fancybox-thumbs ul li a {
	display: block;
	position: relative;
	overflow: hidden;
	background: #111;
	outline: none;
}

#fancybox-thumbs ul li img {
	display: block;
	position: relative;
	border: 0;
	padding: 0;
	max-width: none;
}