/* CSS Document */
section.page_title h1::before{
  content: "Contact";
}
/*コンテンツ*/
div.contact_wrap{
  box-sizing: border-box;
}
body[wc-view-type="sp"] div.contact_wrap{
  padding: var(--headerHeight) 7vw;
}
body[wc-view-type="tb"] div.contact_wrap,
body[wc-view-type="tb-l"] div.contact_wrap{
  padding: var(--headerHeight) 10vw;
}
body[wc-view-type="pc"] div.contact_wrap{
  padding: var(--headerHeight) calc((100vw - 850px) / 2);
}
div.contact_wrap > p{
  line-height: 1.8rem;
  margin-bottom: 1rem;
}
body:not([wc-view-type="sp"]) div.contact_wrap > p{
  text-align: center;
  margin-bottom: 1.5rem;
  width: 650px;
  margin: 0 auto 1.5rem auto;
}
div.contact_wrap dl.tel_box{
  padding: 1rem;
  border-radius: 1rem;
  border: solid 1px #DD935F;
  box-sizing: border-box;
}
body:not([wc-view-type="sp"]) div.contact_wrap dl.tel_box{
  width: 450px;
  margin: 0 auto;
}
div.contact_wrap dl.tel_box > dt{
  border-bottom: solid 1px #DD935F;
  font-size: 1.15rem;
  font-weight: 500;
  text-align: center;
  padding: 0 1rem 0.75rem 1rem;
}
div.contact_wrap dl.tel_box > dd{
  padding: 1rem;
  box-sizing: border-box;
}
div.contact_wrap dl.tel_box > dd > p{
  line-height: 1.8rem;
  margin-bottom: 1rem;
}
div.contact_wrap dl.tel_box > dd > a.tel_link{
  font-size: 2rem;
  font-family: "ZenMaruGothic";
  display: flex;
  align-items: center;
  text-decoration: none;
  font-weight: 500;
  justify-content: center;
  line-height: 1em;
  width: fit-content;
  margin: 0 auto;
  color: #474442;
}
body:not([wc-view-type="sp"]) div.contact_wrap dl.tel_box > dd > a.tel_link{
  pointer-events: none;
}
div.contact_wrap dl.tel_box > dd > a.tel_link::before{
  content: "";
  width: 2rem;
  height: 2rem;
  -webkit-mask-image: var(--wciconsrc);
  mask-image: var(--wciconsrc);
  -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;
  background-color: #474442;
}
div.contact_wrap dl.tel_box > dd div.tel_time{
  display: flex;
  gap:0.5rem;
  margin-top: 0.75rem;
}
body[wc-view-type="sp"] div.contact_wrap dl.tel_box > dd div.tel_time{
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap:0.25rem;
  margin-top: 0.5rem;
}
body:not([wc-view-type="sp"]) div.contact_wrap dl.tel_box > dd div.tel_time{
  justify-content: center;
}
div.contact_wrap dl.tel_box > dd div.tel_time > dl{
  display: flex;
}
div.contact_wrap dl.tel_box > dd div.tel_time > dl dt{
}
div.contact_wrap dl.tel_box > dd div.tel_time > dl dt span{
  display: table;
  padding: 0.23rem 0.5rem 0.25rem 0.5rem;
  background-color: #474442;
  color: #fff;
  font-size: 0.9rem;
  border-radius: 1rem;
  line-height: 1em;
}
div.contact_wrap dl.tel_box > dd div.tel_time > dl dd{
  padding-left: 0.5rem;
  box-sizing: border-box;
}
body[wc-view-type="sp"] div.contact_wrap dl.tel_box > dd div.tel_time > dl dd{
  padding-left: 0.25rem; 
}
/*フォーム*/
form{
  margin-top: 3rem;
}
form > dl{
  display: flex;
  margin-top: 1.5rem;
}
body[wc-view-type="sp"] form > dl{
  flex-direction: column;
}
form > dl dt{
  display: flex;
  font-size: 0.95rem;
  align-items: baseline;
}
body[wc-view-type="sp"] form > dl dt{
  margin-bottom: 0.5rem;
}
body:not([wc-view-type="sp"]) form > dl dt{
  width: 200px;
}
form > dl dt::before{
  flex: none;
  color: #fff;
  font-size: 0.8rem;
  font-weight: 500;
  margin-right: 0.25rem;
  padding: 0.2rem 0.75rem 0.23rem;
  border-radius: 1rem;
  line-height: 1em;
}
form > dl dt.required::before{
  content: "必須";
  background-color: #DD935F;
}
form > dl dt.any::before{
  content: "任意";
  background-color: #474442;
}
form > dl dd{
}
body:not([wc-view-type="sp"]) form > dl dd{
  width: calc(100% - 200px);
}
/*フォーム色変更*/
.wc-selectbox,
input.wc-input.system_type,
.wc-textarea.system_type{
  background-color: #fbf3ea !important;
}
.wc-textarea.system_type {
  --inputbg: rgba(255,255,255,0) !important;
}
[wc-form][captcha-state] [wc-captcha]{
  border: none !important;
  padding: 2rem 0 !important;
}
[wc-form][captcha-state] [wc-captcha] .captchabtn{
  justify-content: center;
}
div.btnswrap{
  text-align: center;
}
.wc-button{
  background-color: #474442 !important;
}
.wc-selectbox select:invalid,
input.wc-input,
.wcautoheightwrap textarea:not(.heightcheck){
  color: #474442 !important;
}
[wc-form][captcha-state] [wc-captcha] .captchadeco::before{
  border: solid 2px #a38c78 !important;
}
.wc-selectbox:not(.border) select,
input.wc-input{
}
.wcautoheightwrap textarea:not(.heightcheck){
}
body:not([wc-view-type="sp"]) .wc-selectbox:not(.border) select,
input.wc-input{
  height: 50px !important;
}
body.firefox .wc-selectbox select{
  text-indent: 0.5rem !important;
}
body:not([wc-view-type="sp"]) .wcautoheightwrap textarea:not(.heightcheck){
  min-height: 50px !important;
}
.wc-button{
  border-radius: 1rem !important;
}