.p-pagetitle__breadcrumbs{
  width:61.8%;
  max-width:744px;
}
@media screen and (max-width: 768px){
  .p-pagetitle__breadcrumbs{
    width:100%;
    max-width:100%;
  }
  .p-pagetitle__title{
    margin-top:86px;
    margin-top:22.933vw;
  }
}



.c-container{
  padding:80px 0;
}
.u-pc{
  display:block;
}
.u-sp{
  display:none;
}
.u-flex{
  display:flex;
  flex-wrap: wrap;
}
    @media screen and (max-width: 768px){
      .u-pc{
        display:none;
      }
      .u-sp{
        display:block;
      }
      .c-container{
        padding:40px 0 ;
      }
    }

/*---------------------------
company
---------------------------*/
.p-company__table-area{
  width:100%;
  margin:50px auto 0;
  border-bottom-right-radius: 30px;
  border-right: 4px solid #000;
  border-bottom: 4px solid #000;
  padding-right: 1.875rem;
  padding-bottom: 12px;
}
.p-company__table{
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
}
.p-company__table tbody{

}
.p-company__table tr{

}
.p-company__table th,
.p-company__table td{
  padding: 27px 20px;
  border-bottom: solid 1px #b1b1b1;
  vertical-align: text-top;
}
.p-company__table th{
  font-weight:bold;
  width:180px;
  border-bottom: solid 1px #000
}
.p-company__table td{
  font-weight:500;
}
.p-company__table tr:last-child th,
.p-company__table tr:last-child td{
  border-bottom: unset;
}
.p-company__ttl-en{
  font-family: "Inter", sans-serif;
  font-weight: 700;
  font-size: 22px;
  text-align: center;
}
.p-company__ttl{
  font-size: 2.75rem;
  text-align: center;
  margin-bottom:41px;
}
.p-company__ttl span{
  background: #000000;
  color: #f8f8f8;
  display: inline-block;
  padding: 0 7px;
  line-height: 1.3;
}
.p-company__box{
  margin-bottom:60px;
}
.p-company__box:last-child{
  margin-bottom:0;
}
.p-company__sbttl{
  font-size: 28px;
  font-weight:bold;
  font-family: "Inter", sans-serif;
  font-weight: 700;
  color:#d5d5d5;
}
.p-company__sbttl span{
  font-size:14px;
  color:#000;
  font-family: "Zen Kaku Gothic New", sans-serif;
}
.p-company__sbttl span.first{
  font-size: 28px;
  color:#000;
}
.p-company__catch{
  margin-bottom:42px;
}

.p-company__catch span{
  display: inline-block;
  font-size: 30px;
  line-height: 1.4;
  margin-top:10px;
  position:relative;
  padding: 2px 5px;
}
.p-company__catch span::after{
  content: "";
  position: absolute;
  z-index: -1;
  left: 0;
  bottom: 0;
  background-color: #FFCD00;
  pointer-events: none;
  width:100%;
  height:30%;
}
.p-company__catch span:first-child{
  margin-top:0;
}
.p-company__text{
  font-weight: 500;
  line-height:1.8;
}
.p-company__table a{
  text-decoration: underline;
}
    @media screen and (max-width: 768px){
      .p-company__table-area{
        width:100%;
        margin:30px auto 0;
        padding-right: 17px;
        padding-bottom: 7px;
      }
      .p-company__table{
        display:block;
        width:100%;
      }
      .p-company__table tbody{
        display:block;
        width:100%;
      }
      .p-company__table tr{
        display:block;
        width:100%;
      }
      .p-company__table th,
      .p-company__table td{
        display:block;
        width:100%;
        padding: 0;
        margin: 0;
        border-bottom: unset;
        vertical-align: text-top;text-align: left;
      }
      .p-company__table th{
        width:100%;
        border-bottom: unset;
        padding-top: 18px;
        font-weight:bold;
      }
      .p-company__table td{
        border-bottom: solid 1px #000;
        margin-bottom:0px;
        padding: 5px 0 18px 0;
        font-weight:500;
      }
      .p-company__table tr:last-child th,
      .p-company__table tr:last-child td{
        border-bottom: unset;
      }

      .p-company__ttl-en{
        font-size: 16px;
        text-align: left;
      }
      .p-company__ttl{
        font-size: 28px;
        text-align: left;
        margin-bottom:32px;
      }
      .p-company__ttl span{
        background: #000000;
        color: #f8f8f8;
        display: inline-block;
        padding: 0 7px;
        line-height: 1.3;
      }
      .p-company__box{
        margin-bottom:40px;
      }
      .p-company__box:last-child{
        margin-bottom:0;
      }
      .p-company__sbttl{
        font-size: 16px;
      }
      .p-company__sbttl span{
        font-size:12px;
      }
      .p-company__sbttl span.first{
        font-size: 16px;
      }
      .p-company__catch{
        margin-bottom:26px;
      }
      .p-company__catch span{
        font-size: 20px;
        line-height: 1.4;
        margin-top:5px;
        position:relative;
        padding: 2px 5px;
      }
      .p-company__catch span::after{
        content: "";
        position: absolute;
        z-index: -1;
        left: 0;
        bottom: 0;
        background-color: #FFCD00;
        pointer-events: none;
        width:100%;
        height:30%;
      }
      .p-company__catch span:first-child{
        margin-top:0;
      }
      .p-company__text{
        font-weight: 500;
        line-height:1.8;
      }
    }

