@charset "utf-8";





/*==========================================================================

	           business  事業内容
	
============================================================================*/

/*---------------------------------------
         #business-sec1
---------------------------------------*/

.business-sec1-box1 {
	max-width: 1200px;
	margin: 0 auto;
	text-align: center;
}
.business-sec1-box1 h2 {
	font-size: clamp(18px, 4vw, 40px);
	font-weight: bold;
	letter-spacing: 0.05em;
	line-height: 1.4;
	text-align: center;
	margin-bottom: 1.5em;
}

/*---------------------------------------
         #business-sec2
---------------------------------------*/

.business-sec2-box1 {
	max-width: 1200px;
	margin: 0 auto 50px;
}
.business-sec2-box1 ul > li {
	margin-bottom: 120px;
}
.business-sec2-box1 dl {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.business-sec2-box1 ul > li:nth-child(odd) dl {
	flex-direction: row-reverse;
}
.business-sec2-box1 dt {
	max-width: 690px;
	width: 57%;
	box-sizing: border-box;
	background-color: #fff;
}
.business-sec2-box1 ul > li:nth-child(odd) dt {
	padding: 2.5em 3em 2.5em 6em;
}
.business-sec2-box1 ul > li:nth-child(even) dt {
	padding: 2.5em 6em 2.5em 3em;
}

.business-sec2-box1 dt h2 {
	font-size: clamp(17px, 4vw, 34px);
	font-weight: bold;
	letter-spacing: 0.05em;
	line-height: 1.4;
	margin-bottom: 0.5em;
}

.business-sec2-box1 dd {
	max-width: 560px;
	width: 48%;
	position: absolute;
}
.business-sec2-box1 ul > li:nth-child(odd) dd {
	top: -30px;
	left: 0;
	box-shadow: 20px 20px 0px 0px #c0edad;
}
.business-sec2-box1 ul > li:nth-child(even) dd {
	top: -30px;
	right: 0;
	box-shadow: -20px 20px 0px 0px #c0edad;
}

@media screen and (max-width: 1024px){
	.business-sec2-box1 ul > li {
		max-width: 800px;
		margin: 0 auto 10%;
	}
	.business-sec2-box1 dl {
		background-color: #fff;
		padding: 8% 5% 10%
	}
	.business-sec2-box1 dt {
		max-width: inherit;
		width: 100%;
		margin-bottom: 7%;
	}
	.business-sec2-box1 ul > li:nth-child(odd) dt {
		padding: 0
	}
	.business-sec2-box1 ul > li:nth-child(even) dt {
		padding: 0
	}
	.business-sec2-box1 dt h2 {
		text-align: center;
	}
	.business-sec2-box1 dd {
		max-width: 560px;
		width: 80%;
		margin: 0 auto;
		position: inherit;
	}
	.business-sec2-box1 ul > li:nth-child(odd) dd {
		top: inherit;
		left: inherit;
		box-shadow: 10px 10px 0px 0px #c0edad;
	}
	.business-sec2-box1 ul > li:nth-child(even) dd {
		top: inherit;
		right: inherit;
		box-shadow: 10px 10px 0px 0px #c0edad;
	}
}


/*==========================================================================

	           works  施工事例
	
============================================================================*/

/*---------------------------------------
         #works-sec1
---------------------------------------*/

.works-sec1-category {
	max-width: 1200px;
	margin: 0 auto;
}
.works-sec1-category ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 5px;
}
.works-sec1-category ul li a {
	font-size: clamp(16px, 3vw, 20px);
	text-align: center;
	padding: 0.3em 1em;
	border: #838383 1px solid;
	text-decoration: none;
	border-radius: 30px;
	transition: .5s;
}
.works-sec1-category ul li a:hover {
	color: #fff;
	border: #59c32c 1px solid;
	background-color: #59c32c;
	transition: .5s;
}


