/* ==== common.css ==== */
@charset "UTF-8";

*{ letter-spacing: 0; }

html{ overflow-y: scroll; }

body, div, ol, ul, li, h1, h2, h3, h4, h5, form, input, p{
	margin: 0;
	padding: 0;
}

caption, h1, h2, h3, h4, h5{
	font-style: normal;
	font-weight: normal;
}

h1, h2, h3, h4, h5, small{
	font-size: 100%;
	font-weight: normal;
}

img{ border: 0; }

caption{ text-align: left; }

a{ text-decoration: none; }

a:hover,
a:active{ outline: 0; }

img{
	border: 0;
	vertical-align: bottom;
	-ms-interpolation-mode: bicubic;
}

strong{ font-weight: bold; }

div{ word-wrap: break-word; }

sup{
	position: relative;
	line-height: 0;
	vertical-align: baseline;
	font-size: 75%;
}
sup{ top: -0.5em; }

form{ margin: 0; }

button, input, textarea{
	margin: 0;
	font-family: sans-serif;
	font-size: 100%;
	vertical-align: baseline;
}

* html button,
* html input,
* html select,
* html textarea{ vertical-align: middle; } 

*+html button,
*+html input,
*+html select,
*+html textarea{ vertical-align: middle; } 

button,input{ line-height: normal; }

* html button,
* html input{ overflow: visible; } 

*+html button,
*+html input{ overflow: visible; } 

textarea{
	overflow: auto;
	vertical-align: top;
}

input[type="text"],textarea{ padding: 2px; }

button,
input[type="button"],
input[type="reset"],
input[type="submit"]{ -webkit-appearance: button; }

button::-moz-focus-inner,
input::-moz-focus-inner{
	margin: 0;
	padding: 0;
	border: 0;
}

body{
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
	font-size: 72%; /* 2026-08: 62.5%から引き上げ、サイト全体の文字サイズを底上げ（em指定は全てこの基準からの相対値） */
	font-style: normal;
	line-height: 1.5;
}

table{
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	table-layout: fixed;
	word-break: break-all;
	word-wrap: break-word;
}

* html table{ border-collapse: collapse; } 
*+html table{ border-collapse: collapse; } 

* html hr{ margin: 0 0 1.2em; } 
*+html hr{ margin: 0 0 1.2em; }

/* ==== layout.css ==== */
@charset "UTF-8";

html,body{ width: 100%; }

.col1 #container,
.col1 #top,
.col1 #header,
.col1 #global-nav,
.col1 #main,
.col1 #main-image,
.col1 #footer,
.col1 .copyright{
	width: 100%;
	min-width: 950px;
}

.col1 #top-in,
.col1 #header-in,
.col1 #main-in,
.col1 #main-image-in,
.col1 #footer-in,
.col1 .copyright p{
	/* 2026-09: 固定幅1440pxだと1440px未満(1024〜1439pxの一般的なノートPC画面など)で
	   横にはみ出して間延びして見えるため、max-widthに変更。
	   また、1440pxは画面幅ぴったりで左右の余白がなかったため1200pxに調整 */
	width: 100%;
	max-width: 1200px;
	margin: auto;
}

.col1 #main-contents{ width: 100%; }

.col2r #container,
.col2r #top,
.col2r #header,
.col2r #global-nav,
.col2r #main,
.col2r #main-image,
.col2r #footer,
.col2r .copyright{
	width: 100%;
	min-width: 950px;
}

.col2r #top-in, .col2r #header-in, .col2r #main-in, .col2r #main-image-in, .col2r #footer-in, .col2r .copyright p{
	/* 2026-09: TOPページに幅を揃えつつ、一般的なPC画面で左右に余白ができるよう1200pxに調整 */
	width: 100%;
	max-width: 1200px;
	margin: auto;
}

.col2r #sidebar{ width: 24.5%; }

.col2r #main-and-sub{ width: 71.8%; }

.col2r #main-and-sub{ float: right; }
.col2r #sidebar{ float: left; }

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

#container, #top, #header, #global-nav, #breadcrumbs, #main-image, #main, #footer, .copyright{
	width: 100%!important;
	min-width: 100%!important;
}

#top-in, #header-in, #breadcrumbs ol, #main-image-in, #main-in, #footer-in, .copyright p{
	width: 98%!important;
	margin: 0 1%!important;
}

#sub-contents,
#sidebar,
#main-and-sub,
#main-contents{
	float: none!important;
	width: 100%!important;
}

#main-image img{ width: 100%!important; }

}

/* ==== design.css ==== */
/* 2026-08: 元は@importがここにあったが、@importはスタイルシートの先頭以外では
   ブラウザに無視されるため、フォントが実際には読み込まれず「メイリオ」にフォール
   バックしていた。ファイル先頭（2行目）に移動済み。 */

#container{
	background:#F5F5F5;}

body{
	color: #333;
	font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Verdana, sans-serif;
}

a{ text-decoration: underline; }

a:link,
a:visited{ color: #39f; }
a:hover,
a:active{ color: #f60; }

#container{
	position: relative;
}

/* 2026-09: PC画面(1024px以上)でページ全体がまだ少し大きく感じるとのことなので、
   ブラウザの90%表示相当になるようページ全体を縮小する */
@media screen and (min-width: 1024px) {
  #container {
    zoom: 0.9;
  }
}

#top{ 
	position: absolute;
	top: 0;
	background: url(../images/image.jpg) ;
	font-size: 1.2em;
}

#top-in{
	position: relative;
	padding: 20px 0 10px!important;
}

#header{
	background: url(../images/image.jpg) ;
	font-size: 1.2em;
	position: sticky;
	top: 0;
	z-index: 1000;
}

#header-in{ padding: 0.5em 0; }

#header #header-title{
	float: left;
	width: 59.5%; 
}

#header .header-logo{
	margin-bottom: 0.2em;
	font-size: 2.0em;
}

a:hover img.overwhite{
    cursor:pointer;
    filter: alpha(opacity=60);        
    -ms-filter: "alpha(opacity=60)";  
    -moz-opacity:0.6;                 
    -khtml-opacity: 0.6;              
    opacity:0.6;
    zoom:1;
}

.header-logo a{ text-decoration: none; }

.header-logo a:link,
.header-logo a:visited{ color: #333; }
.header-logo a:hover,
.header-logo a:active{ color: #f60; }

#header-in #header-text{
	float: right;
	width: 25%; 
	color: #333;
}

/* 2026-08: ヘッダー右上を画像からテキスト＋アイコンボタンのデザインに変更 */
.header-cta{
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 12px;
}
.header-cta-text{
	text-align: right;
}
.header-cta-label{
	font-size: 0.94em;
	font-weight: bold;
	color: #222;
	margin: 0 0 2px;
	white-space: nowrap;
}
.header-cta-phone{
	display: block;
	font-size: 1.8em;
	font-weight: 900;
	color: #1a1a1a!important;
	text-decoration: none;
	font-family: "Roboto", "Arial Black", sans-serif;
	white-space: nowrap;
	letter-spacing: 0.02em;
}
.header-cta-phone:hover{ color: #0168b3!important; }
.header-cta-phone i{ margin-right: 4px; }
.header-cta-icons{
	display: flex;
	gap: 8px;
	flex: 0 0 auto;
}
.header-cta-icon{
	width: 42px;
	height: 42px;
	border-radius: 10px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.5em;
	color: #fff!important;
	text-decoration: none;
}
.header-cta-icon:hover{ opacity: 0.85; }
.header-cta-icon-mail{ background: linear-gradient(135deg, #04375a 0%, #021f33 100%); }
.header-cta-icon-line{ background: #4cc764; }
@media (max-width: 768px) {
	.header-cta-label{ font-size: 0.7em; }
	.header-cta-phone{ font-size: 1.2em; }
	.header-cta-icon{ width: 36px; height: 36px; font-size: 1.3em; }
}

#header h1{
text-shadow: 1px 1px 1px #A9A9A9;
font-weight:bold;
padding:2px 0 2px 10px;
margin:0;
font-size: 1.1em;
}

#global-nav{
background: url(../images/image.jpg) ;
border-bottom: 4px solid #88b83e;
width: 100%;
text-align: center;
z-index:calc(infinity);
position: sticky;
top: 88px;
}

#global-nav #menu li{
	text-shadow: 1px 1px 1px #A9A9A9;
	position: relative;
	float: left;
	margin: 0;
	border-right: solid 1px #000; 
	list-style: none;
	font-weight: bold;
}

#global-nav #menu li.first{ border-left: solid 1px #000; } 

#global-nav #menu li{ white-space: nowrap;}

#global-nav #menu li a{
	display: block;
	padding: 0.8em 2em;
	color: #333; 
	text-decoration: none;
}

#global-nav #menu li a:link,
#global-nav #menu li a:visited{ 	background: url(../images/image.jpg) ; } 
#global-nav #menu li a:hover,
#global-nav #menu li a:active{ background-color: #efefef; } 

#global-nav #menu li ul{
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	width: 12em;
}

#global-nav #menu li ul li{
	margin: 0;
	padding: 0;
	width: 12em;
	background-color: #eaeaea;
	border-top: 0;
	border-right: 0;
	white-space: normal;
}

#global-nav #menu li ul li a{
	display: block;
	padding: 0.8em 2em;
}

#global-nav #menu li ul ul{
	top: 0;
	left: 100%;
}

#global-nav .showMenu{ display: block!important; }

#main-in{
	padding: 1.5em 0.5em 0 0.5em;
	background-color: #fff;
	box-sizing: border-box; /* 2026-09: paddingがwidth:100%からはみ出して横スクロールが出るのを防ぐ */
}

#main-image{
	padding: 0 0 0.5em 0;
}

#main-image-in{
	position: relative;
	padding-bottom: 0.5em;
	clear:both;
}

#main-image img{
	width: 100%;
	height: auto;
}

#breadcrumbs{
	clear: both;
	margin-bottom: 1.0em;
	font-size: 1.2em;
}

#breadcrumbs li{
	display: inline;
	margin-right: 0.5em;
	line-height: 1.0;
	text-align: right;
	list-style: none;
}