/*---------------------------
404
---------------------------*/
.p-error__contents {
  width: fit-content;
  margin: 180px auto ;
}
.p-error__contents .c-text {
  margin-bottom: 45px;
}
.p-error__contents .c-btn {
  margin: 0 auto;
  width: fit-content;
  box-shadow: 0px 0px 0px rgba(0, 0, 0, 0.16);
}
.p-error__contents .c-btn::after {
  display: none;
}
    @media screen and (max-width: 768px) {
      .p-error__contents {
        width: fit-content;
        margin: 150px auto;
      }
      .p-error__contents .c-text {
        margin-bottom: 36px;
      }
    }

.p-error__ttl {
  font-size: 84px;
  font-weight: 600;
  margin-bottom: 20px;
  color: #000;
  font-family: "Inter", sans-serif;
  text-align: center;
}
    @media screen and (max-width: 768px) {
      .p-error__ttl {
        font-size: 44px;
        margin-bottom: 10px;
      }
    }
/*---------------------------
Privacy policy
---------------------------*/
.p-privacy__contents {
  padding-bottom: 200px;
}
.p-privacy__contents h2 {
  font-size: 22px;
  font-weight: bold;
  margin-bottom: 16px;
  line-height: 1.6;
}
.p-privacy__contents h3 {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 8px;
  line-height: 1.6;
}
.p-privacy__contents p {
  font-size: 16px;
  font-weight:500;
  margin-bottom: 42px;
  line-height: 1.8;
}
.p-privacy__contents ul {
  margin-bottom: 42px;
  padding: 30px 31px 33px;
  background-color: rgba(177, 177, 177, .15);
  border-radius: 8px;
}
.p-privacy__contents li {
  font-size: 16px;
  font-weight:500;
  margin-bottom: 8px;
  line-height: 1.5;
  position: relative;
  padding-left: 1em;
}
.p-privacy__contents .wp-block-list li::before {
  content: "";
  display: block;
  width: 5px;
  height: 5px;
  background-color: #000;
  border-radius: 50%;
  position: absolute;
  left: 0;
  top: 9px;
}
.p-privacy__contents li:last-child {
  margin-bottom: 0;
}
    @media screen and (max-width: 768px) {
      .p-privacy__contents {
        max-width: 100%;
        padding-bottom: 50px;
      }
      .p-privacy__contents h2 {
        font-size:18px;
        margin: 0 auto 10px;
      }
      .p-privacy__contents h3 {
        font-size:16px;
        margin: 0 auto 7px;
      }
      .p-privacy__contents p {
        margin: 0 auto 35px;
      }
      .p-privacy__contents ul {
        margin: 0 auto 46px;
        padding: 20px 20px 20px;
        border-radius: 4px;
      }
      .p-privacy__contents li:last-child {
        margin-bottom: 0;
      }
    }

.wp-block-separator {
  border: unset;
  width: 100%;
  height: 1px;
  background-color: #E3E3E3;
  position: relative;
  margin-bottom: 48px;
  border-top: none !important;
}

.wp-block-separator::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 74px;
  height: 1px;
  background-color: #1DCC59;
}

/*---------------------------
contact
---------------------------*/
.p-contact__contents .c-text{
  font-size:16px;
  font-weight:500;
  line-height:1.6;
}
.p-contact__text{
  margin-bottom:45px;
}
.p-contact__tel-area{
  display: flex;
  align-items: flex-end;
  margin-bottom:60px;
}
.p-contact__tel{
  display:inline-flex;
  font-size:22px;
  font-weight:bold;
  line-height:1;
  font-family: "Inter", sans-serif;
  letter-spacing:0.05em;
  position:relative;
  padding-left:30px;
  margin-right:5px;
}
.p-contact__tel::before{
  content:"";
  background-image:url(../images/tel.svg);
  background-size:100% 100%;
  width:20px;
  height:20px;
  position:absolute;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  left:0;
}
.p-contact__tel-date{
  font-size:16px;
  font-weight:500;
  line-height:1;
  font-family: "Zen Kaku Gothic New", sans-serif;
  padding-bottom:2px;
}


.p-contact__form-item{
  width:100%;
  display:flex;
  margin-bottom:30px;
}
 .p-contact__form-item.p-contact__form-item-herf{
   width:50%;
 }