.works-sec1-content {
	max-width: 1200px;
	margin: 0 auto;
	padding-top: 120px;
}
.works-sec1-content h2 {
	font-size: clamp(20px, 4vw, 30px);
	font-weight: bold;
	letter-spacing: 0.15em;
	line-height: 1.4;
	border-bottom: #cbcbcb 2px solid;
	padding-bottom: 0.2em;
	margin-bottom: 1.5em;
}
.works-sec1-content ul {
	display: flex;
	flex-wrap: wrap;
	gap: 50px 0;
}
.works-sec1-content ul li {
	width: 32%;
	margin-right: 2%;
}
.works-sec1-content ul li:nth-child(3n) {
	margin-right: 0;
}
.works-sec1-content-photo {
	max-width: 380px;
	margin-bottom: 1em;
}
.works-sec1-content-photo img {
	/* width: 380px;
	height: 250px; */
	object-fit: cover;
	aspect-ratio: 38 / 25;
}
.works-sec1-content-photo a {
	transition: .5s;
}
.works-sec1-content-photo a:hover {
	filter:alpha(opacity=70);
	-moz-opacity: 0.70;
	opacity: 0.70;
	transition: .5s;
}
.works-sec1-content-title {
	font-size: clamp(15px, 3vw, 20px);
	line-height: 1.5;
}
.works-sec1-content-photoname {
	font-size: clamp(11px, 2vw, 13px);
	color: #666;
}

@media screen and (max-width: 768px){
	.works-sec1-content {
		padding-top: 10%;
	}
	.works-sec1-content ul {
		justify-content: space-between;
		gap: 0;
	}
	.works-sec1-content ul li {
		width: 48%;
		margin-right: 0;
		margin-bottom: 8%;
	}
}

/*---------------------------------------
         lightbox (luminous)
---------------------------------------*/

.lum-lightbox {
	z-index: 99;
}
.lum-lightbox-inner img {
	max-width: 1000px;
	margin: 0 auto;
}



/*==========================================================================

	           company  会社概要
	
============================================================================*/

/*---------------------------------------
         #company-sec1
---------------------------------------*/

.company-sec1-box1 {
	max-width: 800px;
	margin: 0 auto 2em;
}
.company-sec1-box1 h2 {
	font-size: clamp(18px, 3.5vw, 26px);
	font-weight: bold;
	letter-spacing: 0.05em;
	margin-bottom: 1.5em;
}
.company-sec1-box1 h3 {
	max-width: 144px;
	width: 25%;
	float: right;
	margin-top: 2em;
}

/*---------------------------------------
         #company-sec2
---------------------------------------*/

.company-sec2-box1 {
	max-width: 1000px;
	margin: 0 auto 2em;
}
.company-sec2-box1 h2 {
	font-size: clamp(18px, 3.5vw, 26px);
	font-weight: bold;
	text-align: center;
	letter-spacing: 0.15em;
	margin-bottom: 1.5em;
}
.company-sec2-box1 table {
	width: 100%;
	border-top: #cbcbcb 1px solid;
	border-left: #cbcbcb 1px solid;
	border-right: #cbcbcb 1px solid;
}
.company-sec2-box1 th {
	width: 14em;
	padding: 1em 0;
	text-align: center;
	background-color: #f2faee;
	border-right: #cbcbcb 1px solid;
	border-bottom: #cbcbcb 1px solid;
}
.company-sec2-box1 td {
	padding: 1em 1.5em;
	background-color: #fff;
	border-bottom: #cbcbcb 1px solid;
}
.company-sec2-box1 td a {
	text-decoration: none;
}
.company-sec2-box1 td ul li {
	padding-left: 1em;
	text-indent: -1em;
}

.company-sec2-map {
	max-width: 1200px;
	margin: 0 auto;
	border: #cbcbcb 1px solid;
}
.company-sec2-map iframe {
	width: 100%;
	height: 400px;
	line-height: 0;
}

@media screen and (max-width: 768px){
	.company-sec2-box1  table {
		width: 100%;
		border-top: #cbcbcb 1px solid;
		border-left: #cbcbcb 1px solid;
		border-right: #cbcbcb 1px solid;
	}
	.company-sec2-box1 th {
		display: block;
		width: inherit;
		padding: 0.5em 0;
		border-right: none;
		font-weight: bold;
	}
	.company-sec2-box1 td {
		display: block;
		padding: 1.2em 1em;
	}
}


/*==========================================================================

	           recruit  採用情報
	
============================================================================*/

/*---------------------------------------
         #recruit-sec1
---------------------------------------*/

