/* CSS Document */
em{
	color:#999;
	font-size:1.05em;
}


:root {
	/* 文字カラー */
	--txt-color: #000000;
	
	/* ベースカラー */
	--base-color:#000000;
	
	/* メインカラー */
	--main-color:#16077B;
	
	/* アクセントカラー */
	--accent-color:#FBEF22;
	
	/* メインカラーのホバー（ボタン等に使用） */
	/*--main-color-hover:#ECE9E4;*/
	--main-color-hover:#50459C;
	
	/* アクセントカラーのホバー（ボタン等に使用） */
	--accent-color-hover:#84DBD3;
	
	/* 文字のホバー */
	--txt-hover:#16077B;
	
	/* ホバー時のアニメーションの時間 */
	--ani-time:.8s;
	
	/* 明朝フォント */
	/*--mincho: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;*/
	--mincho: 'Noto Serif JP', serif;
}



/****************/
/* テンプレート */
/****************/
html {
	scroll-behavior: smooth;
	scroll-padding-top: 180px;
}

body{
	margin:0;
	padding:0;
}

b, strong, .bold{
	font-weight:bold;
}

a{
	color: var(--txt-color);
}

a:hover{
	color:var(--txt-hover);
	transition:var(--ani-time);
}

p{
	font-size:16px;
	line-height: 170%;
}

/* supのズレを解消する */
sup{
	height: 0;
	line-height: 1;
	vertical-align: baseline;
	_vertical-align: bottom;
	position: relative;
	bottom: 1ex;
}

/* ヘッダー用のh1タグ */
header.site-header h1{
	margin:0;
	padding: 0;
	font-size: 12px;
	font-weight: normal;
	color:var(--main-color);
}

h2{
	font-size: clamp(16px, 2vw, 24px);
	border-bottom: none;
	/*line-height:160%;*/
	font-family: var(--mincho);
	font-weight: bold;
	color:var(--main-color);
}

h3{
	border-left:6px solid var(--main-color);
	padding-left:10px;
}

h4:before{
	content:"●";
	color:var(--main-color);
	margin-right:5px;
}

/* ボタン（デフォルト） */
a.button{
	display: block;
	text-decoration: none;
	text-align: center;
	padding:10px;
}

/* ▼パンくずリスト */
.pankuzu{
	width:100%;
	text-align: right;
	margin:15px 0 50px;
	color: var(--main-color);
	font-size:12px;
}

.pankuzu a{
	text-decoration: none;
}

.pankuzu a strong{
	font-weight: normal;
}
/* ▲パンくずリスト */


/* ▼ヘッダー */
header.site-header{
	background: #fff;
	/*display: flex;*/
	position: fixed;
	justify-content: space-between;
	width:100%;
	/*height:80px;*/
	z-index: 9999;
}

header.site-header .headerInner, .inner{
	width:1000px;
	margin:0 auto;
	padding: 0;
}

header.site-header .headerTop{
	background-color: #fff;
}

header.site-header .logo{
	float:left;
	/*width:320px;*/
	/*width:360px;*/
	width:485px;
}

header.site-header .logo img{
	width:100%;
	margin-top:12px;
}

header.site-header .headerTelArea{
	float:right;
	width:250px;
	text-align: right !important;
	margin:0 0 0 auto;
}

header.site-header .headerTelArea .tel{
	font-size:28px;
	color:var(--main-color);
}

header.site-header .headerTelArea .tel i{
	color:var(--main-color);
}

header.site-header .headerTelArea .jikan{
	color:var(--main-color);
	padding-top:14px;
	font-size:14px;
}

.headerTop:after{
	content:"";
	clear: both;
	display: block;
}
/* ▲ヘッダー */


/* ▼メニュー */
.headMenu{
	/*padding:0 14px;*/
	clear:both;
	overflow:hidden;
	/*background-color: #fff;*/
				
	background: linear-gradient(var(--main-color-hover) 50%, var(--main-color));
}

.headMenu .menuInner{
	width:1000px;
	margin:0 auto;
	padding: 0;
}

.headMenu a{
	display: block;
	text-align: center;
	float:left;
	font-size:14px;
	font-weight:bold;
	text-decoration: none;
	width:calc(100% / 6 - 1.4px);
	height:40px;
	padding-top:20px;
	color:#fff;
	border-left:1px solid #ccc;
	background-color:var(--main-color);
}