.p-contact__form-item.p-contact__form-item-col{
  display:block;
}
.c-text.p-contact__form-label{
  font-weight:bold;
  min-width:300px;
  display:block;
  font-size:18px;
}
.p-contact__form-item.p-contact__form-item-col .p-contact__form-label{
  margin-bottom:10px;
}
.p-contact__form-item .wpcf7-form-control-wrap{
  flex:1;
}
.p-contact__form-item-herf .wpcf7-form-control-wrap{
  min-width:200px;
}
.p-contact__form-item input[type="text"],
.p-contact__form-item input[type="email"],
.p-contact__form-item input[type="tel"],
.p-contact__form-item button,
.p-contact__form-item textarea,
.p-contact__form-item select{
  width:100%;
  padding:5px 10px;
  border-radius:5px;
  background-color:unset;
  border: 1px solid #000;
  color:#000;
}

.p-contact__required{
  font-size:14px;
  font-weight:bold;
  background-color:#FF0000;
  color:#fff;
  border-radius:5px;
  padding:2px 5px;
  margin-left:15px;
}

.p-contact__form-item-flex{
  display:flex;
  flex-wrap: wrap;
  gap:30px;
}
.p-contact__form-item-flex span{
  width:200px;
  display:flex;
  align-items: flex-end;
  gap:8px;
}

.p-contact__form-item .wpcf7-list-item{
  margin: 0 10px 0 0;
}
.p-contact__form-item input[type="radio"],
.p-contact__form-item input[type="checkbox"]{
  accent-color: #000;
}
.p-contact__form-item-textarea .c-text{
  margin-bottom:20px;
}
.p-contact__note{
  margin-bottom:30px;
}

.p-contact__form-item.p-contact__form-item-textarea{
  display:block;
}

.p-contact__form-submit-link{
  text-decoration: underline;
  text-align: center;
}
.p-contact__form-submit{
  margin:0 auto 10px;
  width:fit-content;
}
.p-contact__form-submit .wpcf7-list-item{
  margin:0;
}
.p-contact__btn{
  margin:0 auto;
  width:250px;
}
.p-contact__btn .c-btn__link{
  width:250px;
}
.p-contact__contents .wpcf7-form.hide_error_message .wpcf7-not-valid-tip ,
.p-contact__contents .wpcf7-spinner{
	display: none;
}
.p-contact__form-file:first-child{
  margin-bottom:10px;
}
.p-contact__form-file-text{
  font-size:16px;
  font-weight:bold;
  margin-bottom:5px;
}
#autozip,
#zip_close{
  background-color:#000!important;
}

    @media screen and (max-width: 768px){

      .p-contact__text{
        margin-bottom:20px;
      }
      .p-contact__tel-area{
        display: flex;
        align-items: flex-end;
        margin-bottom:60px;
      }
      .p-contact__tel{
        display:inline-flex;
        font-size:18px;
        padding-left:26px;
        margin-right:5px;
      }
      .p-contact__tel::before{
        content:"";
        background-image:url(../images/tel.svg);
        background-size:100% 100%;
        width:18px;
        height:18px;
        position:absolute;
        top: 50%;
        transform: translateY(-50%);
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        left:0;
      }
      .p-contact__tel-date{
        font-size:14px;
        font-weight:500;
        line-height:1;
        font-family: "Zen Kaku Gothic New", sans-serif;
        padding-bottom:2px;
      }


      .p-contact__form-item{
        width:100%;
        display:block;
        margin-bottom:24px;
      }
       .p-contact__form-item.p-contact__form-item-herf{
         width:100%;
       }
      .p-contact__form-item.p-contact__form-item-col{
        display:block;
      }
      .p-contact__form-item.p-contact__form-item-col span{
        width:100%;
      }
      .c-text.p-contact__form-label{
        font-weight:bold;
        min-width:300px;
        display:block;
        font-size:18px;
      }
      .p-contact__form-item.p-contact__form-item-col .p-contact__form-label{
        margin-bottom:10px;
      }
      .p-contact__form-item .wpcf7-form-control-wrap{
        flex:1;
      }
      .p-contact__form-item input[type="text"],
      .p-contact__form-item input[type="email"],
      .p-contact__form-item input[type="tel"],
      .p-contact__form-item button,
      .p-contact__form-item textarea,
      .p-contact__form-item select{
        width:100%;
        padding:5px 10px;
        border-radius:5px;
        background-color:unset;
        border: 1px solid #000;
        margin-top:10px;
      }

      .p-contact__required{
        font-size:14px;
        font-weight:bold;
        background-color:#FF0000;
        color:#fff;
        border-radius:5px;
        padding:2px 5px;
        margin-left:8px;
      }

      .p-contact__form-item-flex{
        display:block;
        gap:30px;
      }
      .p-contact__form-item-flex span{
        width:100%;
        display:flex;
        align-items: flex-end;
        gap:8px;
      }

      .p-contact__form-item .wpcf7-list-item{
        margin: 0 10px 0 0;
      }
      .p-contact__form-item input[type="radio"],
      .p-contact__form-item input[type="checkbox"]{
        accent-color: #000;
      }
      .p-contact__form-item-textarea .c-text{
        margin-bottom:20px;
      }
      .p-contact__note.c-text{
        margin-bottom:24px;
        font-size:15px;
      }

      .p-contact__form-item.p-contact__form-item-textarea{
        display:block;
      }

      .p-contact__form-submit-link{
        text-decoration: underline;
        text-align: center;
      }
      .p-contact__form-submit{
        margin:0 auto 10px;
        width:fit-content;
        font-size:14px;
        white-space: nowrap;
      }
      .p-contact__btn{
        margin:0 auto;
        width:250px;
      }
      .p-contact__btn .c-btn__link{
        width:250px;
      }
      .p-contact__contents .wpcf7-form.hide_error_message .wpcf7-not-valid-tip ,
      .p-contact__contents .wpcf7-spinner{
      	display: none;
      }
      .p-contact__form-file-text{
        font-size:16px;
        font-weight:bold;
      }
    }