#breadcrumbs li a{
	padding-right: 15px;
	background: url(../images/icon/icon-brc.gif) center right no-repeat;
}

.sp{
	display:none;
}

#main-contents{
	font-size: 1.6em;
	background:#fff!important;
}

#main-contents .contents{
	margin-bottom: 3.5em;
	padding: 0 10px;
	clear : both;
}

#main-contents h2{
	border-bottom: 3px solid #88b83e;
	font-size:1.3em;
	font-weight: bold;
	padding:10px;
	margin:10px;
	font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Verdana, sans-serif;
	letter-spacing: 0.05em;
}

#main-contents h2 a:link,
#main-contents h2 a:visited{ color: #333; }

#main-contents h2 a:hover,
#main-contents h2 a:active{ color: #f60; }

#main-contents h3{
	margin: 1.5em 0 0.5em 0;
	padding: 0.8em;
	border: 2px solid #414141;
	font-size: 1.143em;
	font-weight: none;
	border: 1px solid #959595; 
	border-top: 3px solid #88b83e; 
	color: #454545; 
}

#main-contents h3 a:link,
#main-contents h3 a:visited{
	text-decoration: none;
	color: #333;
}

#main-contents h3 a{
	text-decoration: none;
	color: #333;
}

#main-contents h3 a:hover,
#main-contents h3 a:active{
	text-decoration: none;
	color: #333;
}

#main-contents h4{
	margin: 0 0 1.5em;
	padding: 0.8em;
	border: 1px solid #8e8e8e;
	font-weight: bold;
}

#main-contents h4 a:link,
#main-contents h4 a:visited{
	text-decoration: none;
	color: #333;
}

#main-contents h4 a{
	text-decoration: none;
	color: #333;
}

#main-contents h4 a:hover,
#main-contents h4 a:active{
	text-decoration: none;
	color: #333;
}

#main-contents h5{
	margin: 0 0 1.5em;
	padding: 0 0.8em 0.5em;
	border-bottom: 2px solid #414141;
	font-weight: bold;
}

#main-contents h5 a:link,
#main-contents h5 a:visited{ color: #333; }

#main-contents h5 a:hover,
#main-contents h5 a:active{ color: #f60; }

#main-contents p{
	margin-bottom: 1.0em;
	margin-left: 1.0em;
	line-height:2.0;
}

#main-contents ul,
#main-contents ol{
	margin: 0 0.8em 1.5em 1.7em;
	padding: 0;
}

#main-contents dl{
	margin: 0.5em 0.8em 1.5em 1.7em;
	padding-bottom: 0;
}

#main-contents dl dt{
	padding-top: 0.5em;
}

#main-contents dd{
	padding-top:0;
	padding-bottom: 0.7em;
}

#main-contents li{
	margin-bottom: 0.5em;
	line-height: 1.5em;
}

#main-contents ol ul{
	list-style: none;
}

#main-contents q{
	margin: 0 2px;
	padding: 0 8px;
	background: #efefef;
}

#main-contents table{
	margin-bottom: 1.5em;
	padding: 0;
	border: 3px solid #ddd;
	box-shadow: 5px 5px 5px -3px #aaa;
}

#main-contents th,
#main-contents td{
	padding: 0.5em;
}

#main-contents th{
	background-color: #f0f0f0;
	font-weight: bold;
	text-align: left;
}

#main-contents table.table-style01 th,
#main-contents table.table-style01 td{
	text-align: left;
	vertical-align: top;
}

#main-contents ul.checklist{
	margin: 0 0 1.5em;
	padding: 0.5em;
	padding-bottom: 0;
	border: 1px solid #414141;
}

#main-contents ul.checklist li{
	margin-bottom: 1.0em;
	padding-top: 5px;
	padding-left: 24px;
	background: url(../images/icon/icon-check01-red.png) left top no-repeat;
	list-style-type: none;
	font-weight:bold;
}
/* 2026-08: このCTA＋チェックリストのセクションだけ、下の見出しとの間の余白を詰める */
#main-contents .contents.cta-section-contents{
	margin-bottom: 1.2em;
}

#main-contents .sitemap li{ list-style: none; }

#main-contents .sitemap li a{
	display: block;
	padding: 3px 0 3px 20px;
	background: url(../images/icon/icon-arrow_r.png) 0 6px no-repeat;
}

#main-contents .sitemap ul{ margin-top: 1em; }

#main-contents .sitemap li li a{
	padding: 0 0 0 15px;
	border-left: none;
	background: url(../images/icon/icon-menu02.png) 0 6px no-repeat;
}

#sub-contents{
	clear:both;
	background:#fff!important;
}

#sub-contents,
#sidebar,
#sidebar-in,
#sub-contents-in{
	margin: 0;
	padding: 0;
}

* html #sub-contents,
* html #sidebar{ overflow: hidden; }

#sub-contents .sub-contents-btn,
#sidebar .sidebar-btn{ display: none; }

.sub-column{ font-size: 1.2em; }

.sub-column li{ list-style: none; }

.sub-column .name{
	font-weight: bold;
	font-size:1.0em;
}

.sub-column .contents{
	margin-bottom: 1.5em;
	padding: 0.5em;
}

.ggmap{
text-align:center;
margin:1.0em 0;
}

.accmap{
text-align:center;
}
.accmap p{
margin:0!important;
}

.sub-column hr{ clear: both; }

.sub-column h3{
	padding: 0.7em;
	border: 1px solid #959595; 
	border-top: 3px solid #88b83e; 
	color: #454545; 
	font-weight: bold;
}

.sub-column .contents h3{
	margin: -0.5em;
	margin-bottom: 0.8em;
	text-align: center;
}

.sub-column .profile-img img{
	display: block;
	margin: auto;
	margin-bottom: 10px;

}

.sub-column .profile-txt p{ margin-bottom: 1em;}

.col1 .sub-column .profile-img,
.col2r #sub-contents .profile-img{
	float: left;
	padding-right: 20px;
}

.sub-column table caption{
	font-weight: bold;
	text-align: center;
}

.sub-column table{
	width: 90%;
	margin: auto;
	margin-bottom: 1.5em;
	padding: 0;
	border:none;
}

.sub-column table th,
.sub-column table td{
	padding: 0.5em 0.2em;
	border:none;
}

.sub-column table th{
	background: #f0f0f0;
	font-weight: bold;
	text-align: center;
}

#main-contents .profile {
	margin:10px;
}

#main-contents .profile table {
	width: 60%;
	border-collapse: collapse;
}
#main-contents .profile th.t_top {
    border-top: #b3b3b3 4px solid;
	width:80px;
}
#main-contents .profile th {
	border-bottom: #e3e3e3 1px solid;
	border-left: #e3e3e3 1px solid;
	text-align: left;
	background: #f7f7f7;
	padding: 10px;
	font-weight: normal;
}
#main-contents .profile td.t_top {
	border-top: #0168b3 4px solid;
}
#main-contents .profile td {
	border-bottom: #e3e3e3 1px solid;
	border-right: #e3e3e3 1px solid;
	text-align: left;
	padding: 10px;
}

.serchtbll{
width:45%;
margin:0.3em;
text-align:center;
border: 1px solid #DCDCDC!important;
float:left;
}
.serchtbll td{
display: block;
}
.serch1{
font-size:0.99em; /* 2026-09: 10%縮小(1.1em -> 0.99em) */
}

#footer{
	clear: both;
	padding-top: 30px;
	padding-bottom: 10px;
	background: url(../images/image.jpg) ;
	color: #000000;
	font-size: 1.2em;
}

#footer a:link,
#footer a:visited{ color: #000000; }
#footer a:hover,
#footer a:active{ color: #f60; }

#footer h3{
	border-radius: 20px;
	margin-bottom: 1em;
	padding: 0.8em;
	background-color: #fff;
	color: #333;
	font-weight: bold;
}

#footer-in li{ list-style: none; }

#footer .area01{
	float: left;
	width: 39%;
	padding-bottom: 20px;
}

#footer .area02{
	float: right;
	width: 60%;
	padding-bottom: 20px;
}
#footer .area03{
	width: 100%;
	padding-bottom: 20px;
}

#footer .area01 h3,#footer .area02 h3,#footer .area03 h3{
	padding-left: 20px;
}

#footer .access{
	padding: 0.5em;
	margin:0 2.0em;
}

#footer .access p{
	margin-bottom: 0.2em;
	line-height:20px;
}

#footer .footer-menu{
	overflow: hidden;
	width: 100%;
	padding: 0;
}
#footer .access{
	overflow: hidden;
	width: auto;
	padding: 0 0 1.0em 0;
}

#footer .footer-menu ul,#footer .access ul{
	float: left;
	margin-right: 5%;
	padding: 1%;
}
#footer .footer-menu ul{
	width: 42%;
}

#footer .footer-menu ul ul,#footer .access ul ul{
	float: none;
	width: auto;
	margin-top: 1em;
	margin-right: 0;
}

.footer-menu li,.access li{
	margin-bottom: 5px;
	padding: 0px 0 3px;
	padding-left: 25px;
	background: url(../images/icon/icon-arrow02.png) left top no-repeat;
}

.footer-menu li li,.access li li{
	padding-left: 15px;
	padding-top: 0;
	background: url(../images/icon/icon-arrow03.png) left 5px no-repeat;
}

.copyright{
	padding: 15px 0;
	background: #eaeaea;
	font-size: 1.2em;
	text-align: center;
	margin-bottom:30px;
}

.pagetop {
	position: fixed;
	bottom: 40px;
	right: 20px;
	z-index: 500;
	a {
	  display: flex;
	  align-items: center;
	  justify-content: center;
	  width: 44px;
	  height: 44px;
	  text-align: center;
	  font-size: 20px;
	  color: #000;
	  text-decoration: none;
	  background: #FFF;
	  border-radius: 50%;
	  box-shadow: 0 1px 5px rgba(0, 0, 0, .20);
	}
  }

.btn,
a.btn,
button.btn {
	font-size: 1.2em;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0.5rem;
}

