@charset "UTF-8";

.price_box{

  padding:40px 40px;

}

.c-lower__inner {

  width: 996px;

  margin: 80px auto 0;

}

.c-lower h2 {

  font-size: 3.2rem;

  font-weight: 700;

  position: relative;

  line-height: 1.5;

  margin-bottom: 40px;

  text-align: center;

}



.p-price .List__item {

  margin: 0 auto 0px;

  flex-wrap: wrap;

  justify-content: center;

  gap: 30px;

  width: 100F%;

  display: flex;

}

.btn_a{

    text-align: right;

    margin:4% 0 0;

    display: block;

}
@media screen and (max-width: 1024px) {
  .btn_a{
      text-align: left;
  }
}


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

  .c-lower__inner {

    padding: 0 5px!important;

    width: 100%;

  }

    

.price_box {

  padding: 20px 20px;

  width: 90%;

}    

}    



    

.onayami_p {

  border: 1px solid #ccc;

  padding: 2%;

  text-align: center;

  background: #ffffff;

}

    

.accordion-008 {

  margin-bottom: 10px;

  border-radius: 5px;

  background-color: transparent!important;

  text-align: center;

}    

    .t_w{color:#fff!important;}

    .t_w::after{

    content: "";

    display: block!important;

    background: #fff !important;

    border-radius: 5px!important;

    width: 100%!important;

    height: 2px !important;

    margin-top: 5px !important;        

    }

    

    .t_b{color:#000!important;}

    .t_b::after{

    content: "";

    display: block!important;

    background: #000 !important;

    border-radius: 5px!important;

    width: 100%!important;

    height: 2px !important;

    margin-top: 5px !important;        

    }    

    

    .c_00{
      
    background: #FFFDEA;

    margin: 5% auto;

    box-shadow: 0 0 11px #ccc;

    }

    .c_01{

    background: #FF9D03;

    margin: 5% auto;

    box-shadow: 0 0 11px #ccc;        

    }

    .c_02{

    background: #cccccc;

    margin: 5% auto;

    box-shadow: 0 0 11px #ccc;

    }

    .c_03{

    background: #ffffff;

    margin: 5% auto;

    box-shadow: 0 0 11px #ccc;        

    }   

    .p-price .price-table td {

    }	



.p-price .price-table td:first-child {

    border-left: none!important;

    text-align: center;

}

.p-price .price-table th.is-style2:first-child {

    border-left: none!important;

}



.p-price .price-table th.is-style2 {

  border-right: none!important;

}



.p-price .price-table td {

  border-right: none!important;

}



.p-price .price-table th.is-style1 {

  border-radius: 0!important;

}



.p-price .price-table td {

  background-color: none !important;

}



.p-price .price-table tbody tr:last-child > :first-child {

  border-bottom-left-radius: 0px!important;

}

.p-price .price-table tbody tr:last-child > :last-child {

  border-bottom-right-radius: 0px!important;

}



.dialog-close {

  width:95%;

  margin: 24px auto 0 auto;

  padding: 6px 24px;

  background: #FF9D03!important;

  color: #fff;

  border: none;

  border-radius: 4px;

  font-size: 1.2em;

  font-weight: bold;

  cursor: pointer;

}

	

.dialog-close02 {

  padding: 8px 0px;

  background: none;

  color: #000;

  border: none;

  border-radius: 4px;

  font-size: 1.2em;

  cursor: pointer;

  position: absolute;

  right: 0px;

}	

	

.dialog-close:hover {

  background: #36994c;

}

/* 

.price-button03 {

  background: #FF9D03;

  color: #fff;

  border: 2px solid #fff;

  border-radius: 40px;

  font-size: 2rem;

  font-weight: 600;

  justify-content: center;

  display: block;

  width: 100%;

  height: 60px;

  display: flex;

  align-items: center;

  position: relative;

  cursor: pointer;

  padding: 10px 25px;

  margin: 0 auto;

}





.price-button03::after {

  color: #fff;

  content: none!important;

  font-family: "FontAwesome";

  font-weight: 900;

  position: absolute;

  margin: auto;

  display: flex;

  align-items: center;

  right: 15px;

  transform: rotate(0deg);

}

 */



.price-button03 {

  position: relative;

  display: inline-flex;

  align-items: center;

  justify-content: center;

  gap: 20px;



  width: 100%;

  height: 60px;



  font-size: 2rem;

  font-weight: 600;

  color: #fff;



  background: linear-gradient(to right, #ff9800, #ffb300);

  border-radius: 999px;

  border: none;

  cursor: pointer;

  overflow: hidden; /* ← 重要 */

}



/* ★ 内側にずらした白線 */

.price-button03::before {

  content: "";

  position: absolute;

  inset: 4px;                 /* ← 白線を2px内側へ */

  border: 1px solid #fff;     /* ← 白線の太さ */

  border-radius: 999px;

  pointer-events: none;

}



.price-button03 .arrow {

  font-size: 26px;

}

.price-button03::after {

  content: "";

  position: absolute;

  right: 18px;

  top: 50%;



  width: 22px;

  height: 2px;

  background: #fff;



  transform: translateY(-50%);

}



/* 矢印の先端 */

.price-button03::before {

  content: "";

  position: absolute;

  right: 18px;

  top: 50%;



  width: 8px;

  height: 8px;



  border-top: 2px solid #fff;

  border-right: 2px solid #fff;



  transform: translateY(-50%) rotate(45deg);

}





.price-button06 {

  position: relative;

  display: inline-flex;

  align-items: center;

  justify-content: center;



  width: 100%;

  height: 60px;



  font-size: 2rem;

  font-weight: 600;

  color: #fff;



  background: linear-gradient(to right, #ff9800, #ffb300);

  border-radius: 999px;

  border: none;

  cursor: pointer;

  overflow: hidden;

}



/* 内側の白い線 */

.price-button06::before {

  content: "";

  position: absolute;

  inset: 4px;

  border: 1px solid #fff;

  border-radius: 999px;

  pointer-events: none;

}



/* → 矢印（横線） */

.price-button06::after {

  content: "";

  position: absolute;

  right: 20px;

  top: 50%;



  width: 15px;

  height: 1px;

  background: #fff;



  transform: translateY(-50%);

}



/* → 矢印の先端 */

.price-button06 span {

  position: absolute;

  right: 20px;

  top: 50%;



  width: 8px;

  height: 8px;



  border-top: 1px solid #fff;

  border-right: 1px solid #fff;



  transform: translateY(-50%) rotate(45deg);

  pointer-events: none;

}















.dialog .dialog-close02 {

  position: sticky;

  top: 0;

  z-index: 10;

  display: inline-flex;

  align-items: center;

  border: none;

  padding: 16px 25px 16px 16px;

  font-size: 16px;

  color: #333;

  cursor: pointer;

  float: right;

}



/* × をCSSで描く */

.dialog .dialog-close02::before,

.dialog .dialog-close02::after {

  content: "";

  position: absolute;

  right: 0px;

  top: 50%;

  width: 22px;

  height: 1.5px;

  background: #bfbfbf;

}



.dialog .dialog-close02::before {

  transform: translateY(-50%) rotate(45deg);

}



.dialog .dialog-close02::after {

  transform: translateY(-50%) rotate(-45deg);

}





/* =========================

   縦線（上下余白あり・安全版）

========================= */



/* ===== 共通：th / td を基準にする ===== */

.p-price .price-table th,

.p-price .price-table td {

  position: relative;

}



/* ===== 縦線を「2列目の左側」に描く（PC/SP共通） ===== */

.p-price .price-table th + th::before,

.p-price .price-table td + td::before {

  content: "";

  position: absolute;

  left: 0;              /* 列の境界 */

  top: 8px;             /* 上余白 */

  bottom: 8px;          /* 下余白 */

  width: 1px;

  background: #cfcfcf;

}



/* ===== 見出し（コース｜料金）も同じ処理 ===== */

.p-price .price-table thead th + th::before {

  top: 6px;

  bottom: 6px;

}





/* =========================

   ポップアップ下部リンク（→ 矢印版）

========================= */



/* style.css 側の FontAwesome 矢印を完全停止 */

.p-price .List__item li a.btn_pop::after {

  content: none !important;

  display: none !important;

}



/* ボタン本体 */

.dialog a.btn_pop {

  display: block !important;

  width: 100% !important;



  margin: 24px 0 0 !important;

  padding: 22px 56px 22px 22px !important;



  background: #fffde8 !important;

  color: #3ba956 !important;



  border: none !important;

  border-radius: 0 !important;



  font-size: 20px !important;

  font-weight: 700 !important;

  line-height: 1.6 !important;

  text-decoration: none !important;



  position: relative;

  box-sizing: border-box;

  white-space: normal;

}



/* → 横線 */

.dialog a.btn_pop::before {

  content: "";

  position: absolute;

  right: 22px;

  top: 50%;



  width: 18px;          /* ← 矢印の長さ */

  height: 2px;          /* ← 細さ */

  background: #3ba956;



  transform: translateY(-50%);

}



/* → 先端 */

.dialog a.btn_pop span {

  position: absolute;

  right: 22px;

  top: 50%;



  width: 8px;

  height: 8px;



  border-top: 2px solid #3ba956;

  border-right: 2px solid #3ba956;



  transform: translateY(-50%) rotate(45deg);

  pointer-events: none;

}



/* =========================

   Instagram ボタン（style.css回避）

========================= */



/* style.css 側の a::after（FontAwesome）を完全無効化 */

.p-price .List__item li a.btn_pop02::after {

  content: none !important;

  display: none !important;

}



/* ボタン本体 */

.dialog a.btn_pop02 {

  display: block !important;

  width: 100% !important;



  margin: 16px 0 32px !important;

  padding: 22px 56px 22px 22px !important;



  /* Instagram グラデーション */

  background: linear-gradient(

    135deg,

    #833ab4,

    #fd1d1d,

    #fcb045

  ) !important;



  color: #fff !important;



  border: none !important;

  border-radius: 0 !important;



  font-size: 20px !important;

  font-weight: 700 !important;

  line-height: 1.6 !important;

  text-decoration: none !important;



  position: relative;

  box-sizing: border-box;

  white-space: normal;

}



/* → 横線 */

.dialog a.btn_pop02::before {

  content: "";

  position: absolute;

  right: 22px;

  top: 50%;



  width: 18px;

  height: 2px;

  background: #fff;



  transform: translateY(-50%);

}



/* → 先端 */

.dialog a.btn_pop02 span {

  position: absolute;

  right: 22px;

  top: 50%;



  width: 8px;

  height: 8px;



  border-top: 2px solid #fff;

  border-right: 2px solid #fff;



  transform: translateY(-50%) rotate(45deg);

  pointer-events: none;

}



/* hover（PCのみ） */

@media (hover:hover) {

  .dialog a.btn_pop02:hover {

    opacity: 0.85;

  }

}





/* =========================

   PC時：下部リンク文字を中央寄せ

========================= */

@media (min-width: 769px) {



  /* 通常リンク */

  .dialog a.btn_pop {

    text-align: center !important;

    padding-left: 56px !important;   /* 右矢印と左右バランスを取る */

  }



  /* Instagramリンク */

  .dialog a.btn_pop02 {

    text-align: center !important;

    padding-left: 56px !important;

  }

}