/*---------------------------
confirm
---------------------------*/
.p-contact__confirm-contents .p-contact__text{
  margin-bottom:50px;
}
.p-contact__confirm-contents .p-contact__form-item{
  margin-bottom:30px;
}
.p-contact__confirm-contents .p-contact__form-item.p-contact__form-item-col{
 display:flex;
 flex-wrap:wrap;
}
.p-contact__confirm-contents .p-contact__form-item-flex span{
  width:fit-content;
}
.p-contact__confirm-contents .cf7msm-ro{
  font-size:18px;
}
.p-contact__confirm-contents　.p-contact__form-file{
  display: block;
}
.c-btn__back{
  margin-bottom:10px;
}
.p-contact__btn input{
  cursor: pointer;
  border:unset;
  transition: transform 0.4s ease, -webkit-transform 0.4s ease;
}
.p-contact__btn input:hover{
  background-color:#b1b1b1;
}

.p-contact__confirm-contents .p-contact__form-item-textarea{
  width:100%;
  display:flex;
  margin-bottom:30px;
}

    @media screen and (max-width: 768px){
      .p-contact__confirm-contents .p-contact__text{
        margin-bottom:30px;
      }
      .p-contact__confirm-contents .p-contact__form-item{
        margin-bottom:24px;
      }
      .p-contact__confirm-contents .p-contact__form-item-textarea{
        width:100%;
        display:block;
        margin-bottom:24px;
      }
    }
/*---------------------------
thanks
---------------------------*/
.p-contact__thanks{
  padding:60px 0;
}

.p-contact__thanks .c-btn{
  margin:0 auto;
  width:fit-content;
}
.p-contact__thanks .c-btn__link{
  min-width: 290px;
  font-size:20px;
}
.p-contact__thanks-contents{
  margin-bottom:50px;
}
.p-contact__thanks-contents h2{
  text-align: center;
  font-size:28px;
  font-weight:bold;
  margin-bottom:30px;
}
.p-contact__thanks-contents p{
  width:fit-content;
  margin: 0 auto;
}
    @media screen and (max-width: 768px){
      .p-contact__thanks{
        padding:30px 0;
      }
      .p-thanks__ttl{
        text-align: center;
        font-size:28px;
        font-weight:bold;
        margin-bottom:24px;
      }
      .p-contact__thanks .c-btn{
        margin:0 auto;
        width:fit-content;
      }
      .p-contact__thanks .c-btn__link{
        min-width: 200px;
        font-size:16px;
      }
      .p-contact__thanks-contents{
        margin-bottom:50px;
      }
    }
/*---------------------------
column
---------------------------*/

.p-column__list{
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  grid-template-columns: 1fr 1fr 1fr;
  gap: 3.125rem 2.5rem;
}
.p-column__item{
  width:100%;
}
.p-column__box-img{
  position: relative;
  width: 100%;
  aspect-ratio: 554 / 307;
  aspect-ratio: 350 / 240;

  height: auto;
  overflow: hidden;
  margin-bottom:10px;
}
.p-column__box-img img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.p-column__box-ttl{
  font-size:20px;
  font-weight:bold;
  margin-bottom:8px;
}
.p-column__box-cate{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:5px;
}
.p-column__box-cate-item{
  border-radius: 4px;
  background: #000000;
  color: #f8f8f8;
  padding: 0px 6px;
  font-size:14px;
  font-weight:bold;
}
.p-column__box-text{
  font-size:16px;
  font-weight:500;
  margin-bottom:8px;
}
.p-column__box-contents{

}
.p-column__box-contents-item{
  font-size:16px;
  font-weight:500;
  display:flex;
  align-items: center;
}
.p-column__box-contents-item::before{
  content: "";
  display: block;
  width: 5px;
  height: 5px;
  background-color: #b1b1b1;
  border-radius: 50%;
  margin-right:10px;
}


