/*
Theme name: firm035.5321
Description: theme for firm
Author: Syuhei Kowata
*/

@charset "UTF-8";
/*約物半角専用のWebフォント*/
@import url(https://cdn.jsdelivr.net/npm/yakuhanjp@4.1.1/dist/css/yakuhanmp_s.css);
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200..900&display=swap');


/*-------------------------------基本*/
html {
font-size: 10px;
}
html,body,div {
margin:0;
padding:0;
}
body {
font-size: 1.6rem;
line-height: 1.8em;
font-family: YakuHanMPs, 'Noto Serif', serif;
font-weight:	500;
text-align: left;
}
.contentBox ol,
.contentBox ul {
padding-inline-start: 1.8em	!important;
}
p,ol,ul {
padding:	0	0.5em;
}
h1{
font-size: 2.4rem;
font-weight:600;
margin-top:3rem;
}
h2{
font-size: 2.1rem;
font-weight:600;
padding:	0.3em	0.5em;
margin-top:			2.0em;
margin-bottom:	1.0em;
}
h3,h4{
margin-top:			2em;
margin-bottom:	0em;
}
h3{
font-size: 2.0rem;
}
h4{
font-size: 1.8rem;
}

p{
text-indent: 1em;
}
a{
text-decoration: none;
}
input,
textarea{
	font-size:		16px;
}

#mainContainer a{
/*	長いURLの途中改行あり	*/
word-break: break-all;
text-decoration:		underline;
text-underline-offset:		0.1em;
}

/*.s{
font-size: 1.4rem;
line-height: 1.6em;
margin-top: 		2em;
margin-bottom: 2em;
}*/
.ind{
text-indent: 1em;
}
.ind-off{
text-indent: 0;
}
.shift-off{
padding-left:0;
}

li{
margin-top:		0.5em;
}

.list-circle{
list-style-type:none;
}
.list-circle li:before{
content:"○ ";
}
.list-hierarchy li{
line-height: 3em;
margin-top: 1.5em;
}
.list-hierarchy li ul li{
list-style-type:disc;
line-height: 1.8em;
margin-top: 0.3em;
margin-bottom: 0em;
}

.L1{
font-size: 1.8rem;
line-height: 1.8em;
}
.cols2{
column-count: 	2;
column-gap: 		2em;
}
.cols3{
column-count: 	3;
column-gap: 		2em;
}
.nallow{
padding-left:20%;
padding-right:5%;
}
.spacious{
font-size: 1.6rem;
line-height: 2em;
margin: 3em 0;
}
/*-------------------------------画像類*/
img{
/*width: auto;
height: auto;*/
}
figcaption{
text-align: center;
font-size: 0.9em;
margin-top:0	!important;
}
.ytb{
position:relative;
width:100%;
padding-top:56.25%;
}
.ytb iframe{
position:absolute;
top:0;
right:0;
width:100%;
height:100%;
}
.aligncenter {
    margin-left: auto;
    margin-right: auto;
}
/*-------------------------------構造*/
#container{
min-height: 100vh;
width: 94%;
max-width:1100px;
margin: 0 auto;
display : flex;
flex-direction: column;
}
#headerImgContainer,
#toppageContainer,
#menuContainer,
#mainContainer,
.ftCopy{
width: 100%;
margin: 0;
display: flex;
filter: drop-shadow(0 4px 4px rgba(0,0,0,0.3));
}

/*-------------------------------コンテンツ*/
#mainContainer{
z-index:20;
flex-grow: 1;		/*	いっぱいに伸ばす*/
}
.contentBox{
width: 100%;
padding: 6rem 5% 10rem 5%;
}

.fullW{
width: 100%;
padding: 0;
}

.contentBox *:first-child{
margin-top:		0;
}
.wp-block-columns.has-background{
padding: 0		!important;
}
/*-------------------------------ヘッダー画像*/
#headerImgContainer{
margin-top:		-6rem;
}
#headerImgContainer img{
width: 100%;
height:auto;
}

/*-------------------------------メニュー*/
#menuContainer{
position:sticky;
top:			0;
z-index:	100;
height:		auto;
width: 		100%;
}
#menuList{
display: flex;
flex-direction: column;
margin:	0	auto;	/*左右の中央*/
}
#menuList ul{
padding:	0;
}