.headMenu a.last{border-right:1px solid #ccc;}

.headMenu a:hover{
	background-color:var(--main-color-hover);
	color: var(--accent-color);
	transition:var(--ani-time);
}

.headMenu a.double{
	padding-top:15px;
	line-height: 120%;
	padding-bottom:5px;
}
/* ▲メニュー */


/* ▼トップページのスライダー */
.index-slider{
	width:100%;
	/*max-width: 1800px;*/
	text-align: center;
	margin: 0px auto;
	padding-top: 160px;
}

.index-slider .topimg{
	position:relative;
	background-image: url("../img/index/topimg001.jpg");
	background-attachment: fixed;
	background-repeat: no-repeat;
	background-size: cover;
	background-position:top center;
	width:100%;
	height:70vh;
}

/* ios safari用 */
@media screen and (-webkit-min-device-pixel-ratio: 0) {
  _::-webkit-full-page-media, _:future, .index-slider .topimg {
		position:relative;
		background-image: url("../img/index/topimg001ios.jpg");
		background-attachment:inherit;
		background-repeat: no-repeat;
		background-size:cover !important;
		background-position: top center !important;
		width:100%;
  }
}


.index-slider .topimg .pictDesc{
	position: absolute;
	text-align: left;
	top: 20%;
	/*left: 16vw;*/
	left: clamp(20px, 15vw, 50%);
	margin:0px;
	padding:0.6em 1em 1.3em 1em;
	font-size: clamp(24px, 2.2vw, 38px);
	font-weight:bold;
	line-height: 130%;
	/*font-weight: bold;*/
	font-family: var(--mincho);
	/*text-shadow: 2px 2px 2px #333;*/
	/*color: #fff;*/
	color: #544238;
	
	width:50%;
	/*background:rgba(22, 7, 123, .60);*/
	background:rgba(233, 229, 218, .80);
	border-radius: 20px;
	-moz-border-radius: 20px;
	-webkit-border-radius: 20px;
}

.index-slider .topimg .pictDesc strong{
	color:var(--main-color);
	font-size:1.2em;
}

.index-slider .topimg div.pictDesc .pictDescSetumei{
	margin-top: 10px;
	width:90%;
	font-size:16px;
	line-height: 160%;
	font-weight: normal !important;
}

/* ▲トップページのスライダー */



/* ▼コンテンツ部分 */
.site-contents{
	margin: 0 auto;
	/*padding-top: 165px;*/
	width: 1000px;
}
/* ▲コンテンツ部分 */



/* ▼フッター */
/* スマホ用のヘッダーを消しておく */
.sp-footer{
	display: none;
}

.site-footer{
	width:100%;
	/*position: absolute;
	bottom: 0;*/
	text-align: center;
	font-size:12px;
	color: var(--txt-color);
	height:60px;
	padding:60px 0 0 0;
}
/* ▲フッター */




/**************************************/
/* トップページ以外の全ページ共通部分 */
/**************************************/
/* ▼メインタイトル */
.mainTitle{
	/*margin-top:-20px !important;
	margin-bottom:20px;*/
	margin-top:5px;
	overflow:hidden;
	width:100% !important;
	background-position: center;
	background-size:cover;
	text-align: center;
}

.mainTitleWaku{
	position: relative;
	width:1170px;
	margin: 0 auto -7px;
}

.mainTitleWaku img{
	width:100%;
}

/* ▲メインタイトル */


/* ▼テキスト部分 */
.subpage-txtArea{
	margin-bottom: 40px;
}

.subpage-txtArea .photo{
	float: right;
	margin-left: 10px;
}

.subpage-txtArea .chui{
	font-size: 75%;
}
/* ▲テキスト部分 */


/* ▼テーブル部分 */
.subpage-table{
	width:100%;
	border-collapse: collapse;
	border-spacing: 0;
	border-top:1px solid #CCCCCC;
	border-left: 1px solid #CCCCCC;
}

.subpage-table th, .subpage-table td{
	border-right:1px solid #CCCCCC;
	border-bottom:1px solid #CCCCCC;
	padding: 5px;
	font-size: 14px;
}

.subpage-table th{
	text-align: left;
	font-weight: normal;
	background-color:#EEEEEE;
}
/* ▲テーブル部分 */

/* ▼テーブル部分（レスポンシブなし） */
.subpage-table-noresponsive{
	width:100%;
	border-collapse: collapse;
	border-spacing: 0;
	border-top:1px solid #CCCCCC;
	border-left: 1px solid #CCCCCC;
}

.subpage-table-noresponsive th, .subpage-table-noresponsive td{
	border-right:1px solid #CCCCCC;
	border-bottom:1px solid #CCCCCC;
	padding: 5px;
	font-size: 14px;
}

.subpage-table-noresponsive th{
	text-align: left;
	font-weight: normal;
	background-color:#EEEEEE;
}
/* ▲テーブル部分（レスポンシブなし） */


/* ▼お問い合わせへのリンク */
.library-otoiawase{
	display: flex;
	margin-top:40px;
	padding: 10px;
	/*background-color:#E7E6F1;*/
	border:1px solid #D8D8D8;
	border-radius: 6px;
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
}

.library-otoiawase .title{
	position: relative;
	width:35%;
	background-image: url("../img/default/otoiawaseBg.jpg");
	background-repeat: no-repeat;
	background-size:contain;
}

.library-otoiawase .title .txt{
	position: absolute;
	top:40%;
	left: 40%;
	background-color:var(--main-color);
	color:#fff;
	font-size: 20px;
	line-height: 120%;
	font-weight: bold;
	font-family: var(--mincho);
	text-align: center;
	padding:10px;
}

.library-otoiawase .telArea{
	width:65%;
}

.library-otoiawase .telArea a.tel{
	text-decoration: none;
	font-size:32px;
	font-weight: bold;
	color:var(--main-color);
	font-family: var(--mincho);
}

.library-otoiawase .telArea a.tel:before{
	content:"";
	display: inline-block;
	width: 32px;
	height: 32px;
	background-image: url(../img/default/telephone-call.png);
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;
	top: 5px;
	margin: 0 5px 0 0;
	padding: 8px 0;
	background-position: 0 6px;
}

.library-otoiawase .telArea .buttonForm{
	background-color:var(--accent-color);
}

.library-otoiawase .telArea .buttonForm:hover{
	background-color:var(--accent-color-hover);
}
/* ▲お問い合わせへのリンク */


/****************/
/* index        */
/****************/
/* ▼メインテキスト */
.index-mainTxt{
	overflow: hidden;
	margin-top:40px;
	margin-bottom:40px;
	padding-bottom:20px;
}

.index-mainTxt h2{
	font-size: clamp(13px, 1.5vw, 18px);
	/*font-size:18px;*/
	border-bottom: none;
	line-height:160%;
	font-family: var(--mincho);
	font-weight: bold;
	color:var(--main-color);
}

.index-mainTxt h2 strong{
	font-size: clamp(16px, 2vw, 24px);
	/*font-size:24px;*/
}

.index-mainTxt img.index-mainTxt-img01{
	float:right;
	width:40%;
	margin:0 0 10px 40px;
}
/* ▲メインテキスト */

/* ▼お客様に選ばれる理由 */
.index-riyuu{
	margin-bottom:40px;
}

.index-riyuu .index-riyuu-flex{
	display: flex;
	flex-wrap: wrap;
}

.index-riyuu .index-riyuu-flex .index-riyuu-waku{
	width:calc(100% / 3 - 16px);
	border:1px solid var(--main-color);
	margin-bottom: 20px;
	background: #f1f1f1;
}

.index-riyuu .index-riyuu-flex .index-riyuu-waku:not(:nth-child(3n)){
	margin-right:20px;
}

.index-riyuu .index-riyuu-flex .index-riyuu-waku .title{
	font-size: 1.2em;
	background: var(--main-color);
	padding: 4px;
	text-align: center;
	color: #FFF;
	letter-spacing: 0.05em;
}

.index-riyuu .index-riyuu-flex .index-riyuu-waku .txt{
	margin: 10px;
}
/* ▲お客様に選ばれる理由 */


/* ▼住所など */
.index-addArea{
	display: flex;
	margin-bottom:40px;
}

.index-addArea .index-addArea-map{
	width:60%;
	margin-right:2%;
}

.index-addArea .index-addArea-map .google-map{
	position: relative;
	margin-top:5px;
	padding-bottom: 75%;
	height: 0;
	overflow: hidden;
}
 
.index-addArea .index-addArea-map .google-map iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}