.pagination {
  width:100%;
  margin-top:80px;
  text-align: center;
}

.nav-links .page-numbers {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap:25px;
}

.nav-links a.page-numbers ,
.nav-links .current,
.nav-links a.prev,
.nav-links a.next,
.nav-links .dots {
    width: 52px;
    height: 52px;
    text-align: center;
    line-height: 50px;
    background: #fff;
    color: #000;
    border-radius: 4px;

    font-size: 14px;
    font-family: "Inter", sans-serif;
    font-weight: bold;
    border: 1px solid #000;
}

.nav-links a.page-numbers:hover {
    color: #FFF;
    background-color: #b1b1b1;
    border-color: #b1b1b1;
}

.nav-links .current {
    background: #ffcd2a;
    font-size: 16px;
    color: #FFFFFF;
    padding: 0;
    border:unset;
}

/* 前への「＜」、次への「＞」 */
.nav-links a.prev,
.nav-links a.next {
    border: 1px solid #000;
    color: #000;
    position: relative;
}

.nav-links a.prev::before,
.nav-links a.next::after{
  content:"";
  background-image:url(../images/btn-arrow.png);
  background-size:100% 100%;
  background-repeat: no-repeat;
  display:block;
  width: 20px;
  height: 16px;
  -o-object-fit: contain;
  object-fit: contain;
  position:absolute;
  top: 50%;
  left: 50%;
  -webkit-transform : translate(-50%,-50%);
  transform : translate(-50%,-50%);
}
.nav-links a.prev::before {
  transform: translate(-50%,-50%) scaleX(-1);
}
.nav-links a.prev:hover::before,
.nav-links a.next:hover::after{
  background-image:url(../images/arrow-w.png);
}

    @media screen and (max-width: 768px){
      .p-column__list{
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
        grid-template-columns: 1fr;
        gap: 30px;
      }
      .p-column__item{
        width:100%;
      }
      .p-column__box-img{
        position: relative;
        width: 100%;
        aspect-ratio: 554 / 307;
        aspect-ratio: 350 / 240;

        height: auto;
        overflow: hidden;
        margin-bottom:5px;
      }
      .p-column__box-img img{
        width: 100%;
        height: 100%;
        object-fit: cover;
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
      }
      .p-column__box-ttl{
        font-size:20px;
        font-weight:bold;
        margin-bottom:8px;
      }
      .p-column__box-cate{
        display:flex;
        flex-wrap:wrap;
        gap:8px;
        margin-bottom:5px;
      }
      .p-column__box-cate-item{
        border-radius: 4px;
        background: #000000;
        color: #f8f8f8;
        padding: 0px 4px;
        font-size:14px;
        font-weight:bold;
        display: inline-block;
      }
      .p-column__box-text{
        font-size:16px;
        font-weight:500;
        margin-bottom:8px;
      }
      .p-column__box-contents{

      }
      .p-column__box-contents-item{
        font-size:16px;
        font-weight:500;
        display:flex;
        align-items: center;
      }
      .p-column__box-contents-item::before{
        content: "";
        display: block;
        width: 5px;
        height: 5px;
        background-color: #b1b1b1;
        border-radius: 50%;
        margin-right:10px;
      }


      .pagination {
        width:100%;
        margin-top:80px;
        text-align: center;
      }

      .nav-links .page-numbers {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap:12px;
      }

      .nav-links a.page-numbers ,
      .nav-links .current,
      .nav-links a.prev,
      .nav-links a.next,
      .nav-links .dots {
          width: 36px;
          height: 36px;
          text-align: center;
          line-height: 36px;
          background: #fff;
          color: #000;
          border-radius: 4px;

          font-size: 14px;
          font-family: "Inter", sans-serif;
          font-weight: bold;
          border: 1px solid #000;
      }

      .nav-links a.page-numbers:hover {
          color: #FFF;
          background-color: #b1b1b1;
          border-color: #b1b1b1;
      }

      .nav-links .current {
          background: #ffcd2a;
          font-size: 16px;
          color: #FFFFFF;
          padding: 0;
          border:unset;
      }

      /* 前への「＜」、次への「＞」 */
      .nav-links a.prev,
      .nav-links a.next {
          border: 1px solid #000;
          color: #000;
          position: relative;
      }

      .nav-links a.prev::before,
      .nav-links a.next::after{
        content:"";
        background-image:url(../images/btn-arrow.png);
        background-size:100% 100%;
        background-repeat: no-repeat;
        display:block;
        width: 14px;
        height: 12px;
        -o-object-fit: contain;
        object-fit: contain;
        position:absolute;
        top: 50%;
        left: 50%;
        -webkit-transform : translate(-50%,-50%);
        transform : translate(-50%,-50%);
      }
      .nav-links a.prev::before {
        transform: translate(-50%,-50%) scaleX(-1);
      }
      .nav-links a.prev:hover::before,
      .nav-links a.next:hover::after{
        background-image:url(../images/arrow-w.png);
      }
    }

