@charset "UTF-8";
/* CSS Document */

@media (min-width:1051px) {	
	
	/*共通*/
	main #ttl_2nd{margin: 150px auto 80px auto}
	main #ttl_2nd .container{position:relative;width: 100%;aspect-ratio:2.2/1;min-height: 700px;margin: 0 auto;padding: 0px 0;}
	main #ttl_2nd .container .photo_area{position: absolute;top: 0%;right:0%;width:90%;height: 100%;}
	main #ttl_2nd .container .photo_area figure{width: 100%;height: 100%;margin:0;padding: 0;overflow: hidden;}
	main #ttl_2nd .container .photo_area figure img{width: 100%;height: 100%;object-fit: cover;}
	
	main #ttl_2nd .container .text_area{position: absolute;top: 50%;left:20%;transform: translateY(-50%);}
	main #ttl_2nd .container .text_area .eng h2{margin:0;padding: 0;font-size: clamp(50px, 4.8vw, 60px);color: #5b5250;font-weight: 500;letter-spacing: 2px;font-family: futura-pt, sans-serif;font-weight:300;font-style: normal;}
	main #ttl_2nd .container .text_area .jpn h3{margin:0;padding: 0;font-size: clamp(20px, 1.2vw, 30px);color: #5b5250;font-weight: 100;letter-spacing: 2px;}
	
	/*サロン*/
	#salon #lead_group{text-align:center;margin: 0 auto 100px auto;}
	#salon #lead_group p{margin: 0 auto 80px auto;padding: 0;font-size: clamp(16px, 0.9vw, 18px);color: #5b5250;letter-spacing: 2px;line-height: 2;font-weight: 300}
	#salon #lead_group .prefecture{display:flex;justify-content: center;gap:30px}
	#salon #lead_group .prefecture a{position:relative;padding: 0px 0;margin: 0 ;text-decoration: none;font-size: clamp(18px, 0.8vw, 25px);letter-spacing: 5px;color: #5b5250;}
	#salon #lead_group .prefecture a::before{content: '';position:absolute;top: 50%;left: -15px;transform: translateY(-50%);width: 1px;height:15px;background: #7a7373;}
	#salon #lead_group .prefecture a:first-of-type::before{display:none;}
	#salon #lead_group .prefecture a:hover{color: #e7c4bd}
	
	#salon .list_container{width: 95%;max-width: 1500px;min-width: 900px; margin: 0 auto 100px auto;}
	
	#salon .list_container .prefecture h4{position:relative;margin:0 0 0px 0;padding:30px 0 0 0;font-size: clamp(20px, 2.4vw,30px);color: #605b51;font-weight: 100;letter-spacing: 2px;}
	#salon .list_container .prefecture h4 span{font-size: clamp(14px, 1.2vw, 20px);margin-left: 20px}
	#salon .list_container .prefecture h4::before{content: '';position:absolute;top:0%;left:0;width: 100%;height:3px;background: linear-gradient(90deg, #d4deff 5%,#ffdedf 50%, #e2d2ff 95%);}
	
	#salon .list_container .unit{border-bottom:1px solid #e0d8d7;padding: 50px 0}
	#salon .list_container .unit:last-of-type{border-bottom:none;}
	#salon .list_container .unit h5{position:relative;margin:0 0 15px 0;padding:0px 0 0 30px;font-size: clamp(16px, 1.4vw,22px);color: #605b51;font-weight: 100;letter-spacing: 2px;}
	#salon .list_container .unit h5::before{content: '';position:absolute;top:50%;transform: translateY(-50%);left:0;width: 10px;height:10px;background: linear-gradient(45deg, #d4deff 5%,#ffdedf 50%, #e2d2ff 95%);}
	
	#salon .list_container .unit dl{width: 100%;margin: 0 auto 30px auto;padding: 0;letter-spacing: 1px;font-weight: 300}
	#salon .list_container .unit dl dt{width: 100%;margin: 0 0 5px 0;padding: 0;color: #b49c96 ;font-size: clamp(16px, 0.7vw, 18px);}
	#salon .list_container .unit dl dd{width: 100%;margin: 0 0 10px 0;padding: 0;color: #5b5250;font-size: clamp(14px, 0.9vw, 16px);}
	
	#salon .list_container .unit .reserve a{font-size: clamp(13px, 0.6vw, 16px);letter-spacing: 0px;color: #5b5250;}
	#salon .list_container .unit .reserve a span{position:relative;padding: 0 0 0 50px}
	#salon .list_container .unit .reserve a span::before{content: '\f0c1';position:absolute;top: 50%;left: 0px;transform: translateY(-50%);width:40px;height:28px;padding: 12px 0 0 0;border-radius: 20px;color:#db818e;background: linear-gradient(45deg, #f1e8ff 5%,#fff1e7 95%);font-family: "Font Awesome 5 Free";font-weight:900;text-align: center}
	#salon .list_container .unit .reserve a:hover{color: #e7c4bd}
	
	/*お問い合わせ（＋確認・完了）*/
	#contact #ttl_2nd{margin: 150px auto 80px auto}
	#contact #ttl_2nd .container{position:relative;width: 100%;aspect-ratio:5/1;min-height: 400px;margin: 0 auto;padding: 0px 0;}
	#contact #ttl_2nd .container .photo_area{position: absolute;top: 0%;right:0%;width:90%;height: 100%;}
	#contact #ttl_2nd .container .photo_area .bg_color{width: 100%;height: 100%;margin:0;padding: 0;background: linear-gradient(45deg, #d4deff 5%,#ffdedf 50%, #e2d2ff 95%);background-size: 200% 200%;animation:contact_2nd_bg 8s infinite alternate;overflow: hidden; transition: color 2.3s ease;}
	@keyframes contact_2nd_bg{ 0%{background-position:0% 50%}    50%{background-position:100% 50%}    100%{background-position:0% 50%}	}
	
	
	#contact #attention_group{text-align:center;margin: 0 auto 80px auto;}
	
	#contact #attention_group .text{border: 1px solid #d6d4d4;width: 600px;margin: 0 auto 50px auto;padding: 30px 0}
	#contact #attention_group .text p{margin: 0 auto 0px auto;padding: 0;color: #7a7373;line-height: 2;letter-spacing: 2px;text-decoration: underline;}
	#contact #attention_group .text p a{color:#ce7676 }
	#contact #attention_group .text p a:hover{color: #e7c4bd}
	
	#contact .contact_container{width:800px;}
	#contact .contact_container .title_area{background: linear-gradient(90deg, #f9f9ff 5%, #fffaea 95%);margin: 0 auto 30px auto;padding:25px 0;text-align: center;border-radius: 10px}
	#contact .contact_container .title_area h4{position: relative;display: inline;margin: 0 auto 0px auto;padding: 0 0 0 60px;color: #7a7373;font-size: clamp(20px, 1.2vw,26px);letter-spacing: 2px;font-weight: normal;}
	#contact .contact_container .title_area h4::before{content: '';position:absolute;top: 50%;left: 0;transform: translateY(-50%);width: 40px;height:60px;background: url("../img/contact_icon.png") no-repeat;background-position:50% 50%;background-size: 100% auto;}
	
	
	#contact #tel_group{text-align:center;margin: 0 auto 50px auto}
	#contact #tel_group .number{margin: 0 auto 10px auto}
	#contact #tel_group .number a{pointer-events: none;color: #7a7373;font-size: clamp(30px, 2.2vw,56px);letter-spacing: 2px;font-weight: 500;text-decoration: none;}
	#contact #tel_group .number a span{display: none}
	#contact #tel_group .reception{color:#ce7676;font-size: clamp(14px, 1.0vw,20px);letter-spacing: 1px;}
	
	
	#contact #form_group{margin: 0 auto 100px auto}	
	#contact #form_group .text p{margin: 0 auto 30px auto;padding: 0;color: #7a7373;font-size: clamp(14px, 0.8vw,16px);line-height: 2;letter-spacing: 1px;text-align: center;}
	
	#contact #form_group .unit .q{position:relative;margin: 0 auto 10px auto;padding: 0 0 0 20px;font-size: clamp(15px, 0.6vw,20px);letter-spacing: 1px;color: #5b5250;font-weight: 400;}
	#contact #form_group .unit .q::before{content: '';position:absolute;top:50%;transform: translateY(-50%);left:0;width: 10px;height:10px;background: linear-gradient(45deg, #d4deff 5%,#ffdedf 50%, #e2d2ff 95%);}
	
	#contact #form_group span.require{margin-left: 10px;padding:2px 8px;background: #ce7676;font-size: clamp(11px, 0.5vw,15px);color: white;font-weight: 500;}
	
	#contact #form_group .unit .a{margin: 0 auto 30px auto;}
	
	#contact #form_group form input[type=text],
	#contact #form_group form input[type=tel],
	#contact #form_group form input[type=email],
	#contact #form_group form textarea{outline: 0;border:1px solid #d6d4d4; width:96%; margin: 0 ;padding:14px 2%;font-size: 16px;letter-spacing:1px;box-sizing: border-box;border-radius: 5px}
	#contact #form_group form textarea{height:200px;}	
	
	#contact #form_group form input[type=text]:focus,
	#contact #form_group form input[type=tel]:focus,
	#contact #form_group form input[type=email]:focus,
	#contact #form_group form textarea:focus{border:1px solid #ce7676;}
	
	#contact #form_group .unit_pp{margin: 0px auto 30px auto;font-size: clamp(15px, 0.6vw,20px);letter-spacing: 1px;color: #5b5250;font-weight: 400;text-align: center}	
	#contact #form_group form input[type="checkbox"] {position: relative;width: 30px;height:30px;border: 1px solid #d6d4d4;border-radius: 3px;vertical-align: -10px;-webkit-appearance: none;  -moz-appearance: none;     appearance: none;}
	#contact #form_group form input[type="checkbox"]:checked:before {  position: absolute;  top:4px;left:9px;transform: rotate(45deg);  width: 8px;  height: 12px;  border-right:3px solid white;  border-bottom:3px solid white;  content: '';}
	#contact #form_group form input[type="checkbox"]:checked{background:#ce7676;border: 1px solid #ce7676;}
	#contact #form_group .unit_pp p{text-align:center;margin: 5px auto 0px auto;padding: 0;font-size: clamp(13px, 0.6vw,16px);letter-spacing: 1px;font-weight: 300;}
	#contact #form_group .unit_pp p a{color:#ce7676; }
	
	
	#contact #form_group .unit_submit{}
	#contact #form_group form input[type=submit],
	#contact #form_group form input[type=reset]{-webkit-appearance: none; outline: 0;display: block; width:100% !important;padding: 30px 0; margin: 0 auto;font-size: clamp(16px, 1.0vw,20px);letter-spacing:1px;font-weight: 400;border:1px solid #d6d4d4;color:#5b5250;background: white;border-radius: 5px}
	#contact #form_group form input[type=submit]:hover,
	#contact #form_group form input[type=reset]:hover{background: linear-gradient(45deg, #e4bcff 5%, #ffc8b1 95%);border: 1px solid #e4bcff;color: white;}
	
	#contact #privacy_policy{width:800px;margin: 0 auto 80px auto;border-top: 1px solid #e0d8d7;border-bottom: 1px solid #e0d8d7;padding: 60px 0 30px 0}
	#contact #privacy_policy h3{margin: 0 auto 30px auto;padding: 0;font-size: clamp(22px, 1.4vw,26px);letter-spacing: 2px;color: #5b5250;font-weight: 100;text-align:center;}
	#contact #privacy_policy .period{margin: 0 auto 40px auto;}
	#contact #privacy_policy .period h4{position:relative;margin: 0 auto 20px auto;padding:30px 0 0 0;font-size: clamp(18px, 1.2vw,22px);letter-spacing: 1px;color: #7a7373;font-weight: 300;}
	#contact #privacy_policy .period h4::before{content: '';position:absolute;top: 0%;left: 0px;width:30px;height:1px;background: #e0d8d7;}
	#contact #privacy_policy .period p{margin: 0 ;padding: 0;color: #5b5250;font-size: clamp(14px, 0.6vw, 16px);line-height: 1.5;letter-spacing: 1px}
	
	#contact #privacy_policy .period ul li{margin: 0 ;padding: 0;color: #5b5250;font-size: clamp(14px, 0.6vw, 16px);line-height: 1.5;letter-spacing: 1px}
	
	
	#contact #confirmation,
	#contact #sent{width:600px;margin: 0 auto 100px auto}
	
	#contact #confirmation h3,
	#contact #sent h3{margin:0 0 50px 0;padding:0px 0 0 0px;font-size: clamp(22px, 1.8vw,30px);color: #605b51;font-weight: 100;letter-spacing: 2px;text-align:center;font-weight: 300;}
	
	#contact #confirmation .message{margin: 0 auto 50px auto;padding: 0;color: #ce7676;font-size: clamp(16px, 0.9vw, 20px);line-height: 1.5;letter-spacing: 1px;font-weight: 200;text-align:center;font-weight: 400;}
	#contact #confirmation .error_messe{position:relative;margin: 0 auto 10px auto;padding: 0 0 0 20px;color: #7a7373;font-size: clamp(14px, 0.9vw, 18px);line-height: 1.5;letter-spacing: 1px;font-weight: 200;font-weight: 400;}
	#contact #confirmation .error_messe::before{content: '';position:absolute;top:50%;transform: translateY(-50%);left:0;width: 10px;height:10px;background: #ce7676;}
	
	#contact #confirmation .text{margin: 0 auto 50px auto;padding: 0;color:#5b5250;font-size: clamp(13px, 0.9vw, 16px);line-height: 1.5;letter-spacing: 1px;font-weight: 200;text-align:center;font-weight: 400;}
	
	#contact #confirmation .button_area{text-align: center;margin: 50px auto 0 auto}
	#contact #confirmation input[type=button],
	#contact #confirmation input[type=submit]{-webkit-appearance: none; outline: 0;display:inline-block; width:49%;margin: 0 auto;padding: 30px 0px;font-size: clamp(16px, 1.0vw,20px);letter-spacing:1px;font-weight: 400;border:1px solid #d6d4d4;color:#5b5250;background: white;border-radius: 5px;box-sizing: border-box;}
	#contact #confirmation input[type=button]:hover,
	#contact #confirmation input[type=submit]:hover{background: linear-gradient(45deg, #e4bcff 5%, #ffc8b1 95%);border: 1px solid #e4bcff;color: white;}
	
	#contact #confirmation .input_all table{border-collapse:collapse;font-size: clamp(13px, 0.9vw,16px);letter-spacing: 1px;font-weight: 300;line-height: 1.5}
	#contact #confirmation .input_all table th{position:relative;display: inline-block;width: 100%;text-align: left;font-weight: 500;color:#ce7676;margin: 0 auto 10px auto;padding: 0 0 0 20px;}
	#contact #confirmation .input_all table th::before{content: '';position:absolute;top:50%;transform: translateY(-50%);left:0;width: 10px;height:10px;background: #ce7676;}
	
	#contact #confirmation .input_all table td{display: inline-block;width: 100%;margin-bottom: 20px}
	
	
	#contact #sent .text{margin: 0 auto 40px auto;padding: 0;color:#5b5250;font-size: clamp(13px, 0.9vw, 16px);line-height: 1.7;letter-spacing: 1px;font-weight: 200;}
	#contact #sent a{display:block;margin: 0 auto;padding: 30px 0px;font-size: clamp(16px, 1.0vw,20px);letter-spacing:1px;font-weight: 400;border:1px solid #d6d4d4;color:#5b5250;border-radius: 5px;box-sizing: border-box;text-align: center;text-decoration: none;}
	#contact #sent a:hover{background: linear-gradient(45deg, #e4bcff 5%, #ffc8b1 95%);border: 1px solid #e4bcff;color: white;}
	
}