.menu {
margin:	0.4rem	1em	0rem	1em;
padding: 0;
font-size: 1.5rem;
line-height: 1.4rem;
letter-spacing: 0.1rem;/*字間少し*/
text-align: center;
list-style-type:none;
}
.menu-item {
padding:	0.8rem		0.5rem	1rem		0.5rem;
margin:	0	0.5rem	;
}
.menu-item {
display: inline-block;
border-top:	 	solid		0.2rem		rgba(255,	255,		255,		0.0);
border-bottom:	solid		0.2rem		rgba(255,	255,		255,		0.0);
}
.menu-item:hover{
border-bottom:	 solid	0.2rem		rgba(255,	255,		255,		1);

}
.menu-item:active{
border-bottom:	 solid	0.2rem		rgba(187,	200,		230,		1);	/*淡藤色 あわふじいろ*/
}

.menuJE{
display:inline-block;
text-align: center;
}
.menuEng{
display:inline-block;
font-size: 1.1rem;
letter-spacing: 0.1rem;/*字間少し*/
padding-top:	0.4rem;
white-space: nowrap ;
}


/*-------------------------------タイトル*/
#topSpace{		/*	タイトルエリア*/
height:auto;
width: 100%;
margin: 0;
display: flex;
justify-content:start;
}
#postTitle{		/*	タイトル文字*/
padding: 0.3rem 1em;
margin-top:		0.8em;
margin-bottom:	0.2em;
}
/*-------------------------------検索*/
#toNewsArchive{
padding-right:  1em;
margin:	2.3rem		0 auto	2rem;
float:left;
}
#searchFm{		/*	検索*/
padding-right:  1em;
margin:	auto		0;
}
#searchInput{
font-size: 1.4rem;
width: 16em;
padding:	0.7rem 0.7rem 0.7rem 0.7rem;
margin-right:	-0.8rem;
border:solid 1px #afafb0;
}
#searchBtn{
font-size: 1.4rem;
letter-spacing:	1em;
padding-left:		1em;
}

#searchBtnArea{
border:0;
padding:	0.4em 0.4em 0.4em 0.4em;
filter: drop-shadow(0 0.3vw 0.3vw rgba(0,0,0,0.3));
}

#searchBtnArea:active{
filter: none;
}


/*-------------------------------プライバシーポリシー*/
.policyTbl table td{
padding: 0.1em;
border: 0;
}

/*-------------------------------Google reCAPTCHA関連	*/
.reCAPTCHA_str{
/* 	display: none	;  */
	margin: 5rem 0 0 0; 
	font-size: 0.8rem;
	line-height: 2em;
	text-indent: 0;
	text-align: center;
}

/*reCAPTCHAバッジ*/
.grecaptcha-badge {
visibility: hidden;
}
/*-------------------------------フッター*/
#footer{
padding-top:  4rem;
text-align: center;
}
.endLogo{
margin:	0	1rem	!important;
padding:  0		!important;
}
.endLogo img{
width: 100%;
height: auto;
}
.endAdd{
font-size: 1.2rem;
line-height: 1.4em;
text-align: center;
text-indent: 0;
margin:	0em	1rem	1.5em	1rem		!important;

}
.ftCopy{
display: block;
padding: 1.5em 0rem;
margin: 0 auto;
line-height: 1em;
font-size: 0.8rem;
text-indent: 0;
text-align: center;
}
/*-------------------------------*/
.dummy{
z-index:	1000;
color:		red;
}

/*-------------------------------メディア*/
@media screen and (max-width: 790px) {
#headerImgContainer{
/*扉絵の調節*/
margin-top:	0;
}
.menu {
letter-spacing: 0.1em;
}
.menuEng{
text-indent: 0.2em;
}
}

/*-------------------------------メディア*/
@media screen and (max-width: 480px) {
.menuEng,
.tempBr{
display:none;
}

body {
font-size: 1.4rem;
}
#container{
width: 100%;
margin: 0;
}
.contentBox{
padding: 3.2rem 2.4rem 4.8rem 2.4rem;
}
h1{
font-size: 2.5rem;
margin-top:1rem;
}
h2{
font-size: 1.8rem;
font-weight:normal;
padding:	0.3em	0.5em;
}
h3{
font-size: 1.8rem;
}
h4{
font-size: 1.6rem;
}
.menu {
margin:	1.1rem		0.7em	0.2rem		0.7em;
letter-spacing: 0rem;
font-size: 1.4rem;
}
.menu-item {
margin:	0;
}
.menu-item {
padding:	0.2rem		0.5rem		1rem		0.5rem;
}
.nallow{
padding-left:0;
padding-right:0;
}
.menu-item,
.menu-item:hover,
.menu-item:active {
border:none;
}
.news .wp-block-image{
padding:	0em	0em;		/*	→メディア*/
}

}

@media screen and (max-width: 320px) {
.menu {
font-size: 1.4rem;
letter-spacing: 0;
}
.menu-item {
padding:	0.2rem		0.3rem		1rem		0.3rem;
}
}