@charset "UTF-8";
/* ---------------------------------------------------------
   campaign.css【キャンペーン情報】
----------------------------------------------------------*/
.campaign-info {
  padding: 50px;
  margin: 70px 0 40px;
}
.campaign__list li {
  width: 100%;
  margin-bottom: 40px;
}
#campaign_detail h3 {
  margin-bottom: 50px;
}

.campaign_detail-term {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  box-sizing: border-box;
  background-color: #E1E1E1;
  font-size: 18px;
  padding: 8px;
  height: 34px;
  padding: 4px 8px 4px;
  margin: 14px 0;
}
.campaign_detail-term dl {
	display: flex;
	text-align: left;
	line-height: 1.2;
}
.campaign_detail-term dt {
	white-space: nowrap;
	flex: none;
}
.campaign_detail-term dt:after {
	content: "：";
}
@media screen and (max-width: 767px){
  .campaign_detail-term {
    font-size: 14px;
    padding: 2px 8px 4px;
  }  
}

#detail_container h2, .campaign__Contact h2 {
  width: 100%;
  line-height: 1.5;
  font-size: 2em;
  padding: 12px 12px 12px 90px;
  margin: 40px 0;
  background: #eb6120;
  color: #ffffff;
  position: relative;
  box-sizing: border-box;
}
#detail_container h2 span {
  font-size: 70%;
  font-weight: 900;
}
#detail_container h2::after, .campaign__Contact h2::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 70px 70px 0 0;
  border-color: #000000 transparent transparent transparent;
}
#detail_container p {
  line-height: 1.8;
  margin-bottom: 20px;
  text-align: justify;
}
.flyerWrap {
  margin-top: 80px;
}
.flyers {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.campaign__Contact {
  margin-top: 100px;
}
@media screen and (max-width: 767px) {
  #detail_container h2, .campaign__Contact h2 {
    font-size: 22px;
    padding: 12px 12px 12px 65px;
  }
  #detail_container h2::after, .campaign__Contact h2::after {
    border-width: 60px 60px 0 0;
  }
  .flyers {
    flex-direction: column;
  }
  .flyers img {
    width: 100%;
  }
}
/* Contact Form 7 Setting start */
input[type="radio"] {
  -webkit-appearance: radio;
}
.campaignF {
  line-height: 1.8em;
  margin-bottom: 100px;
}
#ContactFormMain {
  margin: 0 auto 20px;
  padding: 0;
}
#ContactFormMain th {
  font-size: 15px;
  color: #000;
  font-family: 'NotoSansCJKjp';
  font-weight: 700;
  border: 1px solid #b2b2b2;
  background: #fdf2ed;
  padding: 10px 15px;
  width: 200px;
  text-align: left;
  vertical-align: middle;
}
#ContactFormMain th .RequiredField {
  border-radius: 3px;
  color: #fff;
  background: #ec163e;
  margin-left: 10px;
  padding: 2px;
  padding-right: 8px;
  padding-left: 8px;
  font-weight: normal;
  float: right;
}
#ContactFormMain th .OptionalField {
  border-radius: 3px;
  color: #fff;
  background: #B0B0B0;
  margin-left: 10px;
  padding: 2px;
  padding-right: 8px;
  padding-left: 8px;
  font-weight: normal;
  float: right;
}
#ContactFormMain td {
  font-size: 15px;
  color: #000;
  font-family: 'NotoSansCJKjp';
  font-weight: 400;
  border: 1px solid #b2b2b2;
  background: #fff;
  padding: 10px 15px;
}
#ContactFormMain td #zip_btn, #ContactFormMain td #form-address01, #ContactFormMain td #form-address02, #ContactFormMain td #form-zipcode {
  margin: 0 0 5px !important;
}
#ContactFormMain td #zip_btn {
  padding: 6px 20px;
  background: #eb6120;
  color: #fff;
  font-weight: 900;
  font-size: 14px;
  border: none;
  margin-left: 5px !important;
}
#ContactFormMain td #form-zipcode {
  width: 190px;
  height: 34px !important;
  padding: 5px 0px;
  border: 1px solid #CCCCCC;
  border-radius: 5px;
  box-sizing: border-box;
}
#ContactFormMain td #form-name, #ContactFormMain td #form-address01, #ContactFormMain td #form-address02, #ContactFormMain td #form-phone, #ContactFormMain td #form-mail, #ContactFormMain td #form-about {
  width: 400px;
  height: 34px !important;
  padding: 5px 0px;
  border: 1px solid #CCCCCC;
  border-radius: 5px;
  box-sizing: border-box;
}
#ContactFormMain td #form-about {
  height: 100px !important;
}
#ContactFormMain td .wpcf7-list-item.first {
  margin: 0;
}
.campaignF .SubmitBox {
  margin: 0;
  padding: 0;
  text-align: center;
}
.campaignF .SubmitBox .cube_btn {
  padding: 0;
  background-color: #eb6120;
}
.campaignF .SubmitBox .cube_btn:hover {
  opacity: 1;
  cursor: pointer;
}
.campaignF .SubmitBox .cube_btn input[type="submit"] {
  width: 200px;
  position: relative;
  z-index: 1;
  -webkit-appearance: none;
  border: 0;
  color: #fff;
  font-size: 24px;
  padding: 15px;
  line-height: 30px;
  font-weight: bold;
  background-color: transparent;
}
@media screen and (max-width: 767px) {
  .campaignF {
    width: 100%;
  }
  #ContactFormMain {
    margin: 0 auto 20px;
    padding: 0;
  }
  #ContactFormMain th, #ContactFormMain td {
    display: block;
    width: 100%;
    box-sizing: border-box;
  }
  #ContactFormMain td #form-zipcode {
    width: 50%;
  }
  #ContactFormMain td #form-name, #ContactFormMain td #form-address01, #ContactFormMain td #form-address02, #ContactFormMain td #form-phone, #ContactFormMain td #form-mail, #ContactFormMain td #form-about {
    width: 100%;
  }
}
/* Contact Form 7 Setting end */
/*modal*/
.flyers .wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 98%;
  margin-right: 2%;
  overflow: hidden;
}
.flyers .wrapper:last-child {
  margin-right: 0;
}
.flyers .wrapper img {
  width: 100%;
  object-fit: cover;
  cursor: pointer;
  height: 340px;
}
/* modal */
.modal-wrapper {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.5);
  pointer-events: none;
  opacity: 0;
  transition: 0.25s ease-out;
  z-index: 9999;
}
.modal-wrapper.show {
  opacity: 1;
  pointer-events: all;
}
.modal-image {
  position: absolute;
  max-width: 80%;
  max-height: 80%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  object-fit: cover;
  opacity: 0;
  transition: 0.5s ease-out;
}
.modal-image.show {
  opacity: 1;
}
/*//modal*/
/*20210221　add*/
#ContactFormMain td {
  position: relative;
}
#ContactFormMain td p {
  height: 50px;
}
#ContactFormMain td [data-class="wpcf7cf_group"], #ContactFormMain td .wpcf7cf_remove, #ContactFormMain td .wpcf7cf_add {
  position: absolute;
  top: 46px;
}
@media screen and (max-width: 767px) {
  #ContactFormMain td [data-class="wpcf7cf_group"], #ContactFormMain td .wpcf7cf_remove, #ContactFormMain td .wpcf7cf_add {
    top: 38px;
  }
}

