/* CSS Document */
section.page_title.term > h2::before{
  content: "Term";
}
section.page_title.privacy > h2::before{
  content: "Privacy Policy";
}

div.promise_wrap{
  padding: var(--headerHeight) 0;
  box-sizing: border-box;
}
body[wc-view-type="sp"] div.promise_wrap{
  padding: var(--headerHeight) 10vw;
}
body[wc-view-type="tb"] div.promise_wrap{
  padding: var(--headerHeight) 7vw;
}
body[wc-view-type="tb-l"] div.promise_wrap{
  padding: var(--headerHeight) 8vw;
}
body[wc-view-type="pc"] div.promise_wrap{
  padding: var(--headerHeight) calc((100vw - 750px) / 2);
}
div.promise_wrap > p{
  line-height: 1.8rem;
  color: #190c01;
  font-weight: 300;
  margin-bottom: calc(var(--headerHeight) / 2);
}
body:not([wc-view-type="sp"]) div.promise_wrap > p{
  text-align: center;
}
dl.promise_block{
  margin-bottom: calc(var(--headerHeight) / 2);
}
dl.promise_block > dt{
  font-size: 1.2rem;
  color: #190c01;
  border-bottom: 1px solid #190c01;
  padding: 0 1rem 0.5rem 1rem;
  box-sizing: border-box;
}
dl.promise_block > dt span.block_number{
  color: #190c01;
  padding-right: 0.75rem;
  display: inline-block;
}
dl.promise_block > dd{
  padding: 1rem 1rem 0 1rem;
  box-sizing: border-box;
}
body[wc-view-type="sp"] dl.promise_block > dd{
  padding: 0.5rem 0.5rem 0 0.5rem;
}
p.promise_text{
  font-weight: 300;
  color: #190c01;
}
p.promise_text.m_bottom{
  margin-bottom: 1rem;
  color: #190c01;
}
ul.num_out_list,
ul.num_list_block{
  list-style: none;
  list-style-position: outside;
}
ul.num_out_list.side_padding,
ul.num_list_block.side_padding{
  padding: 0 1rem;
  box-sizing: border-box;
}
ul.num_out_list li,
ul.num_list_block li{
  margin-bottom: 1rem;
  padding-left: 1.5rem;
  position: relative;
  z-index: 1;
  font-weight: 300;
  color: #190c01;
}
ul.num_out_list li > span,
ul.num_list_block li span.list_num{
  position: absolute;
  top: 0.25rem;
  left: 0;
  line-height: 1em;
  color: #190c01;
}
ul.num_out_list li ul{
  list-style-position: outside;
  padding-left: 1rem;
  margin-top: 0.5rem;
  list-style-type:disc;
}
ul.num_out_list li ul li{
  padding-left: 0;
  margin-bottom: 1rem;
}
ul.num_out_list li ul li::marker{
  color: #190c01;
  font-size: 0.85rem;
}
span.right_bottom{
  display: table;
  margin-left: auto;
  margin-right: 0;
}
div.p_contact{
}
div.p_contact dl{
  display: flex;
  margin-bottom: 0.5rem;
}
div.p_contact dl:last-of-type{
  margin-bottom: 0;
}
body[wc-view-type="sp"] div.p_contact dl{
  flex-direction: column;
}
div.p_contact dl dt{
  width: 90px;
  padding-right: 1rem;
  position: relative;
  z-index: 1;
  color: #190c01;
  box-sizing: border-box;
}
body[wc-view-type="sp"] div.p_contact dl dt{
  border-bottom: dashed 1px;
  padding: 0.5rem;
}
body:not([wc-view-type="sp"]) div.p_contact dl dt::after{
  content: ":";
  line-height: 1em;
  color: #190c01;
  position: absolute;
  right: 0.5rem;
  top: 0.15rem;
}
div.p_contact dl dd{
  width: calc(100% - 90px);
  box-sizing: border-box;
}
body[wc-view-type="sp"] div.p_contact dl dt,
body[wc-view-type="sp"] div.p_contact dl dd{
  width: 100%;
}
body[wc-view-type="sp"] div.p_contact dl dd{
  padding: 0.5rem 0.5rem 0 0.5rem;
}
div.p_contact dl.add dd{
}
div.p_contact dl.add dd > span{
  font-size: 0.9rem;
  font-family: "Number";
  color: #190c01;
  padding-left: 1rem;
  display: block;
  position: relative;
  z-index: 1;
}
div.p_contact dl.add dd > span::before{
  content: "〒";
  position: absolute;
  font-size: 0.9rem;
  color: #190c01;
  left: 0;
  top: 0;
}
div.p_contact dl.add dd > address{
  color: #190c01;
}
div.p_contact dl.tel dd{
}
div.p_contact dl.tel dd a{
  display: table;
  padding-left: 1.5rem;
  position: relative;
  z-index: 1;
  color: #190c01;
  font-size: 1.2rem;
  font-family: "Number";
  text-decoration: none;
  font-weight: 700;
}
body:not([wc-view-type="sp"]) div.p_contact dl.tel dd a{
  pointer-events: none;
}
div.p_contact dl.tel dd a::before{
  content: "";
  position: absolute;
  left: 0;
  width: 1.5rem;
  height: 1.5rem;
  -webkit-mask-position: center center;
  mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  mask-size: cover;
  -webkit-mask-image: var(--wciconsrc);
  mask-image: var(--wciconsrc);
  background-color: #190c01;
  z-index: 2;
  top: 50%;
  transform: translateY(-50%);
}
div.p_contact dl.mail dd{
}
div.p_contact dl.mail dd > a{
  display: table;
  padding: 0 1.5rem 0 1.5rem;
  position: relative;
  z-index: 1;
  text-decoration: none;
border-bottom: 1px solid #190c01;
  color: #190c01;
}
div.p_contact dl.mail dd > a span.mail{
  content: "";
  position: absolute;
  left: 0;
  width: 1.5rem;
  height: 1.5rem;
  -webkit-mask-position: center center;
  mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  mask-size: cover;
  -webkit-mask-image:  url("/code/icons/contact.svg") !important;
  mask-image:  url("/code/icons/contact.svg") !important;
  background-color: #190c01;
  z-index: 2;
  top: 50% !important;
  transform: translateY(-50%) !important;
}
div.p_contact dl.mail dd > a::after{
  content: "";
  position: absolute;
  right: 0;
  width: 1.5rem;
  height: 1.5rem;
  -webkit-mask-position: center center;
  mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  mask-size: cover;
  -webkit-mask-image: var(--wciconsrc);
  mask-image: var(--wciconsrc);
  background-color: #190c01;
  z-index: 2;
  top: 50% !important;
  transform: translateY(-50%) !important;
}