@charset "UTF-8";

/* =================================
PRICE /price/
================================== */
.sec_price {
  overflow: hidden;
}
.price_sec_ttl{
  position: relative;
  font-size: 2.1em;
  font-weight: 600;
  letter-spacing: .02em;
  padding: .8em 0;
  margin-bottom: .7em;
  color: var(--c-gold);
  text-align: center;
}
.price_sec_ttl::before,
.price_sec_ttl::after{
  position: absolute;
  left: 0;
  bottom: 0;
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: currentColor;
}
.price_sec_ttl::before{
  left: 0;
  top: 0;
}
.price_sec_ttl::after{
  left: 0;
  bottom: 0;
}
.price_cost_img_box{
  padding: 1em 0 4em;
  max-width: 34em;
  margin: auto;
}

.price_block{
  padding: 1.5em 0;
}
.price_block_ttl{
  font-size: 1.9em;
  font-weight: 600;
  padding: .7em 0;
}
.price_block_ttl .en{
  font-size: 1.1em;
  margin-right: 0.2em;
  vertical-align: -.02em;
}

/* TABLE */
.price_table_ttl{
  font-size: 1.7em;
  font-weight: 600;
  padding: .5em 0;
}
.price_table_desc{
  font-size: 1.15em;
  font-weight: 400;
  line-height: 1.8;
  padding: .5em 0 1em;
}
.price_table{
  width: 100%;
  text-align: center;
  margin: .5em 0;
}
.price_table th,
.price_table td{
  font-size: 1.05em;
  border: 1px solid var(--c-grey-l);
  padding: 1.2em .3em;
}

.price_table th,
.price_table thead td{
  background: #fafafa;
}
.price_table th {
  font-size: 1.2em;
  width: 40%;
  letter-spacing: .02em;
}
.price_table tbody td{
  font-size: 1.6em;
  background: #fff;
  letter-spacing: .04em;
}

.price_table_box{
  padding: 1em 0 1.5em;
}

@media (max-width:769px){
  ._studio.price_table_box {
    width: calc(100% + 4em);
    margin-left: -2em;
    padding: 0 2em;
    overflow-x: scroll;
  }
  ._studio .price_table{
    width: 126%;
  }
}/*  */

._studio .price_table th{
  width: 12%;
}
._studio .price_table td{
  width: 22%;
}
._studio .price_table tbody td{
  font-size: 1.5em;
}

/* 
 */
.price_all_sec{
  background-color: #fff;
  padding: 6em 0;
}
.price_all_img{
  margin: 3em 0 1em;
}

.price_sec_desc{
  font-size: 1.2em;
  font-weight: 500;
  padding: 1.2em 0;
  line-height: 1.9;
}
.price_sec_desc p{
  padding: .4em 0;
}



/* =================================
利用規約 /terms/
================================== */

/* tab */

.terms_nav{
  display: flex;
  justify-content: space-between;
  padding: 2em 0;
  margin: auto;
  max-width: 30em;
}
.terms_nav li{
  position: relative;
  display: block;
  width: 50%;
  font-size: 1.2em;
  font-weight: 500;
  text-align: center;
  padding: .7em 0;
  cursor: pointer;
  transition: color .3s;
}
.terms_nav li::before{
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  display: block;
  width: 0;
  height: 1px;
  background-color: var(--c-gold);
  transition: width .1s ease;
}
.terms_nav li::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  display: block;
  width: 96%;
  height: 1px;
  background-color: var(--color-grey-txt);
  transition: width .1s ease;
  z-index: -1;
}

.terms_nav li:hover{
  color: var(--c-gold);
}
.terms_nav li:hover::before{
  width: 100%;
}
@media (min-width: 769px) {
  .terms_nav{
    max-width: 20em;
  }
}/*  */


.terms_ttl{
  font-size: 2.2em;
  font-weight: 500;
  text-align: center;
  padding: 1em 0 .4em;
  border-bottom: 1px solid var(--c-grey-d2);
  margin-bottom: .3em;
}

.terms_sec{
  padding: 1.2em 0;
}
.terms_sec_ttl{
  font-size: 1.5em;
  font-weight: 500;
  letter-spacing: .02em;
  padding: .3em 0;
}
.terms_sec_ttl .line1{
  display: block;
  font-size: .8em;
  margin-bottom: .3em;
}
.terms_sec_ttl .line2{
  letter-spacing: .02em;
}
.terms_sec p,
.terms_ul,
.terms_ol {
  font-size: 1.1rem;
  line-height: 1.6;
  padding: .5em 0;
}
.terms_ul,
.terms_ol{
  padding-left: 1.2em;
  /* font-family: "ZenKakuGothicNew",sans-serif; */
}
.terms_ul li,
.terms_ol li{
  padding: .3em 0;
}
.terms_ul > li{
  list-style: disc;
}
.terms_ol > li{
  list-style: inherit;
}
.terms_ol .terms_ul li{
  padding: .2em 0;
}
li.no_list{
  font-weight: 500;
  list-style: none;
  margin-left: -1.2em;
  margin-bottom: .2em;
}
.terms_sec a{
  font-weight: 500;
  text-decoration: underline;
}