.recruit-sec1-box1 {
	max-width: 1100px;
	margin: 0 auto;
}
.recruit-sec1-box1 h2 {
	font-size: clamp(16px, 4vw, 40px);
	font-weight: bold;
	letter-spacing: 0.05em;
	line-height: 1.4;
	text-align: center;
	margin-bottom: 1.5em;
}
.recruit-sec1-box1 dl {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.recruit-sec1-box1 dt {
	max-width: 360px;
	width: 33%;
}
.recruit-sec1-box1 dt img {
	margin-bottom: 15px;
}
.recruit-sec1-box1 dd {
	width: 64%;
}

@media screen and (max-width: 900px){
	.recruit-sec1-box1 dt {
		max-width: 740px;
		width: 100%;
		margin: 0 auto 2em;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.recruit-sec1-box1 dt img {
		max-width: 360px;
		width: 49%;
		margin-bottom: 0;
	}
	.recruit-sec1-box1 dd {
		width: 100%;
	}
}

/*---------------------------------------
         #recruit-sec2
---------------------------------------*/

.recruit-sec2-box1 {
	max-width: 1000px;
	margin: 0 auto 2em;
}
.recruit-sec2-box1 h2 {
	font-size: clamp(18px, 3.5vw, 26px);
	font-weight: bold;
	text-align: center;
	letter-spacing: 0.15em;
	margin-bottom: 1.5em;
}
.recruit-sec2-box1 table {
	width: 100%;
	border-top: #cbcbcb 1px solid;
	border-left: #cbcbcb 1px solid;
	border-right: #cbcbcb 1px solid;
	margin-bottom: 100px;
}
.recruit-sec2-box1 th {
	width: 14em;
	padding: 1em 0;
	text-align: center;
	background-color: #f2faee;
	border-right: #cbcbcb 1px solid;
	border-bottom: #cbcbcb 1px solid;
}
.recruit-sec2-box1 td {
	padding: 1em 1.5em;
	background-color: #fff;
	border-bottom: #cbcbcb 1px solid;
}
.recruit-sec2-box1 td a {
	text-decoration: none;
}
.recruit-sec2-box1 td ul li {
	padding-left: 1em;
	text-indent: -1em;
}

.recruit-sec2-map {
	max-width: 1200px;
	margin: 0 auto;
	border: #cbcbcb 1px solid;
}
.recruit-sec2-map iframe {
	width: 100%;
	height: 400px;
	line-height: 0;
}

@media screen and (max-width: 768px){
	.recruit-sec2-box1 table {
		width: 100%;
		border-top: #cbcbcb 1px solid;
		border-left: #cbcbcb 1px solid;
		border-right: #cbcbcb 1px solid;
		margin-bottom: 15%;
	}
	.recruit-sec2-box1 th {
		display: block;
		width: inherit;
		padding: 0.5em 0;
		border-right: none;
		font-weight: bold;
	}
	.recruit-sec2-box1 td {
		display: block;
		padding: 1.2em 1em;
	}
}


/*==========================================================================

	           WEB予約
	
============================================================================*/

#reserve-sec1 {
	padding: 0 5%;
}

/*---------------------------------------
         #reserve-sec1
---------------------------------------*/

.reserve-sec1-box1 {
	max-width: 800px;
	margin: 0 auto;
}
.reserve-sec1-box1 h2 {
	font-size: clamp(16px, 3.5vw, 24px);
	font-weight: bold;
	line-height: 1.8;
	letter-spacing: 0.05em;
	text-align: center;
	margin-bottom: 2em;
}

.reserve-sec1-box2 {
	max-width: 800px;
	margin: 0 auto 2.5em;
	padding: 2.5em 0 2em;
	border: #7d7d7d 1px solid;
	box-sizing: border-box;
	font-size: clamp(11px, 2.5vw, 13px);
	text-align: center;
}
.reserve-sec1-box2 h2 {
	font-size: clamp(15px, 3vw, 18px);
	font-weight: bold;
	color: #ebcc82;
	line-height: 1.8;
	letter-spacing: 0.05em;
	margin-bottom: 1em;
}
.reserve-tel a {
	max-width: 325px;
	width: 70%;
	margin: 0 auto 1.5em;
	display: block;
	cursor: default;
}

.reserve-sec1-box3 {
	max-width: 740px;
	margin: 0 auto 4em;
}
.reserve-sec1-box3 h3 {
	font-weight: bold;
	line-height: 1.8;
	text-align: center;
	margin-bottom: 3em;
}
.reserve-sec1-box3 ol li {
	color: #afafaf;
	font-size: clamp(13px, 2.5vw, 14px);
	padding-left: 1.2em;
	text-indent: -1.2em;
	margin-bottom: 2em;
}
.reserve-sec1-box3 ol li strong {
	color: #ebcc82;
	font-weight: bold;
}

/*---------------------------------------
    .reserve-nav 切り替えタブ
---------------------------------------*/

.reserve-nav {
	max-width: 800px;
	margin: 0 auto 40px;
}
.reserve-nav ul {
	color: #1c1c1c;
	line-height: 1.3;
	padding: 0 5%;
	text-align: center;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}
#reserve-nav-visit ul {
	flex-direction: row-reverse;
}

