@charset "UTF-8";
/*
Theme Name: 「京都双葉法律事務所」2025年リニューアルテーマ
Description: 「京都双葉法律事務所」サイト決定用テーマ、和のイメージを出して見せました。
Author: 和田
Version: テーマのバージョン
*/

header,
nav,
aside,
section,
footer,
figure,
figcaption {display:block;}

:root {
--first-color: #488cff;
--second-color: #ffff8c;
--green-color01:#7d8e7a;
--green-color02:#3f5636;
--green-color03:#546351;
--brown-color01:#c8b8a4;
--brown-color02:#deceba;
--header-size:60px;
--headerwide-size:133px;
}

#scrlNum{
	position:fixed;
	left:0;
	top:0;
	width:0.3em;
	z-index:10;
	display:none;
}





/******.lineup*******/

.lineup > *{
margin-bottom:2.5em;
}
.lineup > *:last-child{
margin-bottom:0;
}
.lineup .item{
padding:0 1.2em;
}


/* ウィンドウ幅が768px〜の場合に適用するCSS */
@media screen and ( min-width:768px ){

.lineup{
display:flex;
flex-wrap: wrap;
}

.lineup > *{
margin-bottom:20px;
}


.lineup.l_1 > *{
width:100%;
}
.lineup.l_2 > *{
width:50%;
}
.lineup.l_3 > *{
width:33%;
width : -webkit-calc(100% / 3) ;
width : calc(100% / 3) ;
}
.lineup.l_4 > *{
width:25%;
}
.lineup.l_5 > *{
width:20%;
}
.lineup.l_6 > *{
width:16%;
width : -webkit-calc(100% / 6) ;
width : calc(100% / 6) ;
}

}

/******.font*******/
.font.f01{
font-family: "Zen Maru Gothic", serif;
font-weight: 400;
font-style: normal;
}
.font.f02{
font-family: "PT Sans", serif;
font-weight: 400;
font-style: normal;
}

/******.map*******/

.map{
position:relative;
height:0;
padding:120% 0 0 0;
overflow:hidden;
}
.map iframe{
width:100%;
height:100%;
position:absolute;
left:0;
top:0;
}



/* ウィンドウ幅が768px〜の場合に適用するCSS */
@media screen and ( min-width:768px ){
.map{padding-top:70% ;}
}



/*フォーム項目*/

input,
select,
button,
textarea {
	border: solid 1px #b7b7b7!important;
	box-sizing: border-box;
	padding: 11px 10px;
	border-radius: 0;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	background: #fff;
	-webkit-appearance: none;
	width: 100%;
}


input[type="checkbox"]{
	width:20px;
	height:20px;
	padding:5px;
	border-radius: 5px;        /* CSS3草案 */  
	-webkit-border-radius: 5px;    /* Safari,Google Chrome用 */
	-moz-border-radius: 5px;   /* Firefox用 */
	margin-right:5px;
	position:relative;
}
/*input[type="checkbox"].active::before*/
input[type="checkbox"]:checked::before{
	content:"";
	display:block;
	width:12px;
	height:12px;
	background:#ccc;
	position:absolute;
	left:3px;
	top:3px;
	border-radius: 3px;        /* CSS3草案 */  
	-webkit-border-radius: 3px;    /* Safari,Google Chrome用 */
	-moz-border-radius: 3px;   /* Firefox用 */
}

input[type="radio"]{
	width:20px;
	height:20px;
	padding:5px;
	border-radius: 20px;        /* CSS3草案 */  
	-webkit-border-radius: 20px;    /* Safari,Google Chrome用 */
	-moz-border-radius: 20px;   /* Firefox用 */
	margin-right:5px;
	position:relative;
}
/*input[type="radio"].active::before*/
input[type="radio"]:checked::before{
	content:"";
	display:block;
	width:12px;
	height:12px;
	background:#ccc;
	position:absolute;
	left:3px;
	top:3px;
	border-radius: 12px;        /* CSS3草案 */  
	-webkit-border-radius: 12px;    /* Safari,Google Chrome用 */
	-moz-border-radius: 12px;   /* Firefox用 */
}

form .btmForm{
	padding-top:50px;
}
form .btmForm li{
	padding:10px 0;
}

input[type="button"],
input[type="reset"],
input[type="submit"],
button{
	cursor:pointer;
	border:none;
	background:#000;
	color:#fff;
	height:auto;
	line-height:1.5em;
	border-radius: 0px;        /* CSS3草案 */  
	-webkit-border-radius: 0px;    /* Safari,Google Chrome用 */
	-moz-border-radius: 0px;   /* Firefox用 */
	padding:15px 10px;
}

/*使用不可の時の表示設定*/
input.useless {
	opacity:0.5;
	cursor:text;
	background-color:#eee;
}



/**************
お問合せフォームフォーマット
**************/

.form .ttl,
form .ttl{
font-weight:bold;
font-size:1.23em;
text-align:center;
padding:0.8em 0;
}
.form .ttl p,
form .ttl p{
font-weight:bold;
margin:0!important;
}

.form dl,
form dl,
form .textLine{
padding:1.2em 1.5em;
border-bottom:solid 1px #d3d3d3;
}

.form dl:last-child,
form dl:last-child{
border-bottom:none;
}
.form dl dt,
form dl dt{
margin-bottom:0.8em;
}
.form dl dt p,
form dl dt p,
.form dl dd p,
form dl dd p{
margin-bottom:0!important;
}

.form dl .line,
form dl .line{
padding:0.3em 0;
width:100%;
}
.form dl .line.line_p p,
form dl .line.line_p p{
display:flex;
align-items: flex-end;
flex-wrap: wrap;
}
.form dl .line.line_p p .tani,
form dl .line.line_p p .tani{
margin-left:0.5em;
width:1.2em;
}

