.cf7__list {
  display: flex;
	align-content: center;
  flex-wrap: wrap;
  margin-bottom: 60px;
}

.cf7__list dt:nth-of-type(2n),
.cf7__list dd:nth-of-type(2n) {
background-color: #F6F7F9;
}

.cf7__list dt {
  width: 35%;
    padding: 40px 1em 30px 1em;
    border-top: solid 1px;
}

.cf7__list dd {
  width: 65%;
border-top: solid 1px;
	 padding: 40px 1em 40px 0;
}

/* 必須・任意 */
.cf7__required,
.cf7__optional {
  margin-right: 15px;
  padding: 6px 14px;
  color: #fff;
  font-size: 12px;
  vertical-align: 1px;
	border-radius: 0.25em;
}



.cf7__required {
 background: var(--red);
}

.cf7__optional {
  background: var(--black);
}


@media screen and (max-width: 980px) {
	.cf7__required,
.cf7__optional {
  margin-right:0px;
  display: table;
}

	
}


@media screen and (max-width: 600px) {
	.cf7__required,
.cf7__optional {
  margin-right: 15px;
display: inline-block;
	}
}

/* input・textarea */
.cf7__list dd input[type="text"],
.cf7__list dd input[type="tel"],
.cf7__list dd input[type="email"]{
	width: 100%;
  padding: 15px 20px;
  background: #F4F4F4;
	font-size: 1em;
}

.cf7__list dd textarea {
	width: 100%;
	padding: 15px 20px;
  background: #F4F4F4;
	font-size: 0.9em;
}

/* ドロップダウンメニュー */
.cf7__select {
  position: relative;
}




.cf7__select select {
  width: 100%;
  padding: 19px 20px;
  background: #F4F4F4;
	font-size: 0.9em;
	position: relative;
}

/* チェックボックス・ラジオボタン */
.cf7__list dd .wpcf7-checkbox,
.cf7__list dd .wpcf7-radio {
  display: block;
  padding: 15px 0 10px;
}

/* 縦並び（チェックボックス・ラジオボタン） */
.cf7__list dd .wpcf7-list-item {
  display: block;
  margin: 0;
}

.cf7__list dd .wpcf7-list-item:nth-child(n + 2) {
  margin-top: 18px;
}

/* マウスカーソル（チェックボックス・ラジオボタン） */
.cf7__list dd .wpcf7-list-item label {
  cursor: pointer;
}

/* チェックボックス・ラジオボタン */
input[type="checkbox"],
input[type="radio"] {
  position: relative;
  width: 18px;
  height: 18px;
  margin-right: 8px;
  border: 1px solid #bcbcbc;
  vertical-align: -3px;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

/* チェックボックス */
input[type="checkbox"]:checked {
  border: 1px solid var(--black);
  background: var(--black);
}

input[type="checkbox"]:checked:before {
  position: absolute;
  top: 2px;
  left: 5px;
  transform: rotate(50deg);
  width: 6px;
  height: 10px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  content: '';
}

/* ラジオボタン */
input[type="radio"] {
  border-radius: 50%;
}

input[type="radio"]:checked:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--black);
  content: '';
}

/* プレースホルダー */
/* Google Chrome / Safari / Mozilla Firefox / Opera */
.cf7__list dd input[type="text"]::placeholder,
.cf7__list dd input[type="tel"]::placeholder,
.cf7__list dd input[type="email"]::placeholder,
.cf7__list dd textarea::placeholder {
  color: #a5a5a5;
}

/* Microsoft Edge */
.cf7__list dd input[type="text"]::-ms-input-placeholder,
.cf7__list dd input[type="tel"]::-ms-input-placeholder,
.cf7__list dd input[type="email"]::-ms-input-placeholder,
.cf7__list dd textarea::-ms-input-placeholder {
  color: #a5a5a5;
}