.index-addArea .index-addArea-add{
	width:38%;
}

/* ▲住所など */

/* ▼お知らせ */
.infoArea {
	width:100%;
	margin: 0 0 40px 0;
	padding-bottom: 0;
	overflow: hidden;
}

.infoArea .frame {
	height:250px;
	overflow: auto;
	margin: 0;
	padding: 5px;
}
.infoArea .frame table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
}
.infoArea .frame td.date {
	padding: 5px 3px;
	font-size: 16px;
	font-weight: normal;
	width: 20%;
	text-align: left;
	border-bottom: 1px dotted #7F7F7F;
}

.infoArea .frame td.txt {
	padding: 5px 3px;
	font-size: 16px;
	line-height: 120%;
	width: 78%;
	border-bottom: 1px dotted #7F7F7F;
}

.infoArea .link{
	text-align: right;
	font-size:12px;
}

.infoArea .link:after{
	content: ">";
	margin-left:3px;
}
/* ▲お知らせ */



/***********************/
/* 事務所概要(company) */
/***********************/
/* ▼あいさつ */
.company-aisatu{
	margin-bottom: 40px;
}
/* ▲あいさつ */

/* ▼事務所概要 */
table.company-data{
	width:100%;
	border-collapse: collapse;
	border-spacing: 0;
	margin-bottom:40px;
}