.form dl dd,
form dl dd{
display:flex;
flex-wrap: wrap;
}

.form .boxAttend,
form .boxAttend{
padding:0.5em 0.85em;
height:13.5em;
overflow-y:scroll;
background:#fff;
}

.form .boxAttend p,
form .boxAttend p{
margin-bottom:1.5em;
}

.form .listFormbtm,
form .listFormbtm{
display:flex;
flex-wrap: wrap;
justify-content:center;
}
.form .listFormbtm p,
form .listFormbtm p{
display:flex;
}

.form .listFormbtm input,
form .listFormbtm input{
margin:0.5em 0;
width:100%;
}

.form .list_error li,
form .list_error li{
padding-left:2.4em;
font-weight:bold;
}
.form .list_error li::before,
form .list_error li::before{
content:"!";
font-size:0.9em;
color:#fff;
background:#ff7070;
display:block;
text-align:center;
width:20px;
height:20px;
border-radius: 20px;        /* CSS3草案 */  
-webkit-border-radius: 20px;    /* Safari,Google Chrome用 */
-moz-border-radius: 20px;   /* Firefox用 */
line-height:20px;
position:absolute;
left:0.5em;
top:50%;
transform:translateY(-50%);
}


.form .listCheck dd,
form .listCheck dd{
color:#6892e1;
font-weight:bold;
}

/* ウィンドウ幅が768px〜の場合に適用するCSS */
@media screen and ( min-width:768px ){

	.form dl .line,
	form dl .line{
	padding:0.3em 0.8em;
	width:auto;
	}

	.form dl .line.line_1,form dl .line.line_1{width:100%;}
	.form dl .line.line_2,form dl .line.line_2{width:50%;}
	.form dl .line.line_3,form dl .line.line_3{
		width:33%;
		width:-webkit-calc(100% / 3);
		width:calc(100% / 3);
	}
.form .listFormbtm input,
form .listFormbtm input{
margin:0.5em 1.0em;
width:auto;
}
}

/*ログインフォーム*/
#loginform{
border:solid 1px #000;
padding:36px 22px;
max-width: 600px;
margin:auto;
}
#loginform p:last-child{
margin-bottom:0;
}

/* ウィンドウ幅が768px〜の場合に適用するCSS */
@media screen and ( min-width:768px ){

#loginform{
padding:44px 43px;
}

}


.clear{
	clear:both;
}

.clearfix:after {
	display:block;
	clear:both;
	content:"";
	height:0;
	visibility:hidden;
}

img {
	max-width:100%;
	height:auto;
}

table {
	border-collapse:collapse;
}

body {
	-webkit-text-size-adjust: 100%;
	font-size:14px;
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: 600;
	font-style: normal;
}

.wideFrame {
	width:auto;
	padding:0 10px;/**/
}

h2 {
	padding:8px 25px;
	color:#333;
	text-align:center;
	font-size:1.5em;
	font-weight:bold;
	margin-bottom:35px;
	position:relative;
}
h2:after {
}

#wrapper {
	/*padding-top:45px;
	padding-bottom:80px;*/
	padding-top:var(--header-size);
}




/*****************
.table（テーブル・表）
*****************/

table,
th,
td{
border:solid 1px #000;
}

table{
border-right:none;
border-bottom:none;
}

th, td{
border-left:none;
border-top:none;
padding:1.0em 2.0em;
vertical-align:top;
}

th{
background:#e0e0e0;
}


/* ウィンドウ幅が0〜768pxの場合に適用するCSS */
@media screen and ( max-width:768px )
{
th, td{
white-space: nowrap;
}
}

/*****************
.photo、.image（画像枠）
*****************/

.photo img,
.image img{
width:100%;
height:auto;
}


/*****************
.title（見出し設定）
*****************/

.title.t01{
font-weight:bold;
margin-bottom:1.2em;
}



/*リスト項目の表示*/

ul{
	padding:10px 0 10px 5px;
}
li {
	position:relative;
	padding:8px 0 8px 40px;
}
li span {
	position:absolute;
	left:0;
	top:8px;
}

.list li::before{
content:"";
width:10px;
height:10px;
background:#999;
position:absolute;
left:5px;
top:15px;
}

.list.li01 li::before{
display:none;
}




a.btm {
	display:block;
	font-size:1.2em;
	text-align:center;
	padding:21px 60px;
	box-sizing:border-box;
	border-radius: 0;        /* CSS3草案 */  
	-webkit-border-radius: 0;    /* Safari,Google Chrome用 */
	-moz-border-radius: 0;   /* Firefox用 */
}
a.btm.b01 {
	color:#fff;
	background:#000;
	position:relative;
}
a.btm.b01:after {
content:"";
display:block;
width:22px;
height:24px;
position:absolute;
right:10px;
top:50%;
transform:translateY(-50%);
background:url(css_img/btmCursor.svg) no-repeat center center;
background-size:100%;
}


a.btm.b02 {
color:#000;
background:#fff;
border:solid 1px #000;
position:relative;
}
a.btm.b02:after {
content:"";
display:block;
width:22px;
height:24px;
position:absolute;
right:10px;
top:50%;
transform:translateY(-50%);
background:url(css_img/btmCursor_black.svg) no-repeat center center;
background-size:100%;
}


/*その他*/

.markScroll {
	position:relative;
}
.markScroll::before,
.markScroll:after {
	content:"";
	display:block;
	right:10px;
	border-right:solid 5px transparent;
	border-left:solid 5px transparent;
	position:absolute;
}
.markScroll::before {
	top:5px;
	border-top:solid 5px transparent;
	border-bottom:solid 8px #ccc;
}
.markScroll:after {
	bottom:5px;
	border-top:solid 8px #ccc;
	border-bottom:solid 5px transparent;
}

