@charset "UTF-8";

/* Base
========================================================================== */


/**************************************/
/* // variable
$baseColor: #000;
$keyColor: #fff;
$accent: #ef845d; */
:root{
  --black: #2d2d2d;
  --red: #e35a5a;
  --blue: #5364d0;
  --purple: #B92B74;
}

*{
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
  font-size: 62.5%;
}

body{
  color: var(--black);
  line-height: 1.5;
  letter-spacing: 0.04em;
  font-weight: 400;
  width: 100%;
  min-width: 960px;
  overflow-x: hidden;
      font-family: "游ゴシック", YuGothic,
  "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",
  "メイリオ", Meiryo,
  "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-feature-settings: "palt";
}
img{
  vertical-align: bottom;
}
@media screen and (max-width: 480px){
  body{
    min-width: 100%;
  }
  .pc-only{
    display: none;
  }
}

.container{
  max-width: 960px;
  margin: 0 auto;
}
@media screen and (max-width: 480px){
 .container{
   max-width: 100%;
   padding: 0 10px;
 }
}


img{
    max-width: 100%;
    height: auto;
}

li{
  list-style-type: none;
}

a{
  text-decoration: none;
  color: inherit;
}

p{
  font-size: 15px;
  font-size: 1.5rem;
  text-align: justify;
  text-justify: inter-ideograph;
}


