/*
Template:ystandard
Theme Name:ystandard-child
Theme URI: https://wp-ystandard.com
Author: yosiakatsuki
Author URI: https://yosiakatsuki.net
Description:「自分色に染めた、自分だけのサイトを作る楽しさ」を感じてもらうために作った一風変わったWordPressテーマ「ystandard」の子テーマ
Version: 4.0.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.
*/

:root {
	--mobile-nav-container-padding: 24px !important;
}


p{
	text-align: justify;
}
b, strong {
    font-weight: 900 !important;
}
img {
	vertical-align: bottom;
}
picture{
	height: 100%;
}


p.attachment{
	display: none;
}

.sns-share__before {
   text-align: center;
}
.sns-share__button {
	width: 100%;
	border-radius: 4px;
}
.sns-share__button .sns-share__link {
   width: 100%;
   padding: 1em;
}

.global-nav__menu>.menu-item.current-menu-item>a:after{
	display: none;
}
.h_btn a{
	padding: 1em 2em !important;
	background : #0F3677;
	color: #fff;
	border-radius:8px;
   flex-direction: row !important;
   gap: 0.5em;
}

.footer-main>*{
	margin:0;
}

#breadcrumbs{
	margin-bottom: 2em;
   background: rgba(50,100,150,.2);
}

/*もくじ*/
.ys-toc__list li {
    padding: 0 0 0 .8em !important;
}
#secondary .ys-toc {
	font-size: .8em !important;;
	padding: 0 !important;
   border: none;
}

.entry-content h1, .entry-content h2, .entry-content h3, .entry-content h4, .entry-content h5, .entry-content h6 {
    margin: 2em 0 0.25em;
}

.map .ystdb-column-block-container>:first-child,
.map .wp-block-embed__wrapper{
    height: 100%;
}
.wp-embed-responsive .wp-has-aspect-ratio .wp-block-embed__wrapper:before,
.wp-embed-responsive .wp-embed-aspect-4-3 .wp-block-embed__wrapper:before {
	 padding-top: 0 !important
}
.wp-embed-responsive .wp-has-aspect-ratio iframe {
    position: inherit;
}

.house-5 .ystdb-column.has-background{
	clip-path: polygon(50% 0, 100% 20%, 100% 100%, 0 100%, 0 20%);
}


.custom-cf7-form p {
	font-size: 16px;
}
.custom-cf7-form h3 {
	font-size: 22px !important;
	color: #16a5c3;
}
.custom-cf7-form h3:not(:first-child) {
	margin-top: 2em !important;
}
.custom-cf7-form .section-desc {
	margin: .25em 0 1em 0 !important;
}

/* Container for the form */
.custom-cf7-form {
  margin: 0 auto;
}
/* Row wrapper */
.custom-cf7-form .cf7-row {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 24px; /* Space between rows as seen in image */
}
/* Remove bottom border for the last one if needed, or keep for style */
.custom-cf7-form .cf7-row:last-child {
  border-bottom: none;
}
/* Label styling (Left side) */
.custom-cf7-form .cf7-label {
  width: 100%;
  padding: 0px;
  display: flex;
  align-items: center;
  justify-content: left;
  font-weight: bold;
  box-sizing: border-box;
}
/* Input area styling (Right side) */
.custom-cf7-form .cf7-input {
  width: 100%;
  padding: 0;
  background-color: #fff;
  box-sizing: border-box;
  display: flex;
  align-items: center;
}
.custom-cf7-form .cf7-input > * ,
.wpcf7-form-control-wrap  > * {
  width: 100%;	
}
/* Input field styling */
.custom-cf7-form input[type="text"],
.custom-cf7-form input[type="email"],
.custom-cf7-form input[type="tel"],
.custom-cf7-form textarea {
  width: 100%;
  padding: 12px 10px;
  border: 1px solid var(--wp--preset--color--ys-light-gray); /* Beige/Gold border */
  background-color: #fcfcfc;
  border-radius: 2px;
  box-sizing: border-box;
  font-size: 16px;
}
/* Focus state */
.custom-cf7-form input:focus,
.custom-cf7-form textarea:focus {
  outline: none;
  border-color: var(--wp--preset--color--ys-green);
  background-color: #fff;
}
/* Submit button container */
.custom-cf7-form .submit-row {
  border: none;
  justify-content: center;
  padding-top: 20px;
}
/* Submit button styling */
.custom-cf7-form input[type="submit"] {
	background-color: #d9834d;
	color: white;
	border: 4px solid #d9834d; /* Beige/Gold border */
	border-radius: 999px;
	padding: 16px 40px;
	font-size: 24px;
	font-weight: bold;
	letter-spacing: .2em;
	cursor: pointer;
	transition: background 0.3s;
    box-shadow: 0 4px 8px rgba(0, 0, 0, .25);
}
.custom-cf7-form input[type="submit"]:hover {
	background-color: white;
	box-shadow: none;
	color: #d9834d;
}