/*---------------------------
single
---------------------------*/
.p-post__wrap{
  display: grid;
  grid-template-columns: 1fr 250px;
  gap: 50px;
}
.p-post__ttl{
  font-size:28px;
  font-weight:bold;
  margin-bottom:20px;
}
.p-post__flex{
  align-items: center;
  justify-content: space-between;
}
.p-post__date{
  font-size:16px;
  font-weight:bold;
  font-family: "Inter", sans-serif;
}
.p-post__thumbnail{
  margin-top:20px;
  margin-bottom:20px;
}
.p-post__thumbnail img{
  width:100%;
  height: auto;
}

.p-post__cta01,
.p-post__cta02{
  align-items: center;
  justify-content: space-between;
  background: rgba(177, 177, 177, .15);
  padding: 24px 36px;
  width:100%;
  min-width: 634px;
  margin:0 auto 40px;
  justify-content: center;
  gap:40px;
  border-radius:4px;
}

.p-post__cta02{
  max-width: 100%;
}
.p-post__cta-text{
  font-size:18px;
  font-weight:bold;
}
.p-post__contents p.p-post__cta-text{
  margin:0;
  font-size:18px;
  font-weight:bold;
}
.p-post__cta .c-btn__link{
  width:250px;
}
.p-post__cta-text-free{
  border:solid 1px #000;
  border-radius:50%;
  width:60px;
  height:60px;
  line-height:60px;
  text-align: center;
  display: inline-block;
  margin-right:10px;
  box-sizing: content-box;
}

.p-post__contents{
  padding:40px 0;
}
.p-post__contents h2{
  background: #f8f8f8;
  display: block;
  width:fit-content;
  padding: 6px 10px;
  border-left:6px solid #000;
  line-height: 1.3;
  font-size: 34px;
  text-align: left;
  margin:20px auto 45px 0;
}
.p-post__contents h3{
  display: inline-block;
  padding: 2px 0 6px;
  font-size: 28px;
  line-height: 1.4;
  margin-bottom:30px;
  border-bottom:2px solid #000;
}
.p-post__contents h4{
  font-size: 22px;
  line-height: 1.4;
  font-weight:bold;
  margin-bottom:19px;
}
.p-post__contents p{
  line-height:1.8;
  font-weight:500;
  font-size:16px;
  margin-bottom:30px;
}
.p-post__contents a{
  text-decoration: underline;
}
.p-post__contents ul ,
.p-post__contents ol {
  margin-bottom: 42px;
  padding: 30px 31px 33px;
  background-color: rgba(177, 177, 177, .15);
  border-radius: 8px;
}
.p-post__contents li {
  font-size: 16px;
  font-weight:500;
  margin-bottom: 8px;
  line-height: 1.5;
  position: relative;
  padding-left: 1em;
}
.p-post__contents ul.wp-block-list li::before {
  content: "";
  display: block;
  width: 5px;
  height: 5px;
  background-color: #000;
  border-radius: 50%;
  position: absolute;
  left: 0;
  top: 9px;
}
.p-post__contents ol.wp-block-list {
  counter-reset: list-counter; /* これを追加 */
  list-style: none;
}
.p-post__contents ol.wp-block-list li::before {
  content: counter(list-counter)".";
  counter-increment: list-counter;
  width: 1.5em;
  height: 1.5em;
  position: absolute;
  left: 0;
  top: 0;
  font-size: 16px;
  font-weight: bold;
}
.p-post__contents li:last-child {
  margin-bottom: 0;
}
      @media screen and (max-width: 768px){
        .p-post__wrap{
          display: block;

        }
        .p-post__ttl{
          font-size:22px;
          font-weight:bold;
          margin-bottom:20px;
        }
        .p-post__flex{
          align-items: flex-start;
          justify-content: space-between;

        }
        .p-post__date{
          font-size:16px;
          font-weight:bold;
          font-family: "Inter", sans-serif;
        }
        .p-post__thumbnail{
          margin-top:20px;
          margin-bottom:20px;
        }
        .p-post__thumbnail img{
          width:100%;
          height: auto;
        }
        .p-post__wrap .p-column__box-cate{
          display:block;
        }

        .p-post__cta01,
        .p-post__cta02{
          background: rgba(177, 177, 177, .15);
          padding: 16px 24px;
          max-width: 100;
          margin:0 auto 40px;
          display: block;
          text-align: center;
          min-width:100%;
        }
        .p-post__cta02{
          max-width: 100%;
        }
        .p-post__cta-text{
          font-size:16px;
          text-align: center;
          font-weight:bold;
          margin-bottom:10px;
        }

        .p-post__contents p.p-post__cta-text{
          margin:0 0 10px;
          font-size:18px;
          font-weight:bold;
        }
        .p-post__cta01 .c-btn__link,
        .p-post__cta02 .c-btn__link{
          width:200px;
          font-size:16px;
          font-weight:bold;
        }
        .p-post__cta-text-free{
          border:solid 1px #000;

          width:50px;
          height:50px;
          line-height:50px;
          text-align: center;
          display: inline-block;
          margin-right:10px;
          box-sizing: content-box;
        }

        .p-post__contents{
          padding:40px 0;
        }
        .p-post__contents h2{
          background: #f8f8f8;
          display: block;
          width:fit-content;
          padding: 6px 10px;
          border-left:6px solid #000;
          line-height: 1.3;
          text-align: left;
          font-size: 22px;
          margin:20px auto 30px 0;
        }
        .p-post__contents h3{
          display: inline-block;
          padding: 2px 0 6px;
          font-size: 18px;
          line-height: 1.4;
          margin-bottom:19px;
          border-bottom:2px solid #000;
        }
        .p-post__contents h4{
          font-size: 16px;
          line-height: 1.4;
          font-weight:bold;
          margin-bottom:16px;
        }
        .p-post__contents p{
          line-height:1.8;
          font-weight:500;
          font-size:16px;
          margin-bottom:24px;
        }
        .p-post__contents a{
          text-decoration: underline;
        }
        .p-post__contents ul ,
        .p-post__contents ol {
          margin-bottom: 24px;
          padding: 20px;
          background-color: rgba(177, 177, 177, .15);
          border-radius: 8px;
        }
        .p-post__contents li {
          font-size: 16px;
          font-weight:500;
          margin-bottom: 8px;
          line-height: 1.5;
          position: relative;
          padding-left: 1em;
        }
        .p-post__contents ul.wp-block-list li::before {
          content: "";
          display: block;
          width: 5px;
          height: 5px;
          background-color: #000;
          border-radius: 50%;
          position: absolute;
          left: 0;
          top: 9px;
        }
        .p-post__contents ol.wp-block-list {
          counter-reset: list-counter; /* これを追加 */
          list-style: none;
        }
        .p-post__contents ol.wp-block-list li::before {
          content: counter(list-counter)".";
          counter-increment: list-counter;
          width: 1.5em;
          height: 1.5em;
          position: absolute;
          left: 0;
          top: 0;
          font-size: 16px;
          font-weight: bold;
        }
        .p-post__contents li:last-child {
          margin-bottom: 0;
        }
      }