a.btn--green {
	color: #fff;
	background-color: #88b83e;
  }

  a.btn--green:hover {
	color: #fff;
	background: #00a349;
  }

  a.btn--green.btn--cubic {
	border-bottom: 5px solid #6b8e23;
  }
  
  a.btn--green.btn--cubic:hover {
	margin-top: 3px;
	border-bottom: 2px solid #6b8e23;
  }

  a.btn-c {
	font-size: 1.0em;
	position: relative;
	padding: 0.7rem 3rem 0.7rem 2rem;
	border-radius: 100vh;
	margin-bottom:2.0rem;
  }
  
  a.btn-c i.fa {
	margin-right: 1rem;
  }
  
  a.btn-c:before {
	font-family: "Font Awesome 5 Free";
	font-size: 1.6rem;
	line-height: 1;
	position: absolute;
	top: calc(50% - .8rem);
	right: 1rem;
	margin: 0;
	padding: 0;
	content: "";
  }

  
  

  
  
  

.pcnone{
  display:none;
}

@media screen and (max-width: 640px) {
.spnone{
	display: none;
  }
  
  .pcnone{
	display: block;
  }
  
}

#main-contents .sb{
	width:100%;
	margin: 0;
	padding: 0;
}

#main-contents .sb li{
	display: inline-block;
	margin-right: 5px;
	vertical-align: top;
	list-style: none;
}

* html #main-contents .sb li{
	float: left;
	width: 130px;
	list-style: none;
} 

*+html #main-contents .sb li{
	display: inline;
	list-style: none;
}

#top-in:after, #header-in:after, #main-in:after, #main-and-sub:after, .contents:after, #footer-in:after, #main-contents .sb:after, .clearfix:after{ content : ""; display : block; clear : both; height:0; }

#top-in, #header-in, #main-in, #main-and-sub, .contents, #footer-in, #main-contents .sb, .clearfix{ /zoom : 1; }

.kksl,.kksr{
	width:47%;
	margin:0 auto;
	float:left;
	cursor: pointer;
}
.kksl{
	float:left;
}
.kksr{
	float:right;
}
.kks1,.kks8{
	border-bottom: 1px dotted #414141;
}
.kks2{
	font-size:1.2em;
	font-weight:bold;
}
.kks3,.kks4{
	font-weight:bold;
	text-align:center;
}
.kks3{
	font-size:1.1em;
	background-color: rgba(188, 200, 219,0.6);
}
.kks4{
	font-size:1.3em;
	background-color: rgba(242, 216, 223,0.6);
}

.kks7{
	font-size:1.5em;
	font-weight:bold;
	color:#e95738;
	text-align:center;
}
.kks8{
	background-color:#fff!important;
	width:30%!important;
	margin:0;
	padding:0;
}
.kks9{
	text-align:center;
}
.kks8 img,.kks9 img{
	border:none!important;
}

.cost1,.cost2,.cost3{
	width:32%;
	float:left;
	margin:0.2em;
	border: 4px solid #88b83e!important;
	text-align:center;
}
.costu{
	background-color:#88b83e;
	font-size:1.3em;
	color:#fff;
	font-weight:bold;
}
.costd{
	font-size:2.0em;
	color:#e95738;
	font-weight:bold;
}

.btnlr{
	float:left;
	width:95%;
	border: 2px solid #eee;
	background-color: #fff;
	background-image: radial-gradient(#aebd77 1%, transparent 1%), radial-gradient(#aebd77 2%, transparent 2%);
	background-size: 4px 4px;
	background-position: 0 0, 2px 2px;
　　border-radius: 10px;          
    -webkit-border-radius: 10px;      
    -moz-border-radius: 10px;     
	margin:0 1.0em 1.0em 1.0em;
	padding:0.5em;
}
.btnl,.btnr{
width:45%;
margin:0.5em;
}
.btnl{
float:left;
}
.btnr{
float:right;
}

a.bt-samp331,a.bt-samp332,a.bt-samp333,a.bt-samp334,a.bt-samp335,a.bt-samp336,a.bt-samp337,a.bt-samp338{
  background: #fff;
  padding:0.5em 0 0.5em 1.0em; /* 2026-10: 左余白を2.0em→1.0emに縮小（＞マークが右に寄りすぎていたため） */
  font-size:1.2em;
  display: block;
  text-decoration: none;
  height:35px;
  line-height: 37px;
  color: #88b83e;
  border:solid 2px #88b83e;
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  -o-transition: 0.3s;
  -ms-transition: 0.3s;
  transition: 0.3s;
}
a.bt-samp331:hover,a.bt-samp332:hover,a.bt-samp333:hover,a.bt-samp334:hover,a.bt-samp335:hover,a.bt-samp336:hover,a.bt-samp337:hover,a.bt-samp338:hover{
  color: #fff;
  background-color: #88b83e;
}
a.bt-samp331{
  background: url(../images/shiritai01.png) right center;
  background-repeat: no-repeat;
  background-color:#fff;
}
a.bt-samp332{
  background: url(../images/shiritai02.png) right center;
  background-repeat: no-repeat;
  background-color:#fff;
}
a.bt-samp333{
  background: url(../images/shiritai03.png) right center;
  background-repeat: no-repeat;
  background-color:#fff;
}
a.bt-samp334{
  background: url(../images/shiritai04.png) right center;
  background-repeat: no-repeat;
  background-color:#fff;
}
a.bt-samp335{
  background: url(../images/shiritai05.png) right center;
  background-repeat: no-repeat;
  background-color:#fff;
}
a.bt-samp336{
  background: url(../images/shiritai06.png) right center;
  background-repeat: no-repeat;
  background-color:#fff;
}
a.bt-samp337{
  background: url(../images/shiritai07.png) right center;
  background-repeat: no-repeat;
  background-color:#fff;
}
a.bt-samp338{
  background: url(../images/shiritai08.png) right center;
  background-repeat: no-repeat;
  background-color:#fff;
}

#main-contents .fl{
		text-shadow: none!important;
		font-size:1.5em;
		font-weight:bold;
		background: none!important;
		margin:0.2em 0;
		padding:15px;
		border-bottom: 3px solid #88b83e!important;
		border-top: 3px solid #88b83e!important;
		box-shadow:none!important;
		text-align:center;
}

.item_box{
	box-shadow: 5px 5px 5px -3px #aaa;
    position:relative;
    padding:10px;
	border: 2px solid gray;
	border-radius: 10px;
	margin: 20px auto;
	overflow:hidden;
	clear: both; 
}

.tbl1{
	display:flex;
	flex-wrap:wrap;
	gap:4%;
	width:100%;
	margin:5px auto;
}