/* Internet Explorer */
.cf7__list dd input[type="text"]:-ms-input-placeholder,
.cf7__list dd input[type="tel"]:-ms-input-placeholder,
.cf7__list dd input[type="email"]:-ms-input-placeholder,
.cf7__list dd textarea:-ms-input-placeholder {
  color: #a5a5a5;
}

/* 送信ボタン */

.cf7__button_wrapper{
	width: 560px;
	margin:30px auto 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
}


.cf7__button {
  text-align: center;
}

input[type="submit"] {
  width: 260px;
  height: 60px;
  background: var(--base-color);
  color: #fff;
  transition: opacity .6s;
	border-radius: 0.5em;
	font-size: 0.85em;
	font-weight: bold;
	cursor: pointer;
}

input[type="submit"]:hover {
  opacity: .8;
	transition: 0.5s;
	background: var(--red);
}

input[type="reset"] {
  width: 260px;
  height: 60px;
  background: white;
  color: var(--base-color);
border: 2px var(--base-color) solid;
	border-radius: 0.5em;
  transition: opacity .6s;
	padding-left: 0;
	font-weight: bold;
	font-size: 0.85em;
	cursor: pointer;
}

input[type="reset"]:hover {
  opacity: .8;
}


.wpcf7-previous {
  width: 260px;
  height: 60px;
  background: white;
  color: var(--black);
border: 2px var(--black) solid;
	border-radius: 0.5em;
  transition: opacity .6s;
	padding-left: 0;
	font-weight: bold;
	font-size: 0.85em;
	cursor: pointer;
}

.wpcf7-previous:hover {
  opacity: .8;
}

/* ajax-loader */
.wpcf7-spinner {
  vertical-align: middle;
}

@media screen and (max-width: 600px) {
	
	.cf7__list {
  margin-bottom: 20px;
}

  .cf7__list dt {
    width: 100%;
    margin-bottom: auto;
    padding: 15px 1em 10px;
  }

  .cf7__list dd {
    width: 100%;
	  padding: 0px 1em 20px 1em;
	  border-top: none;
  }

  .cf7__list dd:nth-of-type(n + 2) {
    margin-top: 0;
  }

  .cf7__list dd .wpcf7-checkbox,
  .cf7__list dd .wpcf7-radio {
    padding: 15px 0 0;
  }

  /* 送信ボタン */
  input[type="submit"] {
    width: 180px;
    height: 56px;
  }
	
	
	.cf7__button_wrapper{
	width: 80%;
	margin:0 auto;
}

	
	.cf7__button {
  padding-left: 0px;
  text-align: center;
}

input[type="reset"] {
  width: 200px;
}	
	
	.wpcf7-previous {
  width: 150px;
}
	
	
	.cf7__select:before {
  position: absolute;
  top: 30%;
    transform: translateY(-30%);
    -webkit-transform: translateY(-30%);
    -ms-transform: translateY(-30%);
 
}
	
}


.wpcf7-not-valid-tip {
    padding-top: 0.25em!important;
    color:var(--red)!important;
    font-size: 14px!important;

}


.wpcf7-spinner{
	display: none;
}


.p-postal-code,.p-region{
	width: auto!important;
}

.p-street-address,.p-street-apartment{
	margin-top: 0.75em;
}

@media screen and (max-width: 980px) {
	.p-postal-code,.p-region{
	width: 75%!important;
}
}


@media screen and (max-width: 499px) {
input[type="reset"]{
  width: 120px;
}	
.p-postal-code,.p-region{
	width: 100%!important;
}	
	
	.wpcf7-previous {
  width: 120px;
}
		
		.cf7__button_wrapper{
	width: 90%;
	margin:0 auto;
}

	
}


@media screen and (max-width: 399px) {
	  input[type="submit"] {
    width: 145px;
  }
	
input[type="reset"] {
  width: 100px;
}	
	
		.wpcf7-previous {
  width: 100px;
}
	
}



	