/**************************************/
header{
  height: 80px;
}
@media screen and (max-width: 480px){
  header{
    height: auto;
  }
}
.header-inner{
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (max-width: 480px){
  .header-inner{
    flex-wrap: nowrap;
  }
}
.logo{
  flex-grow: 1;
  margin-right: 40px;
}

.logo_img{
  display: table-cell;
  height: 80px;
  line-height: 1;
  vertical-align: middle;
}
@media screen and (max-width: 480px){
  .logo_img{
    height: 40px;
  }
}
.mitsuwa-logo_img{
  width: 70px;
  height: 56px;
}

@media screen and (max-width: 480px){
  .mitsuwa-logo_img{
    height: 30px;
    width: 37px;
  }
}

.mitsuwa-logo{
  color: var(--purple);
  font-size: 54px;
  font-size: 5.4rem;
  font-weight: 400;
  float: right;
  margin: 5px 0 0 10px;
}
@media screen and (max-width: 480px){
  .mitsuwa-logo{
    font-size: 24px;
    font-size: 2.4rem;
    padding-top: 4px;
    margin: 0 0 0 7px;
  }
}
.mark{
  flex-grow: 8;
  line-height: 1;
}
.mark li{
  display: table-cell;
  height: 80px;
  padding-right: 34px;
  vertical-align: middle;
}
@media screen and (max-width: 480px){
  .mark{
    display: none;
  }
}
.cta-document_header{
  flex-grow: 1;
  margin-top: 11px;
}
.cta-document_header:hover{
  opacity: .8;
}
.cta-document_header.request{
  margin-top: 5px;
  width: 26%;
}
@media screen and (max-width: 480px){
  .cta-document_header{
    text-align: center;
    margin-top: 4px;
  }
  .cta-document_header.request{
    margin: 1.596vw 0;
    width: 40%;
  }
}
.cta-txt{
  color: #fff;
  border-radius: 4px;
  background: linear-gradient(#ff7675 0%, #c35959 100%);
  font-size: 28px;
  font-size: 2.8rem;
  padding: 5px 20px;
}
.cta-txt i{
  margin-left: 10px;
}
@media screen and (max-width: 480px){
  .cta-txt{
    font-size: 14px;
    font-size: 1.4rem;
    padding: 5px 10px;
  }
}
/**************************************/
.main-visual{
  background: url("../../img/area-lp/main-visual.jpg")no-repeat;
  background-size: cover;
  background-position: center;
  height: 708px;
  margin-bottom: 144px;
  width: 100%;
}

@media screen and (max-width: 480px){
  .main-visual{
    background-size: cover;
    background-position: center;
    height: 400px;
    margin-bottom: 64px;
  }
}
.main-visual_header{
  padding-bottom: 15px;
}
.main-visual_sp-header{
  display: none;
}
.main-visual_price{
  display: none;
}
@media screen and (max-width: 480px){
  .main-visual_header{
    display: none;
  }
  .main-visual_sp-header{
    display: block;
    padding: 10px 0;
    width: 303px;
    margin: 0 auto;
  }
  .mv-container{
    position: relative;
  }
  .main-visual_price{
    display: block;
    position: absolute;
    bottom: 52px;
    right: 10px;
  }
}

.cta-tel{
  background: linear-gradient(#fc7f7e 0%, #c14848 100%);
  border-radius: 6px;
  color: #fff;
  height: 143px;
  margin-top: 340px;
  position: relative;
  width: 960px;
}

.female{
  position:absolute;
  bottom: 0;
  left: -90px;
  width: 390px;
}
@media screen and (max-width: 480px){
  .female{
    position:absolute;
    bottom: -4px;
    left: -37px;
    width: 150px;
  }
}
.cta-tel_heading{
  font-size: 32px;
  font-size: 3.2rem;
  padding: 14px 60px 3px 0;
  text-align: right;
}
@media screen and (max-width: 480px){
  .cta-tel_heading{
    display: none;
  }
}
.cta-tel_suplyment{
  border: 2px solid #fff;
  display: inline-block;
  font-size: 26px;
  font-size: 2.6rem;
  float: left;
  line-height: 1.1;
  margin: 0 14px 0 200px;
  padding: 6px 14px;
  text-align: center;
}
@media screen and (max-width: 480px){
  .cta-tel_suplyment{
    display: block;
    border: none;
  }
}
.cta_span{
  font-size: 16px;
  font-size: 1.6rem;
}

.cta-tel_number{
  font-size: 72px;
  font-size: 7.2rem;
  font-weight: bold;
  line-height: 1.1;
  margin: -4px 0px 0 0;
  letter-spacing: -2px;
}
.cta-tel_sp{
  display: none;
}
@media screen and (max-width: 480px){
  .cta-tel, .cta-tel02{
    display: none;
  }
  .cta-tel_sp{
    border-radius: 4px;
    background: linear-gradient(#ff7675 0%, #c35656 100%);
    box-shadow: 0px 3px 0px #984646;
    color: #fff;
    display: block;
    height: 68px;
    line-height: 1;
    margin: 174px auto 0;
    position: relative;
    width: 314px;
  }
  .female{
    position: absolute;
    bottom: -3px;
    left: -37px;
  }
  .phone-icon{
    font-size: 41px;
    font-size: 4.1rem;
    position: absolute;
    top: calc(50% - 30%);
    left: 74px;
  }
  .cta-tel_sp__suplyment{
    font-size: 12px;
    font-size: 1.2rem;
    padding: 15px 0  5px 125px;
  }
  .cta-tel_sp__number{
    font-size: 30px;
    font-size: 3.0rem;
    font-weight: 700;
    padding-left: 111px;
  }

  .cta-meeting{
    margin-top: 50px;
  }

}

/**************************************/

.heading{
  color: var(--red);
  font-size: 48px;
  font-size: 4.8rem;
  font-weight: bold;
  margin-bottom: 10px;
  text-align: center;
}
@media screen and (max-width: 480px){
  .heading{
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 1;
  }
}
.heading_txt{
  text-align: center;
  margin-bottom: 30px;
}
@media screen and (max-width: 480px){
  .heading_txt{
    text-align: left;
  }
}
.sub-title{
  background-color: #FFF2F2;
  border-left: 6px solid var(--red);
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: 700;
  margin-bottom: 20px;
  padding: 6px 0 6px 10px;
}

@media screen and (max-width: 480px){
  .sub-title{
    font-size: 18px;
    font-size: 1.8rem;
    margin-bottom: 10px;
  }
}

.flex-box{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
/**************************************/
.tel, .pick-up{
  margin-bottom: 40px;
}

.meeting{
  margin-bottom: 60px;
}
@media screen and (max-width: 480px){
  .meeting{
    margin-bottom: 40px;
  }
}
.flow_img{
  width: 222px;
  margin-right: 20px;
}

@media screen and (max-width: 480px){
  .flow_img{
    width: 100%;
    margin-right: 0;
    margin-bottom: 10px;
  }
}

.txt_box{
  width: 714px;
}

.tel_txt{
  margin-bottom: 15px;
}

.tel_txt__span{
  font-weight: 700;
}

.tel_txt_number{
  color: var(--red);
  font-weight: 700;
}

.tel_txt__conversation{
  color: #555555;
  margin-bottom: 10px;
}

.tel_txt__detial{
  background-color: #E5E5E5;
  display: inline-block;
  padding: 7px 60px;
}

@media screen and (max-width: 480px){
  .tel_txt__detial{
    font-size: 12px;
    font-size: 1.2rem;
    padding: 7px 8px;
  }
}

.transport-time_txt{
  border: solid 2px #777777;
  border-radius: 4px;
  font-size: 28px;
  font-size: 2.8rem;
  line-height: 1.2;
  margin-bottom: 20px;
  padding: 12px 0 8px;
  text-align: center;
}

@media screen and (max-width: 480px){
  .transport-time_txt{
    border: none;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.2;
    margin-bottom: 10px;
    padding: 5px 0;
    text-align: left;
  }
}
.transport_detial{
  font-size: 12px;
  font-size: 1.2rem;
}

.time{
  color: var(--red);
  font-weight: bold;
}
/**************************************/
.plan-list{
  margin-bottom: 40px;
}
.plan-list_txt{
  margin-bottom: 20px;
}
.plan-list--plan{
  box-shadow: 0 0px 12px rgb(0 0 0 / 20%);
  border-radius: 4px;
  transition: ease-in-out .3s;
}
.plan-list--plan:hover{
  box-shadow: 0 0px 20px rgb(0 0 0 / 16%);
  opacity: .7;
  transform: translateY(-6px)
}
.reason_heading{
  margin-bottom: 40px;
}
@media screen and (max-width: 480px){
  .plan-list img{
    min-width: 100%;
  }
  .plan-list--plan{
    margin-bottom: 20px;
  }
  .reason_heading{
    margin-bottom: 20px;
  }
}

/**************************************/
.hall-information{
  margin-bottom: 40px;
}
.hall-information_txt{
  margin-bottom: 20px;
}
.hall_list_gmap{
  border:1px solid #777;
  margin-bottom: 20px;
  line-height: 0.7;
}
.map{
  border:0px
}
/**************************************/

.hall_container {
  border-bottom: dashed 2px #ccc;
  display: grid;
  margin-bottom: 30px;
  padding-bottom: 20px;
  /* グリッドレイアウト */
  grid-template-columns: 1fr 200px;
  grid-template-rows: 70px 1fr;
  gap: 0px 0px;
  grid-template-areas:
  "shop_info shop_link"
  "shop_img shop_img";
}
.shop_info { grid-area: shop_info; }
.hall_name{
  font-size: 24px;
  font-size: 2.4rem;
}
.hall_info--tag{
  background-color: antiquewhite;
  border-radius: 2px;
  margin-right: 10px;
  padding: 4px 10px 2px;
}
@media screen and (max-width: 480px){
  .hall_info--tag{;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: 700;
    padding: 4px 10px 4px;
  }
}
.shop_link { grid-area: shop_link; }
.shop_link.none { display: none; }
.shop_link--btn {
  border: darkkhaki solid 1px;
  border-radius: 4px;
  box-shadow: 0px 4px 0 rgba(0 0 0 / .1);
  font-size: 18px;
  padding: 15px 16px 10px;
  position: relative;
}
.shop_link--btn:before {
  content: '→';
	font-size: 18px;
	margin-right: 4px;
  position: absolute;
  top: calc(50% - 24%);
  right: 20px;
  transition: ease-in-out .2s;
}
.shop_link--btn:hover {
  opacity: .7;
}
.shop_link--btn:hover:before{
  right: 10px;
}
.shop_img { grid-area: shop_img; }

.address{
  align-items: center;
}

@media screen and (max-width: 480px){
  .hall_container {
    margin-bottom: 40px;
    padding-bottom: 40px;
    /* グリッドレイアウト */
    grid-template-columns: 100%;
    grid-template-rows: 80px 1fr;
    grid-template-areas:
    "shop_info"
    "shop_img"
    "shop_link";
  }
  .hall_name{
    font-size: 21px;
    font-size: 2.1rem;
    font-weight: 700;
  }
  .address{
    margin-top: 4px;
    font-size: 17px;
  }
  .shop_link{
    margin-top: 8px;
  }
}
.hall-name{
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 700;
  margin: 0;
}
.hall-name{
  font-size: 21px;
  font-size: 2.1rem;
}
.address.saijo{
  font-size: 14px;
}
@media screen and (min-width: 481px){
  .saijo_container{
    display: flex;
  }
  .saijo_box{
    width: calc((100% - 48px) / 3);
  }
  .saijo_box:not(:nth-of-type(3n + 1)){
    margin-left: 24px;
  }
  .saijo_img{
    margin-top: 8px;
  }
}
@media screen and (max-width: 480px){
  .saijo_container{

  }
  .saijo_box{

  }
  .saijo_box:not(:last-of-type){
    border-bottom: dashed 2px #ccc;
    margin-bottom: 6.384vw;
    padding-bottom: 6.384vw;
  }
  .saijo_img{
    margin-top: 3.07vw;
  }
  .address.saijo{
    margin-top: 0;
  }
}

/**************************************/
.support{
  margin-bottom: 40px;
}

.support_txt{
  max-width: 714px;
}

.cta-tel02{
  background: linear-gradient(#fc7f7e 0%, #c14848 100%);
  border-radius: 6px;
  color: #fff;
  height: 143px;
  margin-top: 20px;
  position: relative;
  width: 960px;
}

.female02{
  position:absolute;
  bottom: 0;
  right: -122px;
  width: 390px;
}

.cta-tel_heading02{
  font-size: 32px;
  font-size: 3.2rem;
  padding: 12px 0 4px 100px;
}

.cta-tel_suplyment02{
  border: 2px solid #fff;
  display: inline-block;
  font-size: 24px;
  font-size: 2.4rem;
  float: left;
  line-height: 1.2;
  margin: 0 18px 0 20px;
  padding: 7px 15px;
  text-align: center;
}

.cta_span02{
  font-size: 16px;
  font-size: 1.6rem;
}

.cta-tel_number02{
  font-size: 75px;
  font-size: 7.5rem;
  font-weight: bold;
  line-height: 1;
  letter-spacing: -2px;
}

.memory_txt{
  margin-bottom: 20px;
}

.memory{
  margin-bottom: 40px;
}
/**************************************/
.director-img_boxes{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (max-width: 480px){
  .director-img_boxes{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
  }
  .director-img_boxes_bottom{
    margin-bottom: 20px;
  }
}
.director-img_box{
  width: 12%;
}
@media screen and (max-width: 480px){
  .director-img_box{
    width: 21%;
  }
}
.staff_txt{
  width: 574px;
}
.director-badge{
  width: 283px;
}

@media screen and (max-width: 480px){
  .director-badge{
    width: 240px;
    margin: 20px auto 0;
  }
}

.staff_txt__support{
  margin-bottom: 20px;
}

.staff-txt_flex-box{
  margin-bottom: 40px;
}

.staff{
  margin-bottom: 40px;
}
/**************************************/
.about-mitsuwa{
  margin-bottom: 120px;
}
@media screen and (max-width: 480px){
  .about-mitsuwa{
    margin-bottom: 40px;
  }
}
.about-mitsuwa_txt{
  text-align: center;
  /* line-height: 2; */
  margin-bottom: 20px;
}
@media screen and (max-width: 480px){
  .about-mitsuwa_txt br{
    display: none;
  }
  br.hello{
    display: block;
  }
}

.about-list_txt-box{
  background-color: rgba(0,0,0,0.6);
  color: #fff;
  padding: 15px 10px;
  position: absolute;
  bottom: 0;
}
@media screen and (max-width: 480px){
  .about-list_txt-box{
    width: 90%;
  }

}
.list-title{
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 400;
  text-align: center;
}
.list-txt{
  font-size: 14px;
  font-size: 1.4rem;
}
@media screen and (max-width: 480px){
  .about-list li{
    width: 90%;
    margin: 0 auto;
  }
}
/**************************************/

.customer-voice{
  background-color: #fff2f2;
  margin-bottom: 120px;
  padding: 60px 0;
}
@media screen and (max-width: 480px){
  .customer-voice{
    margin-bottom: 40px;
    padding: 40px 0;
  }
}
.cv_heading{
  margin-bottom: 40px;
}
@media screen and (max-width: 480px){
  .cv_heading{
    margin-bottom: 20px;
  }
}
.cv_box{
  background-color: #fff;
  border: solid 1px #777777;
  border-radius: 2px;
  min-height: 460px;
  padding: 20px;
  position: relative;
}
@media screen and (max-width: 480px){
  .cv_box{
    min-height: 956px;
    padding: 10px;
  }
}
.cv_title{
  background-color: #EDC0BF;
  border-radius: 2px;
  color: #fff;
  font-size: 21px;
  font-size: 2.1rem;
  line-height: 1.3;
  margin-bottom: 10px;
  padding: 6px 12px 2px;
}
.cv-date{
  font-size: 14px;
  font-size: 1.4rem;
  opacity: 0.5;
  margin-bottom: 4px;
  text-align: right;
}
.cv_txt{
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.7;
}
.cv_txt + .cv_txt{
  margin-top: 16px;
}
.customer_img{
  width: 60px;
  height: 60px;
  position: absolute;
  top: 8px;
  left: 18px;
}
@media screen and (max-width: 480px){
  .cv_title{
    font-size: 15px;
    font-size: 1.5rem;
  }
}
.cv-box-wrap{
  position: relative;
}
.owl-prev span, .owl-next span{
  background-color: rgba(0, 0, 0, 0.3);
  border-radius: 4px;
  color: #fff;
  font-size: 32px;
  padding: 5px 8px;
}
.owl-prev, .owl-next{
  position: absolute;
  top: calc(50% - 48px);
}
@media screen and (max-width: 480px){
  .owl-prev, .owl-next{
    transform: translateY(-200%);
  }
}
.owl-prev{
  left: 30px;
}
.owl-next{
  right: 30px;
}
@media screen and (max-width: 480px){
  .owl-prev{
    left: -10px;
  }
  .owl-next{
    right: -10px;
  }
}
/**************************************/
.faq{
  margin-bottom: 120px;
}

.faq_heading{
  margin-bottom: 40px;
}
@media screen and (max-width: 480px){
  .faq{
    margin-bottom: 40px;
  }
  .faq_heading{
    margin-bottom: 20px;
  }
}

.faq-box {
	position: relative;
	overflow: hidden;
	width: 100%;
	margin: 0 auto;
}
.faq-box input {
	position: absolute;
	z-index: -1;
	opacity: 0;
}
.faq-box label {
  cursor: pointer;
  display: block;
  font-size: 24px;
  font-size: 2.4rem;
	line-height: 3;
	position: relative;
}

@media screen and (max-width: 480px){
  .faq-box{
    border-bottom: dotted 1px #777;
    margin-bottom: 10px;
  }

  .faq-box label{
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.4;
    padding: 0 40px 10px 0;
  }
}

.faq-box .faq-box-content {
	overflow: hidden;
	max-height: 0;
	-webkit-transition: max-height 0.8s;
	transition: max-height 0.8s;
	color: #333333;
	background: #f5f5f5;
}
@media screen and (max-width: 480px){

  .faq-box-content{
    margin-bottom: 10px;
  }
}

.faq-box .faq-box-content p {
	margin: 20px;
}

.faq-box input:checked ~ .faq-box-content {
	max-height: 400px;
}

.faq-box label::after {
	line-height: 3;
	position: absolute;
	top: 0;
	right: 0;
	display: block;
	width: 3em;
	height: 3em;
	-webkit-transition: all 0.35s;
	transition: all 0.35s;
	text-align: center;
}

@media screen and (max-width: 480px){
  .faq-box label::after{
    top: -13px;
  }
}


.faq-box input[type=checkbox] + label::after {
	content: '+';
}
.faq-box input[type=checkbox]:checked + label::after {
	transform: rotate(315deg);
}

/**************************************/

.company-information{
  background-color: #fff2f2;
  margin-bottom: 60px;
  padding: 60px 0;
}
@media screen and (max-width: 480px){
  .company-information{
    margin-bottom: 40px;
    padding: 40px 0;
  }
}
.info_heading{
  font-size: 48px;
  font-size: 4.8rem;
  font-weight: 400;
  margin-bottom: 20px;
  text-align: center;
}

@media screen and (max-width: 480px){
  .info_heading{
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: 700;
  }
}

.date_table{
  background-color: #fff;
  border: solid 1px #777;
  border-radius: 4px;
  font-size: 15px;
  font-size: 1.5rem;
  margin: 0 auto;
  padding: 20px;
  width: 632px;
}
@media screen and (max-width: 480px){
  .date_table{
    font-size: 15px;
    font-size: 1.5rem;
    width: 100%;
  }
}
.date_table dt{
  float: left;
  padding: 20px 0;
}
.date_table dd{
  padding: 20px 0 20px 120px;
  border-bottom: dotted 1px #777;
}

.date_table dd.last-dd{
  border: none;
}
@media screen and (max-width: 480px){
  .date_table dd{
    padding: 10px 10px 10px 80px;
  }
  .date_table dt{
    float: left;
    padding: 10px 0;
  }
}
/**************************************/
.copyright{
  margin-bottom: 150px;
}
@media screen and (max-width: 480px){
  .copyright{
    margin-bottom: 90px;
  }
}
.copyright-txt{
  font-size: 12px;
  font-size: 1.2rem;
  text-align: center;
}

footer{
  background-color: rgba(45,45,45,0.8);
  color: #fff;
  height: 100px;
  min-width: 960px;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 999;
}

@media screen and (max-width: 480px){
  footer{
    background-color: var(--red);
    height: 80px;
    line-height: 1;
    min-width: 100%;
  }
}

.footer_left{
  float: left;
  text-align: center;
  display: table-cell;
  height: 100px;
  line-height: 1;
  padding: 10px;
  vertical-align: middle;
}
@media screen and (max-width: 480px){
  .footer_left{
    display: block;
    float: none;
    padding: 12px 0;
  }
}
.footer_right{
  display: table-cell;
  float: right;
  height: 100px;
  padding: 10px;
  vertical-align: middle;
}

@media screen and (max-width: 480px){
  .footer_right{
    display: none;
  }
}

.footer_tel-copy{
  font-size: 21px;
  font-size: 2.1rem;
  font-weight: 400;
  margin-bottom: 8px;
}
@media screen and (max-width: 480px){
  .footer_tel-copy{
    font-size: 12px;
    font-size: 1.2rem;
    margin: 3px 0 3px 0;
  }
}
.footer_tel-number{
  font-size: 56px;
  font-size: 5.6rem;
  font-weight: 700;
  text-align: center
}

@media screen and (max-width: 480px){
  .footer_tel-number{
    font-size: 0;
  }
  .footer_tel-number::before{
    content: "\f2a0  電話をかける";
    font-size: 38px;
    font-size: 3.8rem;
    font-family: "Font Awesome 5 Free";
  }
}
.cta-document_footer{
  background-color: var(--blue);
  border-radius: 4px;
  font-size: 48px;
  font-size: 4.8rem;
  padding: 5px 50px;
}

.form{
	margin: 80px auto;
}
@media screen and (max-width: 480px){
  .form{
    width: 100%;
  }
}
.form-heading{
  font-size: 48px;
  font-size: 4.8rem;
  font-weight: 700;
}
@media screen and (max-width: 480px){
  .form-heading{
    font-size: 8.512vw;
    padding-bottom: 2.667vw;
    text-align: center;
    position: relative;
  }
}

.contact_kv{
  margin: -60px 0 32px;
}
@media screen and (max-width: 480px){
  .contact_kv{
    margin: 0 0 32px;
  }
}
@media screen and (max-width: 480px){
  .form-txt{
    text-align: left;
  }
}
.required{
  color: var(--red);
  font-size: 14px;
  font-size: 1.4rem;
}
.formtable_titles{
  font-size: 18px;
  font-size: 1.8rem;
}
@media screen and (min-width: 481px){
  .formtable_titles br{ display: none;}
}
.formtable_input{
  margin-bottom: 30px;
}
.formtable_input input,
.formtable_input textarea{
	width: 100%;
	border-radius: 3px;
	border: 1px solid #c7c7c7;
	position: relative;

}
.formtable_input input{
  height: 52px;
  padding: 10px;
  font-size: 21px;
  font-size: 2.1rem;
}
.formtable_input textarea{
  padding: 10px;
  font-size: 21px;
  font-size: 2.1rem;
}
.formtable_input input:focus,
.formtable_input textarea:focus{
  border: 1px solid #2d9ae3;
  outline: 0;
}
span.mwform-checkbox-field.horizontal-item{
  display: inline-block;
  margin-left: 0;
}
@media screen and (min-width: 481px){
  span.mwform-checkbox-field.horizontal-item{
    width: calc((100% - 18px) / 4);
  }
  span.wpcf7-list-item{
    width: calc((100% - 18px) / 4);
    margin: 0;
  }
}
@media screen and (max-width: 480px){
  span.mwform-checkbox-field.horizontal-item{
    font-size: 4.522vw;
    width: calc((100% - 18px) / 2);
  }
  span..wpcf7-list-item{
    font-size: 4.522vw;
    width: calc((100% - 18px) / 2);
    margin: 0;
  }
}
.mw_wp_form .horizontal-item + .horizontal-item{
  margin-left: 0!important;
}
.formtable_shops{
  margin: 0 0 30px;
}
.formtable_shops label,
.formtable_shops input{
  cursor: pointer;
}

.submit_button{
  border-radius: 4px;
  background: #ff7675;
  box-shadow: 0px 4px 0px #dd5958;
  color: #fff;
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: 700;
  height: 50px;
  line-height: 50px;
  margin: 0 auto 40px;
  text-align: center;
}
.submit_button:hover{
  opacity: 0.9;
}
.submit_button:active{
  box-shadow: 0px 0px 0px #dd5958;
  position: relative;
  top: 4px;
}


@media screen and (max-width: 480px){
  .submit_button{
    width: 80%;
  }
}

.submit_button label{
  cursor: pointer;
  width: 100%;
  position: relative;
  height: auto;
  display: inline-block;
}
.submit_button input{display: none;}
.privacy-consent{
  font-size: 11px;
  font-size: 1.1rem;
  margin-bottom: 10px;
}
.privacy-box{
  border: solid 1px #ddd;
  height: 200px;
  margin-bottom: 40px;
  overflow-y: scroll;
  padding: 20px;
}

.privacy-title{
  font-size: 18px;
  font-size: 1.8rem;
  margin-bottom: 10px;
}

.privacy-txt{
  margin-bottom: 20px;
}
/**************************************/

.thanks{
  height: 100vh;
  background-color: #e5e5e5;
}

.fin{
  background-color: #fff;
  border: solid 1px #777;
  margin: 120px auto 60px;
  padding: 40px;
  width: 748px;
}

.fin-heading{
  font-size: 24px;
  font-size: 2.4rem;
  margin-bottom: 20px;
}

.fin-txt{
  font-size: 21px;
  font-size: 2.1rem;
  margin-bottom: 10px;
}

.fin-txt02{
  margin-bottom: 30px;
}
.return-button{
  background-color: var(--red);
  border-radius: 4px;
  color: #fff;
  display: inline-block;
  font-size: 24px;
  font-size: 2.4rem;
  padding: 10px 20px;
}

.return-button:hover{
  opacity: 0.9;
}

@media screen and (max-width: 480px){
  .thanks{
    height: 100%;
  }

  .fin{
    margin: 60px auto 60px;
    padding: 30px 10px;
    width: 100%;
  }

  .fin-heading{
    margin-bottom: 10px;
  }

  .fin-txt{
    font-size: 16px;
    font-size: 1.6rem;
    margin-bottom: 20px;
  }

  .fin-txt br{
    display: none;
  }
  .return-button{
    font-size: 18px;
    font-size: 1.8rem;
    padding: 10px;
    width: 100%;
    text-align: center;
  }
}

/* スマホのフォントサイズ */
@media screen and (max-width: 480px){
  p{
    font-size: 18px;
    font-size: 1.8rem;
  }
  .heading{
    font-size: 24px;
    font-size: 2.4rem;
  }
  .sub-title{
    font-size: 21px;
    font-size: 2.1rem;
  }
  .hall-name{
    font-size: 21px;
    font-size: 2.1rem;
  }
}


/* 仮会員登録
---------------------------------------------------------------------------- */
.member-form{
  margin-top: 48px;
}

input[type=radio]{
  height: 24px;
  width: 24px;
  position: relative;
  top: 5px;
}

.wpcf7-list-item-label{
  font-size: 18px;
}

.wpcf7-form-control.wpcf7-select {
  border: 1px solid #c7c7c7;
  border-radius: 4px;
  padding: 16px;
  width: 100%;
}