/* Responsive adjustments for mobile */
@media (max-width: 864px) {
	.custom-cf7-form .cf7-label {
		padding: 4px 0;
		font-size: 14px;
	}
	.custom-cf7-form .cf7-row {
		flex-direction: column;
		margin-bottom: 16px;
		border: 1px solid var(--wp--preset--color--ys-user-1); /* Full border on mobile cards */
	}
  
  .custom-cf7-form .cf7-label {
    width: 100%;
    margin-bottom: 0;
  }
  
  .custom-cf7-form .cf7-input {
    width: 100%;
	display: block;
  }

	.business_post-template h2 {
		border-right: none;
		padding-right: 0 !important;
		padding-bottom: 0 !important;
	}
}

.wpcf7-spinner{
	display: none;
}

.wpcf7-submit::hover{
	box-shadow: var(--ystd-button-box-shadow);
}
button, input, select, textarea {
   border-radius: 4px;
}
input.wpcf7-not-valid, 
textarea.wpcf7-not-valid, 
select.wpcf7-not-valid {
    background: #FCC;
}
.wpcf7-not-valid-tip {
   font-size: 12px;
   font-weight: bold;
}
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
	color: #dc3232;
	font-weight: bold;
	text-align: center;
}
form.sent table,
form.sent p,
form.sent .recaptcha {
 display: none;
}
.wpcf7 form .wpcf7-response-output {
	margin:0;
	border:none;
   text-align: center;
}
.wpcf7-form label{
	font-weight: bold;
	font-size: 14px;
	line-height: 2rem;
}
.wpcf7-form .optional::before,
.wpcf7-form .required::before{
   padding: 0.25em;
   font-size: .75em;
   margin-right: .5em;
   border-radius: 2px;
   display: inline-block;
   line-height: 1.25em;
   position: relative;
   bottom: 2px;
}
.wpcf7-form .required::before{
	content: "必須";
	background: #FCC;
}
.wpcf7-form .optional::before{
	content: "任意";
	background: #cdf;
}
.inquiry td,
.inquiry th,
.inquiry tr,
.inquiry{
	border:none;
	background: none;
}
.inquiry tr{
		border-bottom: solid 2px #f1f1f3;
}
.inquiry td, 
.inquiry th {
    padding: 1.5em 1em;
}
.wpcf7-form-control-wrap ,
.wpcf7-form-control{
	width: 100%;
}

.wpcf7 input[type="file"] {
	font-size: 12px;
   line-height: 20px;
	width: 100%;
}
.wpcf7-list-item-label{
	font-size: 12px;	
}


.footer-main,
#footer-copy{
	text-align: center;
	font-size:12px;
	font-weight: bold;
}
.footer-main {
	padding-top: 1em;
}

@media (max-width: 1200px){
	p{
		font-size: 14px;
	}
	.sp-left{
		text-align:left;
	}
	
	#breadcrumbs {
		margin-bottom: 0;
	}
	.global-nav__menu>.menu-item>a{
		display: flex;
	}
	
	.inquiry td, .inquiry th {
		padding: 1.5em 0em;
	}
	.inquiry th,.inquiry td {
		 display:block!important;
		 width:100%!important;
		 border-top:none!important;
		 -webkit-box-sizing:border-box!important;
		 -moz-box-sizing:border-box!important;
		 box-sizing:border-box!important;
	}
	.inquiry td{
		padding-top: .125em;	
		padding-bottom: 1em;
	}
	.inquiry th{
		padding-bottom: .125em;
		padding-top: 0.75em;
	}
	.wpcf7-submit{
		width: 100%;
	}
	.wpcf7-form-control-wrap {
		width: 100%;
	}
	.wpcf7 form.invalid .wpcf7-response-output,
	.wpcf7 form.unaccepted .wpcf7-response-output,
	.wpcf7 form.payment-required .wpcf7-response-output {
		text-align: left;
	}
}