li.markNew {
	padding-left:80px;
}

li.markNew::before {
	content:"new!";
	display:block;
	color:#fff;
	font-size:0.87em;
	background:#31BAB5;
	padding:0 8px;
	height:22px;
	line-height:22px;
	position:absolute;
	left:0;
	top:7px;
	order-radius: 22px;        /* CSS3草案 */  
	-webkit-border-radius: 22px;    /* Safari,Google Chrome用 */
	-moz-border-radius: 22px;   /* Firefox用 */
}

@media screen and ( min-width:992px )
{

	#wrapper {
		/*padding-top:81px;*/
		padding-top:var(--headerwide-size);
	}
	.wideFrame {
		width:1200px;
		margin-left:auto;
		margin-right:auto;
		padding:0;
	}
	
}

@media screen and ( min-width:768px ){
	
	form .btmForm li{
		float:left;
		width:50%;
		padding:10px 10px;
		box-sizing:border-box;
	}
}


/*フィールド設定（.field）*/

.field{
	padding:2.0em 0.5em;
}

.field.f01{
	background:#ff8080;
	color:#fff;
}

.field.f02{
	background:#80fffbf5;
}

.field.f03{
	background:#7d7dff;
}

/*フレーム設定（.frame）*/
.frame{
	padding:2.5em 1.8em;
}

.frame.fr01{
	border:solid 1px #84715a;
	background:#ffffffee;
}

.frame.fr02{
	background:#ffffff;
	border-radius: 0;        /* CSS3草案 */  
	-webkit-border-radius: 0;    /* Safari,Google Chrome用 */
	-moz-border-radius: 0;   /* Firefox用 */
}
.frame.fr03{
	background: url(../../images/sample_0102.jpg) no-repeat center -220px;
	background-size: 100%;
	border:solid 2px #b2b2b2;
	box-shadow: 0 0 15px #00000033;
}
.frame.fr04{
border:solid 1px #fff;
}
.frame.fr05{
background:#e1f6ee;
}



@media screen and ( min-width:768px ){

.frame{
padding:45px 70px;
}

}



#wpadminbar{
position:fixed!important;
left:0;
top:0;
}



.slick-dots li{
background:#f4f4f4;
border-radius: 20px;        /* CSS3草案 */  
-webkit-border-radius: 20px;    /* Safari,Google Chrome用 */
-moz-border-radius: 20px;   /* Firefox用 */
}
.slick-dots li button{
position:relative;
}
.slick-dots li button:before {
top: 50%!important;
    left: 50%!important;
    transform:translate(-50%,-50%);
    width: 15px!important;
    height: 0px!important;
    padding:15px 0 0 0;
    overflow:hidden;
    border-radius: 15px;        /* CSS3草案 */  
    -webkit-border-radius: 15px;    /* Safari,Google Chrome用 */
    -moz-border-radius: 15px;   /* Firefox用 */
    content: '';
    opacity: .25;
    color: black;
    background:#969696;
}
.slick-arrow{
background:no-repeat center center !important;
z-index:10;
border:none!important;
width:27px!important;
height:38px!important;
top:auto!important;
bottom:-52px;
}
.slick-dots li button{
border:none!important;
}
.slick-dots li.slick-active button:before {
    opacity: .75;
}
.slick-prev{
left:20px!important;
background-image:url(css_img/cursorSlider_prev.svg)!important;
}
.slick-next{
right:20px!important;
background-image:url(css_img/cursorSlider_next.svg)!important;
}



@media screen and ( min-width:768px ){

.slick-prev{
left:170px!important;
}
.slick-next{
right:170px!important;
}
}


/*Flex（横に並べる）*/

.flex{
display:flex;
flex-wrap: wrap;
}
.flex .line{width:100%;}

@media screen and ( min-width:768px ){
.flex .line.line_2{width:50%;}
.flex .line.line_3{width:33%;-webkit-calc(100% / 3);width:calc(100% / 3);}
.flex .line.line_4{width:25%;}
.flex .line.line_5{width:20%;}
.flex .line.line_6{width:-webkit-calc(100% / 6);width:calc(100% / 6);}
.flex .line.line_7{width:-webkit-calc(100% / 7);width:calc(100% / 7);}
.flex .line.line_8{width:-webkit-calc(100% / 8);width:calc(100% / 8);}
.flex .line.line_9{width:-webkit-calc(100% / 9);width:calc(100% / 9);}
.flex .line.line_10{width:-webkit-calc(100% / 10);width:calc(100% / 10);}
}
/**********************************************************************************************************************************************************************************************
#header(ヘッダー)
*************************************************************************************************************************************************************************************************/



#header{
	position: fixed;
	width:100%;
	/*height:45px;*/
	height:var(--header-size);
	left:0;
	top:0;
	background:var(--green-color01);
	z-index: 15;
}

#header h1{
	width:200px;
	position: absolute;
	left:50%;
	top:50%;
	transform: translate(-50%, -50%);
	z-index:5;
}
#header h1 a{
	display:block;
	height:0;
	overflow:hidden;
	padding:20% 0 0 0;
	background:url(css_img/siteID_2025080401.svg) no-repeat center center;
	background-size:100%;
}

