/*
Theme Name: 原法律事務所
Theme URI: http://hara.lawyer/
Author: Grandroad
Author URI: http://grandroad.co.jp
Description: 
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: 
Text Domain:  Theme
*/

/* =Reset default browser CSS. Based on work by Eric Meyer: http://meyerweb.com/eric/tools/css/reset/index.html
-------------------------------------------------------------- */

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
inout, textarea{
	background: transparent;
    border: 0;
    border-radius: 0;
	margin: 0;
	padding: 0;
	vertical-align: baseline;
	-webkit-text-size-adjust: 100%;
	max-height: 999999px;
}
body {line-height: 1;}

h1, h2, h3, h4, h5, h6 {
	font-size: 100%;
	font-weight: normal;
	overflow: hidden;
	font-family: "TsukuMinPr6-M", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
ol, ul {list-style: none;}

blockquote {quotes: none;}

blockquote:before, blockquote:after {
	content: '';
	content: none;
}
del {text-decoration: line-through;}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

th{font-weight: normal;}

a img {border: none;}

img{vertical-align: bottom;
	width:100%}

.cf:before,
.cf:after{
    content: " "; /* 1 */
    display: table; /* 2 */
}

.cf:after{clear: both;}

/* For IE 6/7 only */
.cf {*zoom: 1;}

/* =Layout
-------------------------------------------------------------- */

html{font-size: 62.5%;}

body{
	font-size: 1.4rem;
	line-height: 2.4rem;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	color: #4c4c4c;
	background-color: #fffdf7;
	-webkit-text-size-adjust: 100%;
}

a{
	text-decoration: none;
	color: #4c4c4c;
}

a:hover{text-decoration: none;}
    
.ifsp{display: none;}
.ifpc{display: block;}

    header{
		display: flex;
		justify-content: space-between;
        width: 100%;
        height: auto;
		padding-top: 80px;
		background-color: #fffdf7;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 1000;
		transition: .3s;
		box-sizing: border-box;
    }

		header.smallmenu{
			height: auto;
			padding-top: 30px;
			padding-bottom: 10px;
		}

        header h1{
			padding: 0 1rem;
            transition: .3s;
			
        }

            header h1 img{
				max-width: 50%;
			}
			.header_img{
				text-align: left;

			}

            header h1 a{transition: .4s;}

                header h1 a:hover{opacity: .7}

        header nav{
			align-items: center;
			max-width: 60%;
            margin-top: 45px;
			position: absolute;
            bottom: 25px;
			right: 80px;
			transition: .3s;
        }


			header.smallmenu nav{bottom: 15px;}

            header li{
                float: left;
                margin-left: 50px;
            }

                header li:first-of-type{margin-left: 0px;}

                header li a{
                    font-size: 1.6rem;
                    transition: .4s;
					border-bottom: 1px solid #fff;
					transition: .3s;
                }

                header li a:hover,
                header li.active a{
					border-bottom: 1px solid #4c4c4c;
					opacity: .6;
				}


.contents_block{padding-top: 230px;}

.contents_block.sub_page{padding-bottom: 50px;}

	.contents_block .header_image{
		width: 100%;
		height: auto;
		margin-bottom: 80px;	
	}

	.business_page .box_title{
		/*position: relative;
		top: 50px;
		opacity: 0;*/
		border-top: 20px solid #fff5e7;
		padding-top: 100px;
	}
	.business_page .box_title h2{
		position: relative;
		top: 50px;
		opacity: 0;
		
	}

		.box_title h1{
			width: 330px;
			height: 54px;
			margin: 0 auto;
			margin-bottom: 45px;
			font-size: 2rem;
			text-align: center;
			line-height: 5.6rem;
			border: 2px solid #4c4c4c;				
		}

		.box_title h2 {
			margin-top: 70px;
			margin-bottom: 70px;
			font-size: 3.6rem;
			line-height: 4rem;
			text-align: center;
		}

.basic_title{margin-bottom: 80px;
			
		}

	.basic_title h1{
		font-size: 4.2rem;
		line-height: 4.6rem;
		text-align: center;
		letter-spacing: 1rem;
		padding-bottom: 0;
		/*border-top: 20px solid #fff5e7;*/
		padding-top: 100px;
		
	}
.lawyer_page .basic_title {
    border-top: 20px solid #fff5e7;
}
.business_page .basic_title {
    border-top: 20px solid #fff5e7;
}
.legalfee_page .basic_title{
	border-top: 20px solid #fff5e7; 
}
.column_page .basic_title{
	border-top: 20px solid #fff5e7; 
}
.access_page .basic_title{
	margin-top: 78px;
	border-top: 20px solid #fff5e7; 
}
.contact_page .basic_title{
	margin-top: 78px;
	border-top: 20px solid #fff5e7; 
}

		.basic_title h1 span{
			display: block;
			margin-top: 15px;
			font-size: 1.6rem;	
			letter-spacing: 0rem;
		}
	


/* トップページ
-------------------------------------------------------------------------- */

.main_vis{
	width: auto;
	/*background: url(images/メインビジュアル.jpeg) no-repeat;
	background-position: center;
	background-size: cover;*/
	position: relative;
	top: 50px;
	opacity: 0;
}
	.main_vis h1{
		/*position: absolute;
		top: 15%;*/
		
		opacity: 0;
	}

	.main_vis h1 img{width: 100%;}
	.info_list {
    width: 100%;
    margin-top: 100px; 
    margin-left: auto;  
    margin-right: auto;
    position: relative;
    text-align: center;
    top: 50px; 
    opacity: 0;
    font-size: 1.6rem;
    line-height: 3.4rem;
    letter-spacing: .4rem;
}

		
.office_info{
	width: 92%;
	max-width: 1000px;
	margin: 0 auto;
	position: relative;
	top: 300px;
	opacity: 0;		
}

	.office_info h1{
		font-size: 1.8rem;
		text-align: center;
		line-height: 3rem;
		margin-top: 30px;
	}

	.office_info ul{margin-top: 65px;}

		.office_info li{
			float: left;
			width: 32%;
			margin-bottom: 2%;
			text-align: center;
			background-color: #ccc;
			position: relative;
			top: 50px;
			opacity: 0;		
		}

			.office_info li:nth-of-type(3n+2){
				margin-left: 2%;
				margin-right: 2%;
			}

			.office_info li a{
				display: block;
				width: 100%;
				color: #fff;
				text-align: center;
				transition: .3s;
			}

			.office_info li a img{width: 100%;}

				.office_info li a::before{
					content: "";
					width: 10px;
					height: 19px;
					background: url(images/index_img_10.png) no-repeat;
 					position: absolute;
					bottom: 30px;
					right: 40px;
				}

			.office_info li a:hover{opacity: .75;}

			.office_info h2{
				width: 100%;
				font-size: 3.6rem;
				line-height: 4.4rem;
				position: absolute;
				top: 50%;
				left: 50%;
				transform: translate(-50%, -50%);
				-webkit-transform: translate(-50%, -50%);
			}

				.office_info span{
					display: block;
					font-size: 2.1rem;
				}

	.top_access{
		margin-top: 100px;
		top: 50px;
	    opacity: 0;	
		display: flex;
		justify-content: center;
	}

.map_block{
	display: flex;
	justify-content: center;
}
	.top_page .map_note{
		top: 50px;
	    opacity: 0;	
	}


/* 弁護士紹介
-------------------------------------------------------------- */
        .lawyer_img{
		width: auto;
	    position: relative;
	    top: 50px;
	    opacity: 0;
	    }

		.lawyer_img h1{
			font-size: 2.8rem;
			line-height: 3.2rem;
			background-color: #F8F8F8;
			padding: 1%;
			position: absolute;
			bottom: 5px;
			left: 70%;
			opacity: 0;	
		}

			.lawyer_img h1 span{
				margin-right: 15px;
				padding-right: 15px;
				float: left;
				font-size: 2rem;
				border-right: 1px solid #808080;
			}

	.lawyer_greeting{
		padding-top: 55px;
		text-align: center;
		position: relative;
		top: 50px;
		opacity: 0;		
	}

		.lawyer_greeting h2{
			margin-bottom: 65px;
			font-size: 3.6rem;
			line-height: 4rem;
			letter-spacing: .4rem;
			position: relative;
			top: 50px;
			opacity: 0;		
		}

		.lawyer_greeting p,
		.lawyer_prof p{
			font-size: 1.8rem;
			line-height: 4rem;
			position: relative;
			top: 50px;
			opacity: 0;				
		}

	.lawyer_prof{
		padding-top: 160px;
		text-align: center;
		position: relative;
		top: 50px;
		opacity: 0;				
	}



/* 取り扱い業務
-------------------------------------------------------------- */

.business_page .header_image{
	/*background: url(images/business_img_01.jpg) no-repeat;
	background-size: cover;*/
}

	.business_page .header_image{
		/*position: relative;
		top: 50px;
		opacity: 0;	*/	
	}

	.biz_list{
		width: 92%;
		max-width: 1070px;
		margin: 0 auto;
	}

		.biz_list li{
			float: left;
			width: 22%;
			margin-right: 4%;
			margin-bottom: 4%;
			position: relative;
			top: 50px;
			opacity: 0;					
		}

			.biz_list li:nth-of-type(4n+4){margin-right: 0;}
		
			.biz_list li img{width: 100%;}
	
			.biz_list li h3{
				height: 70px;
				margin-top: 30px;
				font-size: 3rem;
				text-align: center;
				line-height: 3.4rem;
			}

				.biz_list li h3 span{
					display: block;
					font-size: 1.8rem;
				}

	.biz_other{
		width: 830px;
		margin: 0 auto;
		margin-top: 60px;
		position: relative;
		top: 50px;
		opacity: 0;				
	}

		.biz_other h1{
			margin-bottom: 15px;
			font-size: 3rem;
			line-height: 3.4rem;
			text-align: center;	
		}

		.biz_other p{
			position: relative;
			top: 50px;
			opacity: 0;	
		}


/* 弁護士費用
-------------------------------------------------------------- */

.legalfee_page .header_image{
	/*background: url(images/legalfee_img_01.jpg) no-repeat;
	background-size: cover;*/
}

	.legalfee_page .header_image{
		/*position: relative;
		top: 50px;
		opacity: 0;*/		
	}

	.legalfee_page .basic_title{
		/*position: relative;
		top: 50px;
		opacity: 0;*/		
	}

	.fee_table{
		width: 840px;
		margin: 0 auto;
		/*position: relative;
		top: 50px;
		opacity: 0;*/		
	}

		.legalfee_page table{width: 840px;}

			.legalfee_page table,
			.legalfee_page th,
			.legalfee_page td{
				border: 1px solid #4c4c4c;
				vertical-align: middle;
				font-family:  'Meiryo', 'メイリオ','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro',Verdana,Helvetica,Arial,Sans-Serif;
			}

			.legalfee_page th,
			.legalfee_page td{
				padding: 20px 10px;
				box-sizing: border-box;
				line-height: 2rem;
			}

			.legalfee_page th{
				width: 5%;
				font-size: 2rem;
				color: #fff;
				background: #4c4c4c;
			}

				.legalfee_page tr:first-of-type td:nth-of-type(1){width: 22%;}
				.legalfee_page tr:first-of-type td:nth-of-type(2){width: 13%;}
				.legalfee_page tr:first-of-type td:nth-of-type(3),
				.legalfee_page tr:first-of-type td:nth-of-type(4){
					width: 30%;
					text-align: center;
				}

				.legalfee_page td.fee_biz{
					font-size: 2rem;
					line-height: 2.8rem;		
				}

				.legalfee_page td.fee_title{
					font-size: 1.6rem;
					text-align: center;
				}

	.fee_note{
		width: 840px;
		margin: 0 auto;
		margin-top: 30px;
		position: relative;
		top: 50px;
		opacity: 0;			
	}

/* コラム
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */

.column_page .header_image{
	/*background: url(images/column_img_01.jpg) no-repeat;
	background-size: cover;*/
}

.post_contents{
    width: 100%;
    margin: 0;
    font-size: 0;
} 
     
    .post_block{
        display: block;
        width: 615px;
        margin-right: 0px;
		margin: 0 auto;
		font-family:  'Meiryo', 'メイリオ','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro',Verdana,Helvetica,Arial,Sans-Serif;
    }     
     
        .post_block > section{
            margin-bottom: 100px;
            position: relative;                
        } 
    
        .post_block > section:last-of-type{margin-bottom: 0px;} 
    
    .post_block > section h1{
        width: 100%;
        font-size: 2rem;
        margin-top: 10px;
        margin-bottom: 15px;
        padding-bottom: 15px;
		font-family:  'Meiryo', 'メイリオ','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro',Verdana,Helvetica,Arial,Sans-Serif;
        border-bottom: 1px solid #b3b3b3;
    } 
    
        .post_block > section,div
        .post_block > section > section{font-size: 1.4rem;}
        
        .post_block > section > section{
            padding-bottom: 20px;
            position: relative;
        }
        
        .post_block > section > section img{max-width: 100%;}
        
        .post_block > section > section a{text-decoration: underline;}
        
            .post_block > section > section a:hover{text-decoration: none;}
        
        .post_block > section > a{
            position: absolute;
            bottom: -10px;
            right: 0px;
        }
        
            .post_block a:hover{text-decoration: underline;}
        
    .cat_block{
        display: inline-block;
        width: 345px;
        vertical-align: top;
    }
        
        .cat_block section:first-of-type{margin-bottom: 80px;}
        
        .cat_block h1{
            font-size: 2rem;
            margin-bottom: 15px;
        }
        
        .cat_block ul{border-bottom: 1px solid #b3b3b3;}
        
        .cat_block li{
            padding-top: 20px;
            padding-bottom: 20px;
            border-top: 1px solid #b3b3b3;
        }
        
        .cat_block a{
            display: table-cell;
            height: 40px;
            width: 345px;
            font-size: 1.4rem;
            vertical-align: middle;
            background: url(images/news_img_02.png) no-repeat;
            background-position: right center;
            transition: .3s;
        }
        
        .cat_block a:hover{opacity: .75;}
        
	.news_pager{color: #0791D7;}
	
			.news_pager a:hover{text-decoration: underline;}
		
		.news_pager .pager_next{
			float: left;
			width: 100px;
		}
		
		.news_pager .pager_prev{
			float: right;
			width: 100px;
			text-align: right;
		}

/* = ページ送り
-------------------------------------------------------------- */	

.page_navi{
	width: 100%;
	min-height: 19px;
	margin-top: 100px;
	font-size: 1.3rem;
	text-align: center;
}

	.page_navi span,
	.page_navi a{
		display: inline-block;
		width: 30px;
		height: 30px;
		margin-right: 5px;
		line-height: 30px;
	 	border: 1px solid #4b4b4b;
	 }
	 
		.page_navi span.current,
		.page_navi a:hover{
			background-color: #4b4b4b;
			color: #fff;
			text-decoration: none;
		}


/* アクセス
-------------------------------------------------------------- */
    
    .map_block_access{
		display: flex;
		justify-content: center;
	}
	.map_note{
		width: 100%;
		margin-top: 40px;
		text-align: center;
	}

		.map_note h1{
			margin-bottom: 15px;
			font-size: 2.4rem;
			vertical-align: middle;
		}

			.map_note h1 span{
				margin-left: 20px;
				font-size: 1.4rem;
				vertical-align: middle;
			}
	.parking_block{
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
		margin-top: 100px;
		gap: 20px;
		/*top: 50px;
	    opacity: 0;
		position: relative*/
	}
	.parking_title{
		text-align: center;
		font-size: 2rem;
	}
	.parking_map{
        justify-content: center;
		width: 100%;
		height:auto; 
		box-sizing: border-box;
		
	}

/* お問い合わせ
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */

	

.form_block{
    width: 100%;
    max-width: 725px;
    margin: 0 auto;
    padding-bottom: 70px;
	font-family:  'Meiryo', 'メイリオ','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro',Verdana,Helvetica,Arial,Sans-Serif;
    border-bottom: 1px solid #656565;
}

    .form_block h2{
        width: 100%;
        height: 100%;
        margin: 0;
        margin-bottom: 30px;
        font-size: 2.4rem;
        color: #231815;
        text-align: left;
        line-height: 2.6rem;
        background: none;
    }

    .form_block ul{margin-top: 50px;}
    
        .form_block li{
            margin-bottom: 50px;
            font-weight: bold;
            font-size: 0;
        }
        
            .form_block li:last-of-type{margin-bottom: 0px;}
    
            .form_block li div{
                display: inline-block;
                vertical-align: top;
                font-size: 1.3rem;
            }
    
                .form_block li > div:first-child{
                    width: 28%;
                    margin-top: 5px;
                    position: relative;
                }
                
                    .form_block li > div:first-child span{
                        display: block;
                        width: 34px;
                        height: 18px;
                        margin-top: -9px;
                        font-size: 1.2rem;
                        font-weight: normal;
                        line-height: 1.9rem;
                        text-align: center;
                        color: #fff;
                        background-color: #ed5a24;
                        border-radius: 2px;
                        position: absolute;
                        right: 20px;
                        top: 50%;
                    }
                
                .form_block li > div:last-child{width: 72%;}
                
                    .form_block li div:last-child div{display: inline-block;}
                    
                        .form_block li div:last-child div:first-of-type{margin-right: 27px;}
                
                    .form_block li input[type="text"],
					.form_block li input[type="email"],
					.form_block li input[type="tel"]{
                        height: 30px;
                        width: 100%;
                        padding-left: 10px;
                        font-size: 1.4rem;
                        border: 1px solid #333;
                        box-sizing: border-box;
                    }
                    
                        .form_block li.name input{
                            width: 222px;
                            margin-left: 10px;
                        }

					.form_block li select{
						height: 30px;
						background: #fff;
                        box-sizing: border-box;
						border: 1px solid #333;
                        border-radius: 0;
					}
                    
                    .form_block li textarea{
                        width: 100%;
                        height: 200px;
                        padding: 10px;
                        margin-bottom: 10px;
                        font-size: 1.4rem;
                        border: 1px solid #333;
						background: #fff;
                        box-sizing: border-box;
                        border-radius: 0;
                    }                    
                    
.send_block{
    padding-top: 50px;
    text-align: center;
	font-family:  'Meiryo', 'メイリオ','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro',Verdana,Helvetica,Arial,Sans-Serif;
}

    .send_block a{text-decoration: underline;}    
    
        .send_block a:hover{text-decoration: none;}             

    .send_block div{margin-top: 20px;}

.btn_block{margin-top: 40px;}

    .btn_block input{
        display: inline-block;
        width: 318px;
        height: 60px;
        margin-left: 10px;
        margin-right: 10px;
        font-size: 1.9rem;
        color: #fff;
        text-align: center;
        line-height: 6rem;
        background-color: #7f7f7f;
        border: 0;
        cursor: pointer;
        transition: .3s;
    }

        .btn_block input:hover{opacity: .75;}
        
/* CF7 修正 */

.wpcf7 span.wpcf7-not-valid-tip {display: none;}

.wpcf7 .wpcf7-not-valid{
	display: inline-block;
	background-color: #F2DEDE !important;
	border: 1px solid #EED3D7 !important;
}

.wpcf7 .wpcf7-not-valid:before,
.wpcf7 .wpcf7-not-valid:after{
    content: " "; /* 1 */
    display: table; /* 2 */
}

.wpcf7c-conf{background-color: #efefef !important;}

.wpcf7 .wpcf7-not-valid:after{clear: both;}

.wpcf7 .wpcf7-response-output{
    width: 80%;
    max-width: 500px; 
    margin: 0 auto;
    margin-top: 20px;
    padding: 10px;
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
	font-family:  'Meiryo', 'メイリオ','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro',Verdana,Helvetica,Arial,Sans-Serif;
    font-size: 14px;
    text-align: center;
}
	.wpcf7 .wpcf7-validation-errors,
    .wpcf7 .wpcf7-mail-sent-ng {
        color: #B94A48;
        background-color: #F2DEDE;
        border: 1px solid #EED3D7;
    }
    .wpcf7 .wpcf7-mail-sent-ok {
         display: none !important;
        color: #3A87AD;
        background-color: #D9EDF7;
        border: 1px solid #BCE8F1;
    }

     input[readonly="readonly"]{border: 0;}
     textarea[readonly="readonly"]{
          border: 0;
          resize: none;
     }

	div.wpcf7 .btn_block .ajax-loader{
		display: block;
		margin: 0 auto;
		margin-top: 10px;
	}


/* プライバシーポリシー
-------------------------------------------------------------- */
    
.privacy_page .basic_title{
	padding-top: 100px;
	border-top: 20px solid #fff5e7;
}	

	.privacy_contents{
		width: 725px;
		margin: 0 auto;
		font-family:  'Meiryo', 'メイリオ','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro',Verdana,Helvetica,Arial,Sans-Serif;
	}

		.privacy_contents h1{
			margin-top: 15px;
			margin-bottom: 15px;
			font-family:  'Meiryo', 'メイリオ','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro',Verdana,Helvetica,Arial,Sans-Serif;
			font-weight: bold;
		}

		.privacy_contents h2{
			margin-top: 10px;
			margin-bottom: 10px;
			font-family:  'Meiryo', 'メイリオ','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro',Verdana,Helvetica,Arial,Sans-Serif;
		}

		.privacy_contents ul{
			margin-top: 10px;
			margin-left: 20px;
			list-style: disc;
		}

		.privacy_contents > ul{list-style: none;}

			.privacy_contents > ul > li > h1{margin-left: -20px;}

			.privacy_contents ul li{margin-bottom: 10px;}

			.privacy_contents > ul,
			.privacy_contents ul.procedure{list-style: none;}

				.privacy_contents ul.procedure > li h2{margin-left: -18px;}



/* フッター
-------------------------------------------------------------- */

footer{margin-top: 140px;}

.footer_link{text-align: center;}

	.footer_link a{
		transition: .3s;
		border-bottom: 1px solid #fffdf7;
	}

		.footer_link a:hover{
			border-bottom: 1px solid #4c4c4c;
			opacity: .6;
		}

	.add_block{
		margin-top: 130px;
		padding-top: 100px;
		padding-bottom: 50px;
		background: #fff5e7;
		position: relative;
	}

		.page_top_btn{
			width: 70px;
			height: 70px;
			position: absolute;
			top: -35px;
			left: 50%;
			transform: translateX(-50%);
			-webkit-transform: translateX(-50%);
			z-index: 100;
			cursor: pointer;
			transition: 0.3s;
		}

			.page_top_btn:hover{opacity: .7;}

		.add_block_inner{
			width: 100%;
			max-width: 1000px;
			margin: 0 auto;
		}

			.add_block_inner > img{
				font-display: block;
				float: left;
				margin-top: 10px;
			}

			.add_block_inner > div{
				float: left;
				height: 67px;
				margin-left: 50px;
				padding-top: 15px;
				padding-left: 60px;
				border-left: 1px solid #808080;
			}

				.add_block_inner span{
					display: block;
					margin-bottom: 15px;
					font-size: 3.5rem;
					letter-spacing: .4rem;
				}

.footer_copy{
	margin-top: 50px;
	text-align: center;
	letter-spacing: .5rem;
}
.add_block_inner .footer_logo{
	max-width: 25%;
}

@media only screen and (max-width: 800px) {
	.basic_title h1 {
		padding-top: 50px;
	}
	

/* トップページ
-------------------------------------------------------------------------- */

.main_vis{
	width: 100%; 
	height: auto; 
	/*background: url(images/メインビジュアル.jpeg) no-repeat; 
	background-position: center center; 
	background-size: cover; */
	position: relative;
}

	.main_vis h1{
		width: 45%;
		right: 4%;
	}

	.main_vis p{
		width: auto;
		font-size: 1.6rem;
		line-height: 2.8rem;
		letter-spacing: .4rem;
		position: absolute;
		bottom: 8%;
		right: 4%;
	}

	
}





@media only screen and (max-width: 800px) {
	
	.pc_br{display: none;}

    header{
        width: 100%;
		height: auto;
		padding-top: 0;
		background: #fffdf7;
        position: relative;
        top: auto;
        left: auto;
    }
	
		header.smallmenu{
			height: auto;
			padding-top: 35px;
		}	

        header h1{
            width: 100%;
			padding-top: 30px;
			padding-bottom: 30px;
			text-align: center;
			background: #fffdf7;
			position: relative;
			z-index: 1000;
			box-sizing: border-box;
        }

            header h1 img{
				width: 20%;
				max-width: 50%;
			}

        header nav{
			width: 100%;
            margin-top: -378px;
			position: absolute;
			top: 74px;
            bottom: auto;
			right: auto;
			z-index: 0;
			
        }

			header nav.opened{margin: 0;}

            header li{
                float: none;
				width: 100%;
                margin-left: 0px;
				background: #fffdf7;
            }

                header li:first-of-type{margin-left: 0px;}

                header li a{
					display: block;
					width: 100%;
					padding-top: 15px;
					padding-bottom: 15px;
					text-align: center;
					border-bottom: 0;
                }

                header li a:hover,
                header li.active a{
					border-bottom: 0;
					opacity: 1;
				}

			header div{
                width: 50px;
                height: 50px;
                border: 1px solid #888;
                border-radius: 5px;
				cursor: pointer;
                position: absolute;
                top: 15px;
                right: 15px;
				z-index: 2000;
            }
            
                header div .bar{
                    display: block;
                    width: 30px;
                    height: 2px;
                    background-color: #666;
                    position: absolute;
                    transition: .5s;
                }
                
                    header div .bar:first-of-type{
                        top: 13px;
                        left: 10px;
                    }
                
                    header div .bar:nth-of-type(2){
                        top: 23px;
                        left: 10px;
                    }
                    
                    header div .bar:last-of-type{
                        top: 33px;
                        left: 10px;
                    }
                    
                    header div.active span:first-of-type {
                    	-webkit-transform: translateY(10px) rotate(-45deg);
                    	transform: translateY(10px) rotate(-45deg);
                    }
	
                    header div.active span:nth-of-type(2){
                    	opacity: 0;
                    }
	
                    header div.active span:last-of-type{
                    	-webkit-transform: translateY(-10px) rotate(45deg);
                    	transform: translateY(-10px) rotate(45deg);
                    } 
	
  
.contents_block{padding-top: 0px;}	
	
	.contents_block.sub_page{padding-bottom: 50px;}
	
		.contents_block .header_image{
			width: 100%;
			height: auto;
			margin-bottom: 0;
		}

		.box_title{
			font-size: 1.8rem;
			line-height: 4.6rem;
		}

	.box_title h1{width: 280px;}
	
	.box_title h2{font-size: 2.8rem;}

/* トップページ
-------------------------------------------------------------------------- */

/*.main_vis{min-height: 350px;
}*/

	.main_vis p{
		width: auto;
		padding: 10px;
		font-size: 1.4rem;
		line-height: 2.4rem;
		letter-spacing: .2rem;
		background: rgba(255,255,255,.7);
		position: absolute;
		bottom: 0%;
		right: 3%;
	}

.info_list{
	/*padding-top: 50px;
	padding-bottom: 50px;*/
	font-size: 1.2rem;
	line-height: 2em;
}

	.info_list > div{width: 92%;}


	.info_list div > h1{
		float: none;
		width: 100%;
		margin-top: 0px;
		margin-right: 0px;
		text-align: center;
	}

		.info_list ul {
			float: none;
			width: 	100%;
			margin: 0 auto;
			/* margin-top: 20px; 
			margin-bottom: 20px;*/
			padding-left: 0px;
			padding-top: 20px;
			padding-bottom: 20px;
			font-size: 1.4rem;
			border-top: 1px solid #808080;
			border-left: 0px;
			border-bottom: 1px solid #808080;			
			border-right: 0px;
		}

		.info_list div > a{
			display: block;
			float: none;
			margin: 0 auto;
		}

.office_info{
	display: block;
	padding-top: 0px;
	margin: 0 auto;
}


	.office_info_text{
		font-size: 1.2rem;
		text-align: center;
		line-height: 3rem;
		text-align: center;
	}

	.office_info ul{margin-top: 50px;}

		.office_info li{
			float: left;
			width: 32%;
			margin-bottom: 2%;
			text-align: center;
			background-color: #ccc;
			position: relative;
			transition: .3s;
		}
	
			.office_info li a::before{
				bottom: 20px;
				right: 25px;
			}	

			.office_info h2{
				width: 100%;
				font-size: 3rem;
				line-height: 4rem;
			}

				.office_info span{font-size: 1.8rem;}

/* 弁護士紹介
-------------------------------------------------------------- */

.lawyer_page{}


	.lawyer_img{
		max-height: 500px;
		/*width: 100%;
		height: 460px;
		background: #fff5e7;
		position: relative;*/
	}

		/*.lawyer_img div{
			width: 100%;
			height: 250px;
		}*/

		.lawyer_img img{
			max-width: 500px;
		}

		.lawyer_img h1{
			font-size: 2.4rem;
			line-height: 2.8rem;
			text-align: center;
			position: absolute;
			bottom: 10px;
			left: 70%;
		}

			.lawyer_img h1 span{
				display: block;
				float: none;
				margin-bottom: 10px;
				margin-right: 0px;
				padding-bottom: 10px;
				padding-right: 0px;
				font-size: 2rem;
				border-bottom: 1px solid #808080;
				border-right: 0px solid #808080;
			}

	.lawyer_greeting{
		width: 92%;
		margin: 0 auto;
		padding-top: 35px;
	}

		.lawyer_greeting h2{
			margin-bottom: 45px;
			font-size: 2.6rem;
			line-height: 3rem;
		}

		.lawyer_greeting p,
		.lawyer_prof p{
			font-size: 1.3rem;
			line-height: 2.8rem;
		}

	.lawyer_prof{
		padding-top: 100px;
		width: 92%;
		margin: 0 auto;
	}
	

/* 取り扱い業務
-------------------------------------------------------------- */

.business_page .header_image{
	background: url(images/business_img_01.jpg) no-repeat;
	background-size: cover;
	background-position: top right; 
}

	.business_page .contents_block > h2 {
		margin-top: 50px;
		margin-bottom: 50px;
		font-size: 2.8rem;
		line-height: 4rem;
	}

		.biz_list li{
			float: left;
			width: 30%;
			margin-right: 5%;
		}

	.biz_list li:nth-of-type(4n+4){margin-right: 5%;}


			.biz_list li:nth-of-type(3n+3){margin-right: 0;}
		
			.biz_list li img{width: 100%;}
	
			.biz_list li h3{
				min-height: 40px;
				margin-top: 30px;
				font-size: 2rem;
				line-height: 2.6rem;
			}

				.biz_list li h3 span{
					display: block;
					font-size: 1.2rem;
				}

	.biz_other{
		width: 92%;
		margin: 0 auto;
		margin-top: 0px;
	}

		.biz_other h1{
			margin-bottom: 15px;
			font-size: 2.4rem;
			line-height: 2.8rem;
		}	

	
/* 弁護士費用
-------------------------------------------------------------- */

	.fee_table{
		width: 92%;
		overflow-x: scroll;
	}	
	
		.legalfee_page table{width: 800px;}

			.legalfee_page th{font-size: 1.6rem;}

			.legalfee_page th,
			.legalfee_page td{
				padding: 10px 7px;
			}

				.legalfee_page td.fee_biz{
					font-size: 1.6rem;
					line-height: 2.2rem;
				}

			.legalfee_page th{width: 6%;}

				.legalfee_page tr:first-of-type td:nth-of-type(1){width: 18%;}
				.legalfee_page tr:first-of-type td:nth-of-type(2){width: 10%;}
				.legalfee_page tr:first-of-type td:nth-of-type(3),
				.legalfee_page tr:first-of-type td:nth-of-type(4){
					width: 32%;
					text-align: center;
				}	
	
				.legalfee_page td.fee_title{font-size: 1.4rem;}
	
	.fee_note{width: 92%;}	
	
/* コラム
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */

.post_contents{
    width: 92%;
	margin: 0 auto;
} 
     
    .post_block{
        display: block;
        width: 100%;
        margin-right: 0px;
    }     
     
        .post_block > section{margin-bottom: 80px;} 
    
        .post_block > section:last-of-type{margin-bottom: 0px;} 

    .cat_block{
        display: block;
        width: 100%;
        margin-top: 80px;
    }
        
        .cat_block section:first-of-type{margin-bottom: 50px;}
        
        .cat_block li{
            padding-top: 0px;
            padding-bottom: 0px;
        }
        
        .cat_block a{
            display: table-cell;
            height: 50px;
            width: 750px;
        }	
/* トップページ
-------------------------------------------------------------------------- */	
	.parking_map{
		width: 100%;
		height: auto;
	}
/* お問い合わせ
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */

.form_block{
    width: 92%;
    padding-bottom: 40px;
}

    .form_block h2{
        width: 100%;
        height: 100%;
        margin: 0;
        margin-bottom: 15px;
        font-size: 2.2rem;
        color: #231815;
        text-align: left;
        line-height: 2.6rem;
        background: none;
    }

    .form_block ul{margin-top: 50px;}
    
        .form_block li{margin-bottom: 30px;}
    
            .form_block li div{display: block;}
    
                .form_block li div:first-child{
                    width: 100%;
                    margin-bottom: 10px;
                    position: relative;
                }
                
                    .form_block li > div:first-child span{right: 0px;}
                
                .form_block li div:last-child{
                    width: 100%;
                    line-height: 3rem;
                }
                
                    .form_block li div:last-child div:first-of-type {margin-right: 0px;}
                
                    .form_block li input{
                        height: 30px;
                        width: 100%;
                        padding-left: 10px;
                        font-size: 1.4rem;
                        border: 0;
                        box-sizing: border-box;
                        border-radius: 0;
                    }
                    
                        .form_block li.name input{
                            float: right;
                            width: calc(100% - 30px);
                            -webkit-width: calc(100% - 30px);
                            margin-left: 10px;
                            border-radius: 0;
                        }
                
                            .form_block li.name input:first-of-type{margin-right: 0px;}
                         
                    .form_block li.name textarea{border-radius: 0;}
                              
.send_block{
    width: 92%;
    margin: 0 auto;
    padding-top: 40px;
}

    .btn_block input{
        width: 100%;
        max-width: 318px;
        margin: 0;
        margin-bottom: 20px;
        border-radius: 0;
        -webkit-appearance: none;
    }

        .btn_block input:hover{opacity: .75;}    
		
	
	
/* フッター
-------------------------------------------------------------- */

footer{margin-top: 80px;}

.footer_link{
	width: 92%;
	margin: 0 auto;
}

	.add_block{
		margin-top: 100px;
		padding-top: 70px;
		padding-bottom: 30px;
	}

		.add_block_inner{
			width: 92%;
		}

			.add_block_inner > img{
				float: none;
				margin-top: 0px;
			}

			.add_block_inner > div{
				float: none;
				height: auto;
				margin-top: 20px;
				margin-left: 0px;
				padding-top: 20px;
				padding-left: 0px;
				border-top: 1px solid #808080;
				border-left: 0;
			}

				.add_block_inner span{
					display: block;
					margin-bottom: 15px;
					font-size: 3rem;
				}

.footer_copy{font-size: 1.3rem;}	
	
	
}

@media only screen and (max-width: 640px) {
	
.office_info{padding-top: 80px;}

	.office_info h1{
		font-size: 1.6rem;
		line-height: 2.6rem;
	}
	
		.office_info h1 br{display: none;}

		.office_info li{
			float: left;
			width: 49%;
			margin-bottom: 2%;
			text-align: center;
			background-color: #ccc;
			position: relative;
			transition: .3s;
		}
	
			.office_info li:nth-of-type(3n+2){
				margin-left: 0;
				margin-right: 0;
			}
	
			.office_info li:nth-of-type(2n+2){margin-left: 2%;}		

			.office_info h2{
				width: 100%;
				font-size: 3rem;
				line-height: 4rem;
			}

				.office_info span{font-size: 1.8rem;}
	
.main_vis{min-height: 250px;}

	.main_vis h1{
		width: 40%;
	}
	
	.main_vis p{
		font-size: 1.2rem;
		line-height: 1.8rem;
		letter-spacing: .0rem;
	}
	
	

		.lawyer_img h1{
			font-size: 2rem;
			left: 77%;
		}

			.lawyer_img h1 span{font-size: 1.6rem;}	
		
	
/* 取り扱い業務
-------------------------------------------------------------- */

		.biz_list li{
			float: left;
			width: 48%;
			margin-right: 4%;
			margin-bottom: 30px;
		}

			.biz_list li:nth-of-type(2n+2){margin-right: 0;}	
			.biz_list li:nth-of-type(4n+4){margin-right: 0;}
			.biz_list li:nth-of-type(3n+3){margin-right: 4%;}
			.biz_list li:nth-of-type(6){margin-right: 0;}
		
			.biz_list li img{width: 100%;}
	
			.biz_list li h3{
				min-height: 40px;
				margin-top: 20px;
				font-size: 2rem;
				line-height: 2.6rem;
			}

				.biz_list li h3 span{
					display: block;
					font-size: 1.2rem;
				}
	
	
}



@media only screen and (max-width: 550px) {
	
        header h1{
            width: 100%;
			margin: 0 auto;
			padding-left: 15px;
            transition: .3s;
			text-align: left;
			box-sizing: border-box;
        }

            /*header h1 img{
				width: calc(100% - 100px);
				max-width: 100%;
				vertical-align: middle;
			}*/

            header h1 a{transition: .4s;}

                header h1 a:hover{opacity: .7}
	
				.info_list li div,
				.info_list li a{
					float: none;
				}	

			.office_info h2{
				width: 100%;
				font-size: 2.6rem;
				line-height: 3.4rem;
			}

				.office_info span{font-size: 1.6rem;}	
	
}