table.company-data th, table.company-data td{
	padding:20px 40px;
	border-bottom:1px solid var(--base-color);
}

table.company-data th{
	width:20%;
	text-align: left;
}

table.company-data td .google-map{
	position: relative;
	margin-top:5px;
	padding-bottom: 75%;
	height: 0;
	overflow: hidden;
}
 
table.company-data td .google-map iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}
/* ▲事務所概要 */


/***********************/
/* 取扱業務(handling)  */
/***********************/
.handling-index-waku{
	display: flex;
	flex-wrap: wrap;
}

.handling-index-waku a{
	display: block;
	width:calc(100% / 3 - 30px);
	margin: 0 0 10px 0;
	padding: 10px 10px;
	background: -webkit-linear-gradient(top, #FCFDFD, #E2E2E2);
	background: -moz-linear-gradient(top, #FCFDFD, #E2E2E2);       /* -moz-liner-gradient(to bottom, #000, #fff); */
	background: -o-linear-gradient(top, #FCFDFD, #E2E2E2);       /*   -o-liner-gradient(to bottom, #000, #fff); */
	background: linear-gradient(to bottom, #FCFDFD, #E2E2E2);
	background-color: #F2F2F2;
	
	text-decoration: none;
	
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border: 1px solid #D8D8D8;
	-webkit-box-shadow: 1px 1px 4px rgba(0,0,0,.5);
	-moz-box-shadow: 1px 2px 4px rgba(0,0,0,.5);
	box-shadow: 1px 1px 4px rgba(0,0,0,.5);
	-ms-filter: "progid:DXImageTransform.Microsoft.DropShadow(color=#cccccc,offx=2,offy=2)"; /* IE8 */
}

.handling-index-waku a:not(:nth-child(3n)){
	margin-right: 10px;
}

.handling-index-waku h3 {
	background-position: 0 7px;
	background-color: transparent;
	font-size: 22px;
	/*font-weight: bold;*/
	color: #333333;
	margin: 0 0 8px 0 !important;
	padding: 0 0 0 12px !important;
}
.handling-index-waku p {
	font-size: 14px;
	line-height: 150%;
	color: #646769;
	margin: 5px 0 0 0;
	padding: 0;
}

.handling-index-waku img{
	width:100%;
}


.handling-title{
	margin:20px 0 40px;
	font-size:28px;
	font-weight: bold;
}

.handling-title strong{
	color:var(--main-color);
	font-size: 1.2em;
}



.handling-ol{
	display:block;
	padding:10px 10px 10px 40px;
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border:1px solid #D8D8D8;
	background-color:#E7E6F1;
}

.handling-check {
	padding:20px 20px 10px;
	margin-bottom: 40px;
	border:3px solid #D8D8D8;
	background-color:#E7E6F1;
	border-radius: 8px;
	-moz-border-radius: 8px;
	-webkit-border-radius: 8px;
}

.handling-check .title{
	font-size:22px;
	color:var(--main-color);
	font-family: var(--mincho);
	font-weight: bold;
	line-height: 120%;
}

.handling-check ul{
	list-style-type: none;
}

.handling-check li{
	position: relative;
	font-size: 18px;
	margin-bottom: 10px;
}

.handling-check li::after{
	content: '';
	display: block;
	position: absolute;
	top: .5em;
	left: -1.5em;
	width: 10px;
	height: 5px;
	border-left: 2px solid #25AF01;
	border-bottom: 2px solid #25AF01;
	transform: rotate(-45deg);
}


/*****************/
/* 費用(expense) */
/*****************/
.expense th{
	width:60%;
}

.expense td{
	width:40%;
}


/**********************/
/* ご相談の流れ(flow) */
/**********************/
.flow-stepbar {
	margin: 0 auto;
	width: 96%;
}

.flow-stepbar .stepbarwrap {
	margin: 2em 0;
	position: relative;
}

.flow-stepbar .stepbarwrap .steptitle {
	display: inline-flex;
	align-items: center;
}

.flow-stepbar .stepbarwrap .steptitle .stepcircle {
	display: inline-block;
	width: 3em;
	height: 3em;
	content: "";
	border-radius: 50%;
	background-color: var(--main-color);
	color: #fff;
	text-align: center;
}

.flow-stepbar .stepbarwrap .steptitle .stepcircle span {
	display: inline-block;
	line-height: 1.2em;
	font-size: 0.8em;
	font-weight: bold;
	position: relative;
	top: 0.9em;
}

.flow-stepbar .stepbarwrap .steptitle .title {
	margin: 0.5em;
	font-weight: bold;
	font-size: 1.2em;
}

.flow-stepbar .stepbarwrap .steptxt {
	padding-left: 3.5em;
}

.flow-stepbar .stepbarwrap .steptxt p {
	margin-top:0;
	font-size: 0.98em;
}

.flow-stepbar .stepbarwrap .steptxt img.wakuImg{
	float:right;
	width:30%;
	margin-left:20px;
	margin-bottom:20px;
	/*width:30%;*/
	border-radius: 50px;
	-moz-border-radius: 50px;
	-webkit-border-radius: 50px;
}


.flow-stepbar .stepbarwrap .stepline {
	width: 1px;
	height: calc(100% + 1em);
	background-color: var(--main-color);
	position: absolute;
	top: 1em;
	left: 1.5em;
	z-index: -1;
}



.stepbarwrap:last-of-type .stepline:last-of-type {
	display: none;
}





/**************************/
/* お問い合わせ (contact) */
/**************************/
.contact-waku .formHead, .contact-waku .formFoot{
	text-align: center;
}

.contact-waku .contact-table sup.need{
	font-size:10px;
	color: #ff0000;
}

.contact-waku .contact-table ::placeholder{
	color:#ccc;
}

.contact-waku .contact-table span.sysCaution{
	font-weight:bold;
	color:#cc0000;
}

.contact-waku .contact-worksheet label{
	display: block;
}

.contact-waku input.mailWakuButton{
	width:200px;
	margin-top:10px;
	padding:10px;
	font-size:16px;
}



@media (max-width: 1016px) {
	/****************/
	/* テンプレート */
	/****************/
	body{
		min-height: 100vh;
		position: relative;
		margin-bottom:70px;
	}
	
	header.site-header h1{
		font-size: 10px;
		line-height: 120%;
	}
	
	/* ▼メインタイトル */
	/*.mainTitle{
		margin-top:0 !important;
		padding:20px 0;
	}
	
	.mainTitleWaku{
		width:100%;
		height:60px;
	}
	
	.mainTitleWaku h1{
		text-align: center;
		width:100%;
		padding:5px 0;
	}*/
	/* ▲メインタイトル */
	
	/* ▼ヘッダー */
	header.site-header{
		height:100px;
	}
	
	header.site-header .headerInner, .inner{
		width:100%;
	}
	
	header.site-header .headerTelArea{
		display: none;
	}
	
	header.site-header .headMenu{
		display: none;
	}
	/* ▲ヘッダー */
	
	/* ▼トップページのスライダー */
	.index-slider{
		padding-top: 100px;
	}
	
	.index-slider .topimg{
		background-size: contain;
		background-position:top center;
		height:40vh;
	}
	
	.index-slider .topimg .pictDesc{
		text-align: center;
		top: 15%;
		left: 5%;
		padding:1.3em 1em 1.3em 1em;
		font-size: clamp(24px, 1.8vw, 32px);
	}
	
	
	
	.slider div.pictDesc{
		text-align: center;
		width:100%;
		top: 55%;
		left: 50%;
		transform: translate(-50%, -50%);
		-webkit-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
		margin:0;
		padding:0;
		font-size: clamp(20px, 2vw, 32px);
		/*height: 0.5em; */
	}
	
	div.pictDesc .pictDescSetumei{
		display: none !important;
	}
	/* ▲トップページのスライダー */
	
	
	/* ▼メインタイトル */
	.mainTitle{
		/*margin-top:-20px !important;
		margin-bottom:20px;*/
		/*margin-top:-100px;*/
		overflow:hidden;
		width:100% !important;
		background-position: center;
		background-size:cover;
		text-align: center;
	}

	.mainTitleWaku{
		width:100%;
		margin: 0 auto -7px;
	}

	.mainTitleWaku img{
		width:100%;
	}
	/* ▲メインタイトル */
	
	/* ▼コンテンツ部分 */
	.site-contents{
		width: calc(100% - 40px) !important;
		margin:0 auto;
		/*padding-top:110px;*/
	}
	/* ▲コンテンツ部分 */
	
	
	/* ▼スマホ用のフッター */
	.sp-footer{
		display: block;
		z-index: 10;
		position: fixed;
		bottom:0;
		width:100%;
		height:70px;
		background-color:#fff;
		border-top:1px dotted var(--base-color);
		padding-top:10px;
	}
	
	.sp-footer a.buttonFooterHanshin{
		float:left;
		margin-top:20px;
	}
	
	.sp-footer a.buttonFooterHanshin img{
		width:130px;
	}
	
	.sp-footer .buttonFooterButtonArea{
		float: right;
		width:140px;
		height: 70px;
		text-align: right;
	}
	
	.sp-footer .buttonFooterButtonArea a.buttonFooterContact{
		display: inline-block;
		float: left;
		width:55px;
		height:55px;
		margin-right:5px;
		padding:5px;
		text-align: center;
		background-color: var(--main-color);
		color: #fff;
		text-decoration: none;
	}
	
	.sp-footer .buttonFooterButtonArea a.buttonFooterContact:hover{
		background-color:var(--main-color-hover);
		transition:var(--ani-time);
	}
	
	.sp-footer .buttonFooterButtonArea a.buttonFooterContact .fas{
		display: block;
		font-size:40px;
	}
	
	.sp-footer .buttonFooterButtonArea a.buttonFooterContact span{
		font-size:12px;
	}
	
	.sp-footer .buttonFooterButtonArea a.buttonFooterTel{
		display: inline-block;
		float: left;
		width:55px;
		height:55px;
		padding:5px;
		text-align: center;
		background-color: var(--main-color);
		color: #fff;
		text-decoration: none;
	}
	
	.sp-footer .buttonFooterButtonArea a.buttonFooterTel:hover{
		background-color:var(--main-color-hover);
		transition:var(--ani-time);
	}
	
	.sp-footer .buttonFooterButtonArea a.buttonFooterTel .fas{
		display: block;
		font-size:40px;
	}
	
	.sp-footer .buttonFooterButtonArea a.buttonFooterTel span{
		font-size:12px;
	}
	
	.sp-footer:after{
		content:"";
		display: block;
		clear: both;
	}
	/* ▲スマホ用のフッター */
	
}

@media screen and (max-width: 960px) {
	/**********************/
	/* ご相談の流れ(flow) */
	/**********************/
	.flow-stepbar {
		width: 90%;
	}
}

@media (max-width: 740px) {
	/****************/
	/* テンプレート */
	/****************/
	html {
		scroll-padding-top: 120px;
	}
	
	h2{
		font-size:18px;
	}
	
	h2 span.sub-title{
		font-size:18px;
		bottom:-2px;
	}
	
	/* ▼ヘッダー */
	header.site-header .logo{
		width:70%;
	}
	
	header.site-header .logo img{
		width:100%;
		margin-top:20px;
	}
	/* ▲ヘッダー */
	
	
	/* ▼トップページのスライダー */
	.index-slider{
		padding-top: 100px;
	}
	
	.index-slider .topimg{
		background-image: url("../img/index/topimg001Sp.jpg");
		background-size: contain;
		background-position:middle center;
		height:50vh;
	}
	
	.index-slider .topimg .pictDesc{
		text-align: left;
		/*top: 60%;*/
		top:inherit;
		bottom:5%;
		width:80%;
		padding: 15px;
	}
	
	.slider div.pictDesc{
		text-align: center;
		width:100%;
		margin:0;
		padding:0;
		font-size: clamp(20px, 2vw, 32px);
		/*height: 0.5em; */
	}
	/* ▲トップページのスライダー */
	
	
	/**************************************/
	/* トップページ以外の全ページ共通部分 */
	/**************************************/
	/* ▼テーブル部分 */
	.subpage-table th, .subpage-table td{
		display: block;
		width:calc(100% - 11px);
	}
	/* ▲テーブル部分 */
	
	/* ▼メインタイトル */
	.mainTitle{
		min-height: 40px;
	}
	
	.mainTitleWaku{
		width:100%;
	}
	/* ▲メインタイトル */
	
	
	/* ▼お問い合わせへのリンク */
	.library-otoiawase{
		display: block;
	}
	
	.library-otoiawase .title{
		position:static;
		width:100%;
		background-image:none;
	}
	
	.library-otoiawase .title .txt{
		position: static;
		background-color:var(--main-color);
		color:#fff;
		font-size: 20px;
		line-height: 120%;
		font-weight: bold;
		font-family: var(--mincho);
		text-align: center;
		padding:10px;
		margin-bottom: 10px;
	}
	
	.library-otoiawase .title .txt .br-pc{
		display: none;
	}

	.library-otoiawase .telArea{
		width:100%;
		text-align: center;
	}
	/* ▲お問い合わせへのリンク */
	
	
	/****************/
	/* index        */
	/****************/
	/* ▼メインテキスト */
	.index-mainTxt img.index-mainTxt-img01{
		float:none;
		width:100%;
		margin:0 0 10px 0;
	}
	/* ▲メインテキスト */
	
	
	/* ▼お客様に選ばれる理由 */
	.index-riyuu .index-riyuu-flex{
		display: block;
	}
	
	.index-riyuu .index-riyuu-flex .index-riyuu-waku{
		width:100%;
		margin-bottom:20px;
	}
	
	.index-riyuu .index-riyuu-flex .index-riyuu-waku:not(:nth-child(3n)){
		margin-right:0;
	}
	
	.index-riyuu .index-riyuu-flex .index-riyuu-waku .title{
		font-size: 1em;
	}
	/* ▲お客様に選ばれる理由 */
	
	/* ▼住所など */
	.index-addArea{
		display: block;
	}

	.index-addArea .index-addArea-map{
		width:100%;
		margin-right:0;
		margin-bottom:20px;
	}

	.index-addArea .index-addArea-add{
		width:100%;
	}
	/* ▲住所など */
	
	/* ▼お知らせ */
	.infoArea .frame td.date {
		display: block;
		width:100%;
		background-color:#efefef;
		
		padding: 5px 0;
	}

	.infoArea .frame td.txt {
		display: block;
		width:100%;
		
		padding: 5px 0;
	}
	/* ▲お知らせ */
	
	
	
	/***********************/
	/* 事務所概要(company) */
	/***********************/
	/* ▼事務所概要 */
	table.company-data th, table.company-data td{
		display: block;
		width:calc(100% - 20px);
		margin:0 auto;
		padding:10px 10px;
	}
	
	table.company-data th{
		background-color:#efefef;
	}
	/* ▲事務所概要 */
	
	
	/***********************/
	/* 取扱業務(handling)  */
	/***********************/
	.handling-index-waku{
		display: block;
	}

	.handling-index-waku a{
		width:calc(100% - 20px);
	}

	.handling-index-waku a:not(:nth-child(3n)){
		margin-right: 0;
	}
	
	
	/**************************/
	/* お問い合わせ (contact) */
	/**************************/
	.contact-waku .policy-contents{
		width:95%;
		height:30vh;
	}

}


@media (max-width: 430px) {
	/* ▼ヘッダー */
	/*header.site-header .logo{
		width:70%;
	}*/
	
	header.site-header .logo img{
		margin-top:30px;
	}
	/* ▲ヘッダー */
	
	/* ▼トップページのスライダー */
	.index-slider .topimg .pictDesc{
		font-size: clamp(22px, 1.3vw, 28px);
		/*top: 60%;
		bottom:5%;*/
	}
	/* ▲トップページのスライダー */
	
	/**********************/
	/* ご相談の流れ(flow) */
	/**********************/
	.flow-stepbar .stepbarwrap .steptxt img.wakuImg{
		float:none !important;
		margin-left:0 !important;
		width:100% !important;
		border-radius: 50px;
	-moz-border-radius: 50px;
	-webkit-border-radius: 50px;
	}
}