@media (max-width: 1050px) {
	/*サロン*/	
	#salon #lead_group{margin: 0 auto 50px auto;}
	#salon #lead_group p{width: 80%;max-width:650px;margin: 0 auto 30px auto;padding: 0;font-size: clamp(14px, 0.9vw, 18px);color: #5b5250;letter-spacing: 0px;line-height: 1.7;font-weight: 300}
	#salon #lead_group .prefecture{display:flex;flex-wrap: wrap;width: 80%;min-width: 250px;margin: 0 auto}
	#salon #lead_group .prefecture a{position:relative;display: block;width: 50%;padding: 0px 0;margin: 0 0 20px 0;text-decoration: none;font-size: clamp(16px, 0.8vw, 22px);letter-spacing: 5px;color: #5b5250;text-align: center}
	#salon #lead_group .prefecture a::before{content: '';position:absolute;top: 50%;left: 0px;transform: translateY(-50%);width: 1px;height:15px;background: #7a7373;}
	#salon #lead_group .prefecture a:nth-child(even)::after{content: '';position:absolute;top: 50%;right:0px;transform: translateY(-50%);width: 1px;height:15px;background: #7a7373;}
	#salon #lead_group .prefecture a:last-of-type::after{content: '';position:absolute;top: 50%;right: 0px;transform: translateY(-50%);width: 1px;height:15px;background: #7a7373;}
	#salon #lead_group .prefecture a:hover{color: #e7c4bd}	
	
	#salon .list_container{width: 85%; margin: 0 auto 0px auto;}
	
	#salon .list_container .prefecture h4{position:relative;margin:0 0 0px 0;padding:30px 0 0 0;font-size: clamp(22px, 2.0vw,24px);color: #605b51;font-weight: 100;letter-spacing: 2px;}
	#salon .list_container .prefecture h4 span{font-size: clamp(18px, 1.2vw, 20px);margin-left: 20px}
	#salon .list_container .prefecture h4::before{content: '';position:absolute;top:0%;left:0;width: 100%;height:3px;background: linear-gradient(90deg, #d4deff 5%,#ffdedf 50%, #e2d2ff 95%);}
	
	#salon .list_container .unit{border-bottom:1px solid #e0d8d7;padding: 40px 0}
	#salon .list_container .unit:last-of-type{border-bottom:none;}
	#salon .list_container .unit h5{position:relative;margin:0 0 15px 0;padding:0px 0 0 30px;font-size: clamp(18px, 1.4vw,22px);color: #605b51;font-weight: 100;letter-spacing: 2px;}
	#salon .list_container .unit h5::before{content: '';position:absolute;top:50%;transform: translateY(-50%);left:0;width: 10px;height:10px;background: linear-gradient(45deg, #d4deff 5%,#ffdedf 50%, #e2d2ff 95%);}
	
	#salon .list_container .unit dl{width: 100%;margin: 0 auto 30px auto;padding: 0;letter-spacing: 1px;font-weight: 300}
	#salon .list_container .unit dl dt{width: 100%;margin: 0 0 5px 0;padding: 0;color: #b49c96 ;font-size: clamp(16px, 0.7vw, 18px);}
	#salon .list_container .unit dl dd{width: 100%;margin: 0 0 10px 0;padding: 0;color: #5b5250;font-size: clamp(14px, 0.9vw, 16px);}
	
	#salon .list_container .unit .reserve a{font-size: clamp(16px, 0.6vw, 16px);letter-spacing: 0px;color: #5b5250;}
	#salon .list_container .unit .reserve a span{position:relative;padding: 0 0 0 50px}
	#salon .list_container .unit .reserve a span::before{content: '\f0c1';position:absolute;top: 50%;left: 0px;transform: translateY(-50%);width:40px;height:28px;padding: 12px 0 0 0;border-radius: 20px;color:#db818e;background: linear-gradient(45deg, #f1e8ff 5%,#fff1e7 95%);font-family: "Font Awesome 5 Free";font-weight:900;text-align: center}
	#salon .list_container .unit .reserve a:hover{color: #e7c4bd}
}

