.mainvisual.mainvisual-contact h1 {
	position: relative;
	z-index: 10;
	width:100%;
}
.mainvisual.mainvisual-contact h1 img {
	display: block;
	margin-left:auto;
	margin-right:auto;
}
.mainvisual-contact-pic-1 {
	background-image: linear-gradient(180deg, rgba(92, 186, 217, 1), rgba(53, 155, 188, 1));
}
.mainvisual-member {
	background-image:url(../images/mainvisual/member.webp);
	background-size:cover;
	background-position: center center;
}
.mainvisual-member h1 img {
	display: block;
	margin-left:auto;
	margin-right:auto;
}
@media (width < 767px) {
	.mainvisual-contact {
		height:75vw;
		background-image: linear-gradient(180deg, rgba(92, 186, 217, 1), rgba(53, 155, 188, 1));
	}
	.mainvisual-contact h1 {
		padding-top:60px;
		height:75vw;
	}
	.mainvisual-contact h1 img {
		width:auto;
		height:100%;
	}
	.mainvisual-member h1 {
		padding-top:60px;
		height:75vw;
	}
	.mainvisual-member h1 img {
		width:90vw;
		height:auto;
	}
}
@media (768px <= width) {
	.mainvisual-contact {
		height:420px;
		background-image: linear-gradient(180deg, rgba(255, 255, 255, 1), rgba(244, 245, 251, 1));
	}
	.mainvisual-contact h1 {
		padding-top:45px;
	}
	.mainvisual-contact-pic-1 {
		position: absolute;
		z-index: 2;
		width:55vw;
		height:420px;
		top:0;
		right:0;
		background-size:auto 100%;
		clip-path: polygon(128px 0%, 100% 0%, 100% 100%, 0% 100%);
	}
	.mainvisual-member {
		height:420px;
	}
	.mainvisual-member h1 {
		padding-top:30px;
	}
}
/*-----------------------------------------
wrapper
------------------------------------------*/
.contact,
.member,
.recruit,
.message {
	max-width:860px;
	margin-left:auto;
	margin-right:auto;
}
/*-----------------------------------------
form-step
------------------------------------------*/
.tt-minutes {
	color:var(--color-pink);
	text-align: center;
}
.form-stepper {
	display:flex;
	justify-content: center;
	gap:8px;
}
.form-stepper div {
	text-align: center;
	position: relative;
	font-weight:700;
}
.form-stepper span {
	display:block;
	width:40px;
	height:40px;
	line-height: 40px;
	border-radius:50%;
	text-align: center;
	color:var(--color-white);
	margin-bottom:8px;
}
.stepper-guide {
	margin-top:20px;
	height:1px;
	background-color:var(--color-formoff);
}
.contact .stepper-on {
	color:var(--color-aqua);
}
.member .stepper-on {
	color:var(--color-member);
}
.flower .stepper-on {
	color:var(--color-orange);
}
.message .stepper-on {
	color:var(--color-main);
}
.stepper-off {
	color:var(--color-formoff);
}
.contact .stepper-on span {
	background-color:var(--color-aqua);
}
.member .stepper-on span {
	background-color:var(--color-member);
}
.flower .stepper-on span {
	background-color:var(--color-orange);
}
.message .stepper-on span {
	background-color:var(--color-main);
}
.stepper-off span {
	background-color:var(--color-formoff);
}
@media (max-width: 767px) {
	.tt-minutes {
		font-size:var(--font-sp-x-large);
	}
	.form-stepper {
		margin:40px auto;
	}
	.stepper-guide {
		width:40px;
	}
}
@media (768px <= width) {
	.tt-minutes {
		font-size:var(--font-pc-xx-large);
	}
	.form-stepper {
		margin:40px auto;
	}
	.stepper-guide {
		width:110px;
	}
}
/*-----------------------------------------
form-input
------------------------------------------*/
input[type=text],
input[type=email],
input[type=tel],
input[type=date],
textarea,
select {
	width:100%;
	border:1px solid var(--color-border);
	border-radius:5px;
	background:#f9f4d2;
}
.input-small {
	max-width:160px;
}
.input-middle {
	max-width:360px;
}
.input-large {
	max-width:480px;
}
.inputgroup {
	max-width:860px;
	margin-left:auto;
	margin-right:auto;
	border:1px solid var(--color-border);
	background-color:var(--color-white);
	border-radius:5px;
	margin-bottom:10px;
	overflow: hidden;
}
.inputgroup dt {
	position: relative;
	font-weight:700;
}
.contact .inputgroup dt.hissu {
	background-color:#c8e9f5;
}
.member .inputgroup dt.hissu {
	background-color:#d6eac8;
}
.flower .inputgroup dt.hissu {
	background-color:#ffd687;
}
.message .inputgroup dt.hissu {
	background-color:#f1e4f5;
}
.recruit .inputgroup dt.hissu {
	background-color:var(--color-gray);
}
.inputgroup dt.nini {
	background-color:var(--color-gray);
}
.inputgroup dt.hissu:before,
.inputgroup dt.nini:before {
	padding:2px 8px;
	position: relative;
	margin-right:1em;
	border-radius:4px;
	color:var(--color-white);
}
.inputgroup dt.hissu:before {
	content:"\5FC5\9808";
	background:#ee3800;
}
.inputgroup dt.nini:before {
	content:"\4EFB\610F";
	background:#999999;
}
.contact-address-grid:first-child {
	padding-bottom:10px;
}
.inputgroup small {
	padding:1em;
}
.inputgroup p.small {
	line-height:150%;
}
.policyblock {
	height:120px;
	padding:10px;
	border:1px solid var(--color-border);
	border-radius:5px;
	overflow-y: scroll;
}
@media (max-width: 767px) {
input[type=text],
input[type=email],
input[type=tel],
input[type=date],
textarea,
select {
	padding:1.5vw 2vw;
}
	.inputgroup dt {
		padding:1vw 2vw;
	}
	.inputgroup dd {
		padding:3vw 4vw;
	}
	.contact-address-grid span {
		display: block;
		padding-bottom:1.5vw;
	}
	.inputgroup dt.hissu:before,
	.inputgroup dt.nini:before,
	.inputgroup p.small {
		font-size:var(--font-sp-small);
	}
	.form-policy {
		padding-top:5vw;
	}
	.policyblock {
		margin-top:5vw;
	}
	.policyblock h4,
	.policyblock p {
		font-size:var(--font-sp-small);
	}
}
@media (768px <= width) {
input[type=text],
input[type=email],
input[type=tel],
input[type=date],
textarea,
select {
	padding:0.75em 1em;
}
	.inputgroup {
		display:grid;
		grid-template-columns: 1fr 3fr;
	}
	.inputgroup.inputgroup-comment {
		display: block;
	}
	.inputgroup dt {
		padding:22px 10px 22px 15px;
	}
	.inputgroup.inputgroup-comment dt {
		padding:10px 15px;
	}
	.inputgroup dd {
		padding:15px;
	}
	.contact-address-grid {
		display:grid;
		grid-template-columns: 110px 1fr;
		grid-column-gap:8px;
		align-items: center;
	}
	.inputgroup.inputgroup-comment dd textarea {
		max-width:700px;
		resize: none;
	}
	.inputgroup dt.hissu:before,
	.inputgroup dt.nini:before,
	.inputgroup p.small {
		font-size:var(--font-pc-small);
	}
	.form-policy {
		display:grid;
		grid-template-columns: 1fr 3fr;
		grid-column-gap:29px;
		align-items: center;
		padding-top:30px;
	}
	.policyblock h4,
	.policyblock p {
		font-size:var(--font-pc-small);
	}
}
/*-----------------------------------------
sevenpoint
------------------------------------------*/
.sevenpoint h2 {
	text-align: center;
}
.sevenpoint-grid div {
	background-color:var(--color-white);
	border-radius:5px;
	position: relative;
	z-index: 1;
	overflow: hidden;
}
.sevenpoint-grid div:before {
	position: absolute;
	z-index: 2;
	color:var(--color-white);
	font-family: "Oswald", sans-serif;
	font-weight:600;
	text-align: center;
	border-radius:50%;
}
.sevenpoint-1:before {
	content:"1";
	background-color:#b81c78;
}
.sevenpoint-2:before {
	content:"2";
	background-color:#ae6f26;
}
.sevenpoint-3:before {
	content:"3";
	background-color:#60a9ac;
}
.sevenpoint-4:before {
	content:"4";
	background-color:#7d458f;
}
.sevenpoint-5:before {
	content:"5";
	background-color:#c968b1;
}
.sevenpoint-6:before {
	content:"6";
	background-color:#a7ab29;
}
.sevenpoint-7:before {
	content:"7";
	background-color:#69a034;
}
.sevenpoint-8:before {
	content:"8";
	background-color:#0f7eb7;
}
.sevenpoint-grid div:after {
	content:"\7279\5178";
	position: absolute;
	z-index: 3;
	top:5px;
	left:-15px;
	font-size:1.2rem;
	font-weight:700;
	width:60px;
	height:18px;
	line-height:18px;
	text-align: center;
	color:var(--color-white);
	background-color:var(--color-pink);
	transform:rotate(-45deg);
}
@media (max-width: 767px) {
	.sevenpoint h2 span {
		font-size:var(--font-sp-large);
	}
	.sevenpoint h2 span strong {
		font-size:var(--font-sp-xx-large);
	}
	.sevenpoint-grid {
		margin-top:8vw;
	}
	.sevenpoint-grid div {
		min-height:16vw;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		font-size:var(--font-sp-large);
		font-weight:700;
		padding-left:16vw;
		margin-bottom:4vw;
	}
	.sevenpoint-grid div:before {
		width:8vw;
		height:8vw;
		line-height:8vw;
		top:4vw;
		left:6vw;
	}
}
@media (768px <= width) {
	.sevenpoint h2 span {
		font-size:var(--font-pc-xx-large);
	}
	.sevenpoint h2 span strong {
		font-size:4.8rem;
	}
	.sevenpoint-grid {
		margin-top:60px;
		display:grid;
		grid-template-columns: 1fr 1fr;
		grid-column-gap:20px;
		grid-row-gap: 20px;
	}
	.sevenpoint-1 { grid-area: 1 / 1 / 2 / 3; }
	.sevenpoint-2 { grid-area: 2 / 1 / 3 / 2; }
	.sevenpoint-3 { grid-area: 2 / 2 / 3 / 3; }
	.sevenpoint-4 { grid-area: 3 / 1 / 4 / 2; }
	.sevenpoint-5 { grid-area: 3 / 2 / 4 / 3; }
	.sevenpoint-6 { grid-area: 4 / 1 / 5 / 2; }
	.sevenpoint-7 { grid-area: 4 / 2 / 5 / 3; }
	.sevenpoint-grid div {
		min-height:80px;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		font-size:var(--font-pc-x-large);
		font-weight:700;
		padding-left:80px;
	}
	.sevenpoint-grid div.sevenpoint-2,
	.sevenpoint-grid div.sevenpoint-3 {
		flex-direction: column;
		align-items: flex-start;
		justify-content: center;
	}
	.sevenpoint-grid div.sevenpoint-1 {
		font-size:var(--font-pc-xx-large);
	}
	.sevenpoint-grid div:before {
		width:40px;
		height:40px;
		line-height:40px;
		top:20px;
		left:20px;
	}
}
/*-----------------------------------------
thanks
------------------------------------------*/
.contact-thanks p {
	padding-top:1em;
	padding-bottom:2em;
	font-weight: 700;
	text-align: center;
}
@media (width < 767px) {
	.contact-thanks p {
		font-size:var(--font-sp-small);
	}
}
@media (768px <= width) {
	.contact-thanks p {
		font-size:var(--font-pc-small);
	}
}
/*-----------------------------------------
flower
------------------------------------------*/
.flower-container {
	display:flex;
	flex-wrap: wrap;
	justify-content: center;
}
.flower-container .panel-content {
	text-align: center;
}
.flower-group {
	background:#f8f4e8;
	border-radius:5px;
}
.flower-group h3 small {
	color:var(--color-inactive);
}
.flower-itemselect-grid {
	display:grid;
	grid-template-columns: 4fr 1fr;
	grid-column-gap:8px;
}
.tabgroup .wpcf7-list-item {
	margin:0 0.5em;
}
@media (width < 767px) {
	.flower-container {
		gap:4vw;
		padding-bottom:8vw;
	}
	.flower-container>div {
		width:43vw;
	}
	.flower-container .panel-content h3 {
		font-size:var(--font-sp-small);
	}
	.flower-container .panel-content {
		font-size:var(--font-sp-small);
	}
	.flower-group {
		padding:3vw;
		margin-bottom:3vw;
	}
	.flower-group h3 small {
		display: block;
	}
}
@media (768px <= width) {
	.flower-container {
		gap:30px;
		padding-bottom:60px;
	}
	.flower-container>div {
		width:300px;
	}
	.flower-container .panel-content h3 {
		font-size:var(--font-pc-x-large);
	}
	.flower-group {
		padding:20px;
		margin-bottom: 30px;
	}
	.flower-group h3 {
		max-width: 860px;
		margin-left: auto;
		margin-right: auto;
		font-size:var(--font-pc-x-large);
	}
	.flower-group h3 small {
		font-size:var(--font-sp-small);
		padding-left:2em;
	}
}
.user-type-cel {
	display:grid;
	grid-template-columns: 1fr 1fr 1fr;
}
.tab-area {
	text-align:center;
}
.tab-area .wpcf7-list-item label {
	cursor:pointer;
	position: relative;
	z-index: 1;
	text-align: center;
	font-weight: 700;
	display:block;
	border-radius:5px;
	box-shadow:0px 2px 4px 1px rgba(0,0,0,0.2);
	background-color:var(--color-white);
	width:100%;
	margin-left:auto;
	margin-right:auto;
}
.tab-area .wpcf7-list-item label:has(input:checked) {
	color:var(--color-white);
	background-color:var(--color-bgpink);
}
@media (width < 767px) {
	.tab-area {
		padding:4vw 0;
	}
	.tab-area .wpcf7-list-item label {
		padding:5vw 4vw;
	}
}
@media (768px <= width) {
	.user-type-cel {
		grid-column-gap:16px;
	}
	.tab-area {
		padding:40px;
	}
	.tab-area .wpcf7-list-item label {
		padding:22px 16px;
		min-height:60px;
	}
}
/*-----------------------------------------
message
------------------------------------------*/
.message h2 {
	color:#ee0000;
	text-align: center;
}
@media (width < 767px) {
	.message h2 {
		font-size:var(--font-sp-large);
	}
}
@media (768px <= width) {
	.message h2 {
		font-size:var(--font-pc-xxx-large);
	}
}
/*-----------------------------------------
thanks
------------------------------------------*/
.thanks-tel {
	width:75%;
	margin-left:auto;
	margin-right:auto;
}
.wpcf7-response-output {
background:#ffb900;
}
/*-----------------------------------------
wait
------------------------------------------*/
.wait-caution {
	color:var(--color-white);
	background-color:var(--color-red);
	background-image:url(../images/contact/icon-caution.svg);
	background-repeat: no-repeat;
	border-radius:8px;
	min-height:60px;
	line-height:60px;
	padding-left:1em;
	font-weight:700;
}
.wait-mt {
	padding:1em 0;
}
.wait-tokuten div {
	text-align: center;
}
.wait-tokuten h4 {
	color:var(--color-white);
	background-color:var(--color-main);
	padding:0.25em 0.5em;
	text-align: center;
	border-radius: 5px;
	margin-bottom:1em;
}
.st-nigiwai {
	text-align: center;
	position: relative;
	margin-bottom:1em;
}
.st-nigiwai:before {
	content:"\FF3C";
}
.st-nigiwai:after {
	content:"\FF0F";
}
@media (width < 767px) {
	.wait-caution {
		background-position: right center;
	}
}
@media (768px <= width) {
	.wait-caution {
		background-position: 90% center;
		font-size:var(--font-pc-x-large);
		text-align: center;
	}
	.wait-tokuten strong {
		font-size:var(--font-pc-xx-large);
	}
	.st-nigiwai {
		font-size:var(--font-pc-xx-large);
	}
	.wait-point div span {
		font-size:var(--font-pc-xx-large);
	}
}