/*メニュー画面表示させるボタン設定*/
#header #btmMenuScr{
	cursor:pointer;
	position: absolute;
	width:40px;
	height:40px;
	background:#fff;
	right:10px;
	top:50%;
	transform: translateY(-50%);
	z-index:15;
	border-radius: 40px;        /* CSS3草案 */  
	-webkit-border-radius: 40px;    /* Safari,Google Chrome用 */
	-moz-border-radius: 40px;   /* Firefox用 */
}
#header #btmMenuScr ul{
	width:20px;
	height:10px;
	position: absolute;
	left:50%;
	top:50%;
	transform: translate(-50%,-50%);
	margin:0;
	padding:0;
}
#header #btmMenuScr .tag{
	padding: 0;
	margin:0;
	position: absolute;
	width:100%;
	height: 2px;
	left:50%;
	top:0;
	transform: translateX(-50%);
	background:var(--green-color01);
}
#header #btmMenuScr .tag:nth-child(2){
	top:auto;
	bottom:0;
}




/***************メニュー画面が開くとき***************/
@-webkit-keyframes btmOpenMenu01 {
	0% { top:0; transform: translateX(-50%); }
	50% { top:50%; transform: translate(-50%, -50%);}
	100% { top:50%; transform: translate(-50%, -50%) rotate( 30deg ); } 
}
@keyframes btmOpenMenu01 {
	0% { top:0; transform: translateX(-50%); }
	50% { top:50%; transform: translate(-50%, -50%);}
	100% { top:50%; transform: translate(-50%, -50%) rotate( 30deg ); } 
}
body.openMenu #header #btmMenuScr .tag{
	animation: btmOpenMenu01 0.5s ease 0s forwards alternate;
	-webkit-animation: btmOpenMenu01 0.5s ease 0s forwards alternate;
}

@-webkit-keyframes btmOpenMenu02 {
	0% { bottom:0; transform: translateX(-50%); }
	50% { bottom:50%; transform: translate(-50%, 50%);}
	100% { bottom:50%; transform: translate(-50%, 50%) rotate( -30deg ); } 
}
@keyframes btmOpenMenu02 {
	0% { bottom:0; transform: translateX(-50%); }
	50% { bottom:50%; transform: translate(-50%, 50%);}
	100% { bottom:50%; transform: translate(-50%, 50%) rotate( -30deg ); } 
}
body.openMenu #header #btmMenuScr .tag:nth-child(2){
	animation: btmOpenMenu02 0.5s ease 0s forwards alternate;
	-webkit-animation: btmOpenMenu02 0.5s ease 0s forwards alternate;
}



/***************メニュー画面を閉じるとき***************/

@-webkit-keyframes btmCloseMenu01 {
	0% { top:50%; transform: translate(-50%, -50%) rotate( 30deg ); }
	50% { top:50%; transform: translate(-50%, -50%);}
	100% { top:0; transform: translateX(-50%); }
}
@keyframes btmCloseMenu01 {
	0% { top:50%; transform: translate(-50%, -50%) rotate( 30deg ); }
	50% { top:50%; transform: translate(-50%, -50%);}
	100% { top:0; transform: translateX(-50%); }
}
body.hideMenu #header #btmMenuScr .tag{
	animation: btmCloseMenu01 0.5s ease 0s forwards alternate;
	-webkit-animation: btmCloseMenu01 0.5s ease 0s forwards alternate;
}


@-webkit-keyframes btmCloseMenu02 {
	0% { bottom:50%; transform: translate(-50%, 50%) rotate( -30deg ); }
	50% { bottom:50%; transform: translate(-50%, 50%);}
	100% { bottom:0; transform: translateX(-50%); }
}
@keyframes btmCloseMenu02 {
	0% { bottom:50%; transform: translate(-50%, 50%) rotate( -30deg ); }
	50% { bottom:50%; transform: translate(-50%, 50%);}
	100% { bottom:0; transform: translateX(-50%); }
}
body.hideMenu #header #btmMenuScr .tag:nth-child(2){
	animation: btmCloseMenu02 0.5s ease 0s forwards alternate;
	-webkit-animation: btmCloseMenu02 0.5s ease 0s forwards alternate;
}


/*@media screen and ( min-width:768px ){*/
@media screen and ( min-width:992px ){

	#header{
		/*height: 81px;*/
		height: var(--headerwide-size);
	}

#header h1{
	width:140px;
	width:260px;
	left:14px;
	top:7px;
	top:50%;
	transform: translateY(-50%);
}


	#header #btmMenuScr{
		display:none;
		width:55px;
		height:15px;
		right:20px;
	}

}

@media screen and ( min-width:1450px ){

#header h1{


width:160px;
	width:340px;
	left:25px;
	top:30px;
	transform: translate(0, 0);
}

#header h1 a{
	overflow:hidden;
	padding-top:25%;
}

}



/*ロゴ（2025年8月18日更新）*/
#header h1.type20250818{
	width:290px;
	width:230px;
}
#header h1.type20250818 a{
background-image:url(css_img/siteID_resize20250818.svg);
}

@media screen and ( min-width:992px ){

#header h1.type20250818{
width : -webkit-calc(100% - 750px) ;
width : calc(100% - 750px) ;
max-width:450px;
}

}



@media screen and ( min-width:1450px ){

#header h1.type20250818{
left:10px;
width : -webkit-calc(100% - 1200px) ;
width : calc(100% - 1200px) ;
max-width:450px;
top:50%;
transform:translate(0,-50%);
}

}

/**********************************************************************************************************************************************************************************************
.inPoint(アンカーポイントの付加)
*************************************************************************************************************************************************************************************************/


.inPoint{
	position: relative;
}

.inPoint .inPointTop{
	position: absolute;
	left:0;
	top:-45px; /*ヘッダーの高さに合わせて変更をかけてください。*/
}

@media screen and ( min-width:768px ){
	.inPoint .inPointTop{
		top:-81px; /*ヘッダーの高さに合わせて変更をかけてください。*/
	}
}


/**********************************************************************************************************************************************************************************************
#aNav(メニュー項目)
*************************************************************************************************************************************************************************************************/