.reserve-nav-normal {
	max-width: 400px;
	width: 48%;
	background-color: #d4b979;
	padding: 1em 0;
	font-size: clamp(18px, 3.5vw, 24px);
	font-weight: bold;
	letter-spacing: 0.1em;
	position: relative;
}
.reserve-nav-normal::before {
	background: url(../img/reserve/btn-under.png) center bottom no-repeat;
	width: 100%;
	height: 100%;
    content: '';
    position: absolute;
    bottom: -30px;
    left: 0;
}

.reserve-nav-link {
	max-width: 340px;
	width: 44%;
}
.reserve-nav-link a {
	background: url(../img/reserve/btn-arrow.png) left 15px center no-repeat;
	width: 100%;
	display: block;
	border: #594f39 2px solid;
	color: #d4b979;
	font-weight: bold;
	padding: 1em 0 1em 1em;
	box-sizing: border-box;
	text-decoration: none;
	transition: .5s;
}
.reserve-nav-link a:hover {
	background-color: #594f39;
	color: #fff;
	transition: .5s;
}

@media screen and (max-width: 768px){
	.reserve-nav-normal {
		width: 100%;
		margin: 0 auto;
	}
	.reserve-nav-link {
		width: 100%;
		margin: 0 auto 5%;
	}
}


/*==========================================================================

	             MW WP Form フォーム
	
============================================================================*/

#sec-form {
    /* padding: 0 0 50px; */
	/* max-width: 1100px;
	margin: 0 auto; */
	padding: 0 5%;
}
@media screen and (max-width: 900px){
	#sec-form {
		/* padding: 0 0 12%; */
	}
}

.form-box  {
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
    max-width: 1100px;
	margin: 0 auto 5%;
	padding: 3% 5% 5%;
	box-sizing: border-box;
	border-top: #d4b979 3px solid;
	background-color: rgba(255,255,255, 0.08);
}

.form-sub {
	font-size: clamp(16px, 3vw, 20px);
	font-weight: bold;
	color: #333;
	letter-spacing: 0.05em;
	/* background-color: #231815; */
	background-color: #d4b979;
	padding: 0.5em 1em;
	margin: 0 0 1.5em;
}

.form-box table {
    width: 100%;
	margin: 10px 0 0;
}
.form-box table th {
	display: block;
	padding: 1em 1em 0.5em 1em;
	font-size: clamp(15px, 3vw, 18px);
	font-weight: bold;
	letter-spacing: 0.05em;
}
.form-box table td {
	display: block;
	border-bottom: #353539 1px solid;
	padding: 0 1em 1.5em;
	box-sizing: border-box;
}
.form-box table tr:last-of-type td {
	border-bottom: none;
}
.form-box td p {
	color: #afafaf;
	font-size: clamp(13px, 3vw, 15px);
}
.form-box .consent td {
	padding: 0 1em;
}
.form-box .consent td ol {
	border: #7d7d7d 1px solid;
	padding: 1.5em;
	margin-bottom: 2em;
}
.form-box .consent td ol li {
	color: #afafaf;
	font-size: clamp(13px, 2.5vw, 14px);
	padding-left: 1.2em;
	text-indent: -1.2em;
	margin-bottom: 1em;
}
.form-box .consent td ol li:last-child {
	margin-bottom: 0;
}
.form-box .consent td ol li strong {
	color: #ebcc82;
	font-weight: bold;
}
@media screen and (max-width: 768px){
	.form-box table th {
		padding: 1em 0 0.5em 0;
	}
	.form-box table td {
		padding: 0 0 1.5em;
	}
	.form-box .consent td {
		padding: 0;
	}
	.form-box .consent td ol {
		padding: 1em;
	}
}

.form-box table td ul li {
	display: inline-block;
	margin-right: 1em;
}

.form-box .must {
    display: inline-block;
	border: #3348e1 1px solid;
	background-color: #3348e1;
	color: #fff;
	font-size: clamp(11px, 3vw, 13px);
	padding: 0 0.5em;
	margin-left: 0.7em;
	line-height: 1.5;
	letter-spacing: 0.2em;
	text-indent: 0.2em;
	vertical-align: middle;
}