.p-post__share{
  padding: 30px 0 60px;
  margin: 0 auto;
}
.p-post__share-list {
  margin: 0 auto;
  width: fit-content;
  justify-content: center;
}
    @media screen and (max-width: 768px) {
      .p-post__share{
        padding: 20px 0 40px;
        margin: 0 auto;
      }
      .p-post__share-list {
        margin: 0 auto;
        width:100%;
        justify-content: center;
      }
    }
.p-post__share-item a {
  position: relative;
  padding: 0 10px;
  text-align: center;
  display: block;
  width: 177px;
  height: 44px;
  color: #fff;
  font-size: 1.2rem;
  line-height: 44px;
  font-weight: bold;
  align-items: center;
}
.p-post__share-item a::before {
  content: "";
  background-image: url(../img/icon/icon-facebook.png);
  background-size: 100% 100%;
  width: 16px;
  height: 16px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  left: 10px;
}
    @media screen and (max-width: 768px) {
      .p-post__share-item {
        width: 33.3333333333%;
      }
      .p-post__share-item a {
        position: relative;
        padding: 0 10px;
        text-align: center;
        display: block;
        height: 44px;
        color: #fff;
        font-size: 1rem;
        line-height: 44px;
        font-weight: bold;
        align-items: center;
        width: 100%;
      }
      .p-post__share-item a::before {
        content: "";
        background-image: url(../img/icon/icon-facebook.png);
        background-size: 100% 100%;
        width: 16px;
        height: 16px;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        left: 10px;
      }
    }

.p-post__share-item:nth-of-type(2) a::before {
  content: "";
  background-image: url(../img/icon/icon-x.png);
}

.p-post__share-item:nth-of-type(3) a::before {
  content: "";
  background-image: url(../img/icon/icon-line.png);
}

.p-post__share-item:first-child {
  background-color: #0D66F5;
}

.p-post__share-item:nth-of-type(2) {
  background-color: #1995ED;
}

.p-post__share-item:nth-of-type(3) {
  background-color: #15B325;
}

.p-post__author{
  padding:60px 0;
}
.p-post__author-ttl,
.p-post__recommend-ttl{
  font-size:24px;
  font-weight:bold;
  margin-bottom:24px;
}

