@charset "utf-8";

@import url("../style/variables.css");/*変数定義*/
@import url("../style/form_mail.css");/*フォームメール周りまとめ*/
	
:root{
}

/*-----------------------------------------------------	*/
/*	for all						*/
/*-----------------------------------------------------	*/
	/*** main px ***/

	#contact{
		width:min(1000px,100%);
		background:white;
		margin:30px auto 0 auto;
		border:1px solid silver;
		padding:40px;
		border-radius:10px;
		article{
			text-align: left;
			display:grid;
			grid-template-columns: 12em 1fr;
			> *{
				padding:20px;
				border-top:1px solid silver;
			}
			> *:nth-child(odd){
				text-align: right;
				border-left:1px solid silver;
				/*padding-top:1.7em;*/
				&:has(+* > input[type='radio']),
				&:has(+* > input[type='checkbox']){/*radio,checkboxの場合は、paddingを調整*/
					padding-top:20px;
				}
			}
			> *:nth-child(even){
				border-right:1px solid silver;
				aside{
					font-size: .9rem;
					margin:.3em auto 0 auto;
					&:has(+ *){
						margin:.3em auto;
					}
				}
				aside + label{
					margin-bottom:0;
				}
			}
			> *:nth-child(even):has(ul){
				ul{
					display:flex;
					justify-content: start;
					gap:.3em 1em;
					flex-wrap:wrap;
					li:has(input){
						input{
							width:auto;
						}
					}
				}
			}
			> *:nth-last-child(1),
			> *:nth-last-child(2){
				border-bottom:1px solid silver;
				border-bottom:1px solid silver;
			}
			> *:nth-child(even):not(:nth-child(4n)) {
				background:#f4f4f4;
			}
			> *:nth-child(2n-1):not(:nth-child(4n-1)) {
				background:#f4f4f4;
			}
			> *:nth-child(1){
				margin-top:0;
			}
		}
		@media (max-width: 768px) {
			padding:20px;
			article{
			grid-template-columns: 1fr;
			> *{
				padding:0 ;
				border:none;
			}
			> *:nth-child(odd){
				text-align: left;
				border:1px solid silver;
				border-bottom:none;
				padding:20px 20px 0 20px; 
			}
			> *:nth-child(even){
				border-left:1px solid silver;
				border-right:1px solid silver;
				padding:10px 20px 20px 20px;
			}
		}

		}
	}
	
 
	#tel_fax{
		margin:20px auto 0 auto;
		svg{
			width:20px;
			height:20px;
			fill:var(--baceFontColor);
			margin:0 .3em 0 0;
		}
		span{
			font-size: 1.3rem;
			font-weight: 600;
			&:nth-of-type(1){
				margin-right:20px;
			}
		}
		br{
			display:none;
		}
		@media (max-width: 768px) {
			br{
				display:block;
			}
		}
	}

	#privacy{
		margin:60px auto 0 auto;
		width:860px;
		max-width:calc(100% - 66px);
		padding:30px;
		background:#eee;
		border:3px solid gray;
		height:40vh;
		overflow-x: auto;
		h2{
			font-size: 1.2rem;
			font-weight: 600;
		}
		> p{
			margin-top:20px;
		}
		ul{
			li{
				font-weight: 600;
				font-size: 1.1rem;
				margin:0 0 0 2em;
				list-style:decimal;
				h3{
					font-weight: 600;
				}
				> p{
					font-weight: 500;
					font-size: 1rem;
				}
			}
		}
		aside{
			text-align: right;
			margin:1em auto 0 auto;
			span{
				margin:0 .3em 0 0;
			}
			i{
				font-size: 1.2rem;
			}
		}
		@media (max-width: 1200px) {
			width:auto;
			max-width:none;
		}
		@media (max-width: 768px) {
			padding:20px;
		}
	}

	#top_com{
		text-align:left;
		}

		#denwa{
			width:min(760px,100%);
			margin:30px auto 0 auto;
			h3{
				font-size: 1.2rem;
				font-weight: 600;
				color:rgb(var(--mainColor));
				&:nth-of-type(2){
					margin-top:30px;
					font-size: 1.4rem;
				}
			}
			svg{
				width:1.4rem;
				height:1.4rem;
				fill:red;
				margin:0 .3em 0 0;
			}
			span{
				font-size: 2rem;
				font-weight: 600;
				a{
					color:red;
				}
			}
			strong{
				display:block;
				margin:.5em auto 0 auto;
				font-size: 1.1rem;
				font-weight: 600;
			}
			aside{
				text-align: left;
				font-size: .9rem;
				margin:10px auto 0 auto;
			}
		}
	
		#globalFooter{
			margin:60px auto 0 auto;
		}

		form{
	div.g-recaptcha{
		> div{
			margin:20px auto 0 auto;
		}
	}
}