.form-box .error {
    color: #FF0000;
	font-weight: bold;
	margin-top: 10px;
}

.form-box .mw_wp_form_confirm .form-txt {
    display: none;
}

.mw_wp_form .horizontal-item + .horizontal-item {
    margin-left: 0;
}
#container .mwform-radio-field {
    display: inline-block;
	margin-left: 0;
	margin-right: 30px;
}
#container .mwform-radio-field input {
	margin-right: 0;
}
#container .mwform-checkbox-field {
    display: inline-block;
	margin-left: 0;
	margin-right: 30px;
}
#container .donation-item .mwform-checkbox-field-text {
	font-size: clamp(14px, 3vw, 16px);
	font-weight: bold;
}
#container .consent .mwform-checkbox-field-text {
	font-weight: bold;
}
#container .check-privacy-box {
    text-align: center;
}
#container .check-privacy-box input[type=checkbox] {
	transform: scale(1.8);
	margin: 0 7px 0 1em;
}
.form-box select {
	padding: 10px 10px;
	margin: 10px 0 0;
	background-color: #d9d9d9;
}
.form-box input[type=text] {
	padding: 3px 10px;
	margin: 10px 0 0;
	box-sizing: border-box;
	border: #D8D8D8 1px solid;
	background-color: #d9d9d9;
	/* border-radius: 4px; */
}
.form-box .name {
	width: 100%;
}
.form-box .tel {
	width: 100%;
}
.form-box .address {
	width: 100%;
}
.form-box .mailaddress {
	width: 100%;
}
.form-box textarea {
    width: 100%;
	padding: 5px 10px;
	margin: 10px 0 0;
	line-height: 1.5;
	box-sizing: border-box;
	border: #D8D8D8 1px solid;
	background-color: #d9d9d9;
	/* border-radius: 4px; */
}
input, button, textarea, select {
	color: #333!important;
}
.reservation-day::placeholder {
	color: #333!important;
}

@media screen and (max-width: 768px){
	#container .mwform-radio-field {
		margin-right: 20px;
	}
	#container .mwform-checkbox-field {
		margin-right: 20px;
	}
	#container .consent input[type=checkbox] {
		transform: scale(1.6);
		margin: 0 7px 0 1em;
	}
	.form-box input[type=text] {
		width: 100%;
    }
}


.form-btn {
	width: 250px;
	margin: 40px auto 0;
}
/*確認画面へ進むボタン用*/
.form-box .confirm  {
	width: 250px;
	margin-bottom: 35px;
}
.form-box .confirm input {
	font-family: 游明朝体, "Yu Mincho", YuMincho, メイリオ, Meiryo, serif;
	width: 250px;
	padding: 15px 0;
	cursor:pointer;
	border-style: none;
	background-color: #d4b979;
	color: #1c1c1c;
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	letter-spacing: 0.2em;
	box-sizing:border-box;
	/*-moz-box-shadow: 4px 4px 0 0 #ccc;
	-webkit-box-shadow: 4px 4px 0 0 #ccc;
	box-shadow: 4px 4px 0 0 #ccc;*/
	/* border-radius: 10px; */
}
.form-box .confirm input:hover {
	filter:alpha(opacity=70);
	-moz-opacity: 0.70;
	opacity: 0.70;
	transition: .5s;
}

/*戻るボタン用*/
.form-box .back  {
	width: 250px;
}
.form-box .back input {
	font-family: 游明朝体, "Yu Mincho", YuMincho, メイリオ, Meiryo, serif;
	width: 250px;
	padding: 11px 0;
	cursor:pointer;
	border-style: none;
	background-color: #fff;
	border: #1F1F1F 2px solid;
	color: #000;
	font-size: 20px;
	text-align: center;
	letter-spacing: 0.2em;
	box-sizing:border-box;
	/*-moz-box-shadow: 4px 4px 0 0 #ccc;
	-webkit-box-shadow: 4px 4px 0 0 #ccc;
	box-shadow: 4px 4px 0 0 #ccc;*/
	/* border-radius: 10px; */
}