.p-post__author-grid{
  display:grid;
  grid-template-columns: 180px 1fr;
  gap:45px;
}
.p-post__author-img{
  width:100%;
  margin:0 auto;
}
.p-post__author-img img{
  width:130px;
  margin:0 auto ;
}
.p-post__author-name{
  font-size:16px;
  font-weight:bold;
  margin-top:10px;
  text-align: center;
}
.p-post__author-contents{

}
.p-post__author-text{
  font-size:16px;
  font-weight:500;
  margin-bottom:10px;
}

.p-post__author-list{
  gap:30px;
}
.p-post__author-link-x,
.p-post__author-link-f,
.p-post__author-link-i,
.p-post__author-link-y{
  position:relative;
  padding-left:24px;
  text-decoration: underline;
  font-size:16px;
  font-weight:bold;
}
.p-post__author-link-x::before,
.p-post__author-link-f::before,
.p-post__author-link-i::before,
.p-post__author-link-y::before{
  content:"";
  background-size:100% 100%;
  display:block;
  position:absolute;
  bottom:0;
  left:0;
  width:18px;
  height:18px;
}
.p-post__author-link-x::before{
  background-image:url(../images/x.svg);
}
.p-post__author-link-f::before{
  background-image:url(../images/facebook.svg);
}
.p-post__author-link-i::before{
  background-image:url(../images/instagram.svg);
}
.p-post__author-link-y::before{
  background-image:url(../images/youtube.svg);
}
.p-post__recommend{
  padding:30px 0;
}
.p-post__recommend-list{
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  grid-template-columns: 1fr 1fr;
  gap: 2.5rem;
  margin-bottom:60px;
}
.p-post__recommend .c-btn{
  margin: 0 auto;
  width:fit-content;
}
.p-post__recommend .c-btn__link{
  width:250px;
  margin: 0 auto;
}
.p-post__recommend .p-column__box-text{
  margin-bottom: 0;
}
    @media screen and (max-width: 768px){
      .p-post__author{
        padding:40px 0;
      }
      .p-post__author-ttl,
      .p-post__recommend-ttl{
        font-size:22px;
        font-weight:bold;
        margin-bottom:24px;
      }

      .p-post__author-grid{
        display:block;
      }
      .p-post__author-img{
        width:100%;
        margin:0 auto 15px;
        display: flex;
        align-items: center;
        gap:20px;
      }
      .p-post__author-img img{
        width:80px;
        margin:0 ;
      }
      .p-post__author-name{
        font-size:16px;
        font-weight:bold;
        margin-top:10px;
        text-align: center;
      }
      .p-post__author-contents{

      }
      .p-post__author-text{
        font-size:16px;
        font-weight:500;
        margin-bottom:10px;
      }

      .p-post__author-list{
        gap:16px 24px;
      }
      .p-post__author-item{
        width:30%;
      }
      .p-post__author-link-x,
      .p-post__author-link-f,
      .p-post__author-link-i,
      .p-post__author-link-y{
        position:relative;
        padding-left:24px;
        text-decoration: underline;
        font-size:16px;
        font-weight:bold;
      }
      .p-post__author-link-x::before,
      .p-post__author-link-f::before,
      .p-post__author-link-i::before,
      .p-post__author-link-y::before{
        content:"";
        background-size:100% 100%;
        display:block;
        left:0;
        width:18px;
        height:18px;
      }
      .p-post__recommend{
        padding:30px 0;
      }
      .p-post__recommend-list{
        grid-template-columns: 1fr;
        margin-bottom:40px;
        gap: 30px;
      }
      .p-post__recommend .c-btn{
        margin: 0 auto;
        width:fit-content;
      }
      .p-post__recommend .c-btn__link{
        width:250px;
        margin: 0 auto;
      }
    }

.p-post__side{
  padding: 10px 0;
}
.p-post__side-contents{
  margin-bottom:50px;
}
.p-post__side-ttl{
  font-size:24px;
  font-weight:bold;
  line-height: 1;
  margin-bottom:20px;
}
.p-post__side-grid{
  display:grid;
  grid-template-columns: 60px 1fr;
  gap:10px;
  align-items: center;
  margin-bottom:10px;
}
.p-post__side .p-post__author-list{
  gap:10px 15px;
}
.p-post__side-img{

}
.p-post__side-name{
  font-size:18px;
  font-weight:bold;
  margin-bottom:10px;
}
.p-post__side .p-column__box-text{
  margin-bottom: 0;
}
    @media screen and (max-width: 768px){
      .p-post__side{
        display:none;
      }
    }

.p-news .p-post__wrap{
  display:block;
  max-width: 1000px;
  margin: 0 auto;
}
.p-news .p-post__cta01,
.p-news .p-post__cta02{
  max-width: fit-content;
}
.p-news .c-btn{
  text-align: center;
}
.p-news .c-btn__link{
  width:250px;
}


.p-topColumn__none{
  max-width: 1000px;
  margin-inline: auto;
  margin-top: 45px;
}