.item_boxtoph3 {    
    display: inline-block;
    position: absolute;
    top: -6px;
    right: 10px;
    margin: 0;
    padding: 10px 0;
    z-index: 2;
    width: 40px;
    text-align: center;
    color: white;
    font-size: 17px;
    background: linear-gradient(#ff785b 0%, #e95738 100%);
    border-radius: 2px 0 0 0;
  }

.item_boxtoph3:before{
position: absolute;
    content: "";
    top: 0;
    right: -6px;
    border: none;
    border-bottom: solid 6px #cf4a2d;
    border-right: solid 6px transparent;
}
.item_boxtoph3:after{
    content: "";
    position: absolute;
    left: 0;
    top: 100%;
    height: 0;
    width: 0;
    border-left: 20px solid #e95738;
    border-right: 20px solid #e95738;
    border-bottom: 10px solid transparent;
}

.item_boxtoph3txt{
    border-top:none!important;
    border-right:none!important;
    border-left:none!important;
	padding:0.5em 3.0em 0.5em 0.5em!important;
	margin:0 0.5em!important;
	font-size:1.2em;
}

.item_boxtopl1, .item_boxtopr1, .item_boxtopl2, .item_boxtopr2{
	box-shadow: 5px 5px 5px -3px #aaa;
    display: block;
    position: relative;
    margin: 0 auto;
    padding: 10px 0;
	border: 2px solid gray;
	border-radius: 10px;
	overflow:hidden;
    box-sizing: border-box;
    flex: 1 1 48%;
    min-width: 0;
}

/* float:left/right removed — .tbl1 is now a flexbox parent (2026-08 modernization) */

.item_boxtopl1 p,.item_boxtopr1 p,.item_boxtopl2 p,.item_boxtopr2 p{
	padding:0.5em!important;
	margin:0.5em 0.5em 0 0.5em!important;
}
.item_boxtopl1{
	background: url(../images/bgl1.jpg) ;
	background-position: center center;
	background-repeat: no-repeat;
}
.item_boxtopl2{
	background: url(../images/bgl2.jpg) ;
	background-position: center center;
	background-repeat: no-repeat;
}
.item_boxtopr1{
	background: url(../images/bgr1.jpg) ;
	background-position: center center;
	background-repeat: no-repeat;
}
.item_boxtopr2{
	background: url(../images/bgr2.jpg) ;
	background-position: center center;
	background-repeat: no-repeat;
}
.rgt{
	font-size:0.9em!important;
	float:right;
}
.item_boxtopl1 a,.item_boxtopr1 a,.item_boxtopl2 a,.item_boxtopr2 a,.item_box a,.item_boxl a,.item_boxr a,.item_boxlc a{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    text-indent:-999px;
}

.item_box a:hover,.item_boxl a:hover,.item_boxr a:hover,.item_boxtopl1 a:hover,.item_boxtopl2 a:hover,.item_boxtopr1 a:hover,.item_boxtopr2 a:hover,.item_boxlc a:hover{
    background-color:#FFF;
    filter:alpha(opacity=50);
    -moz-opacity: 0.5;
    opacity: 0.5;
}

.item_boxlc{
	overflow:hidden;
}

.item_box p,.item_boxl p,.item_boxr p{
	margin:10px;
}

.item_boxl,.item_boxr{
	box-shadow: 5px 5px 5px -3px #aaa;
    position:relative;
    width:45%;
    padding:10px;
	margin: 20px auto;
	border-radius: 10px; 
	border: 2px solid gray;
}
.item_boxl{
	float:left;
}
.item_boxr{
	float:right;
	overflow:hidden;
}

.item_boxlar,.item_boxrar{
	background: url(../images/ar.jpg) ;
	background-repeat: no-repeat;
	background-position: left center;
    position:relative;
    width:40%;
    padding:10px 10px 10px 30px;
	margin:0 0 0 20px;
	float:left;
	font-size:1.1em;
}

.item_b01{
	border-bottom:1px solod;
	border-top:none!important;
	border-left:none!important;
	border-right:none!important;
	padding:20px 10px 20px 100px!important;
	font-weight:none;
	color:green!important;
	font-size:1.2em!important;
	margin:0 10px!important;
	background: url(../images/fll01.jpg) ;
	background-repeat: no-repeat;
	background-position: left center;
}

.item_b02{
	border-bottom:1px solod;
	border-top:none!important;
	border-left:none!important;
	border-right:none!important;
	padding:20px 10px 20px 100px!important;
	font-weight:none;
	color:green!important;
	font-size:1.2em!important;
	margin:0 10px!important;
	background: url(../images/fll02.jpg) ;
	background-repeat: no-repeat;
	background-position: left center;
}

.item_b03{
	border-bottom:1px solod;
	border-top:none!important;
	border-left:none!important;
	border-right:none!important;
	padding:20px 10px 20px 100px!important;
	font-weight:none;
	color:green!important;
	font-size:1.2em!important;
	margin:0 10px!important;
	background: url(../images/fll03.jpg) ;
	background-repeat: no-repeat;
	background-position: left center;
}

.item_b04{
	border-bottom:1px solod;
	border-top:none!important;
	border-left:none!important;
	border-right:none!important;
	padding:20px 10px 20px 100px!important;
	font-weight:none;
	color:green!important;
	font-size:1.2em!important;
	margin:0 10px!important;
	background: url(../images/fll04.jpg) ;
	background-repeat: no-repeat;
	background-position: left center;
}

.item_b05{
	border-bottom:1px solod;
	border-top:none!important;
	border-left:none!important;
	border-right:none!important;
	padding:20px 10px 20px 100px!important;
	font-weight:none;
	color:green!important;
	font-size:1.2em!important;
	margin:0 10px!important;
	background: url(../images/fll05.jpg) ;
	background-repeat: no-repeat;
	background-position: left center;
}

.item_b06{
	border-bottom:1px solod;
	border-top:none!important;
	border-left:none!important;
	border-right:none!important;
	padding:20px 10px 20px 100px!important;
	font-weight:none;
	color:green!important;
	font-size:1.2em!important;
	margin:0 10px!important;
	background: url(../images/fll06.jpg) ;
	background-repeat: no-repeat;
	background-position: left center;
}

.item_b07{
	border-bottom:1px solod;
	border-top:none!important;
	border-left:none!important;
	border-right:none!important;
	padding:20px 10px 20px 100px!important;
	font-weight:none;
	color:green!important;
	font-size:1.2em!important;
	margin:0 10px!important;
	background: url(../images/fll07.jpg) ;
	background-repeat: no-repeat;
	background-position: left center;
}

.item_b08{
	border-bottom:1px solod;
	border-top:none!important;
	border-left:none!important;
	border-right:none!important;
	padding:20px 10px 20px 100px!important;
	font-weight:none;
	color:green!important;
	font-size:1.2em!important;
	margin:0 10px!important;
	background: url(../images/fll08.jpg) ;
	background-repeat: no-repeat;
	background-position: left center;
}

.item_b09{
	border-bottom:1px solod;
	border-top:none!important;
	border-left:none!important;
	border-right:none!important;
	padding:20px 10px 20px 100px!important;
	font-weight:none;
	color:green!important;
	font-size:1.2em!important;
	margin:0 10px!important;
	background: url(../images/fll09.jpg) ;
	background-repeat: no-repeat;
	background-position: left center;
}

.item_b10{
	border-bottom:1px solod;
	border-top:none!important;
	border-left:none!important;
	border-right:none!important;
	padding:20px 10px 20px 100px!important;
	font-weight:none;
	color:green!important;
	font-size:1.2em!important;
	margin:0 10px!important;
	background: url(../images/fll10.jpg) ;
	background-repeat: no-repeat;
	background-position: left center;
}

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

.img-r{ float: right; padding:5px 10px;}
.img-l{ float: left; padding:5px 10px;}

.btn-push {
  position: relative;
  top: 0px;
  font-family: "Open Sans";
  text-decoration: none;
  font-size: 25px;
  padding: 0;
  margin: 0;
  -webkit-transition: All 250ms ease;
  -moz-transition: All 250ms ease;
  -o-transition: All 250ms ease;
  -ms-transition: All 250ms ease;
  transition: All 250ms ease;
  box-shadow: 5px 5px 5px -1px #aaa;
}
.btn-push:active {
  position: relative;
  top: 5px;
  -webkit-box-shadow: none !important;
  -moz-box-shadow: none !important;
  -ms-box-shadow: none !important;
  -o-box-shadow: none !important;
  box-shadow: none !important;
  -webkit-transition: All 250ms ease;
  -moz-transition: All 250ms ease;
  -o-transition: All 250ms ease;
  -ms-transition: All 250ms ease;
  transition: All 250ms ease;
}

.open1,.open2{
	padding: 10px 10px 10px 30px!important;
	border: 2px solid #414141;
	background: url(../images/icon/icon-arrow_d.png) 10px 15px no-repeat!important;
	cursor: pointer;
}

.avn{
	max-width:48%!important;
}

.flowtop{
	border:none!important;
	background:#0168b3;
}
.flowtop a{
	margin: 0.2em;
	font-size: 1.2em;
	padding:0;
	font-weight:normal;
	color:#fff!important;
}

.flow{
	margin: 1.0em;
	width:80%;
}

.flow p{
	margin: 1em;
}

.fl01h2{
	background: url(../images/fll01.jpg) 10px 15px no-repeat!important;
	box-shadow:none!important;
	padding:30px 10px 30px 100px!important;
	border:none!important;
	font-weight:bold;
}

.fl02h2{
	background: url(../images/fll02.jpg) 10px 15px no-repeat!important;
	box-shadow:none!important;
	padding:30px 10px 30px 100px!important;
	border:none!important;
	font-weight:bold;
}

.fl03h2{
	background: url(../images/fll03.jpg) 10px 15px no-repeat!important;
	box-shadow:none!important;
	padding:30px 10px 30px 100px!important;
	border:none!important;
	font-weight:bold;
}

.fl04h2{
	background: url(../images/fll04.jpg) 10px 15px no-repeat!important;
	box-shadow:none!important;
	padding:30px 10px 30px 100px!important;
	border:none!important;
	font-weight:bold;
}

.fl05h2{
	background: url(../images/fll05.jpg) 10px 15px no-repeat!important;
	box-shadow:none!important;
	padding:30px 10px 30px 100px!important;
	border:none!important;
	font-weight:bold;
}

.fl06h2{
	background: url(../images/fll06.jpg) 10px 15px no-repeat!important;
	box-shadow:none!important;
	padding:30px 10px 30px 100px!important;
	border:none!important;
	font-weight:bold;
}

.fl07h2{
	background: url(../images/fll07.jpg) 10px 15px no-repeat!important;
	box-shadow:none!important;
	padding:30px 10px 30px 100px!important;
	border:none!important;
	font-weight:bold;
}

.fl08h2{
	background: url(../images/fll08.jpg) 10px 15px no-repeat!important;
	box-shadow:none!important;
	padding:30px 10px 30px 100px!important;
	border:none!important;
	font-weight:bold;
}

.fl09h2{
	background: url(../images/fll09.jpg) 10px 15px no-repeat!important;
	box-shadow:none!important;
	padding:30px 10px 30px 100px!important;
	border:none!important;
	font-weight:bold;
}

.fl10h2{
	background: url(../images/fll10.jpg) 10px 15px no-repeat!important;
	box-shadow:none!important;
	padding:30px 10px 30px 100px!important;
	border:none!important;
	font-weight:bold;
}

.flq{
	list-style:none;

}

.flq li{
font-size:1.1em;
	background:url(../images/q.png) 5px 50% no-repeat;
	padding:10px 10px 10px 30px;
	list-style-position: inside;
}

.opent1,.opent2,.opent3,.opent4,.opent5,.opent6{
    margin: 1.0em 0 1.0em 0!important;
    font-size: 1.143em!important;
	border-top:none!important;
	border-right:none!important;
	border-left:none!important;
	line-height:30px!important;
	color:green!important;
	font-weight:bold!important;
	cursor: pointer!important;
}

/* 元のデザイン（アイコン画像＋点線）：チェックボックス化しない見出し */
.opent1,.opent2,.opent3,.opent6{
	padding: 10px 10px 10px 65px!important;
	border-bottom: 3px dotted #88b83e!important;
	background: url(../images/merit.jpg) no-repeat!important;
}

.opent1{
	background: url(../images/merit1.jpg) no-repeat!important;
}

.opent2{
	background: url(../images/merit2.jpg) no-repeat!important;
}

.opent3{
	background: url(../images/merit3.jpg) no-repeat!important;
}

.opent6{
	background: url(../images/merit6.jpg) no-repeat!important;
}

/* 2026-08: 以下の3見出しのみ文頭にチェックボックス風マークを追加
   （任意保険に弁護士費用特約はついていますか？／けがの状態はどうですか／
     どんな弁護士に相談すればいいか迷っていますか？） */
.opent4,.opent5{
	margin: 0.25em 0 0.25em 0!important;
	padding: 10px 10px 10px 10px!important;
	border-bottom: none!important;
	display: flex!important;
	align-items: center!important;
}

.opent4::before,
.opent5::before{
	content: "";
	display: inline-block;
	flex-shrink: 0;
	width: 50px;
	height: 50px;
	margin-right: 6px;
	background: url(../images/icon/2637839.png) no-repeat center / contain;
	vertical-align: middle;
}

.slideboxt{
	padding:20px 0 30px;
	overflow:hidden;
}
.slideboxt img{
	padding:0!important;
	margin:0 20px;
	overflow:hidden;
	border: 1px solid #DCDCDC;
}

.slide-wrapper{
	margin:20px;
}

.open1, .open2, .open3, .open4, .open5, .open6, .open11, .open12, .open13, .open14{
    margin: 1.0em 0 0 1.0em!important;
    padding: 20px 20px 20px 65px!important;
    font-size: 1.143em!important;
    border: 3px solid #00008B!important;
    box-shadow: 3px 3px 3px rgba(0,0,0,0.4)!important;
    -moz-box-shadow: 3px 3px 3px rgba(0,0,0,0.4)!important;
    -webkit-box-shadow: 3px 3px 3px rgba(0,0,0,0.4)!important;
    -o-box-shadow: 3px 3px 3px rgba(0,0,0,0.4)!important;
    -ms-box-shadow: 3px 3px 3px rgba(0,0,0,0.4)!important;
	background: url(../images/hokenqa/03.jpg) no-repeat!important;
	line-height:30px!important;
	color:#00008B!important;
	font-weight:bold!important;
	cursor: pointer!important;
}
.open7,.open8,.open9{
    margin: 1.5em 0 0 1.0em!important;
    padding: 20px 20px 20px 65px!important;
    font-size: 1.143em!important;
    border: 3px solid #B92A2C!important;
    box-shadow: 3px 3px 3px rgba(0,0,0,0.4)!important;
    -moz-box-shadow: 3px 3px 3px rgba(0,0,0,0.4)!important;
    -webkit-box-shadow: 3px 3px 3px rgba(0,0,0,0.4)!important;
    -o-box-shadow: 3px 3px 3px rgba(0,0,0,0.4)!important;
    -ms-box-shadow: 3px 3px 3px rgba(0,0,0,0.4)!important;
	background: url(../images/hokenqa/04.jpg) no-repeat!important;
	line-height:30px!important;
	color:#B92A2C!important;
	font-weight:bold!important;
	cursor: pointer!important;
}

#slideBox1 h4,#slideBox2 h4,#slideBox3 h4,#slideBox1 h4,
#slideBox4 h4,#slideBox5 h4,#slideBox6 h4,#slideBox7 h4,
#slideBox8 h4,#slideBox9 h4,#slideBox10 h4,#slideBox11 h4,
#slideBox12 h4,#slideBox13 h4,#slideBox14 h4,#slideBox15 h4{
    position: relative;
    margin: 25px 5px 15px 20px;
    padding: 0.8em;
    background: #0168b3;
    color: #fff;
    font-size: 1.0em;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
}
 