#aNav{
	width:100%;
	height:100vh;
	height:-webkit-calc(100vh - var(--header-size)) ;
	height:calc(100vh - var(--header-size)) ;
	opacity:0;
	transform: translateX(100%);
	background:var(--green-color01);
	color:#fff;
	position: fixed;
	left:0;
	bottom:0;
	transition-property:transform, opacity;
	transition-duration:0.3s;
	transition-timing-function:ease-in-out;
	transition-delay:0s;
}
#aNav a{
color:#fff;
}

body.openMenu #aNav{
	opacity:1;
	transform: translateX(0);
}


#screenNav{
height:85%;
height:-webkit-calc(100% - 60px);
height:calc(100% - 60px);
overflow-y:scroll;
}


#aNav #listContact{
position:absolute;
bottom:0;
left:0;
width:100%;
display:flex;
}
#aNav #listContact a{
display:block;
width:50%;
height:0;
overflow:hidden;
padding:60px 0 0 0;
background:#fff no-repeat center center;
background-size:70px;
border-right:solid 1px var(--green-color01);
}
#aNav #listContact a:last-child{
border-right:none;
}

#aNav #listContact a.linkMailform{
background-image:url(css_img/iconContactlinkMail.svg);
}
#aNav #listContact a.linkTel{
background-image:url(css_img/iconContactlinkTel.svg);
}

#aNav.retake250911{
overflow:scroll;
}
#aNav.retake250911::-webkit-scrollbar {
      display: none;
      -webkit-appearance: none;
}

#aNav.retake250911 #screenNav {
    height: auto;
}
#aNav.retake250911 #listContact {
    position: relative;
    bottom: auto;
    left: auto;
}
#aNav.retake250911 #listContact a{
padding-top:18%;
background-size: 100%;
}
#aNav.retake250911 #listContact a.linkMailform{
background-image:url(css_img/iconContactlinkMail2025091101.svg);
}
#aNav.retake250911 #listContact a.linkTel{
background-image:url(css_img/iconContactlinkTel2025091101.svg);
}

@media screen and ( max-width:992px ){

}

/*@media screen and ( min-width:768px ){*/
@media screen and ( min-width:992px ){
	

	#aNav{
		height:var(--headerwide-size)!important;
		opacity:1;
		transform: translateX(0);
		background:none;
		position:absolute;
		left:0;
		top:0;
	}
	
	#aNav #listContact {
		bottom: auto;
		left: auto;
		right:25px;
		top:15px;
		width: auto;
	}
	
	
	#aNav #listContact a {
		width: auto;
		height: 35px;
		line-height:35px;
		padding: 0 5px;
		padding-left:45px;
		margin-right:20px;
		background:none;
		border:none ;
		font-size:23px;
		position:relative;
	}
	#aNav #listContact a:last-child {
		margin-right:0;
	}
	#aNav #listContact a::before {
		content:"";
		position:absolute;
		left:0;
		top:50%;
		transform:translateY(-50%);
		width:33px;
		height:33px;f
		display:block;
		border-radius: 33px;        /* CSS3草案 */  
		-webkit-border-radius: 33px;    /* Safari,Google Chrome用 */
		-moz-border-radius: 33px;   /* Firefox用 */
		background:#fff no-repeat center center;
		background-size:80%;
	}
	#aNav #listContact a.linkTel::before {
		background-image:url(css_img/iconContactlinkTel.svg);
	}
	#aNav #listContact a.linkMailform::before {
		background-image:url(css_img/iconContactlinkMail.svg);
	}
	
	#screenNav{
	height:auto;
	overflow-y:auto;
	}
	
	#aNav.retake250911{
overflow:hidden;
}
#aNav.retake250911 #listContact {
position:absolute;
}
#aNav.retake250911 #listContact a{
padding-top:0;
background-size: 95%;
}
	
}


@media screen and ( min-width:1450px ){

#aNav #listContact {
		bottom: auto;
		left: auto;
		right:45px;
		top:15px;
		width: auto;
	}

#aNav #listContact a {
		width: auto;
		height: 35px;
		line-height:35px;
		padding: 0 5px;
		padding-left:45px;
		margin-right:50px;
		background:none;
		border:none ;
		font-size:23px;
		position:relative;
	}
}


/**********************************************************************************************************************************************************************************************
#glNav(GLナビゲーションボタン)
*************************************************************************************************************************************************************************************************/
#glNav {
padding:0;
padding-top:2.5em;
padding-top:10.0em;
}


#glNav li{
text-align:center;
padding:0;
font-size:1.2em;
margin-bottom:1.6em;
}


/*@media screen and ( min-width:768px ){*/
@media screen and ( min-width:992px ){

#glNav {
padding:0;
position:absolute;
bottom:0;
right:0;
display:flex;
}

#glNav li{
margin:0;
border-left:solid 1px #fff;
}

#glNav a {
display:block;
padding:14px 16px;
}

}



@media screen and ( min-width:1450px ){

#glNav a {
display:block;
padding: 15px 35px;
}

}

/**********************************************************************************************************************************************************************************************
#listNvaCategory(カテゴリーボタン並び)
*************************************************************************************************************************************************************************************************/



#listNvaCategory ,
#listNvaCategory a {
border:solid 1px #fff;
}


#listNvaCategory {
display:flex;
flex-wrap: wrap;
border-right:none;
border-bottom:none;
/*margin-bottom:2.5em;*/
}

#listNvaCategory a {
width:50%;
padding:1.2em 1.5em;
display:block;
border-top:none;
border-left:none;
}

@media screen and ( min-width:768px ){

#listNvaCategory {
display:none;
}

}

/**********************************************************************************************************************************************************************************************
#formSearchKey(キーワード検索)
*************************************************************************************************************************************************************************************************/