.btn-back {
	display:block;
	width:100%;
	position: relative;
	margin-left:auto;
	margin-right:auto;
}
.btn-back:before {
    position: absolute;
    z-index: 2;
    font-family: 'icomoon';
    content: "\f104";
    color: #999999;

}
.btn-back input {
	display:block;
	border:none;
	cursor:pointer;
	border-radius:5px;
	background-color:#dddddd;
	text-align:center;
}
@media (width < 767px) {
	.btn-back input {
		width:100%;
		padding:1em;
		margin:0 auto 8vw auto;
	}
	.submitgrid .btn-submit {
		margin-bottom:0;
	}
	.btn-back:before {
		top:5vw;
		left:6vw;
		font-size:var(--font-sp-xx-large);
	}
}
@media (768px <= width) {
	.submitgrid {
		align-items:center;
	}
	.submitgrid .btn-submit {
		margin-left:0;
		grid-area: 1 / 2 / 2 / 3;
	}
	.submitgrid .btn-back {
		width: 400px;
		margin-right:0;
		margin-bottom:24px;
		grid-area: 1 / 1 / 2 / 2;
	}
	.btn-back input {
		width: 400px;
		height: 80px;
        	line-height: 80px;
        	font-size: var(--font-pc-x-large);
	}
    	.btn-submit {
        	width: 400px;
        	margin-top: 50px;
        	margin-bottom: 50px;
	}
	.btn-back:before {
        	top: 22px;
        	left: 27px;
        	font-size: var(--font-pc-xxx-large);
	}
}