/* フォーム調整 ______________________________ */
/*contact FORM*/
.submitBox {
    text-align: center;
    margin-top: 50px;
    margin-bottom:80px;
}
:checked {
    background-color: #000;
}
p.mes {
    font-size: 18px;
    font-weight: 600;
    margin-top: 25px;
}
#contact_form .cube_btn{
  padding: 0;
  background-color: #eb6120;
}
input[type="submit"]{
    position: relative;
    z-index: 1;
    -webkit-appearance: none;
    border: 0;
    width: 380px;
    color: #fff;
    font-size: 24px;
    padding: 15px;
    line-height: 30px;
    font-weight: bold;
    background-color: transparent;
}
a.btnPrivacy{
    font-size: 18px;
    text-decoration: underline;
    margin-bottom: 20px;
}
.colorOrange {
    color: #eb6120;
}

input[type="checkbox"], #form-about, #form-consideration {
    border: solid 1px #ccc;
    width: 27px;
    height: 27px;
    border-radius: 5px;
}
#form-name, #form-kana, #form-zipcode, #form-address01, #form-address02, #form-address03, #form-phone, #form-mail, #form-consideration, #form-about {
    padding: 5px 10px;
    border: 1px solid #CCCCCC;
    width: 400px;
    border-radius: 5px;
    height: 33px;
    font-size: 16px;
}
#form-zipcode {
    width: 190px;
}
#form-kibou .wpcf7-list-item {
    display: block;
}
span.wpcf7-form-control-wrap.hope {
    width: 80px;
    height: 40px;
    display: inline-block;
}
select#form-address01, input#form-address02, input#form-zipcode, input#form-address03 {
    margin-left: 15px;
}
#form-consideration {
    width: calc(100% - 50px);
    height: 140px;
}
#form-about {
    width: calc(100% - 50px);
    height: 300px;
    font-size: 18px;
    padding: 10px;
    box-sizing: border-box;
}
.contact_table {
    max-width: 980px;
    width: 100%;
    border-collapse: collapse;
    font-size: 18px;
    line-height: 1.5;
    margin: 0 auto;
}
.contact_table th, .contact_table td {
    padding: 20px 20px 20px 20px;
    border-bottom: none;
    border-top: 1px solid #CCCCCC;
    text-align: left;
    background: #ffffff;
}
#form-address01 {
    width: 250px;
    height: 45px;
}
#form-address02, #form-address03 {
    width: 300px;
}
.contact_table th {
    background: #f1f2f6;
    vertical-align: middle;
    width: 260px;
    font-size: 18px;
    font-weight: 500;
}
.contact_table tr:last-child{
  border-bottom:1px solid #cccccc;
}
.colorRed {
    color: #ff3333;
}
.hissu {
    font-size: 16px;
    padding-left: 5px;
}
span.font-2 {
    font-size: 16px;
    color: #666666;
}
.contact_table td {
    font-weight: 500;
}
.contact_table tr:first-child td > span {
    display: block;
}
.mw_wp_form .horizontal-item + .horizontal-item {
	margin:0!important;
}
.btnPostal {
    height: 45px;
    padding: 10px 20px;
    background: #eb6120;
    color: #fff;
    font-weight: 900;
    font-size: 14px;
    border: none;
    margin-left: 15px;
}