#formSearchKey{
padding:2.0em 1.5em;
}


#formSearchKey,
#formSearchKey form,
#formSearchKey input[type="text"]{
transition-property:width;
	transition-duration:0.3s;
	transition-timing-function:ease-in-out;
	transition-delay:0s;
}
#formSearchKey form{
background:#fff;
display:flex;
align-items: center;
justify-content: center;
height:40px;
border-radius: 40px;        /* CSS3草案 */  
-webkit-border-radius: 40px;    /* Safari,Google Chrome用 */
-moz-border-radius: 40px;   /* Firefox用 */
overflow:hidden;
}

#formSearchKey input[type="text"]{
height:35px;
line-height:35px;
border:none!important;
width : -webkit-calc(100% - 45px) ;
width : calc(100% - 45px) ;
}

#formSearchKey input[type="submit"]{
padding:35px 0 0 0;
width:35px;
height:0;
overflow:hidden;
border:none!important;
background:var(--green-color01) url(css_img/iconKeyword.svg) no-repeat center center;
background-size:65%;
border-radius: 35px;        /* CSS3草案 */  
-webkit-border-radius: 35px;    /* Safari,Google Chrome用 */
-moz-border-radius: 35px;   /* Firefox用 */
}


/*@media screen and ( min-width:768px ){*/
@media screen and ( min-width:992px ){
#formSearchKey{
padding:0;
position:absolute;
right:550px;
top:15px;
width:180px;
}
}

@media screen and ( min-width:1450px ){

#formSearchKey{
top:auto;
right:650px;
right:965px;
bottom:10px;
width:142px;
}

}
@media screen and ( min-width:1580px ){

#formSearchKey{
width:225px;
}

}

/**********************************************************************************************************************************************************************************************
#footer(フッター項目)
*************************************************************************************************************************************************************************************************/

#footer{
	background:var(--green-color03);
	color:#fff;
	padding:2.0em 0;
	position:relative;
	overflow:hidden;
}

#footer .frameLawfirm{
	margin-bottom:1.5em;
	padding:0.5em 1.5em;
	padding-top:32px;
	position:relative;
}
#footer .frameLawfirm::before{
content:"";
display:block;
position:absolute;
right:-80px;
top:0;
width:160px;
height:106px;
background:url(css_img/swarow.svg) no-repeat center top;
background-size:100%;
z-index:1;
}

#footer .frameLawfirm .ttl{
margin-bottom:1.2em;
}
#footer .frameLawfirm .ttl img{
width:100%;
}

#footer .frameLawfirm .frame{
padding:1.1em 2.5em;
font-weight:400;
font-size:1.2em;
}

#footer #wordCopy{
	text-align: center;
}


@media screen and ( min-width:768px ){

	#footer{
	min-height:500px;
	}

	#footer .frameLawfirm{
	position:absolute;
	padding-top:0;
	left:85px;
	top:120px;
	width:340px;
	}
	
	#footer .frameLawfirm::before{
right:-135px;
top:-73px;
width:191px;
height:145px;
}
	
	#footer #firmMaps{
	position:absolute;
	right:75px;
	bottom:60px;
	width:520px;
	}
	
	#footer #wordCopy{
	width:340px;
	text-align: center;
	position:absolute;
	left:85px;
	bottom:45px;
	padding:0 1.5em;
	font-size:1.2em;
	}

}



/**********************************************************************************************************************************************************************************************
#contents(ページ内容)
*************************************************************************************************************************************************************************************************/


#contents{
min-height:100vh;
position:relative;
overflow:hidden;
padding-bottom: 4.5em;
}

#contents #pagePunkz{
padding:0.5em 1.1em;
}

#contents .frameTtl{
background:var(--brown-color01);
padding:1.5em 0;
margin-bottom:1.5em;
}
#contents .frameTtl.consul{
overflow:hidden;
position:relative;
}
#contents .frameTtl.consul::before{
background:url(css_img/bgTtlConsul.svg) no-repeat center center;
background-size:100%;
position:absolute;
content:"";
display:block;
width:50%;
height:0;
padding:50% 0 0 0;
left:0;
top:50%;
transform:translateY(-100px);
opacity:0.7;
}

#contents .frameTtl h2{
margin-bottom:0.5em;
border-bottom:solid 1px #fff;
}
#contents .frameTtl small{
display:block;
text-align:center;
}

#contents #btmScrPagetop{
position: absolute;
bottom:0;
right:0.5em;
height:0;
overflow:hidden;
padding:50px 0 0 0;
width:70px;
background:var(--green-color03) url(css_img/btmScrPagetop.svg) no-repeat center bottom;
background-size:90%;
}

#contents p{margin-bottom:2.3em;}

#contents p.last,
#contents li p:last-child{margin-bottom:0;}


#contents .group{
padding:1.5em 0.3em;
margin-bottom:0!important;
}
#contents .group:first-child{
padding-top:0;
}
#contents .group:last-child{
padding-bottom:0;
border-bottom:none;
}


@media screen and ( min-width:768px ){

#contents .frameTtl{
background:var(--brown-color01);
padding:60px 0 35px;
margin-bottom:100px;
}

#contents .frameTtl h2{
font-size:2.1em;
padding-bottom:15px;
margin-bottom:15px;
}
#contents .frameTtl small{
font-size:15px;
}

#contents .frameTtl.consul::before{
width:350px;
padding-top:300px;
left:50px;
top:50%;
transform:translateY(-155px);
}


}

/**********************************************************************************************************************************************************************************************
#pageThanks(サンクス画面)
*************************************************************************************************************************************************************************************************/


#pageThanks strong{
font-size:1.6em;
color:#ff6300;
}