@media screen and (min-width:701px) and ( max-width:1050px)  {
	/*共通*/
	main #ttl_2nd{margin: 100px auto 80px auto}
	main #ttl_2nd .container{position:relative;width: 100%;aspect-ratio:1.2/1;margin: 0 auto;padding: 0px 0;}
	main #ttl_2nd .container .photo_area{position: absolute;top: 0%;right:0%;width:90%;height: 100%;}
	main #ttl_2nd .container .photo_area figure{width: 100%;height: 100%;margin:0;padding: 0;overflow: hidden;}
	main #ttl_2nd .container .photo_area figure img{width: 100%;height: 100%;object-fit: cover;}
	
	main #ttl_2nd .container .text_area{position: absolute;top: 50%;left:20%;transform: translateY(-50%);}
	main #ttl_2nd .container .text_area .eng h2{margin:0;padding: 0;font-size: clamp(50px, 4.8vw, 60px);color: #5b5250;font-weight: 500;letter-spacing: 2px;font-family: futura-pt, sans-serif;font-weight:300;font-style: normal;}
	main #ttl_2nd .container .text_area .jpn h3{margin:0;padding: 0;font-size: clamp(20px, 1.2vw, 30px);color: #5b5250;font-weight: 100;letter-spacing: 2px;}
	
	/*お問い合わせ（＋確認・完了）*/	
	#contact #ttl_2nd .container{position:relative;width: 100%;aspect-ratio:4/1;min-height:200px;margin: 0 auto;padding: 0px 0;}
	#contact #ttl_2nd .container .photo_area{position: absolute;top: 0%;right:0%;width:90%;height: 100%;}
	#contact #ttl_2nd .container .photo_area .bg_color{width: 100%;height: 100%;margin:0;padding: 0;background: linear-gradient(45deg, #d4deff 5%,#ffdedf 50%, #e2d2ff 95%);background-size: 200% 200%;animation:contact_2nd_bg 8s infinite alternate;overflow: hidden; transition: color 2.3s ease;}
	@keyframes contact_2nd_bg{ 0%{background-position:0% 50%}    50%{background-position:100% 50%}    100%{background-position:0% 50%}	}
	
	#contact #attention_group{text-align:center;margin: 0 auto 50px auto;}
	
	#contact #attention_group .text{border: 1px solid #d6d4d4;width:80%;margin: 0 auto 50px auto;padding: 30px 0}
	#contact #attention_group .text p{margin: 0 auto 0px auto;padding: 0;color: #7a7373;line-height: 2;letter-spacing: 1px;font-size: clamp(14px, 1.3vw,18px);text-decoration: underline;}
	#contact #attention_group .text p a{color:#ce7676 }
	#contact #attention_group .text p a:hover{color: #e7c4bd}
	
	#contact .contact_container{width:80%;}
	#contact .contact_container .title_area{background: linear-gradient(90deg, #f9f9ff 5%, #fffaea 95%);margin: 0 auto 30px auto;padding:25px 0;text-align: center;border-radius: 10px}
	#contact .contact_container .title_area h4{position: relative;display: inline;margin: 0 auto 0px auto;padding: 0 0 0 60px;color: #7a7373;font-size: clamp(20px, 1.2vw,26px);letter-spacing: 2px;font-weight: normal;}
	#contact .contact_container .title_area h4::before{content: '';position:absolute;top: 50%;left: 0;transform: translateY(-50%);width: 40px;height:60px;background: url("../img/contact_icon.png") no-repeat;background-position:50% 50%;background-size: 100% auto;}
	
	
	#contact #tel_group{text-align:center;margin: 0 auto 50px auto}
	#contact #tel_group .number{margin: 0 auto 10px auto}
	#contact #tel_group .number a{pointer-events: none;color: #7a7373;font-size: clamp(30px, 2.2vw,56px);letter-spacing: 2px;font-weight: 500;text-decoration: none;}
	#contact #tel_group .number a span{display: none}
	#contact #tel_group .reception{color:#ce7676;font-size: clamp(14px, 1.0vw,20px);letter-spacing: 1px;}
	
	
	
	#contact #form_group{margin: 0 auto 100px auto}	
	#contact #form_group .text p{margin: 0 auto 30px auto;padding: 0;color: #7a7373;font-size: clamp(14px, 0.8vw,16px);line-height: 2;letter-spacing: 1px;text-align: center;}
	
	#contact #form_group .unit .q{position:relative;margin: 0 auto 10px auto;padding: 0 0 0 20px;font-size: clamp(15px, 0.6vw,20px);letter-spacing: 1px;color: #5b5250;font-weight: 400;}
	#contact #form_group .unit .q::before{content: '';position:absolute;top:50%;transform: translateY(-50%);left:0;width: 10px;height:10px;background: linear-gradient(45deg, #d4deff 5%,#ffdedf 50%, #e2d2ff 95%);}
	
	#contact #form_group span.require{margin-left: 10px;padding:2px 8px;background: #ce7676;font-size: clamp(11px, 0.5vw,15px);color: white;font-weight: 500;}
	
	#contact #form_group .unit .a{margin: 0 auto 30px auto;}
	
	#contact #form_group form input[type=text],
	#contact #form_group form input[type=tel],
	#contact #form_group form input[type=email],
	#contact #form_group form textarea{outline: 0;border:1px solid #d6d4d4; width:96%; margin: 0 ;padding:14px 2%;font-size: 16px;letter-spacing:1px;box-sizing: border-box;border-radius: 5px}
	#contact #form_group form textarea{height:200px;}	
	
	#contact #form_group form input[type=text]:focus,
	#contact #form_group form input[type=tel]:focus,
	#contact #form_group form input[type=email]:focus,
	#contact #form_group form textarea:focus{border:1px solid #ce7676;}
	
	#contact #form_group .unit_pp{margin: 0px auto 30px auto;font-size: clamp(15px, 0.6vw,20px);letter-spacing: 1px;color: #5b5250;font-weight: 400;text-align: center}	
	#contact #form_group form input[type="checkbox"] {position: relative;width: 30px;height:30px;border: 1px solid #d6d4d4;border-radius: 3px;vertical-align: -10px;-webkit-appearance: none;  -moz-appearance: none;     appearance: none;}
	#contact #form_group form input[type="checkbox"]:checked:before {  position: absolute;  top:4px;left:9px;transform: rotate(45deg);  width: 8px;  height: 12px;  border-right:3px solid white;  border-bottom:3px solid white;  content: '';}
	#contact #form_group form input[type="checkbox"]:checked{background:#ce7676;border: 1px solid #ce7676;}
	#contact #form_group .unit_pp p{text-align:center;margin: 5px auto 0px auto;padding: 0;font-size: clamp(13px, 0.6vw,16px);letter-spacing: 1px;font-weight: 300;}
	#contact #form_group .unit_pp p a{color:#ce7676; }
	
	
	#contact #form_group .unit_submit{}
	#contact #form_group form input[type=submit],
	#contact #form_group form input[type=reset]{-webkit-appearance: none; outline: 0;display: block; width:100% !important;padding: 30px 0; margin: 0 auto;font-size: clamp(16px, 1.0vw,20px);letter-spacing:1px;font-weight: 400;border:1px solid #d6d4d4;color:#5b5250;background: white;border-radius: 5px}
	#contact #form_group form input[type=submit]:hover,
	#contact #form_group form input[type=reset]:hover{background: linear-gradient(45deg, #e4bcff 5%, #ffc8b1 95%);border: 1px solid #e4bcff;color: white;}
	
	#contact #privacy_policy{width:80%;margin: 0 auto 80px auto;border-top: 1px solid #e0d8d7;border-bottom: 1px solid #e0d8d7;padding: 60px 0 30px 0}
	#contact #privacy_policy h3{margin: 0 auto 30px auto;padding: 0;font-size: clamp(18px, 1.4vw,24px);letter-spacing: 2px;color: #5b5250;font-weight: 100;text-align:center;}
	#contact #privacy_policy .period{margin: 0 auto 40px auto;}
	#contact #privacy_policy .period h4{position:relative;margin: 0 auto 10px auto;padding:30px 0 0 0;font-size: clamp(16px, 1.2vw,20px);letter-spacing: 1px;color: #7a7373;font-weight: 300;}
	#contact #privacy_policy .period h4::before{content: '';position:absolute;top: 0%;left: 0px;width:30px;height:1px;background: #e0d8d7;}
	#contact #privacy_policy .period p{margin: 0 ;padding: 0;color: #5b5250;font-size: clamp(14px, 0.6vw, 16px);line-height: 1.5;letter-spacing: 1px}
	
	#contact #privacy_policy .period ul li{margin: 0 ;padding: 0;color: #5b5250;font-size: clamp(14px, 0.6vw, 16px);line-height: 1.5;letter-spacing: 1px}
	
	
	#contact #confirmation,
	#contact #sent{width:70%;margin: 0 auto 100px auto}
	
	#contact #confirmation h3,
	#contact #sent h3{margin:0 0 50px 0;padding:0px 0 0 0px;font-size: clamp(22px, 1.8vw,30px);color: #605b51;font-weight: 100;letter-spacing: 2px;text-align:center;font-weight: 300;}
	
	#contact #confirmation .message{margin: 0 auto 50px auto;padding: 0;color: #ce7676;font-size: clamp(16px, 0.9vw, 20px);line-height: 1.5;letter-spacing: 1px;font-weight: 200;text-align:center;font-weight: 400;}
	#contact #confirmation .error_messe{position:relative;margin: 0 auto 10px auto;padding: 0 0 0 20px;color: #7a7373;font-size: clamp(14px, 0.9vw, 18px);line-height: 1.5;letter-spacing: 1px;font-weight: 200;font-weight: 400;}
	#contact #confirmation .error_messe::before{content: '';position:absolute;top:50%;transform: translateY(-50%);left:0;width: 10px;height:10px;background: #ce7676;}
	
	#contact #confirmation .text{margin: 0 auto 50px auto;padding: 0;color:#5b5250;font-size: clamp(13px, 0.9vw, 16px);line-height: 1.5;letter-spacing: 1px;font-weight: 200;text-align:center;font-weight: 400;}
	
	#contact #confirmation .button_area{text-align: center;margin: 50px auto 0 auto}
	#contact #confirmation input[type=button],
	#contact #confirmation input[type=submit]{-webkit-appearance: none; outline: 0;display:inline-block; width:49%;margin: 0 auto;padding: 30px 0px;font-size: clamp(16px, 1.0vw,20px);letter-spacing:1px;font-weight: 400;border:1px solid #d6d4d4;color:#5b5250;background: white;border-radius: 5px;box-sizing: border-box;}
	#contact #confirmation input[type=button]:hover,
	#contact #confirmation input[type=submit]:hover{background: linear-gradient(45deg, #e4bcff 5%, #ffc8b1 95%);border: 1px solid #e4bcff;color: white;}
	
	#contact #confirmation .input_all table{border-collapse:collapse;font-size: clamp(13px, 0.9vw,16px);letter-spacing: 1px;font-weight: 300;line-height: 1.5}
	#contact #confirmation .input_all table th{position:relative;display: inline-block;width: 100%;text-align: left;font-weight: 500;color:#ce7676;margin: 0 auto 10px auto;padding: 0 0 0 20px;}
	#contact #confirmation .input_all table th::before{content: '';position:absolute;top:50%;transform: translateY(-50%);left:0;width: 10px;height:10px;background: #ce7676;}
	
	#contact #confirmation .input_all table td{display: inline-block;width: 100%;margin-bottom: 20px}
	
	
	#contact #sent .text{margin: 0 auto 40px auto;padding: 0;color:#5b5250;font-size: clamp(13px, 0.9vw, 16px);line-height: 1.7;letter-spacing: 1px;font-weight: 200;}
	#contact #sent a{display:block;margin: 0 auto;padding: 30px 0px;font-size: clamp(16px, 1.0vw,20px);letter-spacing:1px;font-weight: 400;border:1px solid #d6d4d4;color:#5b5250;border-radius: 5px;box-sizing: border-box;text-align: center;text-decoration: none;}
	#contact #sent a:hover{background: linear-gradient(45deg, #e4bcff 5%, #ffc8b1 95%);border: 1px solid #e4bcff;color: white;}
}