select.wpcf7-form-control.wpcf7-select.wpcf7-validates-as-required {
    width: 80px;
    height: 40px;
    padding: 0 10px;
    border-radius: 5px;
    border: 1px solid #cccccc;
    margin-right: 7px;
}
.hope:nth-child(n + 2){
  padding-left:10px;
}
.hope:first-child{
    margin-left: 10px;
}
.hope:before {
    content: "";
    position: absolute;
    top: 50%;
    right: 20px;
    display: block;
    width: 0;
    height: 0;
    margin: -2px 0 0 0;
    border: 5px solid transparent;
    border-top: 7px solid #000;
}
.contact_freedial{
	color: #eb6120;
	font-size: 55px!important;
	line-height: 20px!important;
}
/* add new input button start */
.contact_submit input {
background: url(../img/common/btn-ptn01.png) repeat;
    background-color: #eb6120;
    font-weight: bold;
    text-decoration: none;
    color: #fff;
    box-shadow: 0 4px 0 #b03318;
    border-radius: 5px;
    border: 0;
    width: 380px;
    font-size: 24px;
    line-height: 30px;
margin: 0 auto;
}
.contact_submit input::after {
    position: absolute;
    top: calc(50% - 10px);
    right: 20px;
    content: "";
    width: 20px;
    height: 20px;
    background: url(../img/common/top-arrow04.png) center/contain no-repeat;
}
.contact_submit input[type="submit"][name="submitBack"] {
    background-color: #ccc;
    color: #666;
    box-shadow: 0 4px 0 #666;
}
.form_guide {
    margin-bottom: 40px;
}
.form_guide .ns-box {
    border: solid #aaa;
    margin-bottom: 20px;
}
.form_guide .ns-box p {
    margin: 20px auto;
}
.form_guide > p {
    line-height: 1.4em;
    margin-bottom: 10px;
}
.mw_wp_form_confirm .confirm_hide {
    display: none;
}
/* add new input button end */
@media screen and (max-width: 1000px){

.contact_freedial{
	color: #eb6120;
	font-size: 45px!important;
	line-height: 20px!important;
}
}