@media screen and (max-width: 768px){
	.form-btn {
		width: 200px;
		margin: 8% auto 0;
	}
	.form-box .confirm  {
		width: 200px;
		margin-bottom: 25px;
	}
	.form-box .confirm input {
		width: 200px;
		letter-spacing: 0.1em;
	}
	.form-box .back  {
		width: 200px;
	}
	.form-box .back input {
		width: 200px;
		letter-spacing: 0.1em;
	}
	.form-box input[type="submit"],
	.form-box input[type="button"],
	.form-box input[type="reset"] {
		-webkit-appearance: none;
	}
}

/*---------------------------------------
         プライバシーポリシー
---------------------------------------*/

.mw_wp_form_confirm .privacy {
    display: none;
}
.privacy {
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
	color: #7a7a7a;
	padding: 0 5%;
}

.privacy h3 {
	display: none;
}

.privacy-box {
    clear: both;
	max-width: 760px;
	height: 230px;
	margin: 5% auto 5%;
	padding: 3em 2.5em 1.5em;
	border: #2c2c2c 1px solid;
	line-height: 1.6;
	font-size: 12px;
	overflow: auto;
	box-sizing: border-box;
}
.privacy-box h4 {
	font-size: 13px;
	font-weight: bold;
	margin-bottom: 1.5em;
}
.privacy-box dl {
	/* border-top: #ddd 1px dotted; */
	/*border-bottom: #ddd 1px dotted;*/
	/* padding-top: 2em; */
	margin: 2em 0;
}
.privacy-box dt {
	font-weight: bold;
	margin-bottom: 0.5em;
}
.privacy-box dd {
	margin-bottom: 2em;
}
@media screen and (max-width: 900px){
	.privacy h3 {
		display: block;
		text-align: center;
		font-weight: bold;
		margin: 8% 0 7%;
	}
	.privacy-box {
		display: none;
		height: inherit;
		margin: 2% auto 10%;
		padding: 5% 5%;
	}
}

/*---------------------------------------
    #not-mail  メールが届かない方へ
---------------------------------------*/

#not-mail {
	padding: 0 5% 10%;
}
.not-mail-box1 {
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
	max-width: 760px;
	margin: 0 auto;
	color: #7a7a7a;
	line-height: 1.8;
}
.not-mail-box1 dt {
	font-size: 13px;
	font-weight: bold;
	margin-bottom: 0.5em;
}
.not-mail-box1 dd {
	font-size: 12px;
}

/*---------------------------------------
          Datepicker
---------------------------------------*/

/* 全体のカレンダー枠 */
.ui-datepicker {
    background-color: #ffffff !important;
    border: 1px solid #cbd5e1 !important;
    border-radius: 12px !important;
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1) !important;
    font-family: sans-serif !important;
    padding: 16px !important;
    width: 100% !important;
	max-width: 320px !important;
    z-index: 9999 !important;
	box-sizing: border-box;
}

/* ==========================================
   ヘッダー部分（月・年・前後の矢印）
   ========================================= */
.ui-datepicker .ui-datepicker-header {
    background: #e2e8f0 !important; /* 背景グレーを少し濃く調整 */
    border: none !important;
    border-radius: 8px !important;
    color: #0f172a !important; /* 文字をよりくっきり濃く */
    font-weight: 700 !important;
    padding: 10px 0 !important;
    position: relative !important;
    margin-bottom: 12px !important;
}

/* 「年・月」のテキスト */
.ui-datepicker .ui-datepicker-title {
    margin: 0 !important;
    line-height: 26px !important;
    text-align: center !important;
    font-size: 16px !important;
}

/* 矢印ボタン共通（丸型に変更） */
.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 28px !important;
    height: 28px !important;
    cursor: pointer !important;
    border-radius: 50% !important;
    border: 1px solid #cbd5e1 !important; /* 丸の境界線 */
    background: #ffffff !important; /* ボタンの背景は白 */
}
.ui-datepicker .ui-datepicker-prev:hover,
.ui-datepicker .ui-datepicker-next:hover {
    background-color: #f1f5f9 !important; /* ホバー時に少しグレー */
}

/* 矢印の位置 */
.ui-datepicker .ui-datepicker-prev { left: 10px !important; }
.ui-datepicker .ui-datepicker-next { right: 10px !important; }

