@charset "UTF-8";

/*u3yページ ここから*/
/*全体センタリング*/
.body_center{ 
    width: 100%;
	max-width:1200px;
    margin:0 auto;
}


/*動くボタン*/
/*ドキドキ*/
/*.dokidoki {
    animation: dokidoki 1.5s infinite;
}
@keyframes dokidoki {
    0% {
        transform: scale(1.05)
    }
    5% {
        transform: scale(1)
    }
    95% {
        transform: scale(1)
    }
    100% {
        -webkit-transform: scale(1.05)
    }
}
*/

/*もっちり*/
/*
.mocchiri {
    animation: mocchiri 3s infinite;
}
@keyframes mocchiri {
    0% {
        transform: scale(1, 0.8);
    }
    20% {
        transform: scale(0.8, 1.1);
    }
    95% {
        transform: scale(1, 1);
    }
    100% {
        transform: scale(1, 0.8);
    }
}
*/


/*上下*/
.yureru-j {
    animation: yureru-j 2s infinite;
}
@keyframes yureru-j {
    0% {
        transform: translate(0px, 2px);
    }
    5% {
        transform: translate(0px, -2px);
    }
    10% {
        transform: translate(0px, 2px);
    }
    15% {
        transform: translate(0px, -2px);
    }
    20% {
        transform: translate(0px, 2px);
    }
    25% {
        transform: translate(0px, -2px);
    }
    30% {
        transform: translate(0px, 0px);
    }
}

.colorB{
	background-color: #E1F6FF;
}

.colorW{
	background-color: #FFFFFF;
}



/*CF7 全体 u3y変更*/
.neat_contact{
	width: 100%;
	max-width:1200px;
    margin:0 auto;
	padding:20px 0 30px 0;
}

.neat_contact img{
    margin:0 auto;
}


/* template01 */
.form__wrap {
  width: 90%;
  max-width: 800px;/*フォームの最大幅*/
  margin-right: auto;
  margin-left: auto;
}


.shop-contact__label::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 3px;
    height: 18px;
    background: #00339B;
    border-radius: 100px;
}

.shop-contact__label {
    color: #F00339B;
    font-weight: bold;
    padding-left: 18px;
    position: relative;
    max-width: 940px;
    margin: 30px auto 15px;
}