@media (max-width: 700px) {
	/*共通*/
	main #ttl_2nd{margin: 80px auto 50px auto}
	main #ttl_2nd .container{position:relative;width: 100%;aspect-ratio:1.2/1;margin: 0 auto;padding: 0px 0;}
	main #ttl_2nd .container .photo_area{position: absolute;top: 0%;right:0%;width:90%;height: 100%;}
	main #ttl_2nd .container .photo_area figure{width: 100%;height: 100%;margin:0;padding: 0;overflow: hidden;}
	main #ttl_2nd .container .photo_area figure img{width: 100%;height: 100%;object-fit: cover;}
	
	main #ttl_2nd .container .text_area{position: absolute;top: 50%;left:20%;transform: translateY(-50%);}
	main #ttl_2nd .container .text_area .eng h2{margin:0;padding: 0;font-size: clamp(35px, 4.2vw, 50px);color: #5b5250;font-weight: 500;letter-spacing: 2px;font-family: futura-pt, sans-serif;font-weight:300;font-style: normal;}
	main #ttl_2nd .container .text_area .jpn h3{margin:0;padding: 0;font-size: clamp(14px, 1.2vw, 20px);color: #5b5250;font-weight: 100;letter-spacing: 2px;}
	
	
	/*お問い合わせ＋確認・完了*/	
	#contact #ttl_2nd .container{position:relative;width: 100%;aspect-ratio:2.8/1;margin: 0 auto;padding: 0px 0;}
	#contact #ttl_2nd .container .photo_area{position: absolute;top: 0%;right:0%;width:90%;height: 100%;}
	#contact #ttl_2nd .container .photo_area .bg_color{width: 100%;height: 100%;margin:0;padding: 0;background: linear-gradient(45deg, #d4deff 5%,#ffdedf 50%, #e2d2ff 95%);background-size: 200% 200%;animation:contact_2nd_bg 8s infinite alternate;overflow: hidden; transition: color 2.3s ease;}
	@keyframes contact_2nd_bg{ 0%{background-position:0% 50%}    50%{background-position:100% 50%}    100%{background-position:0% 50%}	}
	
	#contact #attention_group{margin: 0 auto 30px auto;}
	
	#contact #attention_group .text{border: 1px solid #d6d4d4;width:80%;margin: 0 auto 30px auto;padding: 20px 0}
	#contact #attention_group .text p{width: 80%; margin: 0 auto 0px auto;padding: 0;color: #7a7373;line-height:1.7;letter-spacing: 0px;text-decoration: underline;font-size:14px;}
	#contact #attention_group .text p a{color:#ce7676 }
	#contact #attention_group .text p a:hover{color: #e7c4bd}
	
	#contact .contact_container{width:80%;}
	#contact .contact_container .title_area{background: linear-gradient(90deg, #f9f9ff 5%, #fffaea 95%);margin: 0 auto 20px auto;padding:16px 0;text-align: center;border-radius: 10px}
	#contact .contact_container .title_area h4{position: relative;display: inline;margin: 0 auto 0px auto;padding: 0 0 0 40px;color: #7a7373;font-size: clamp(16px, 0.6vw,20px);letter-spacing: 0px;font-weight: normal;}
	#contact .contact_container .title_area h4::before{content: '';position:absolute;top: 50%;left: 0;transform: translateY(-50%);width: 30px;height:40px;background: url("../img/contact_icon.png") no-repeat;background-position:50% 50%;background-size: 100% auto;}
	
	
	#contact #tel_group{text-align:center;margin: 0 auto 30px auto}
	#contact #tel_group .number{width:80%;margin: 0 auto 10px auto}
	#contact #tel_group .number a{display: block; color: #7a7373;font-size:18px;letter-spacing: 0px;font-weight: 800;text-decoration: none;border: 1px dotted #e7c4bd;border-radius: 10px;padding: 10px 0 6px 0}
	#contact #tel_group .number a span{display:block;font-size:12px;letter-spacing: 0px;margin-top: 2px;font-weight: normal;}
	#contact #tel_group .number a span .fa-phone{margin-right: 8px}
	
	#contact #tel_group .reception{color:#ce7676;font-size:13px;letter-spacing: 0px;}
	
	
	#contact #form_group{margin: 0 auto 50px auto}
	
	#contact #form_group .text p{margin: 0 auto 20px auto;padding: 0;color: #7a7373;line-height: 1.5;letter-spacing: 0px;font-size:13px;}
	
	#contact #form_group .unit .q{position:relative;margin: 0 auto 5px auto;padding: 0 0 0 20px;font-size:14px;letter-spacing: 0;color: #5b5250;font-weight: 400;}
	#contact #form_group .unit .q::before{content: '';position:absolute;top:50%;transform: translateY(-50%);left:0;width: 10px;height:10px;background: linear-gradient(45deg, #d4deff 5%,#ffdedf 50%, #e2d2ff 95%);}
	
	#contact #form_group span.require{margin-left: 10px;padding:2px 8px;background: #ce7676;font-size: clamp(11px, 0.5vw,15px);color: white;font-weight: 500;}
	
	#contact #form_group .unit .a{margin: 0 auto 20px auto;}
	
	#contact #form_group form input[type=text],
	#contact #form_group form input[type=tel],
	#contact #form_group form input[type=email],
	#contact #form_group form textarea{outline: 0;border:1px solid #d6d4d4; width:96%; margin: 0 ;padding:10px 2%;font-size: 16px;letter-spacing:1px;box-sizing: border-box;border-radius: 5px}
	#contact #form_group form textarea{height:200px;}	
	
	#contact #form_group form input[type=text]:focus,
	#contact #form_group form input[type=tel]:focus,
	#contact #form_group form input[type=email]:focus,
	#contact #form_group form textarea:focus{border:1px solid #ce7676;}
	
	#contact #form_group .unit_pp{margin: 0px auto 20px auto;font-size:15px;letter-spacing:0px;color: #5b5250;font-weight: 400;text-align: center}	
	#contact #form_group form input[type="checkbox"] {display: block;position: relative;width: 30px;height:30px;margin: 0 auto 5px auto;border: 1px solid #d6d4d4;border-radius: 3px;vertical-align: -10px;-webkit-appearance: none;  -moz-appearance: none; appearance: none;}
	#contact #form_group form input[type="checkbox"]:checked:before {  position: absolute;  top:4px;left:9px;transform: rotate(45deg);  width: 8px;  height: 12px;  border-right:3px solid white;  border-bottom:3px solid white;  content: '';}
	#contact #form_group form input[type="checkbox"]:checked{background:#ce7676;border: 1px solid #ce7676;}
	#contact #form_group .unit_pp p{text-align:center;margin: 5px auto 0px auto;padding: 0;font-size: 12px;letter-spacing: 0px;font-weight: 300;}
	#contact #form_group .unit_pp p a{color:#ce7676; }
	
	#contact #form_group .unit_submit{}
	#contact #form_group form input[type=submit],
	#contact #form_group form input[type=reset]{-webkit-appearance: none; outline: 0;display: block; width:100% !important;padding: 20px 0; margin: 0 auto;font-size: 16px;letter-spacing:0px;font-weight: 400;border:1px solid #d6d4d4;color:#5b5250;background: white;border-radius: 5px}
	#contact #form_group form input[type=submit]:hover,
	#contact #form_group form input[type=reset]:hover{background: linear-gradient(45deg, #e4bcff 5%, #ffc8b1 95%);border: 1px solid #e4bcff;color: white;}
	
	#contact #privacy_policy{width:80%;margin: 0 auto 50px auto;border-top: 1px solid #e0d8d7;border-bottom: 1px solid #e0d8d7;padding:30px 0 10px 0}
	#contact #privacy_policy h3{margin: 0 auto 20px auto;padding: 0;font-size:18px;letter-spacing: 0px;color: #5b5250;font-weight: 100;text-align:center;}
	#contact #privacy_policy .period{margin: 0 auto 20px auto;}
	#contact #privacy_policy .period h4{position:relative;margin: 0 auto 10px auto;padding:20px 0 0 0;font-size: 15px;letter-spacing: 0px;color: #7a7373;font-weight: 300;}
	#contact #privacy_policy .period h4::before{content: '';position:absolute;top: 0%;left: 0px;width:30px;height:1px;background: #e0d8d7;}
	#contact #privacy_policy .period p{margin: 0 ;padding: 0;color: #5b5250;font-size: 12px;line-height: 1.5;letter-spacing: 0px}
	
	#contact #privacy_policy .period ul li{margin: 0 ;padding: 0;color: #5b5250;font-size:12px;line-height: 1.5;letter-spacing: 0px}
	
	#contact #confirmation,
	#contact #sent{width:80%;margin: 0 auto 30px auto}
	
	#contact #confirmation h3,
	#contact #sent h3{margin:0 0 30px 0;padding:0px 0 0 0px;font-size:20px;color: #605b51;font-weight: 100;letter-spacing: 1px;font-weight: 300;text-align:center;}
	
	#contact #confirmation .message{margin: 0 auto 30px auto;padding: 0;color: #ce7676;font-size:14px;line-height: 1.5;letter-spacing: 1px;font-weight: 200;font-weight: 400;}
	#contact #confirmation .error_messe{position:relative;margin: 0 auto 10px auto;padding: 0 0 0 12px;color: #7a7373;font-size: 13px;line-height: 1.5;letter-spacing: 0px;font-weight: 400;}
	#contact #confirmation .error_messe::before{content: '';position:absolute;top:5px;left:0;width: 8px;height:8px;background: #ce7676;}
	
	#contact #confirmation .text{margin: 0 auto 30px auto;padding: 0;color:#5b5250;font-size:14px;line-height: 1.5;letter-spacing: 0px;font-weight: 300;}
	
	#contact #confirmation .button_area{text-align: center;margin: 30px auto 0 auto}
	#contact #confirmation input[type=button],
	#contact #confirmation input[type=submit]{-webkit-appearance: none; outline: 0;display:inline-block; width:49%;margin: 0 auto;padding: 20px 0px;font-size:16px;letter-spacing:0;font-weight: 300;border:1px solid #d6d4d4;color:#5b5250;background: white;border-radius: 5px;box-sizing: border-box;}
	#contact #confirmation input[type=button]:hover,
	#contact #confirmation input[type=submit]:hover{background: linear-gradient(45deg, #e4bcff 5%, #ffc8b1 95%);border: 1px solid #e4bcff;color: white;}
	
	#contact #confirmation .input_all table{border-collapse:collapse;font-size:13px;letter-spacing: 1px;font-weight: 300;line-height: 1.5}
	#contact #confirmation .input_all table th{position:relative;display: inline-block;width: 100%;text-align: left;font-weight: 500;color:#ce7676;margin: 0 auto 5px auto;padding: 0 0 0 14px;}
	#contact #confirmation .input_all table th::before{content: '';position:absolute;top:50%;transform: translateY(-50%);left:0;width: 10px;height:10px;background: #ce7676;}
	
	#contact #confirmation .input_all table td{display: inline-block;width: 100%;margin-bottom: 14px}
	
	#contact #sent .text{margin: 0 auto 20px auto;padding: 0;color:#5b5250;font-size:13px;line-height: 1.5;letter-spacing: 0;font-weight: 300;}
	#contact #sent a{display:block;margin: 0 auto;padding: 20px 0px;font-size:14px;letter-spacing:0px;font-weight: 400;border:1px solid #d6d4d4;color:#5b5250;border-radius: 5px;box-sizing: border-box;text-align: center;text-decoration: none;}
	#contact #sent a:hover{background: linear-gradient(45deg, #e4bcff 5%, #ffc8b1 95%);border: 1px solid #e4bcff;color: white;}
}