@media screen and (max-width: 865px){
.btnPostal {
    margin-top: 15px;
    margin-left: 0;
}
.contact_freedial{
	color: #eb6120;
	font-size: 40px!important;
	line-height: 20px!important;
}
}
@media screen and (max-width: 767px){
.contact_table th, .contact_table td {
    padding: 20px 20px;
    display: block;
    width: 100%;
    box-sizing: border-box;
    border-bottom: none;
}
#form-name, #form-kana, #form-zipcode, #form-address01, #form-address02, #form-address03, #form-phone, #form-mail, #form-consideration, #form-about {
    width: 100%;
    box-sizing: border-box;
    padding: 15px 10px;
    font-size: 16px;
}
#form-kibou .wpcf7-list-item {
    display: block;
    margin: 0 0 0 0;
}
select#form-address01, input#form-address02, input#form-zipcode, input#form-address03 {
    margin-left: 0px;
}
.submitBox input[type="submit"] {
    width: 200px;
    font-size: 16px;
    padding: 10px;
  }
  .submitBox {
    margin: 20px auto;
}
}
/*contact FORM END*/


.contactBox {
    max-width: 980px;
    padding: 0 10px;
    margin: 0 auto;
}
.textRight{
	text-align: right;
}

.contactArea{
  max-width:980px;
  margin:0 auto;
  padding: 0 10px;
}
.contactArea p{
  line-height: 1.8;
}
.contactArea h2, .contactArea h3{
  text-align:center;
}
.contactS5 h2,.contactS7 h2{
  font-size: 46px;
  position: relative;
  margin:60px 0;
  line-height: 1.2;
}

.contactS5 h2{
  font-size: 40px;
}

.contactS5 h2::after,.contactS7 h2::after {
  position: absolute;
  bottom: -20px;
  right: calc(50% - 39px);
  content: '';
  width: 40px;
  height: 3px;
  background: #808080;
}
.contactS5 h2::before,.contactS7 h2::before {
  position: absolute;
  bottom: -20px;
  left: calc(50% - 42px);
  content: '';
  width: 40px;
  height: 3px;
  background: #eb6120;
}

.contactS1 h2{
    font-size:30px;
	color: #eb6120;

    line-height: 1.2;
}
.contactS1 h2 .orange1,.contactS5 h2 .orange1{
  font-size: 36px;
  color: #eb6120;
  font-weight: 900;
}
.contactS1 h2 .orange2,.contactS5 h2 .orange2{
  font-size: 46px;
  color: #eb6120;
  font-weight: 900;
	}

.contactS1 li p {
	font-size: 1.1em;
	font-weight: 700;
	line-height: 2;
}
.contactS1 li a {
	margin: 30px 0 20px;
	
}


	.contactS2 {
	  margin-bottom: 80px;
	}

	.contactS2 h2{
      line-height: 1.5;
    font-size: 2em;
    padding: 12px 0px 12px 0px;
    background: #eb6120;
    color: #ffffff;
    position: relative;
    margin-bottom: 40px;
    text-align:center;
}
.contactS2 h2::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 70px 70px 0 0;
    border-color: #000000 transparent transparent transparent;
}

.orange3{
  color: #eb6120;
  font-weight: 900;
}
.contactS2 .leftBox p{
  font-size: 18px;
  font-weight: bold;
}
.contactS2 .leftBox,.contactS2 .leftBox2 {
    float: left;
    width: calc(100% - 480px);
    margin: 20px 0 0 40px;
}
.contactS2 .leftBox2{
  float: left;
}
.contactS2 .rightBox,.contactS2 .rightBox2 {
    float: right;
    width: 400px;
}
.contactS2 .leftBox2{
  float: right;
}

.mT50{
    margin-top: 50px;
}
.mT40{
    margin-top: 40px;
}
.mB50{
    margin-bottom: 50px;
}

@media screen and (max-width: 320px){
	.contact_freedial{
		font-size: 34px!important;
	}
	.contact_freedial a img{
		position: relative;
		top: -5px;
	}
	.contactS1 li p{
		font-size: 1em;
	}
}


/* contactform 20220908 start */
.p-plan_cost #contact_form .c-block-heading01 {
  margin-bottom: 40px;
}

#contact_form {
  /*width: 800px;*/
  margin: 60px auto 0;
  line-height: 1.8em;
}

.wpcf7 {
  display: flex;
  justify-content: center;
}

.wpcf7 input,
select {
  vertical-align: middle;
}

.wpcf7 :checked {
  background: none;
}

.wpcf7 form .table-responsive .under-tbl {
  text-align: left;
}

.wpcf7 form .table-responsive .under-tbl th {
  font-size: 15px;
  color: #000;
  font-family: 'NotoSansCJKjp';
  font-weight: 700;
  border: 1px solid #b2b2b2;
  background: #fdf2ed;
  padding: 10px 15px;
  vertical-align: middle;
}