#slideBox1 h4:after,#slideBox2 h4:after,#slideBox3 h4:after,
#slideBox4 h4:after,#slideBox5 h4:after,#slideBox6 h4:after,
#slideBox7 h4:after,#slideBox8 h4:after,#slideBox9 h4:after,
#slideBox10 h4:after,#slideBox11 h4:after,#slideBox12 h4:after,
#slideBox13 h4:after,#slideBox14 h4:after,#slideBox15 h4:after{
    position: absolute;
    bottom: -15px;
    left: 90%;
    z-index: 90;
    margin-left: -15px;
    border-top: 15px solid #0168b3;
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
    border-bottom: 0;
    content: "";
}
#slideBox1 p,#slideBox2 p,#slideBox3 p,#slideBox1 p,
#slideBox4 p,#slideBox5 p,#slideBox6 p,#slideBox7 p,
#slideBox8 p,#slideBox9 p,#slideBox10 p,#slideBox11 p,
#slideBox12 p,#slideBox13 p,#slideBox14 p,#slideBox15 p{
    margin: 20px 25px;
}

#slideBox1, #slideBox2, #slideBox3, #slideBox4, #slideBox5, #slideBox6, #slideBox7, #slideBox8, #slideBox9, #slideBox11, #slideBox12, #slideBox13, #slideBox14{
     display:none;
}

table.table-style01{
width: 90%;
margin: 0 auto;
border-collapse: separate;
border-spacing: 0px 15px;
font-size: 12px;
border: 1px solid #959595;
}

table.table-style01 th,
table.table-style01 td{
display:list-item;
list-style:none;
text-align: left;
vertical-align: top;
}

table.table-style01 td{
padding: 1.0em 0 0 1.0em;
font-size: 1.2em;
line-height: 1.8;
}

table.table-style01 th{
padding: 1.0em;
background-color: #f0f0f0;
font-weight: bold;
text-align: left;
line-height: 1.8;
}

.txt{
border:0;
padding:10px;
font-size:1.3em;
color:#696969;
border:solid 1px #ccc;
margin:0 0 20px;
-webkit-border-radius: 3px;
-moz-border-radius: 3px;
border-radius: 3px;
width:100%;
}
input:focus{
border: 2px solid #88b83e;
}

.buttonp {
    text-align: center;
	margin:20px;
}

.button{
width:240px;
height:60px;
display: inline-block;
*display: inline;
zoom: 1;
padding: 6px 20px;
margin: 0;
cursor: pointer;
border: 1px solid #bbb;
overflow: visible;
font: bold 20px arial, helvetica, sans-serif;
text-decoration: none;
white-space: nowrap;
color: #555;
background-color: #ddd;
background-image: linear-gradient(top, rgba(255,255,255,1),
rgba(255,255,255,0)),
url(data:image/png;base64,iVBORw0KGg[...]QmCC);
transition: background-color .2s ease-out;
background-clip: padding-box; 
border-radius: 3px;
box-shadow: 0 1px 0 rgba(0, 0, 0, .3),
0 2px 2px -1px rgba(0, 0, 0, .5),
0 1px 0 rgba(255, 255, 255, .3) inset;
text-shadow: 0 1px 0 rgba(255,255,255, .9);
}
 
.button:hover{
background-color: #eee;
color: #555;
}
 
.button:active{
background: #e9e9e9;
position: relative;
top: 1px;
text-shadow: none;
box-shadow: 0 1px 1px rgba(0, 0, 0, .3) inset;
outline: none;
border: 1px solid #bbb;
}

.kaiketsu{
	background:url(../images/kaisetsu/htag.jpg)!important;
    background-repeat : no-repeat!important;
    padding:20px 20px 5px 80px!important;
	border: 3px solid #88b83e!important;
	font-size: 1.8em!important;
    margin:10px!important;
	color:#696969!important;
	border-top:none!important;
	border-right:none!important;
	border-left:none!important;
	box-shadow: 0 0 0 0 #fff!important;

}

#main-contents .komcontents{
	margin: 0.5em 3.0em;
	padding: 0 10px;
	clear : both;
}

#main-contents .kocontents{
	margin: 0.5em 4.5em;
	clear : both;
	border-bottom: 1px solid #aaa;
	border-left: 1px solid #aaa;
	border-right: 1px solid #aaa;
}

#main-contents .kocontents p{
	font-size:1.1em;
	line-height: 1.7em;
}

#main-contents .kocontents .faq{
	margin:0;
}

#main-contents .kocontents .faq dd{
	background:#e8e6f3;
	padding:20px;
}

#main-contents .kocontents .faq dt{
	text-align:right;
	text-decoration: underline;
	color: #39f;
}

#main-contents .nb{
	text-align :center;
	font-size:0.9em;
	padding:10px 0;
}

#lstmenua{
	margin-left:auto;
	margin-right:auto;
	margin-bottom:80px;
	width:900px;}

#lstmenua ul{ 
	list-style: none;
}
#lstmenua li{ 
	width: 120px; 
	height: 40px;
	padding: 0 20px; 
	float: left;
	margin:0 1px;
	border:#666 solid 2px;
	border-top-left-radius: 10px;     
	border-top-right-radius: 10px;    
}

#lstmenub{
	margin-left:auto;
	margin-right:auto;
	margin-bottom:80px;
	width:900px;}

#lstmenub ul{ 
	list-style: none;
}
#lstmenub li{ 
	width: 160px; 
	height: 40px;
	padding: 0 20px; 
	float: left;
	margin:0 1px;
	border:#666 solid 2px;
	border-top-left-radius: 10px;     
	border-top-right-radius: 10px;    
}

.fst{ 
	background:#FF7F50;
	color:#FFF;
	font-size:13px;
	font-weight:bold;
}
.fst a{
	display: block; 
	text-decoration: none;
	color:#FFF;
	margin: 0px;
	padding: 4px;
	text-align: center;
}
.fst a:hover{
	display: block; 
	color:#FFD700;
	text-decoration: none;
	margin: 0px;
}
.fst_on{ 
	background:#FFF;
	color:#FF7F50;
	font-size:13px;
	font-weight:bold;
	border-bottom:none!important;
}
.fst_on a{
	display: block; 
	text-decoration: none;
	color:#FF7F50;
	margin: 0px;
	padding: 4px;
	text-align: center;
}
.fst_on a:hover{
	display: block; 
	color:#FFD700;
	text-decoration: none;
	margin: 0px;
}

.scd{ 
	background:#800000;
	color:#FFF;
	font-size:13px;
	font-weight:bold;
}
.scd a{
	display: block; 
	text-decoration: none;
	color:#FFF;
	margin: 0px;
	padding: 4px;
	text-align: center;
}
.scd a:hover{
	display: block; 
	color:#FFD700;
	text-decoration: none;
	margin: 0px;
}
.scd_on{ 
	background:#FFF;
	color:#800000;
	font-size:13px;
	font-weight:bold;
	border-bottom:none!important;
}
.scd_on a{
	display: block; 
	text-decoration: none;
	color:#800000;
	margin: 0px;
	padding: 4px;
	text-align: center;
}
.scd_on a:hover{
	display: block; 
	color:#FFD700;
	text-decoration: none;
	margin: 0px;
}

.thd{ 
	background:#008000;
	color:#FFF;
	font-size:13px;
	font-weight:bold;
}
.thd a{
	display: block; 
	text-decoration: none;
	color:#FFF;
	margin: 0px;
	padding: 4px;
	text-align: center;
}
.thd a:hover{
	display: block; 
	color:#FFD700;
	text-decoration: none;
	margin: 0px;
}
.thd_on{ 
	background:#FFF;
	color:#008000;
	font-size:13px;
	font-weight:bold;
	border-bottom:none!important;
}
.thd_on a{
	display: block; 
	text-decoration: none;
	color:#008000;
	margin: 0px;
	padding: 4px;
	text-align: center;
}
.thd_on a:hover{
	display: block; 
	color:#FFD700;
	text-decoration: none;
	margin: 0px;
}
.fth{ 
	background:#00008B;
	color:#FFF;
	font-size:13px;
	font-weight:bold;
}
.fth a{
	display: block; 
	text-decoration: none;
	color:#FFF;
	margin: 0px;
	padding: 4px;
	text-align: center;
}
.fth a:hover{
	display: block; 
	color:#FFD700;
	text-decoration: none;
	margin: 0px;
}
.fth_on{ 
	background:#FFF;
	color:#00008B;
	font-size:13px;
	font-weight:bold;
	border-bottom:none!important;
}
.fth_on a{
	display: block; 
	text-decoration: none;
	color:#00008B;
	margin: 0px;
	padding: 4px;
	text-align: center;
}
.fth_on a:hover{
	display: block; 
	color:#FFD700;
	text-decoration: none;
	margin: 0px;
}

