@charset "utf-8";
/*れなちゃん記述*/
/*privacy*/
#privacy .inner {
  width: 90%;
  max-width: 810px;
  margin: 0 auto;
  border-radius: 30px;
  background: #FFF;
  font-size: 16px;
}

#privacy p.privacy {
  width: 100%;
  max-width: 450px;
  margin: 0 auto 20px;
  text-align: left;
  color: #988d8d;
  padding: 0;
}

#privacy p.privacy a {
  color: #ef8883;
  text-decoration: underline;
}

#privacy .inner dl dt {
  background: #f0f7fc;
  padding: 10px 20px;
  border-radius: 5px;
  color: #004ea8;
  font-weight: bold;
  margin: 8px 0;
}

.privacy dl dd {
  padding: 0 20px;
}

#privacy .date {
  margin-top: 40px;
  font-size: 13px;
  font-weight: bold;
}

@media screen and (min-width: 1000px) {
  .privacy dl dt {
    font-size: 15px;
  }

  .privacy dl dd {
    font-size: 15px;
    margin: 0 0 40px;
  }
}

@media screen and (max-width: 860px) {
  #privacy .inner dl dt {
    margin: 35px 0 8px;
  }
}
/*=========================================================================================*/
/*=========================================================================================*/
/*下層ページ*/
.page main{
    min-height: calc( 100vh - 28px);
    padding: 120px 0 0 ;
}
@media screen and (max-width: 820px) {
    .page main{
        padding: 70px 0 0 ;
    }
}
#contact{
    background: #f0f7fc;
}
.contactBox .inner{
    max-width: 950px;
    padding: 60px 20px;
    border-radius: 30px;
    background: #FFF;
}
.contactBox p{
    text-align: center;
}
.contactBox .inner .form{
    width: 94%;
    max-width: 480px;
}
.red{
    font-size: 14px;
    color: #e70000;
    margin: 0 auto 40px;
}
/*ここからフォームの記述*/
/*PCから記述*/
.form{
    max-width: 500px;
    margin: 0 auto;
}
.form p{
    text-align: left;
}
.form dl{
	width: 100%;
	margin: 0 auto 18px;
}
.form dl dt{
	font-size: 14px;
}
.form dl dd{
	position: relative;
}
.form dl dd input{
	height: 52px;
	font-size: 14px;
	display: flex;
    align-items: center;
    border: solid 1px #ececec;
    border-radius: 5px;
	letter-spacing: 1.2px;
	padding: 0 20px;
}
/*セレクト*/
.form dl.select dd{
	width: 240px;
    height: 50px;
}
.form dl.select dd select{
	height: 50px;
	font-size: 13px;
	border: solid 1px #ececec;
	display: flex;
    align-items: center;
	padding: 0 20px;
    border-radius: 5px;
}
/*セレクト三角*/
span.selectdeco{
    display: block;
    content: "";
    width: 0;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
}
span.selectdeco::after{
    border-top: 6px solid #866767;
    border-right: 4px solid transparent;
    border-left: 4px solid transparent;
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    right: 18px;
	transform: translateY(-50%);
    z-index: 1;
}
/*承認ボタン*/
p.check{
	font-size: 12px;
	text-align: center;
	margin: 0 auto 25px;
    position: relative;
    left: -12px;
}
.check label {
    display: flex;
    align-items: center;
}
span.wpcf7-list-item-label {
    font-size: 13px;
    padding: 0 0 0 20px;
}
.check label input {
    width: fit-content;
    margin: 0 10px 0 0;
	opacity: 0;
	position: relative;
    left: 21px;
}
.check .wpcf7-list-item-label:before{
    border: 1px solid #686868;
    border-radius: 3px;
    width: 10px;
    height: 10px;
    top: 2px;
    left: 34px;
    display: inline-block;
    position: absolute;
}
input[type="checkbox"]:checked ~ .wpcf7-list-item-label:before{
	background: center / contain no-repeat url("../img/icon-check.svg");
}