.wpcf7 form .table-responsive .under-tbl td {
  font-size: 15px;
  color: #000;
  font-family: 'NotoSansCJKjp';
  font-weight: 400;
  border: 1px solid #b2b2b2;
  background: #fff;
  padding: 10px 15px;
}

.wpcf7 form .table-responsive .under-tbl .option {
  border-radius: 3px;
  color: #fff;
  background: #B0B0B0;
  margin-left: 10px;
  padding: 2px;
  padding-right: 8px;
  padding-left: 8px;
  font-weight: normal;
  float: right;
}

.wpcf7 form .table-responsive .under-tbl .hissu {
  border-radius: 3px;
  color: #fff;
  background: #ec163e;
  margin-left: 10px;
  padding: 2px;
  padding-right: 8px;
  padding-left: 8px;
  font-weight: normal;
  float: right;
}

#visit_d,
#visit_t,
#form-name,
#form-kana,
#form-zipcode,
#form-address01,
#form-address02,
#form-address03,
#form-phone,
#form-mail,
#form-consideration,
#form-about,
input.wpcf7-form-control.wpcf7-text.walcf7-datepicker {
  padding: 5px 0px;
  border: 1px solid #CCCCCC;
  border-radius: 5px;
  height: 34px;
  box-sizing: border-box;
}

#zip_btn,
#form-address01,
#form-address02,
#form-zipcode,
#form-address03 {
  margin: 0 0 5px !important;
}

#form-about {
  height: 200px;
  font-size: 18px;
  padding: 10px;
  box-sizing: border-box;
}

.wpcf7 form .table-responsive .under-tbl .wpcf7-list-item {
  margin: 0 10px 0 0 !important;
}

.wpcf7 form .table-responsive .under-tbl .wpcf7-list-item {
  margin: 0 10px 10px 0 !important;
  vertical-align: middle;
}

.wpcf7 form .table-responsive .under-tbl .wpcf7-list-item-label::before,
.wpcf7 form .table-responsive .under-tbl .wpcf7-list-item-label::after {
  content: none;
}

.wpcf7 form .table-responsive .under-tbl #form-zipcode {
  width: 190px
}

.wpcf7 form .table-responsive .under-tbl #zip_btn {
  height: 34px;
  padding: 0 10px;
  background: #eb6120;
  color: #fff;
  font-weight: 900;
  font-size: 14px;
  border: none;
  margin-left: 15px;
}

.wpcf7 form .table-responsive .under-tbl #form-address01 {
  width: 250px;
}

#form-zipcode,
#form-name,
#form-address01,
#form-address02,
#form-address03,
#form-phone,
#form-mail,
#form-kana {
  width: 400px;
  border-radius: 5px;
  height: 34px;
}

.wpcf7-select select {
  -webkit-appearance: listbox;
}

.wpcf7-radio input {
  -webkit-appearance: radio;
}

.submitBox {
  text-align: center;
  margin-top: 50px;
}

.submitBox input[type="submit"] {
  position: relative;
  z-index: 1;
  -webkit-appearance: none;
  border: 0;
  width: 200px;
  color: #fff;
  font-size: 24px;
  line-height: 30px;
  font-weight: bold;
  background-color: transparent;
}

div.wpcf7-validation-errors,
div.wpcf7-acceptance-missing {
  border: 2px solid #d8d8d8;
  background: #fff;
}

.showroomArea {
  pointer-events: none;
}

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

  #contact_form {
    width: 100%;
  }

  #form-name,
  #form-kana,
  #form-phone,
  #form-mail {
    width: 75%;
  }

  #form-address02,
  #form-address03 {
    width: 75%;
  }

  .wpcf7 form .table-responsive .under-tbl th {
    text-align: left;
    padding-top: 10px;
    display: block;
    width: auto;
  }

  .wpcf7 form .table-responsive .under-tbl td {
    display: block;
    width: auto;
    border-bottom: 1px dotted #CCCCCC;
    width: auto;
  }

  #visit_t,
  #visit_d {
    width: 100%;
  }

  .wpcf7 form .table-responsive .under-tbl #form-address01 {
    height: 34px !important;
  }

  #form-about {
    width: 100%;
    height: 150px;
  }
}

/* contactform 20220908 end*/

@media screen and (max-width: 767px) {
  .wpcf7-list-item input,
  .mb05 input
  {
    width: auto;
  }
}