.fft{ 
	background:#1E90FF;
	color:#FFF;
	font-size:13px;
	font-weight:bold;
}
.fft a{
	display: block; 
	text-decoration: none;
	color:#FFF;
	margin: 0px;
	padding: 4px;
	text-align: center;
}
.fft a:hover{
	display: block; 
	color:#FFD700;
	text-decoration: none;
	margin: 0px;
}
.fft_on{ 
	background:#FFF;
	color:#1E90FF;
	font-size:13px;
	font-weight:bold;
	border-bottom:none!important;
}
.fft_on a{
	display: block; 
	text-decoration: none;
	color:#1E90FF;
	margin: 0px;
	padding: 4px;
	text-align: center;
}
.fft_on a:hover{
	display: block; 
	color:#FFD700;
	text-decoration: none;
	margin: 0px;
}

.k001{
	border:none!important;
	background: none!important;
	color:#fff!important;
	position:relative!important;
	padding:10px!important;
	margin: 0 0 1.0em;
	background:#FF7F50!important;
	box-shadow:
		10px 0 0 0 #FF7F50,
		-20px 0 0 0 #FF7F50,
		0 3px 3px 0 rgba(0,0,0,0.1)!important;
	text-shadow:1px 1px 2px #333;
	width:100%;
}

.k001:before{
	content:" ";
	position:absolute;
	top:100%;
	left:-20px;
	width:0px;
	height:0px;
	border-width:0px 10px 10px 0;
	border-style:solid;
	border-color:transparent;
	border-right-color:#CD5C5C;
}

.k002{
	border:none!important;
	background: none!important;
	color:#fff!important;
	position:relative!important;
	padding:10px!important;
	background: #800000!important;
	box-shadow:
		10px 0 0 0  #800000,
		-20px 0 0 0 #800000,
		0 3px 3px 0 rgba(0,0,0,0.1)!important;
	text-shadow:1px 1px 2px #333!important;
	width:100%;
}

.k002:before{
	content:" ";
	position:absolute;
	top:100%;
	left:-20px;
	width:0px;
	height:0px;
	border-width:0px 10px 10px 0;
	border-style:solid;
	border-color:transparent;
	border-right-color: #BC8F8F;
}

.k003{
	border:none!important;
	background: none!important;
	color:#fff!important;
	position:relative!important;
	padding:10px!important;
	background: #008000!important;
	box-shadow:
		10px 0 0 0 #008000,
		-20px 0 0 0 #008000,
		0 3px 3px 0 rgba(0,0,0,0.1)!important;
	text-shadow:1px 1px 2px #333!important;
	width:100%;
}

.k003:before{
	content:" ";
	position:absolute;
	top:100%;
	left:-20px;
	width:0px;
	height:0px;
	border-width:0px 10px 10px 0;
	border-style:solid;
	border-color:transparent;
	border-right-color: #9ACD32;
}

.k004{
	border:none!important;
	background: none!important;
	color:#fff!important;
	position:relative!important;
	padding:10px!important;
	background: #00008B!important;
	box-shadow:
		10px 0 0 0 #00008B,
		-20px 0 0 0 #00008B,
		0 3px 3px 0 rgba(0,0,0,0.1)!important;
	text-shadow:1px 1px 2px #333!important;
	width:100%;
}

.k004:before{
	content:" ";
	position:absolute;
	top:100%;
	left:-20px;
	width:0px;
	height:0px;
	border-width:0px 10px 10px 0;
	border-style:solid;
	border-color:transparent;
	border-right-color: #4169E1;
}

.k005{
	border:none!important;
	background: none!important;
	color:#fff!important;
	position:relative!important;
	padding:10px!important;
	background: #1E90FF!important;
	box-shadow:
		10px 0 0 0 #1E90FF,
		-20px 0 0 0 #1E90FF,
		0 3px 3px 0 rgba(0,0,0,0.1)!important;
	text-shadow:1px 1px 2px #333!important;
	width:100%;
}

.k005:before{
	content:" ";
	position:absolute;
	top:100%;
	left:-20px;
	width:0px;
	height:0px;
	border-width:0px 10px 10px 0;
	border-style:solid;
	border-color:transparent;
	border-right-color: #0000CD;
}

.migi{
	font-size: 16px;
	position:relative;
	margin:35px 15px 35px 15px;
	padding:10px 20px 10px 10px;
	color:#333;
	border:#666 solid 2px!important;
	border-radius:12px;
	background:#fff;
	box-shadow:
	-7px -5px 0 0 #e8e8e8 inset,
	1px 2px 0 0 #666;
	line-height:30px;
}
.migi:before{
	content:" ";
	position:absolute;
	top:100%;
	left:90%;
	width:0px;
	height:0;
	border-width:20px;
	border-style:solid;
	border-color:transparent;
	border-top-color:#666;
}
.migi:after{
	content:" ";
	position:absolute;
	bottom:-27px;
	left:91%;
	width:0;
	height:0;
	border-width:14px;
	border-style:solid;
	border-color:transparent;
	border-top-color:#e8e8e8;
}

.hidari{
	font-size: 16px;
	position:relative;
	margin:35px 15px 35px 15px;
	padding:10px 20px 10px 10px;
	color:#333;
	border:#666 solid 2px!important;
	border-radius:12px;
	background:#fff;
	box-shadow:
	-7px -5px 0 0 #e8e8e8 inset,
	1px 2px 0 0 #666;
	line-height:30px;
}
.hidari:before{
	content:" ";
	position:absolute;
	top:100%;
	left:20px;
	width:0px;
	height:0;
	border-width:20px;
	border-style:solid;
	border-color:transparent;
	border-top-color:#666;
}
.hidari:after{
	content:" ";
	position:absolute;
	bottom:-27px;
	left:25px;
	width:0;
	height:0;
	border-width:14px;
	border-style:solid;
	border-color:transparent;
	border-top-color:#e8e8e8;
}

h5{
	font-size: 110%;
}

.kocontents dl.me dt{
	color:#ff0000;
	text-decoration: underline;
}
.kocontents dl.you dt{
	color:#0000ff;
	text-decoration: underline;
}
.kocontents dl.jibai dt{
	color:#006400;
	text-decoration: underline;
}

#main-contents .qa dt{
	background: url(../images/icon/q07.gif) no-repeat;
	line-height:30px;
	padding-left:40px;
	color:#696969;
	font-size: 1.1em;
	text-decoration: underline;
}

#main-contents .qa dt:hover{
	background: url(../images/icon/q02.gif) no-repeat;
	text-decoration: none;
	color:#FF0000;
}

#main-contents .qa dd{
	background: url(../images/icon/a05.gif) no-repeat;
	line-height:30px;
	padding-left:40px;
	font-size: 1.0em;
}

/* 2026-08: よくあるご質問（qa-v2） Q/Aアイコンをq.png/a.pngに変更し、
   回答を全隠しせず少しだけ表示＋「続きを読む」で全文表示する */
#main-contents .qa.qa-v2 dt{
	display: flex;
	align-items: center;
	background: none;
	padding-left: 0;
	padding-bottom: 10px;
	margin-bottom: 10px;
	border-bottom: 2px solid #88b83e;
	line-height: 2.2;
	text-decoration: none;
}

#main-contents .qa.qa-v2 dt::before{
	content: "";
	display: block;
	flex-shrink: 0;
	width: 168px;
	height: 96px;
	margin-right: 12px;
	background: url(../images/icon/q.png) no-repeat center / contain;
}

#main-contents .qa.qa-v2 dt:hover{
	background: none;
	text-decoration: none;
	color: #696969;
}

#main-contents .qa.qa-v2 dd{
	display: flex;
	align-items: center;
	background: none;
	padding-left: 0;
	padding-top: 0;
}

#main-contents .qa.qa-v2 dd::before{
	content: "";
	display: block;
	flex-shrink: 0;
	width: 168px;
	height: 96px;
	margin-right: 12px;
	background: url(../images/icon/a.png) no-repeat center / contain;
}

#main-contents .qa.qa-v2 dd .qa-answer-body{
	flex: 1;
	min-width: 0;
}

#main-contents .qa.qa-v2 dd .qa-answer-text{
	display: block;
	max-height: 5.2em;
	overflow: hidden;
	transition: max-height 0.4s ease;
}

#main-contents .qa.qa-v2 dd .qa-answer-inner{
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
	line-height: 2.6;
}

#main-contents .qa.qa-v2 dd.qa-open .qa-answer-inner{
	display: block;
	-webkit-line-clamp: unset;
	overflow: visible;
}

/* qa-answer-text の max-height の実際の数値はJSでコンテンツの高さに合わせて設定する（下部のscript参照） */

#main-contents .qa.qa-v2 .qa-more-btn,
#main-contents .qa.qa-v2 .qa-close-btn{
	display: inline-block;
	margin-top: 4px;
	color: #88b83e;
	text-decoration: underline;
	cursor: pointer;
	line-height: normal;
}

#main-contents .qa.qa-v2 .qa-close-btn{
	display: none;
}

#main-contents .qa.qa-v2 dd.qa-open .qa-more-btn{
	display: none;
}

#main-contents .qa.qa-v2 dd.qa-open .qa-close-btn{
	display: inline-block;
}

/* 2026-10: よくあるご質問（qa-v2） QAひとつずつの区切りがわかりにくいため、
   それぞれをカード化して見分けやすくする（番号バッジは不採用） */