/*テキストエリア*/
.form dl.textarea{
    height: auto;
    margin: 0 auto 20px;
}
.form dl.textarea dd textarea{
	font-size: 13px;
	display: flex;
    align-items: center;
	padding: 20px 30px;
    border-radius: 5px;
    border: solid 1px #ececec;
}
.form dl dd.addNumber{
	width: 17.5%;
}
.form dl dd.addNumber p{
    display: flex;
    align-items: center;
}
#contact p.privacy{
    width: 100%;
    margin: 0 auto 20px;
    font-size: 13px;
    text-align: left;
    color: #988d8d;
    padding: 0;
}
#contact p.privacy a{
    font-size: 13px;
    color: var(--sub-color);
	text-decoration: underline;
}
/*必須項目*/
.required p::after{
	display: inline-block;
	content: "*";
	color: #FC6C89;
}
@media screen and (max-width: 420px) {
	.form dl{
		margin: 0 auto 30px;
    }
	.form dl dt{ margin: 0 0 5px;}
    .form dl dt{ width: 100%;}
    .form dl dd,
    .form dl.select dd{
        width: 100%;
        max-width: 310px;
    }
	.form dl dd.addNumber{ width: 35%;}
	.form dl dd input { padding: 0 20px;}
    p.space{ width: 10%;}
}
/*プレースホルダー*/
input[type="text"].p-postal-code {
  width: auto;
}
::-webkit-input-placeholder { color: rgba(34,34,34,0.20); }
:-ms-input-placeholder { color: rgba(34,34,34,0.20) !important; }
::-moz-placeholder { color: rgba(34,34,34,0.20); opacity: 1; }
::placeholder {
  color: rgba(34,34,34,0.20);
  opacity: 1;
}
:focus::-webkit-input-placeholder { color: transparent; }
:focus:-ms-input-placeholder { color: transparent; }
:focus::-moz-placeholder { color: transparent; }
:focus::placeholder {
  color: transparent;
}
/*必須項目不足*/
.wpcf7-response-output {
    max-width: 500px;
    width: 90%;
    display: flex;
    text-align: center;
    justify-content: center;
    font-size: 12px;
    margin: 30px auto 0!important;
    border-color: var(--main-color)!important;
}
/*ボタン各種*/
#contact [type="button"], #contact [type="reset"], #contact [type="submit"]{
	display: block;
    width: fit-content;
    min-width: 230px;
    font-size: 14px;
    text-align: center;
    letter-spacing: 0;
    color: #FFF;
    border-radius: 30px;
    border: solid 1px var(--accent-color);
    background: var(--accent-color);
    padding: 15px 40px;
    margin: 0 auto;
    position: relative;
    transition: .5s;
}
@media screen and (max-width: 768px) {
    #contact [type="button"], #contact [type="reset"], #contact [type="submit"]{
        margin: 0 auto 10px;
    }
}
#contact [type="button"]{
    color: var(--accent-color);
    background: #FFF;
}
#contact [type="button"]:hover, #contact [type="reset"]:hover, #contact [type="submit"]:hover{
    cursor: pointer;
    opacity: .7;
}
#contact [type="submit"]{
    letter-spacing: 0.2em;
	color: #fff;
}
#contact [type="submit"]:hover{
	color: var(--accent-color);
	background: #FFF;
}
span.wpcf7-not-valid-tip {
    font-size: 11px;
}
/*送信・戻る*/
p.contactBtn {
    display: flex;
	flex-wrap: wrap;
    max-width: 500px;
    margin: 0 auto;
}
span.wpcf7-spinner {
    display: none;
}
/*郵便番号の所*/
.form dl dd.addNumber {
    width: 240px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
input.wpcf7-form-control.wpcf7-text.p-postal-code {
    width: 100px;
}
@media screen and (max-width: 520px) {
    .form dl.select dd{
        width: 200px;
    }
     .form dl dd.addNumber {
        width: 200px;
    }
    input.wpcf7-form-control.wpcf7-text.p-postal-code {
        width: 80px;
    }
	.form dl.select dd{ width: 100%;}
    .form dl dd.addNumber { width: 260px;}
    input.wpcf7-form-control.wpcf7-text.p-postal-code { width: 105px;}
	p.contactBtn { flex-wrap: wrap;}
	#contact [type="button"], #contact [type="reset"], #contact [type="submit"]{
	    width: 70%;
		margin: 0 auto 20px;
    }
}