/* 英語のテキスト（Prev/Next）を完全に非表示にし、矢印の形だけを作る */
.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span {
    display: block !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    margin: 0 !important;
    text-indent: -9999px !important; /* 英語の文字を画面外へ削除 */
    overflow: hidden !important;
    width: 8px !important;
    height: 8px !important;
    border-top: 2px solid #475569 !important; /* 矢印の色 */
    border-left: 2px solid #475569 !important;
}
/* 不等号（くの字）の向きに回転 */
.ui-datepicker .ui-datepicker-prev span { transform: translate(-30%, -50%) rotate(-45deg) !important; }
.ui-datepicker .ui-datepicker-next span { transform: translate(-70%, -50%) rotate(135deg) !important; }

/* ==========================================
   曜日ヘッダー
   ========================================== */
.ui-datepicker th {
    color: #334155 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    padding: 8px 0 !important;
    text-align: center !important;
}

/* 曜日の個別カラー */
.ui-datepicker th.ui-datepicker-week-end:first-child { color: #ef4444 !important; } /* 日曜日 */
.ui-datepicker th.ui-datepicker-week-end:last-child { color: #2563eb !important; }  /* 土曜日 */

/* ==========================================
   日にち（マス目状のデザイン）
   ========================================== */
/* カレンダーのテーブル */
.ui-datepicker-calendar {
    border-collapse: collapse !important; /* 隙間をなくして綺麗な格子にする */
    width: 100% !important;
}

/* 日にちのマス目（外枠の線を引く） */
.ui-datepicker td {
    padding: 0 !important;
    border: 1px solid #e2e8f0 !important; /* マス目の線 */
    width: 14.28% !important; /* 7等分 */
}

/* 日にちの数字ボタン */
.ui-datepicker td a, 
.ui-datepicker td span {
    border: none !important;
    background: transparent !important;
    color: #334155 !important;
    display: block !important;
    font-size: 14px !important;
    line-height: 40px !important; /* マス目の高さ */
    height: 40px !important;
    width: 100% !important;
    padding: 0 !important;
    text-align: center !important;
    text-decoration: none !important; /* アンダーバー（下線）を削除 */
    font-weight: 500 !important;
    border-radius: 0 !important; /* マス目にするため丸みを消す */
    transition: background-color 0.1s ease !important;
}

/* 土曜日・日曜日の日付カラー */
.ui-datepicker td.ui-datepicker-week-end:first-child a { color: #ef4444 !important; } /* 日曜日：赤 */
.ui-datepicker td.ui-datepicker-week-end:last-child a { color: #2563eb !important; }  /* 土曜日：青 */

/* ホバー（マウスを乗せた）時 */
.ui-datepicker td a:hover {
    background-color: #f1f5f9 !important;
}

/* 💡 選択できない日にち（過去の日や定休日など）を薄くする */
.ui-datepicker td.ui-state-disabled {
    opacity: 0.7 !important; /* ガラリと薄くして選択不可をわかりやすく */
    background-color: #fafafa !important;
}
.ui-datepicker td.ui-state-disabled span {
    color: #94a3b8 !important;
}

/* 今日（現在の日付） */
.ui-datepicker .ui-datepicker-today {
    background-color: #eff6ff !important; /* 背景を薄い青に */
}
.ui-datepicker .ui-datepicker-today a {
    color: #2563eb !important;
    font-weight: 700 !important;
}

/* 選択された日付 */
.ui-datepicker td .ui-state-active,
.ui-datepicker td .ui-state-active:hover {
    background-color: #2563eb !important; /* 選択時は全面青マスに */
    color: #ffffff !important;
    font-weight: 700 !important;
}

/* 前月・翌月の端っこの日付（非アクティブ） */
.ui-datepicker .ui-datepicker-other-month {
    background-color: #f8fafc !important;
    opacity: 0.4 !important;
}

/* ページ読み込み時に画面下に表示される白いボックスを非表示にする */
body > .ui-datepicker {
    display: none;
}



/*==========================================================================

	                  お問い合わせ(サンクスページ)
	
============================================================================*/

.thanks-box {
	max-width: 1200px;
	margin: 0 auto 5%;
	padding: 0 0 5%;
	text-align: center;
	box-sizing: border-box;
}
.thanks-box h3 {
	font-size: 28px;
	font-size: 2.8rem;
	font-weight: bold;
}
.thanks-box script {
	display: block;
}
.thanks-box .btn a {
    width: 18em;
	margin: 5% auto 0;
}
@media screen and (max-width: 641px){
	.thanks-box h3 {
		font-size: 18px;
		font-size: 1.8rem;
	}
	.thanks-box .btn a {
		width: 15em;
	}
}