#main-contents .qa.qa-v2{
	position: relative;
	background: #f7faf1;
	border: 1px solid #d7e8bd;
	border-radius: 14px;
	padding: 22px 24px 22px;
	margin: 0 0 32px;
	box-shadow: 0 3px 10px rgba(60, 90, 20, 0.08);
}

#main-contents .qa.qa-v2:last-of-type{
	margin-bottom: 0;
}

#main-contents .qa.qa-v2 dt{
	border-bottom: 2px solid #c7dba0;
	padding-bottom: 16px;
	margin-bottom: 16px;
}

#main-contents .shadow{
	-moz-box-shadow: 2px 2px 3px 3px #CCC;
	-webkit-box-shadow: 2px 2px 3px 3px #CCC;
	box-shadow: 2px 2px 3px 3px #CCC;
	background-color: #fff;
	padding: 5px;
	margin: 10px;
}
.menu {
   list-style:none;
   padding:0;
   margin:0;
   overflow: hidden;
   position: relative;
}
.menu li {
border-radius: 10px;     
   background:url(../images/tabmenu.jpg) ;
   position: relative;
   height:40px;
}
.menu li a {
   text-decoration:none;
   color:#fff;
   font-size:1.2em;
   display:block;
   padding:0 10px 0 60px;
   height:39px;
   line-height:39px;
   border-bottom:1px solid #fff;
   font-weight:bold;
}
.menu li a:hover {
   color:#FFD700;
}
.menu li ul {
   margin:0;
   padding:0;
   background:#fff;
}
.menu li ul li {
   background-color:#dcd3b2!important;
   background:url(../images/icon/ecalic002_002.png) right center no-repeat;
}
.menu li ul li a {
   color:#B8860B;
   padding:0 10px 0 20px;
}
.menu li ul li a:hover {
   color:#000;
}

.menu .drop5:hover {
   height:240px;
}

.menu * {
   -moz-transition: .5s;
   -webkit-transition: .5s;
   -o-transition: .5s;
   -ms-transition: .5s;
   transition: .5s;
}

.xnone{
	overflow-x: hidden!important;
}

html { scroll-behavior: smooth;}

a:hover img.hover {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";
	transition : 1s;
  }

  .asterisk {
	padding-left: 1rem;
	font-size:0.8em;
	margin-bottom:0.5em!important;
  }
  
  .asterisk::before {
	content: "※ ";

  }

  .sodansheet{
	font-size:1.2em;
	font-weight: bold;
	list-style-type: none;
	margin:2.0em 0 0 4.0em!important;
  }

  .sodansheet li{
	line-height:2.0em!important;
  }

  .sodansheet a:hover{
	font-size:1.1em;
  }

  .my-radio {
	
	accent-color: #006400;
	
	inline-size: 1.2rem;
	block-size: 1.2rem;
	vertical-align: middle;
	margin:5px 0;
  }
  .my-radioli{
	line-height:3.0em!important;
	list-style-type: none;
  }

  .sidebar {
  background-color: #f8f8f8; 
  padding-top: 20px;
  font-size: 1.2em;
}

.sidebar ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.sidebar li {
  border-bottom: 1px solid #eee; 
}

.sidebar li:last-child {
  border-bottom: none; 
}

.sidebar a {
  display: block;
  padding: 15px 20px;
  text-decoration: none;
  color: #333; 
}

.sidebar a:hover {
  background-color: #eee; 
}

.sidebar .icon {
  margin-right: 10px;
  font-size: 1.2em; 
}

.sidebar .text {
  display: block;
  line-height: 1.2;
  font-size: 1.2em; 
}

.text.ja::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900; 
  content: ""; 
  margin-right: 10px; 
  display: inline-block; 
}

.sidebar .text.en {
  color: #888; 
  font-size: 1.0em; 
  line-height: 2.0;
  padding-left:25px;
}

    .wrapper {
        display: flex;
        justify-content: center;
    }

    /* ===== CTAバナー（無料相談呼びかけ） 2026-08 リニューアル ===== */
    .cta-slidebox { overflow: visible; padding-bottom: 6px; }
    /* ===== CTAバナー（無料相談窓口） 2026-08 再リニューアル：白背景＋赤の見出し＋LINE/メールボタン
       2026-09: このバナーはページ内に2箇所（#main-contents側と#sub-contents側）にあり、
       周囲の文字サイズ設定が違うため、em指定のままだと2箇所で見た目のサイズがずれてしまう。
       ルート(html)基準で常に同じ絶対サイズになるよう、主要なサイズ指定はすべてremに統一する。 ===== */
    .cta-banner3 {
      background: #fff;
      padding: 26px 20px 22px;
      text-align: center;
      width: 100%;
      box-sizing: border-box;
    }
    .cta-banner3-headline {
      font-size: 1.7rem;
      font-weight: bold;
      color: #222;
      margin: 0 0 8px;
      letter-spacing: 0.02em;
    }
    .cta-banner3-row {
      display: flex;
      align-items: stretch;
      justify-content: center;
      gap: 14px;
      flex-wrap: nowrap;
    }
    .cta-banner3-phone {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      justify-content: center;
      text-align: left;
    }
    .cta-banner3-phone-label {
      font-size: 0.85rem;
      color: #333;
      margin-bottom: 2px;
    }
    .cta-banner3-phone-num {
      font-size: 2rem;
      font-weight: 900;
      color: #1a1a1a!important;
      text-decoration: none;
      font-family: "Roboto", "Arial Black", sans-serif;
      white-space: nowrap;
      letter-spacing: 0.02em;
    }
    .cta-banner3-phone-num:hover { color: #c00000!important; }
    .cta-banner3-phone-num i { color: #c00000; margin-right: 6px; }
    .cta-banner3-btn {
      flex: 1 1 200px;
      max-width: 260px;
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      border-radius: 8px;
      padding: 10px 14px;
      color: #fff!important;
      text-decoration: none;
      font-size: 0.95rem;
      line-height: 1.5;
      text-align: left;
      box-sizing: border-box;
    }
    .cta-banner3-btn:hover { opacity: 0.9; text-decoration: none; color: #fff!important; }
    .cta-banner3-btn i { font-size: 1.8em; flex: 0 0 auto; }
    .cta-banner3-btn-text b { display: block; font-size: 1.15em; }
    .cta-banner3-btn-line { background: linear-gradient(135deg, #2ea62a 0%, #157015 100%); }
    .cta-banner3-btn-mail { background: linear-gradient(135deg, #04375a 0%, #021f33 100%); }
    /* 2026-09: mailtoページの「お問い合わせ」直下バナーは上の余白が広すぎたため専用に詰める */
    #main-contents .cta-section-contents--tight .slideboxt { padding-top: 0; }
    #main-contents .cta-section-contents--tight .cta-banner3 { padding-top: 12px; }
    @media (min-width: 769px) {
      #main-contents .cta-section-contents--tight .cta-banner3 { padding-top: 20px; }
    }
    /* 2026-09: 「マイタウン法律事務所の弁護士は～」の注意書き。
       このバナーは#sub-contents側にあり、周囲の基準文字サイズが本文（FAQ回答など）より小さいため、
       emではなくrem（ルート基準の絶対値）で「本文の0.9倍」になるよう指定する */
    .cta-banner3-note {
      margin: 14px 0 0;
      font-size: 0.8rem;
      color: #666;
      line-height: 1.6;
      text-align: left;
    }
    @media (max-width: 768px) {
      .cta-banner3 { padding: 22px 16px 20px; }
      .cta-banner3-headline { font-size: 1.3rem; }
      .cta-banner3-row { flex-wrap: wrap; }
      .cta-banner3-phone { flex: 1 1 100%; align-items: center; margin-bottom: 12px; }
      .cta-banner3-btn { flex: 1 1 100%; max-width: none; }
    }
    /* 2026-08: PC幅ではページ全体が広いのに対してこのバナーだけ小さく見えるため、
       見出し・電話番号・ボタンを一回り大きくして目立たせる */
    @media (min-width: 769px) {
      .cta-banner3 { padding: 40px 20px 34px; }
      .cta-banner3-headline { font-size: 1.9rem; margin-bottom: 16px; }
      .cta-banner3-row { gap: 24px; }
      .cta-banner3-phone-label { font-size: 1.0rem; }
      .cta-banner3-phone-num { font-size: 2.3rem; }
      /* 2026-09: 本文コンテナの最大幅を1440px→1200pxに縮小した影響でこのバナーの横幅も
         狭くなり、ボタン内の文字が2行の想定から4行に折り返してしまっていたため、
         文字サイズ・アイコンサイズを縮小して2行に収まるようにする */
      .cta-banner3-btn { max-width: 260px; padding: 12px 14px; font-size: 0.92rem; border-radius: 10px; }
      .cta-banner3-btn i { font-size: 1.6em; }
      /* 2026-09: 電話番号（【受付】…の左端）の開始位置に文章の書き出しを揃え、
         右端はメールボタンの右端までに収める */
      .cta-banner3-note { padding-left: 0; font-size: 1.05rem; max-width: 800px; margin-left: auto; margin-right: auto; }
    }
    /* 2026-08: 「弁護士に依頼することで～」を目立たせる強調ボックス
       （薄緑背景＋中央に白抜きカード） */
    .highlight-box2 {
      background: transparent;
      text-align: center;
      padding: 12px 16px;
      margin: 12px 0 20px;
    }
    .highlight-box2-inner {
      background: transparent;
      padding: 0 8px;
      max-width: 900px;
      margin: 0 auto;
    }
    .highlight-box2-row {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 20px;
      text-align: left;
    }
    .highlight-box2-icon {
      flex: 0 0 auto;
      display: block;
      width: 60px;
      height: 60px;
      line-height: 0;
    }
    .highlight-box2-icon svg {
      display: block;
      width: 60px;
      height: 60px;
    }
    .highlight-box2-main {
      margin: 0;
      font-size: 1.45em;
      font-weight: 900;
      line-height: 1.5;
      color: #222;
    }
    .highlight-box2-em {
      color: #e95738;
      font-size: 1.2em;
      white-space: nowrap;
      background: linear-gradient(transparent 62%, rgba(255, 214, 90, 0.75) 62%);
      padding: 0 2px;
    }
    @media (max-width: 480px) {
      .highlight-box2-icon { width: 56px; height: 56px; }
      .highlight-box2-icon svg { width: 56px; height: 56px; }
    }
    /* 2026-08: スマホでは「アイコン→改行→文字」の縦並びにし、
       文字サイズはチェックリスト（相談料は初回無料！など）と揃える */
    @media (max-width: 768px) {
      .highlight-box2-row {
        flex-direction: column;
        align-items: center;
      }
      .highlight-box2-icon {
        margin-bottom: 8px;
      }
      #main-contents > .contents ~ .contents p.highlight-box2-main {
        font-size: 19px !important;
        font-weight: 900 !important;
        text-align: center;
      }
    }
    /* 2026-08: スマホ表示で、CTAバナー＋チェックリストより後ろの本文の文字サイズを
       縮小（バナー・チェックリスト自体はそのままの大きさを維持）。
       見出し(hタグ)は一段階前の大きさに戻し、本文(p/li/td/dd)だけをさらに縮小する。 */
    @media (max-width: 768px) {
      #main-contents > .contents ~ .contents {
        font-size: 0.87em;
      }
      #main-contents > .contents ~ .contents p,
      #main-contents > .contents ~ .contents li,
      #main-contents > .contents ~ .contents td,
      #main-contents > .contents ~ .contents dd {
        font-size: 0.87em;
      }
    }
    /* 2026-08: 交通事故解決実績（金額表示）のスマホ表示は、
       上の強調ボックスと同じ文字サイズに揃える。
       赤字の「約〇万円増額！」は介入前/介入後の金額よりも大きく目立たせる */
    @media (max-width: 768px) {
      #main-contents > .contents ~ .contents td.kks1,
      #main-contents > .contents ~ .contents td.kks2,
      #main-contents > .contents ~ .contents td.kks3,
      #main-contents > .contents ~ .contents td.kks4 {
        font-size: 18px !important;
      }
      #main-contents > .contents ~ .contents td.kks7 {
        font-size: 24px !important;
      }
    }
    /* 2026-08: 弁護士費用表の赤字（初回0円など）は上のtd一括縮小の対象から外し、
       スマホでも読みやすい大きさを保つ */
    @media (max-width: 768px) {
      #main-contents > .contents ~ .contents td.costd {
        font-size: 1.5em;
      }
    }

    /* 2026-08: 長文の体験談セクションを読みやすく。冒頭の声を引用ボックスにして目立たせる
       （本文の折りたたみは行わない。文章自体は変更なし） */

/* ==== advanced.css ==== */
@charset "UTF-8";

.al-c{ text-align: center; }

.al-r{ text-align: right; }

/* 2026-10: 「〜についてはこちらをご参照ください」形式の文中リンクを、
   ボタン風の「◯◯を詳しく見る」リンクにデザイン変更 */
#main-contents .more-link{
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-top: 24px; /* 2026-10: 直前の要素（QAカード等）との間に余白を確保しかぶりを防止 */
	padding: 10px 22px;
	border: 2px solid #88b83e;
	border-radius: 30px;
	color: #88b83e;
	font-weight: bold;
	text-decoration: none !important;
	background: #fff;
	transition: 0.3s;
}