/**********************************************************************************************************************************************************************************************
.archives(アーカイブページ)
*************************************************************************************************************************************************************************************************/

.archive{
margin-bottom:2.5em;
display:flex;
flex-wrap: wrap;
/*justify-content: space-between;*/
justify-content: flex-start;
}


.archive .item{
border:solid 1px #000;
margin:0 5px;
margin-bottom:1.5em;
width:45%;
width : -webkit-calc(50% - 10px) ;
width : calc(50% - 10px) ;
}

.archive .item .photo{
background:#000;
position:relative;
height:0;
padding-top:100%;
overflow:hidden;
}
.archive .item .photo img{
position:absolute;
left:50%;
top:50%;
transform:translate(-50%,-50%);
max-width:none;
min-width:110%;
min-height:110%;/**/
object-fit:cover;
opacity:0.8;
transition-property:opacity,min-width,min-height;
transition-duration:0.3s;
transition-timing-function:ease-in-out;
transition-delay:0s;
}
.archive .item:hover .photo img{
min-width:130%;
min-height:130%;/**/
opacity:1.0;
}

.archive .item .ttl{
background:#000;
font-weight:bold;
  display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.archive .item .ttl a{
display:block;
padding:0.5em 0.8em;
color:#fff;
}

.archive .item .text{
overflow: hidden;
  display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  /* ブラウザがサポートしていない場合のフェールセーフ */
  max-height: 24px;
  max-height:4.5em;
  padding:0.5em 0.6em;
  overflow:hidden;
}
.archive .item .text p{
font-size:0.85em;
overflow:hidden;
height:2.9em;
display: none;
text-overflow: ellipsis;
-webkit-box-orient: vertical;
-webkit-line-clamp: 2;
margin:0!important;
}
.archive .item .text p:first-child{
display:block;
display: -webkit-box;
}
.archive .item .text table{display:none;}





/*カスタム投稿のアーカイブページ表示*/

.archive.ar01{
display:block;
}
.archive.ar01 .item{
border:none;
border-bottom:solid 1px #000;
margin:0;
width:auto;
}
.archive.ar01 .item .ttl{
background:none;
font-size:1.15em;
font-weight:bold;
display: -webkit-box;
text-overflow: ellipsis;
-webkit-box-orient: vertical;
-webkit-line-clamp: 2;
}
.archive.ar01 .item .ttl a{
position:relative;
padding:1.2em;
padding-left:72px;
padding-right:35px;
color:#333;
overflow:hidden;
min-height:52px;
min-height : -webkit-calc(52px + 2em);
min-height : calc(52px + 2em);
}
.archive.ar01 .item .ttl a::before{
content:"";
position:absolute;
left:0;
top:1.25em;
display:block;
width:42px;
height:52px;
background:url(css_img/iconArchiveTax.svg) no-repeat center top;
background-size:100%;
}
.archive.ar01 .item .ttl a:after{
content:"";
position:absolute;
right:0.5em;
top:2.5em;
top:50%;
transform:translate(0,-50%);
display:block;
width:15px;
height:30px;
background:url(css_img/cursorListArcTax.svg) no-repeat center top;
background-size:100%;
}


@media screen and ( min-width:768px ){

.archive .item{
margin:0 25px;
margin-bottom:50px;
width:250px;
}








.archive.ar01 .item .ttl{
font-size:1.45em;
}
.archive.ar01 .item .ttl a{
padding:1.5em;
padding-left:105px;
padding-right:35px;
min-height:52px;
min-height : -webkit-calc(52px + 1.5em);
min-height : calc(52px + 1.5em);
}
.archive.ar01 .item .ttl a::before{
content:"";
position:absolute;
left:0;
top:1.85em;
top:50%;
transform:translate(0,-50%);
display:block;
width:72px;
height:65px;
background:url(css_img/iconArchiveTax.svg) no-repeat center top;
background-size:100%;
}
.archive.ar01 .item .ttl a:after{
content:"";
position:absolute;
right:0.5em;
/*top:2.7em;*/
display:block;
width:21px;
height:45px;
background:url(css_img/cursorListArcTax.svg) no-repeat center top;
background-size:100%;
}



}



/**********************************************************************************************************************************************************************************************
.archive.search(検索結果ページ)
*************************************************************************************************************************************************************************************************/

.search_wind{
border:solid 1px #000;
padding:1.7em 2.1em;
font-weight:bold;
max-width:1200px;
margin:auto;
margin-bottom:5.0em!important;
}

.archive.search{
display:block;
}

.archive.search .item{
border:none;
font-size:1.2em;
border-bottom: solid 1px #a6a6a6;
padding:0 0.5em;
margin-bottom: 2.5em;
width: auto;
}

.archive.search .item .ttl {
background:none;
margin-bottom:0.5em;
display: -webkit-box;
text-overflow: ellipsis;
-webkit-box-orient: vertical;
-webkit-line-clamp: 2;
}
.archive.search .item .ttl a {
color:#000;
padding:0;
}
.archive.search .item .text{
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}

.archive.search .item .text > *{
display:none;
}
.archive.search .item .text > *:first-child{
display:block;
}

.archive.search .item .text {
overflow: hidden;
display: -webkit-box;
text-overflow: ellipsis;
-webkit-box-orient: vertical;
-webkit-line-clamp: 3;
max-height:none;
max-height:none;
padding: 0;
padding-bottom:1.5em;
font-size:0.85em;
}
.archive.search .item .text p {
margin:0;
}


@media screen and ( min-width:768px ){

.search_wind{
font-size:1.35em!important;
padding:1.7em 2.1em;
margin-bottom:5.0em!important;
}

.archive.search .item{
font-size:1.35em;
margin-bottom: 2.5em;
padding:0 20px;
}


}

/**********************************************************************************************************************************************************************************************
#editbox(編集ページ)
*************************************************************************************************************************************************************************************************/
#boxThumbnails{
margin-bottom:3.5em;
}