.wpcf7 .template01 {
  color: #333;
  font-size: 16px;
}
.wpcf7 .template01 a {
  margin: 0;
  padding: 0;
  text-decoration: underline;
  color: inherit;
  transition: opacity .25s;
}
.wpcf7 .template01 a:hover {
  opacity: .5;
  transition: opacity .25s;
}
.wpcf7 .template01 div.form__row {
  margin: 0;
  padding: 0;
  margin-top: 2em;
}
.wpcf7 .template01 div.form__row.row-privacy {
  margin-top: 3.5em;
  text-align: center;
}
.wpcf7 .template01 div.form__row.row-submit {
  margin-top: 3em;
  text-align: center;
}
.wpcf7 .template01 p.form__label,
.wpcf7 .template01 p.form__body {
  margin: 0;
  margin-bottom: .5em;
  padding: 0;
  box-sizing: border-box;
}
.wpcf7 .template01 p.form__label label {
  position: relative;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
.wpcf7 .template01 p.form__label.is-required label {
  padding-right: 40px; 
}
.wpcf7 .template01 p.form__label.is-required label::after {
  content: "必須";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: 36px;
  padding: 0 5px;
  background-color: #e83c75;
  /*
  background-color: #eb1919;
  */
  color: #fff;
  font-size: 11px;
  text-align: center;
  box-sizing: border-box;
}
/* テキストフィールド */
.wpcf7 .template01 input[type=text],
.wpcf7 .template01 input[type=tel],
.wpcf7 .template01 input[type=email],
.wpcf7 .template01 input[type=url],
.wpcf7 .template01 input[type=date],
.wpcf7 .template01 input[type=number],
.wpcf7 .template01 textarea {
  width: 100%;
  margin: 0;
  padding: .5em 1em;
  border: 1px solid #ccc;
  border-radius: 0;
  box-shadow: none;
  background-color: #fff;
  color: inherit;
  font-family: inherit;
  font-weight: inherit;
  font-size: inherit;
  box-sizing: border-box;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
/* テキストフィールド placeholder */
.wpcf7 .template01 input[type=text]::placeholder,
.wpcf7 .template01 input[type=tel]::placeholder,
.wpcf7 .template01 input[type=email]::placeholder,
.wpcf7 .template01 input[type=url]::placeholder,
.wpcf7 .template01 input[type=date]::placeholder,
.wpcf7 .template01 input[type=number]::placeholder,
.wpcf7 .template01 textarea::placeholder {
  color: #ccc;
}
.wpcf7 .template01 input[type=text]:-ms-input-placeholder,
.wpcf7 .template01 input[type=tel]:-ms-input-placeholder,
.wpcf7 .template01 input[type=email]:-ms-input-placeholder,
.wpcf7 .template01 input[type=url]:-ms-input-placeholder,
.wpcf7 .template01 input[type=date]:-ms-input-placeholder,
.wpcf7 .template01 input[type=number]:-ms-input-placeholder,
.wpcf7 .template01 textarea:-ms-input-placeholder {
  color: #ccc;
}
.wpcf7 .template01 input[type=text]::-ms-input-placeholder,
.wpcf7 .template01 input[type=tel]::-ms-input-placeholder,
.wpcf7 .template01 input[type=email]::-ms-input-placeholder,
.wpcf7 .template01 input[type=url]::-ms-input-placeholder,
.wpcf7 .template01 input[type=date]::-ms-input-placeholder,
.wpcf7 .template01 input[type=number]::-ms-input-placeholder,
.wpcf7 .template01 textarea::-ms-input-placeholder {
  color: #ccc;
}
/* テキストフィールド フォーカス時 */
.wpcf7 .template01 input[type=text]:focus,
.wpcf7 .template01 input[type=tel]:focus,
.wpcf7 .template01 input[type=email]:focus,
.wpcf7 .template01 input[type=url]:focus,
.wpcf7 .template01 input[type=date]:focus,
.wpcf7 .template01 input[type=number]:focus,

.wpcf7 .template01 textarea:focus {
  outline: 0;
  border: 1px #080808 solid;
}
/* チェックボックス */
.wpcf7 .template01 input[type=checkbox] {
  display: none;
}
.wpcf7 .template01 input[type=checkbox] + span {
  cursor: pointer;
  position: relative;
  margin: 0;
  padding: 0 1em 0 1.8em;
  font-size: inherit;
  box-sizing: border-box;
  transition: opacity .25s ease;
}
.wpcf7 .template01 input[type=checkbox] + span::before {
  content: "";
  opacity: 1;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 1.24em;
  height: 1.24em;
  border: 1px solid #ccc;
  border-radius: 0;
  background-color: #fff;
  box-sizing: border-box;
  transition: opacity .25s ease;
  z-index: 1;
}
.wpcf7 .template01 input[type=checkbox] + span::after {
  content: "";
  opacity: 0;
  display: block;
  position: absolute;
  top: 0.15em;
  left: 0.44em;
  width: 0.4em;
  height: .8em;
  border-bottom: 3px solid #000;
  border-right: 3px solid #000;
  box-sizing: border-box;
  transform: rotate(40deg);
  transition: opacity .25s ease;
  z-index: 10;
}
.wpcf7 .template01 input[type=checkbox]:checked + span {
  color: #306ad4;
  transition: all .25s ease;
}
.wpcf7 .template01 input[type=checkbox]:checked + span::before {
  opacity: 1;
  transition: opacity .25s ease;
}
.wpcf7 .template01 input[type=checkbox]:checked + span::after {
  opacity: 1;
  border-bottom: 2px solid #306ad4;
  border-right: 2px solid #306ad4;
  transition: opacity .25s ease;
}
/* ラジオボタン */
.wpcf7 .template01 input[type=radio] {
  display: none;
}
.wpcf7 .template01 input[type=radio] + span {
  cursor: pointer;
  position: relative;
  margin: 0; 
  padding: 0 1em 0 1.8em;
  font-size: inherit;
  transition: opacity .25s ease;
}
.wpcf7 .template01 input[type=radio] + span::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 1em;
  height: 1em;
  border: 1px solid #ccc;
  border-radius: 50%;
  background-color: #fff;
  box-sizing: border-box;
  transition: opacity .25s ease;
}
.wpcf7 .template01 input[type=radio] + span::after {
  content: "";
  display: block;
  opacity: 0;
  position: absolute;
  box-sizing: border-box;
  transition: opacity .25s ease;
}
.wpcf7 .template01 input[type=radio]:checked + span {
  color: #306ad4;
  transition: opacity .25s ease;
}
.wpcf7 .template01 input[type=radio]:checked + span::after {
  opacity: 1;
  top: .2em;
  left: .2em;
  width: .6em;
  height: .6em;
  background-color: #306ad4;
  border-radius: 50%;
  box-sizing: border-box;
  transition: opacity .25s ease;
}
/* セレクト */
.wpcf7 .template01 span.select-wrap {
  position: relative;
  width: 250px;
  margin: 0;
  padding: 0;
}
.wpcf7 .template01 select {
  cursor: pointer;
  width: 250px;
  max-width: 100%;
  margin: 0;
  padding: .5em 2.5em .5em 1em;
  border: 1px solid #ccc;
  border-radius: 4px;
  box-shadow: none;
  background-color: #fff;
  color: inherit;
  font-size: inherit;
  line-height: 1;
  box-sizing: border-box;
  transition: border-color 0.2s ease, outline 0.2s ease;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.wpcf7 .template01 select::-ms-expand {
  display: none;
}
.wpcf7 .template01 span.select-wrap::after {
  content: "";
  pointer-events: none;
  position: absolute;
  display: block;
  width: .6em;
  height: .6em;
  top: 50%;
  right: 1em;
  margin-top: -3px;
  border-bottom: 1px solid #ccc;
  border-right: 1px solid #ccc;
  transform: rotate(45deg) translateY(-50%);
  transform-origin: 50% 0;
  box-sizing: border-box;
}
.wpcf7 .template01 select:focus {
  outline: 0;
  border: 1px #080808 solid;
}
.wpcf7 .template01 span.select-wrap:focus-within::after {
  border-bottom: 1px solid #080808;
  border-right: 1px solid #080808;
}
/* 送信ボタン */
.wpcf7 .template01 .submit-btn {
  position: relative;
  width: 320px;
  height: 65px;
  max-width: 100%;
  margin: 0;
  padding: 0;
  margin-left: auto;
  margin-right: auto;
}
.wpcf7 .template01 input[type="submit"] {
  cursor: pointer;
  width: 320px;
  max-width: 100%;
  padding: 18px;
  border-radius: 0;
  box-shadow: none;
  border: 1px solid #000;
  background-color: #000;
  color: #fff;
  font-size: 18px;
  text-align: center;
  box-sizing: border-box;
  transition: opacity .25s;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.wpcf7 .template01 input[type="submit"]:disabled {
  cursor: not-allowed;
  box-shadow: none!important;
  border: 1px solid #f8f8f8!important;
  background-color: #f8f8f8!important;
  color: #999!important;
}
.wpcf7 .template01 input[type="submit"]:hover {
  border: 1px solid #000;
  background-color: #fff;
  color: #000;
  transition: opacity .25s, background-color .25s;
}
.wpcf7 .template01 input[type="submit"]:focus {
  outline: 1px #eee solid;
  border: 1px #080808 solid;
}
.wpcf7 .template01  span.wpcf7-list-item {
  margin: 0 1em .2em 0;
}
.wpcf7 .template01 .ajax-loader {
  display: block;
}
@media only screen and (max-width: 768px) {
  .wpcf7 .template01 span.wpcf7-list-item {
    display: block;
  }
}


.btn-text{
	text-align:center!important;
}

.block btn_wrapper a{
	text-align:center!important;
	}

/*sugi*/
/*●ラジオボタン*/
.wpcf7 .template01 span.wpcf7-list-item {
  margin: 0;
}
.wpcf7 .template01 input[type=radio] + span {
  width: 100%;
  display: block;
  border: 1px solid #ccc;
  box-sizing: border-box;
  background: white;
  border-radius: 5px;
  padding: 12px 20px;
  cursor: pointer;
}
.wpcf7 .template01 input[type=radio] + span:before, .wpcf7 .template01 input[type=radio] + span:after {
  left: auto;
  right: 15px;
  top: 50%;
  margin-top: -0.5em;
}
.wpcf7 .template01 input[type=radio]:checked + span {
  color: white;
  background: #FCCA30;/**/
}
.wpcf7 .template01 input[type=radio]:checked + span:before {
  border: none;
}
.wpcf7 .template01 input[type=radio]:checked + span:after {
  background: #bc7603;
  opacity: 1;
  top: 50%;
  margin-top: -0.3em;
  right: calc(15px + 0.2em);
  left: auto;
  border: none;
}

.wpcf7-radio {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 20px;
}
@media screen and (min-width: 0px) and (max-width: 992px) {
  .wpcf7-radio {
    grid-template-columns: 1fr 1fr;
    gap: 20px;
  }
}
@media screen and (min-width: 0px) and (max-width: 768px) {
  .wpcf7-radio {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}




/*●チェックボックス*/
.checks_boxsq .wpcf7-checkbox {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 20px;
}
@media screen and (min-width: 0px) and (max-width: 992px) {
  .checks_boxsq .wpcf7-checkbox {
    grid-template-columns: 1fr 1fr;
    gap: 20px;
  }
}
@media screen and (min-width: 0px) and (max-width: 768px) {
  .checks_boxsq .wpcf7-checkbox {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}

.wpcf7 .template01 .checks_boxsq input[type=checkbox] + span {
  border: 1px solid #ccc;
  box-sizing: border-box;
  display: block;
  background: white;
  border-radius: 5px;
  padding: 12px 20px;
  cursor: pointer;
}
.wpcf7 .template01 .checks_boxsq input[type=checkbox] + span:before {
  left: auto;
  right: 15px;
  top: 50%;
  margin-top: -0.62em;
}
.wpcf7 .template01 .checks_boxsq input[type=checkbox] + span:after {
  left: auto;
  right: calc(15px + 0.44em);
  top: 50%;
  margin-top: -0.5em;
}
.wpcf7 .template01 .checks_boxsq input[type=checkbox]:checked + span {
  color: white;
  background: #F29600;
}
.wpcf7 .template01 .checks_boxsq input[type=checkbox]:checked + span:before {
  border: none;
}
.wpcf7 .template01 .checks_boxsq input[type=checkbox]:checked + span:after {
  border-bottom: 2px solid #bc7603;
  border-right: 2px solid #bc7603;
}


/* CF7　エラーメッセージの上部を消去 */
div.screen-reader-response{
  display: none;
}

/* CF7　送信後のCSS */
.wpcf7 .screen-reader-response {
	position: absolute;
	overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	width: 1px;
	margin: -1px;
	padding: 0;
	border: 0;
	word-wrap: normal !important;
}

.wpcf7 form .wpcf7-response-output {
	margin: 2em 0.5em 1em;
	padding: 0.2em 1em;
	border: 2px solid #00a0d2; /* Blue */
}

.wpcf7 form.init .wpcf7-response-output,
.wpcf7 form.resetting .wpcf7-response-output,
.wpcf7 form.submitting .wpcf7-response-output {
	display: none;
}

.wpcf7 form.sent .wpcf7-response-output {
	border-color: #46b450; /* Green */
}

.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output {
	border-color: #dc3232; /* Red */
}

.wpcf7 form.spam .wpcf7-response-output {
	border-color: #f56e28; /* Orange */
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
	border-color: #ffb900; /* Yellow */
}

.wpcf7-form-control-wrap {
	position: relative;
}

.wpcf7-not-valid-tip {
	color: #dc3232; /* Red */
	font-size: 1em;
	font-weight: normal;
	display: block;
}

.use-floating-validation-tip .wpcf7-not-valid-tip {
	position: relative;
	top: -2ex;
	left: 1em;
	z-index: 100;
	border: 1px solid #dc3232;
	background: #fff;
	padding: .2em .8em;
	width: 24em;
}

.wpcf7-list-item {
	display: inline-block;
	margin: 0 0 0 1em;
}

.wpcf7-list-item-label::before,
.wpcf7-list-item-label::after {
	content: " ";
}

.wpcf7-spinner {
	visibility: hidden;
	display: inline-block;
	background-color: #23282d; /* Dark Gray 800 */
	opacity: 0.75;
	width: 24px;
	height: 24px;
	border: none;
	border-radius: 100%;
	padding: 0;
	margin: 0 24px;
	position: relative;
}

form.submitting .wpcf7-spinner {
	visibility: visible;
}

.wpcf7-spinner::before {
	content: '';
	position: absolute;
	background-color: #fbfbfc; /* Light Gray 100 */
	top: 4px;
	left: 4px;
	width: 6px;
	height: 6px;
	border: none;
	border-radius: 100%;
	transform-origin: 8px 8px;
	animation-name: spin;
	animation-duration: 1000ms;
	animation-timing-function: linear;
	animation-iteration-count: infinite;
}

@media (prefers-reduced-motion: reduce) {
	.wpcf7-spinner::before {
		animation-name: blink;
		animation-duration: 2000ms;
	}
}

@keyframes spin {
	from {
		transform: rotate(0deg);
	}

	to {
		transform: rotate(360deg);
	}
}

@keyframes blink {
	from {
		opacity: 0;
	}

	50% {
		opacity: 1;
	}

	to {
		opacity: 0;
	}
}

.wpcf7 input[type="file"] {
	cursor: pointer;
}

.wpcf7 input[type="file"]:disabled {
	cursor: default;
}

.wpcf7 .wpcf7-submit:disabled {
	cursor: not-allowed;
}

.wpcf7 input[type="url"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"] {
	direction: ltr;
}

.wpcf7-reflection > output {
	display: list-item;
	list-style: none;
}

.wpcf7-reflection > output[hidden] {
	display: none;
}





/*sugi scss*/
/*●ラジオボタン*/
/*
.wpcf7 .template01 {
	span.wpcf7-list-item {
		margin: 0;
	}
	input[type=radio]{
		+ span{
			width: 100%;
			display: block;
			border: 1px solid #ccc;
			box-sizing: border-box;
			background: white;
			border-radius: 5px;
			padding: 12px 20px;
			cursor: pointer;
			&:before,&:after{
				left:  auto;
				right: 15px;
				top: 50%;
				margin-top: -0.5em;
			}
		}
	}
	input[type=radio]:checked{
		+ span{
			color: white;
			background: #F29600;
			&:before {
				border: none;
			}
			&:after{
				background: #bc7603;
				opacity: 1;
				top: 50%;
				margin-top: -.3em;
				right: calc(15px + .2em);
				left: auto;
				border: none;
			}
		}
	}
}

.wpcf7-radio{
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	gap: 20px;


	@include breakpoint-lg{
		grid-template-columns: 1fr 1fr;
		gap: 20px;
	}
	@include breakpoint-md{
		grid-template-columns: 1fr;
		gap: 20px;
	}
}


*/
/*●チェックボックス*/
/*
.checks_boxsq{
	.wpcf7-checkbox{
		display: grid;
		grid-template-columns: 1fr 1fr 1fr 1fr;
		gap: 20px;
		@include breakpoint-lg{
			grid-template-columns: 1fr 1fr;
			gap: 20px;
		}
		@include breakpoint-md{
			grid-template-columns: 1fr;
			gap: 20px;
		}
	}
}

.wpcf7 .template01 .checks_boxsq {
	input[type=checkbox] {
		+ span {
			border: 1px solid #ccc;
			box-sizing: border-box;
			display: block;
			background: white;
			border-radius: 5px;
			padding: 12px 20px;
			cursor: pointer;
			&:before{
				left: auto;
				right: 15px;
				top: 50%;
				margin-top: -0.62em;
			}
			&:after{
				left: auto;
				right: calc(15px + .44em);
				top: 50%;
				margin-top: -.5em;
			}
		}
	}


	input[type=checkbox]:checked{
		+ span{
			color: white;
			background: #F29600;
			&:before {
				border: none;
			}
			&:after {
				border-bottom: 2px solid #bc7603;
				border-right: 2px solid #bc7603;
			}
		}
	}
}
*/
/*sugi ここまで*/

/*CF7全体 ここまで*/




/*フッター*/
/*u3yページ ここから*/
.page_footer {
	width: 100%;
	max-width: 100%;
    margin:0 auto;
	color: #808080;
	background: #e5e5e5;
	text-align: center;
	padding:30px 0;
}

.page_footer  p.copyright {
 width: 100%;
 margin: 0;
 padding: 0;
}

.page_footer  img{
   width: 100px;
   height: auto;
	vertical-align: bottom;
	border: 0px;
	margin: 0;
	padding: 0;
}

.page_footer a {
 color: #808080;
 text-decoration: none;
}
.page_footer a:hover {
 text-decoration: underline;
}
.page_footer .menu {
 margin: 0;
 padding: 0;
 list-style: none;
 display: flex;
 flex-wrap: wrap;
 justify-content: center;
}
.page_footer  .menu li {
 margin: 0;
 padding: 0 20px;
}

/*u3yページ ここまで*/


/*基本ここから*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

body {
	font-family: "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif;
	word-break: break-all;
	text-align: left;
	font-size: 12px;
	line-height: 1.7;
	padding: 0;
	margin: 0;
}


h1, h2, h3, h4, h5, h6 {
font-size: 1em;
font-weight: normal;
}


a{
	outline: none;
	text-decoration: none;
	}

a:visited{
	font:#fff;
	text-decoration: none;
	}


ul, ul li, ol {
	list-style: none;
	}


p {
   margin-bottom:1em;
}


header, footer, #wrapper, #wrap01, #wrap02, #wrap03, #wrap04, #wrap05, #wrap06, #wrap07, #wrap08, #wrap09{
    width: 100%;
	margin:0;
	padding:0;
	}

* {
	float: none;
	position: static;
}
 
img {
	width: 100vw;
	max-width: 1280px;
	height: auto;
	vertical-align: bottom;
	border: 0px;
	margin: 0;
	padding: 0;
}


/** recaptcha v3 非表示 **/
.grecaptcha-badge { visibility: hidden; }

/*基本ここまで*/




/*20250527*/
/**/
p.form__body_2{
 font-size: 0.7em;
}