#main-contents .more-link:hover{
	background: #88b83e;
	color: #fff;
}

#main-contents .more-link i{
	font-size: 0.8em;
}
.al-rch{ text-align: right; }

.vl-m{ vertical-align: middle!important; }

.fl-r{ float: right; padding:10px;}
.fl-rb{ float: right; padding:10px;}
.fl-l{ float: left; padding:10px;}
.fl-lb{ float: left; padding:10px;}

@media
only screen and (max-width : 640px){
.fl-r,
.fl-l{ float: none; }
}

.m0-t{ margin-top: 0!important; }

.m10-r{ margin-right: 10px!important; }

.b{ font-weight: bold!important; }
.small{ font-size: 0.8em!important; }
.f08em{ font-size: 0.8em!important; }
.f09em{ font-size: 0.9em!important; }
.f11em{ font-size: 1.1em!important; }
.f12em{ font-size: 1.2em!important; }

.f11pt{ font-size: 11pt!important; }

.red{ color: #e95738!important; }
.blue{ color: #0000dd!important; }
.green{ color: #008000!important; }
.italic{ font-style: italic; }
.underline{ text-decoration: underline; }

.white{ color: #fff!important; }
#main table .w20{ width: 20%; }
#main table .w65{ width: 65%; }

ul.none li{ list-style-type: none; }

input:focus,
textarea:focus,
input.focus,
textarea.focus{ background-color: #ffffe4!important; }

.left{
	float: left;
	margin: 0 30px 20px 0!important;
}

.right{
	float: right;
	margin: 0 0 20px 30px!important;
}

@media
only screen and (max-width : 640px){
.left,
.right{
	float: none;
	margin-right: 0!important;
	margin-left: 0!important;
}
}

/* ==== dropdown.css ==== */
#dropmenul{

  width: 95%;  
  margin: 0 auto;  
  text-align:center;
}
#dropmenu{
  list-style-type: none;
  height: 40px;
  padding: 0;
  background: url(../images/image.jpg) ;
}
#dropmenu li{
  border-right: solid 1px #000;
  width: 12%;
  box-sizing: border-box;
  position: relative;
  float: left;
  margin: 0;
  padding: 0;
  text-align: center;
}
#dropmenu li a{
  display: block;
  margin: 0;
  padding: 15px 0 11px;
  color: #000;
  text-shadow: 1px 1px 1px #A9A9A9;
  font-size: 14px;
  font-weight: bold;
  line-height: 1;
  text-decoration: none;
}
#dropmenul #dropmenu li.first{ border-left: solid 1px #000!important;}

/* 2026-08: 新デザインのグローバルメニュー（ホーム・弁護士紹介・弁護士費用・アクセス・お問い合せ の5項目）
   #global-nav.nav-v2 が付いているページ（現在はトップページのみ）にだけ適用する。
   他ページは従来の8項目メニューのままなので、共通ルールは変更しない。 */
#global-nav.nav-v2 #dropmenu{
  height: 52px;
}
#global-nav.nav-v2 #dropmenu > li{
  width: 20%;
}
#global-nav.nav-v2 #dropmenu > li > a{
  padding: 16px 0 14px;
  font-size: 18px;
}
#global-nav.nav-v2 #dropmenu li.first a{
  font-size: 22px;
}
#dropmenu li{ white-space: nowrap; }
#dropmenu li:hover > a{
  background: rgb(97,152,51);
  color: #eff7b1;
}
#dropmenu > li:hover > a{
  border-radius: 3px 3px 0 0;
}

/* 2026-09: 「お問い合せ」だけ目立たせるためのハイライト */
#dropmenu li a.nav-contact-link{
  color: #c00000;
}
#dropmenu li:hover > a.nav-contact-link{
  color: #fff;
}
#dropmenu li ul{
  list-style: none;
  position: absolute;
  top: 100%;
  left: 0;
  margin: 0;
  padding: 0;
  /* 2026-09: 以前はこのulに幅指定がなく、直下のliに幅120%（親liの何%か）という
     算出が不安定な指定をしていたため、項目数やメニュー幅（nav-v2など）が変わると
     ドロップダウンの表示が崩れていた。ここで固定幅を持たせて安定させる。
     2026-09追記: 220pxだと文字が小さく余白も窮屈に見えたため、幅と文字サイズを拡大。 */
  width: 280px;
}
#dropmenu li:last-child ul{
  left: auto;
  right: 0;
}
#dropmenu li ul li{
  overflow: hidden;
  width: 100%;
  height: 0;
  color: #fff;
  -moz-transition: .2s;
  -webkit-transition: .2s;
  -o-transition: .2s;
  -ms-transition: .2s;
  transition: .2s;
  border-right:none!important;
  /* 2026-09: 上位の "#dropmenu li" セレクタはネストされたサブメニューのliにも
     float:left を継承させてしまい、縦に並ぶはずのドロップダウン項目が
     横並びに崩れる原因となっていた。ここで明示的にリセットする。 */
  float: none;
  display: block;
  position: relative;
}
#dropmenu li ul li a{
  padding: 15px 20px;
  background: rgb(97,152,51);
  color: #fff;
  text-align: left;
  font-weight: normal;
  font-size: 16px;
}
#dropmenu li:hover ul li{
  overflow: visible;
  height: 46px;
  border-top: 1px solid #7c8c0e;
  border-bottom: 1px solid #DCDCDC;
}
#dropmenu li:hover ul li:first-child{
  border-top: 0;
}
#dropmenu li:hover ul li:last-child{
  border-bottom: 0;
}
#dropmenu li:hover ul li:last-child a{
  border-radius: 0 0 3px 3px;
}

/* 2026-08: 一文を黄緑の二重下線で強調するための汎用クラス */
.emphasis-box{
  display: block;
  overflow: hidden;
  padding: 8px 20px;
  margin: 5px 0;
  font-size: 1.2em;
  font-weight: bold;
  text-align: center;
  text-decoration: underline;
  text-decoration-style: double;
  text-decoration-color: #88b83e;
  text-underline-offset: 4px;
}

/* 2026-10: TOP画像と「無料相談窓口はこちら」見出しの間の余白を詰める */
#main-image{ padding-bottom: 0; }
#main-image-in{ padding-bottom: 0; }
#main-contents .cta-section-contents .cta-slidebox{ padding-top: 0; }
#main-contents .cta-section-contents .cta-banner3{ padding-top: 14px; }

/* 2026-10: 「弁護士に依頼することで〜」ボックスの上下余白を詰める */
#main-contents .highlight-box2{ padding: 0; margin: 0 0 10px; }
#main-contents .highlight-box2-inner{ padding: 0; }
#main-contents .highlight-box2 p.highlight-box2-main{ margin: 0 !important; }
#main-contents .highlight-box2-row{ gap: 14px; }
@media (max-width: 768px){
  #main-contents .highlight-box2-row{ gap: 4px; }
  #main-contents .highlight-box2-icon{ margin-bottom: 0; }
  #main-contents .highlight-box2-icon,
  #main-contents .highlight-box2-icon svg{ width: 44px; height: 44px; }
}