#editbox{
border-bottom:solid 1px #000;
margin-bottom:4.5em;
font-size:1.1em;
line-height:2.1em;
}

#editbox > *{
margin-bottom:3.5em!important;
}


@media screen and ( min-width:768px ){

#boxThumbnails{
margin-bottom:3.5em;
margin-right:20px;
float:left;
width:400px;
}

#editbox{
margin-bottom:60px;
font-size:1.2em;
}

}




/**********************************************************************************************************************************************************************************************
#innerBox(サイドバー付きフレーム)
*************************************************************************************************************************************************************************************************/

#innerBox{
margin-bottom:5.5em;
}

@media screen and ( min-width:768px ){

#innerBox{
display:flex;
flex-direction: row-reverse;
justify-content: space-between;
flex-wrap: wrap;
}


#innerBox #side{
width:290px;
}

#innerBox #main{
width:60%;
width : -webkit-calc(100% - 340px) ;
width : calc(100% - 340px) ;
}

}



/**********************************************************************************************************************************************************************************************
#side(サイドバー)
*************************************************************************************************************************************************************************************************/

#side .boxListCtchiteki{
margin-bottom:2.2em;
}

#side .boxListCtchiteki .ttl{
margin-bottom:0.5em;
text-align:left;
font-size:1.35em;
padding:0 0 0.5em 2.0em;
border-bottom:solid 1px #c8c8c8;
}


#side ul li::before{
content:"・";
position:absolute;
left:14px;
top:8px
}

#side ul li a{
color:#000;
}



/**********************************************************************************************************************************************************************************************
.pagenation(ページネーション)
*************************************************************************************************************************************************************************************************/

.pagenation .nav-links{
display:flex;
flex-wrap: wrap;
width:100%;
margin-bottom:2.5em;
}

.pagenation .nav-links .page-numbers{
display:block;
margin-right:5px;
min-width:35px;
height:35px;
line-height:35px;
border:solid 1px #000;
padding:0 10px;
text-align:center;
background:#000;
color:#fff;
transition-property:background-color;
transition-duration:0.3s;
transition-timing-function:ease-in-out;
transition-delay:0s;
}
.pagenation .nav-links .page-numbers.current,
.pagenation .nav-links .page-numbers:hover{
text-decoration:none;
background:#fff;
color:#000;
}




/**********************************************************************************************************************************************************************************************
#linkConsult(「不動産トラブルについて・・・・」)
*************************************************************************************************************************************************************************************************/


#linkConsult{
border:solid 1px #000;
background:#fff;
padding:2.0em 1.2em;
font-size:1.1em;
line-height:1.8em;
margin-bottom:2.1em;
}


@media screen and ( min-width:768px ){

#linkConsult{
padding:30px 50px;
font-size:1.3em;
line-height:1.8em;
}

}






/**********************************************************************************************************************************************************************************************
#txtPrivacy
*************************************************************************************************************************************************************************************************/

#txtPrivacy .ttl{
font-size:1.25em;
border-bottom:solid 1px #ddd;
padding-bottom:0.5em;
margin-bottom:1.2em;
}

#txtPrivacy p:last-child{
margin-bottom:0;
}





/**********************************************************************************************************************************************************************************************
#page404
*************************************************************************************************************************************************************************************************/
#page404 {
padding:5.5em 0.8em;
}

#page404 .title {
margin-bottom:2.0em;
}

#page404 .title h2{
color:var(--green-color01);
font-size:2.5em;
margin:0;
}
#page404 .title small{
display:block;
font-size:1.55em;
text-align:center;
}

#page404 .boxListError{
margin-bottom:1.3em;
padding:1.5em 1.8em;
}

#page404 .boxListError li{
font-weight:bold;
font-size:1.1em;
}

#page404 p{
font-size:1.1em;
}



@media screen and ( min-width:768px ){

#page404 .title {
font-size:1.3em;
margin-bottom:3.5em;
}


#page404 .boxListError{
margin-bottom:3.3em;
}

#page404 .boxListError li{
font-size:1.3em;
}

#page404 p{
font-size:1.25em;
}

}

/**********************************************************************************************************************************************************************************************
その他のオブジェクト
*************************************************************************************************************************************************************************************************/


/*アイコンを表示させたい項目を記載するとき*/
.iconbox{
position:relative;
display:flex;
flex-wrap: wrap;
}
.iconbox::before{
content:"";
display:block;
width:125px;
height:125px;
margin:auto;
margin-bottom:1.8em;
border-radius: 125px;        /* CSS3草案 */  
-webkit-border-radius: 125px;    /* Safari,Google Chrome用 */
-moz-border-radius: 125px;   /* Firefox用 */
border:solid 2px #6EB286;
background:url(css_img/iconFutaba.svg) no-repeat center center;
background-size:75%;
background-size:115%;
}
.iconbox > *{
width:100%;
}


@media screen and ( min-width:768px ){



.iconbox > *{
width:500px;
width : -webkit-calc(100% - 290px) ;
width : calc(100% - 290px) ;
font-size:1.2em;
padding-top:0.5em;
}

.iconbox::before{
width:190px;
height:190px;
border-radius: 190px;        /* CSS3草案 */  
-webkit-border-radius: 190px;    /* Safari,Google Chrome用 */
-moz-border-radius: 190px;   /* Firefox用 */
}

}


/*.catch : 文章をインパクトをつけて目立たせる*/

.catch{
font-size:140%;
text-shadow:3px 3px 2px #00000022;
line-height:170%;
}