/*-----------------------------------------
テキストリンク
-------------------------------------------*/
a.link_text { color: #A5A5A5; text-decoration: underline; }

/*-----------------------------------------
見出し
-------------------------------------------*/
h1 { font-size: 2rem; text-align: center; line-height: 120%; padding: 1.5rem 0; background: #F5F5F5; margin-bottom: 50px; }
h1 span { font-size: 1rem; display:block; }
h1 span.category { font-size: .8rem; width: 11rem; color: #FFF; font-weight: normal; line-height: 180%; background: #A5A5A5; margin: 10px auto;}
h2,
.title-h2 { font-size: 2rem; font-weight: bold; text-align: center; line-height: 120%; padding: 1rem 0; }
h3,
.title-h3 { font-size: 1.2rem; font-weight: bold; text-align: left;  border-left: 4px solid #A5A5A5; padding: .5em .75em; margin-bottom: 1em;}
h3 span,
.title-h3 span { font-size: .85rem; }
h4,
.title-h4 { font-size: 1em; font-weight: bold; margin-bottom: .5em;  text-align: left;}

.title-headlineM { color: #A5A5A5; font-size: 1.5rem; text-align: center;  padding: .5em 0; font-weight: bold; margin-bottom: 1em; border: none; border-bottom: 3px solid; }

h96,
.title-h96 { font-size: 1.2em; color: #5ab9ff; font-weight: bold; margin-bottom: .5em;  text-align: center;}

/*線の種類（点線）0.5px 線色*/
h97,
.title-h97 { font-size: 1.0em; color: #000; font-weight: bold; margin-bottom: .5em;  text-align: center; border-bottom: dashed 0.5px #000;}

h98 {
  background: linear-gradient(transparent 40%, #FFFF00 70%);
}
h200 {
  position: relative;/*相対位置*/
  padding: 0.5em 0.5em 0.5em 1.5em;/*アイコン分のスペース*/
  line-height: 2.4;/*行高*/
  color: #5ab9ff;/*文字色*/
  background: #fffff4;
}
h200:before {
  font-family: "Font Awesome 5 Free";
  content: "\f105";/*angle-rightアイコンのユニコード*/
  font-weight: 900;
  position: absolute;/*絶対位置*/
  font-size: 1em;/*サイズ*/
  right: 0.25em;/*アイコンの位置*/
  top: 0em;/*アイコンの位置*/
  color: #fffff4; /*アイコン色*/
}

h201 {
  position: relative;/*相対位置*/
  padding: 0.5em 0.5em 0.5em 1.5em;/*アイコン分のスペース*/
  line-height: 1.4;/*行高*/
  color: #5ab9ff;/*文字色*/
  background: #5ab9ff;
}
h201:before {
  font-family: "Font Awesome 5 Free";
  content: "\f0e0";/*envelope（メール）アイコンのユニコード*/
  font-weight: 900;
  position: absolute;/*絶対位置*/
  font-size: 1.0em;/*サイズ*/
  right: 0.25em;/*アイコンの位置*/
  top: 0em;/*アイコンの位置*/
  color: #5ab9ff; /*アイコン色*/
}

h202 {
  position: relative;/*相対位置*/
  padding: 0.5em 0.5em 0.5em 1.5em;/*アイコン分のスペース*/
  line-height: 2.4;/*行高*/
  color: #5ab9ff;/*文字色*/
  background: #fffff4;
}
h202:before {
  font-family: "Font Awesome 5 Free";
  content: "\f007";/*ユーザーアイコンのユニコード*/
  font-weight: 900;
  position: absolute;/*絶対位置*/
  font-size: 1em;/*サイズ*/
  left: 0.25em;/*アイコンの位置*/
  top: 0em;/*アイコンの位置*/
  color: #5ab9ff; /*アイコン色*/
}

h203 {
  position: relative;/*相対位置*/
  padding: 0.5em 0.5em 0.5em 1.5em;/*アイコン分のスペース*/
  line-height: 2.4;/*行高*/
  color: #5ab9ff;/*文字色*/
  background: #fffff4;
}
h203:before {
  font-family: "Font Awesome 5 Free";
  content: "\f30b";/*ユーザーアイコンのユニコード*/
  font-weight: 900;
  position: absolute;/*絶対位置*/
  font-size: 1em;/*サイズ*/
  right: 0.0em;/*アイコンの位置*/
  top: 0em;/*アイコンの位置*/
  color: #5ab9ff; /*アイコン色*/
}


h205 {
  position: relative;/*相対位置*/
  padding: 0.5em 0.5em 0.5em 1.5em;/*アイコン分のスペース*/
  line-height: 2.4;/*行高*/
  color: #5ab9ff;/*文字色*/
  background: #fffff4;
}
h205:before {
content: "";
  display: inline-block;
  width: 0;
  height: 0;
  margin: 0 0.5em 0 0;
  border: 5px solid transparent;
  border-right: 0 solid transparent;
  border-left: 8px solid #000;
}

h204 {
  width: 40px;
  height: 8px;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  transform: skew(-45deg);
}

.Text{
  text-align: right;
  margin-top 20px; /*なくてもOK*/
//  position: relative;
  position:absolute;
//  border: 1px solid #e2264d;
  width: 115px;
  height: 48px;
  display: flex;
  justify-content: right;
  align-items: bottom;
//  color: #e2264d;
  color: #0048aa;
  font-size: 20px;
  bottom:0;
  right:0;
}
.Text:before,
.Text:after{
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  height: 1px;
//  background: #e2264d;
  background: #0048aa;
}
.Text:before{
  width: 30px;
  transform: translate(0px, 0px);
  right:3;
}
.Text:after{
  width: 15px;
  transform-origin: right center;
  transform: translate(0px, 0px) rotate(25deg);
  text-align: right;
  justify-content: right;
  bottom:0;
  right:3;
}

h90 ul {
  padding: 0em 0em 0em 1em;
  position: relative;
}

h90 ul li {
  border-bottom: dashed 1px silver;
  list-style-type: none!important;
  text-align: left;
  line-height: 1.5;
  padding: 0.5em 0;
  list-style-type: none!important;/*ポチ消す*/
}

h90 ul li:before {
  font-family: "Font Awesome 5 Free";
  content: "\f00c";
  font-weight: 900;
  position: absolute;
  left : 0em; /*左端からのアイコンまで*/
  color: #5ab9ff; /*アイコン色*/
}


h100,
.title-h2 { font-size: 2rem; font-weight: bold; text-align: left; line-height: 100%; padding: 1rem 0; }
h100 a {
	display: block;
	width: 340px;
	height: 59px;
	font-size: 10;
	background: #FFF left top/340px auto no-repeat;
}


menu ul{
    display: table;
    margin: 0 auto;
    padding: 0;
    width: 80%;
    text-align: center;
}
menu ul li{
    display: table-cell;
    min-width: 50px;
}
menu ul li a{
    display: block;
    width: 100%;
    padding: 10px 0;
    text-decoration: none;
    color: #ccc;
    font-weight: bold;
}
menu ul li.current{
    border: 3px solid #5ab9ff;
}
menu ul li.current a{
    color: #555;
}
menu ul li a:hover{
    color: #5ab9ff;
}




@media screen and (max-width: 767px) {
	h1 { font-size: 1.3rem; padding: 1.3rem 0; }
	h1 span { font-size: .85rem; display:block; }
	h2,
	.title-h2  { font-size: 1.3rem; padding: 1rem 0; }
	h3,
	.title-h3 { font-size: 1.1rem; padding: .2em .75em; }
	h4,
	.title-h4  { font-size: 1em; }
	
	.title-headline { font-size: 1.2rem; }
}



/*------------------------------------------
背景がグレーのボックス
-------------------------------------------*/
.conts_textbox { padding: 20px 30px 30px; background-color: #F5F5F5; }
@media screen and (max-width: 767px) {
	.conts_textbox { padding: 5%; }
}

/*------------------------------------------
画像とテキスト
-------------------------------------------*/
.conts_text_img_box { zoom:1;/*for IE 5.5-7*/ }
.conts_text_img_box:after{/*for modern browser*/ content:"."; display: block; height:0; clear: both; visibility: hidden; }
.conts_text_img_box img { width: auto; max-width: 100%; height: auto; margin-bottom: 10px;}
.conts_text_img_box img.imgL {  width: 48%; float: left; margin-right: 4%; }
.conts_text_img_box img.imgR {  width: 48%; float: right; margin-left: 4%; }

@media screen and (max-width: 767px) {
	.conts_text_img_box img { width: 100%; }
	.column1 .conts_text_img_box .imgL,
	.column1 .conts_text_img_box .imgR { width: 100%; float: none; margin-left: 0; margin-right: 0;}
}

/*------------------------------------------
リード文
-------------------------------------------*/
.lead { text-align: center; padding: 0; }
.lead .leadcopy { font-size: 1.3em; font-weight: bold; }
.lead p { width: 70%; margin: 0 auto 1.5rem; }

@media screen and (max-width: 767px) {
	.lead { text-align: center; }
	.lead .leadcopy { font-size: 1rem; font-weight: bold; }
	.lead p { width: 90%; margin: 0 auto 1.5rem; text-align: left; }
}
/*-----------------------------------------
文字装飾
-------------------------------------------*/
/*アンダーライン*/
.underline_y { background: -webkit-linear-gradient(top, transparent, transparent 50%, #FFF18E 50%, #FFF18E); background: -webkit-linear-gradient(top, transparent, transparent 50%, #FFF18E 50%, #FFF18E); background: linear-gradient(transparent, transparent 50%, #FFF18E 50%, #FFF18E); background-size: 1em 100%; }
.underline_m { background: -webkit-linear-gradient(top, transparent, transparent 50%, #FFA2C7 50%, #FFA2C7); background: -webkit-linear-gradient(top, transparent, transparent 50%, #FFA2C7 50%, #FFA2C7); background: linear-gradient(transparent, transparent 50%, #FFA2C7 50%, #FFA2C7); background-size: 1em 100%; }
.underline_c { background: -webkit-linear-gradient(top, transparent, transparent 50%, #B3ECFF 50%, #B3ECFF); background: -webkit-linear-gradient(top, transparent, transparent 50%, #B3ECFF 50%, #B3ECFF); background: linear-gradient(transparent, transparent 50%, #B3ECFF 50%, #B3ECFF); background-size: 1em 100%; }

/*縦書き*/
.t_vertical > span { font-size: 1rem; line-height: 130%; text-align: center; width: 1rem; margin: 0 .8rem; display: block; float: right;}
.t_vertical .emph { width: 1.6rem;font-size: 1.6rem; line-height: 120%; display:block; margin-left: -.3rem;}
.t_vertical .komoji { display: block; margin: -.2rem 0 .1rem .1rem; } 
.t_vertical .kutoten { display: block; margin: -.5rem 0 0 .5rem;} 

@media screen and (max-width: 767px) {
	.t_vertical span { font-size: .8rem; margin: 0 .4rem;}
	.t_vertical .emph { font-size: 1rem; }

}

/*-----------------------------------------
注釈
-------------------------------------------*/
.annotate:after { color: #F82D00; content:'※'attr(data-annotation); font-size: .7em; vertical-align: super; margin-right: .5em;}
.annotation { font-size: .8em; padding-left: 3em; }
.annotation:before { color: #F82D00; content:'※'attr(data-annotation); font-size: .8em; margin: 0 1.5em 0 -3em;  display: inline-block;  }

/*-----------------------------------------
ボタン
-------------------------------------------*/
.btn_a,
.btn_b,
.btn_c,
.btn_link_a,
.btn_link_b { text-align: center; min-width: 300px; padding: 10px 30px; border: 2px solid #A5A5A5; display: inline-block; position: relative; -webkit-transition: all .3s; transition: all .3s; }
.btn_red { font-size: 1rem; font-weight: bold; text-align: center; min-width: 200px; padding: 10px 30px; border: 2px solid #F82E00; display: inline-block; position: relative; -webkit-transition: all .3s; transition: all .3s; }

.btn_a:not(.pos_manual),
.btn_b:not(.pos_manual),
.btn_c:not(.pos_manual),
.btn_link_a:not(.pos_manual),
.btn_link_b:not(.pos_manual),
.btn_red:not(.pos_manual) { left: 50%; -ms-transform: translate(-50%, 0); -webkit-transform: translate(-50%, 0); transform: translate(-50%, 0);}

.btn_a { color: #FFF; background: #2380d0; font-weight: bold; position: relative; }
.btn_b { color: #FFF; background: #A5A5A5; }
.btn_c { color: #FFF; background: #2380d0; font-weight: bold; position: relative; }
.btn_red { color: #FFF; background: #F82E00; }

.btn_a:before,
.btn_b:before,
.btn_c:before,
.btn_red:before  { content:''; width: 5px; height: 5px; border-width: 2px 2px 0 0 ; border-style: solid; transparent; display: inline-block; position: absolute; top:0; bottom:0; left: 15px; margin: auto; -ms-transform: rotate(45deg); -webkit-transform: rotate(45deg); transform: rotate(45deg); }
.btn_a:before { border-color: #A5A5A5 #A5A5A5 transparent transparent; }
.btn_b:before,
.btn_c:before { border-color: #2380d0 #A5A5A5 transparent transparent; }
.btn_red:before { border-color: #FFF #FFF transparent transparent; }

.btn_link_a { color: #A5A5A5; font-weight: bold; }
.btn_link_b { color: #FFF; background: #A5A5A5; }

.btn_link_a:before,
.btn_link_b:before { content:''; width: 8px; height: 6px; border: 1px solid; box-shadow: display: inline-block; display: inline-block; position: absolute; top:0; bottom:0; left: 12px; margin: auto; }

.btn_link_a:before { border-color: #A5A5A5; box-shadow: #FFF 2px 2px 0  -1px,#A5A5A5 2px 2px; }
.btn_link_b:before { border-color: #FFF; box-shadow: #A5A5A5 2px 2px 0  -1px,#FFF 2px 2px; }

.btn-circle-border-simple {
  display: inline-block;
  text-decoration: none;
  color: #668ad8;
  width: 120px;
  height: 120px;
  line-height: 120px;
  border-radius: 50%;
  border: solid 2px #668ad8;
  text-align: center;
  overflow: hidden;
  font-weight: bold;
  transition: .4s;
}

.btn-circle-border-simple:hover {
  background: #b3e1ff;
}


/*ホバー*/
.btn_a:not(.no_effect):hover,
.btn_link_a:not(.no_effect):hover { color: #FFF; background: #A5A5A5; }
.btn_b:not(.no_effect):hover,
.btn_link_b:not(.no_effect):hover { color: #A5A5A5; background: transparent; font-weight: bold; }
.btn_c:not(.no_effect):hover,
.btn_a:not(.no_effect):hover:before { border-color: #FFF #FFF transparent transparent; }
.btn_b:not(.no_effect):hover:before { border-color: #A5A5A5 #A5A5A5 transparent transparent; }
.btn_c:not(.no_effect):hover:before { border-color: #FFF #FFF transparent transparent; }
.btn_link_a:not(.no_effect):hover:before { border-color: #FFF; box-shadow: #A5A5A5 2px 2px 0  -1px,#FFF 2px 2px; }
.btn_link_b:not(.no_effect):hover:before { border-color: #A5A5A5; box-shadow: #FFF 2px 2px 0  -1px,#A5A5A5 2px 2px; }

.btn_red:not(.no_effect):hover { color: #F82E00; background:transparent; font-weight: bold; border-color: #F82E00; }
.btn_red:not(.no_effect):hover:before { border-color: #F82E00 #F82E00 transparent transparent; }

/*-----------------------------------------
リスト
-------------------------------------------*/
/*通常リスト*/
.list_standard li { width: 100%; margin-bottom: 10px; border-bottom: 1px solid #CCC;  line-height: 180%; padding-left: 1rem;}
.list_standard li:before { content:''; width: .5rem; height: .5rem; border: 1px solid #A5A5A5; margin: 0 .5rem 0 -1rem; border-radius: 8px; display:inline-block; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -o-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box;  }

/*シンプルなリスト*/
.list_simple li { list-style: disc; margin-left: 1rem;}

/*シンプルなリスト*/
.list_simple_blue li { width: 100%; margin-bottom: 10px; line-height: 180%; padding-left: 1rem;}
.list_simple_blue li:before { content:''; width: .5rem; height: .5rem; border: 1px solid #A5A5A5; margin: 0 .5rem 0 -1rem; border-radius: 8px; display:inline-block; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -o-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box;  }


/*番号付リスト*/
.list_number_multi { counter-reset: listnum; }
.list_number { counter-reset: listnum; }
.list_number_multi .list_number { counter-reset: none; }
.list_number li { width: 100%; margin-bottom: 10px; border-bottom: 1px solid #CCC; line-height: 180%; padding-left: 1.5rem; }
.list_number li:before { width: 1.5rem; content:counter(listnum)'.'; counter-increment: listnum; font-weight: bold; color: #A5A5A5; margin-left: -1.5rem; display:inline-block; }

/*タイトル付リスト1*/
.list_title1 { width: 100%; }
.list_title1 dt { padding-left: 1rem; font-weight: bold; }
.list_title1 dt:before { content:''; width: .5rem; height: .5rem; border: 1px solid #A5A5A5; margin: 0 .5rem 0 -1rem; border-radius: 8px; display:inline-block; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -o-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box;  }
.list_title1 dd { width: 100%; padding-left: 1rem; padding-bottom: 10px; border-bottom: 1px solid #CCC; }
.list_title1 dt:not(:first-child) { margin-top: 10px; }

/*タイトル付リスト2*/
.list_title2 { width: 100%; }
.list_title2 dt { width: 30%; font-weight: bold; float: left; }
.list_title2 dd { width: 100%; padding-left: 32%; padding-bottom: 10px; border-bottom: 1px solid #CCC; }
.list_title2 dt:not(:first-child),
.list_title2 dt:not(:first-child) +dd { margin-top: 10px; }

/*フロー*/
.list_flow { width: 100%; counter-reset: flownum;  }
.list_flow h3 { border: none; padding:0; margin-bottom: .3em; }
.list_flow li { width: 100%; border: 2px solid #A5A5A5; padding: 30px 30px 30px 90px; background: #F5F5F5; position: relative; }
.list_flow li:not(:first-child) { margin-top: 30px; }
.list_flow li:before { width: 40px; height: 40px; content:counter(flownum); counter-increment: flownum; color:#FFF; background: #A5A5A5; font-weight: bold; font-size: 1.2rem; text-align:center; line-height: 40px; display:inline-block; position: absolute; top:0; left:0; }
.list_flow li:not(:first-child):after /*矢印*/{ content: ''; width: 10px; height: 10px; border-style: solid; border-color: #A5A5A5; border-width: 0 4px 4px 0; display: block;  position:absolute; top: -28px;  left:0; right:0; margin: auto; -ms-transform: rotate(45deg); -webkit-transform: rotate(45deg); transform: rotate(45deg);}
.list_flow .conts_l { width: 50%; }
.list_flow .conts_r { width: 45%; }
.list_flow .conts_l img { width: 100%; }
.list_flow .conts_r img { width: 100%; }

/*ライン*/
.v_line_left {
  border-left: thick solid #A5A5A5;
  padding-left: 30px;
  margin-left: 60px;
}
.v_line_left1 {
  border-left: thick solid #FFFFFF;
  padding-left: 30px;
  margin-left: 60px;
}


@media screen and (max-width: 767px) {
	.list_flow li { padding: 1rem 5% 5%; }
	.list_flow .conts_l { width: 100%; float: none; }
	.list_flow .conts_r { width: 100%; float: none; }
	.list_flow h3 { margin-left: 40px; }
}

/*ページ内リンク*/
.page-link { background: #F5F5F5; padding: 1em 2em; margin-bottom: 3em; }
.page-link a { display: inlien-block; vertical-algin: middle; color: #A5A5A5; font-weight: bold; }
.page-link a:before { content:''; width: .4em; height: .4em; display: inline-block; vertical-align: middle; border-bottom: 2px solid; border-right: 2px solid; -ms-transform: rotate(45deg); -webkit-transform: rotate(45deg); transform: rotate(45deg); margin-right: .8em; margin-top: -.3em; }
.page-link a + a { margin-left: 2em;  }

@media screen and (max-width: 767px) {
	.page-link { padding: 1em; }
	.page-link a { display: block; }
	.page-link a + a { margin-left: 0; margin-top: .5em; }
}

/*お知らせのリスト*/
.list_news dt { color: #000; width: 11em; font-weight: bold; float: left; vertical-align: middle; position: relative; }
.list_news dt:after { content:''; width: 3px; height: 3px; background: #000; box-shadow: -1em 0 #000, -2em 0 #000;  display: inline-block; margin: auto; position:absolute; top:0; bottom: 0; right: 15px; }

.list_news dd { width: 100%; padding-left: 11em; text-decoration: underline; }
.list_news dt:not(:first-child),
.list_news dt:not(:first-child) +dd { margin-top: 10px; }

@media screen and (max-width: 767px) {
	.list_news dt { width: 100%; }
	.list_news dt:after { width:0; height:0; background: none; box-shadow: none;}
	.list_news dd { width: 100%; padding-left: 0; display: block; margin-bottom: 1em;  }
}

/*アクセスのリスト*/
/*.list_access dt { color: #5ab9ff; width: 11em; font-weight: bold; float: left; vertical-align: middle; position: relative; }*/
/*.list_access dt:after { content:''; width: 3px; height: 3px; background: #000; box-shadow: -1em 0 #000, -2em 0 #000;  display: inline-block; margin: auto; position:absolute; top:0; bottom: 0; right: 15px; }*/
.list_access dt { color: #5ab9ff; width: 11em; font-weight: bold; float: left; vertical-align: middle; }
.list_access dt:after { content:''; width: 3px; height: 3px; background: #000; box-shadow: -1em 0 #000, -2em 0 #000;  display: auto; top:0; bottom: 0; right: 15px; }

/*.list_access dd { width: 100%; padding-left: 11em; text-decoration: underline; }*/
.list_access dd { width: 100%; padding-left: 11em; }
.list_access dm { width: 100%; padding-left: 11em; }
.list_access dt:not(:first-child),
.list_access dt:not(:first-child) +dd { margin-top: 10px; }
.list_access dt:not(:first-child) +dm { margin-top: 10px; color: #F82E00; }

@media screen and (max-width: 767px) {
	.list_access dt { width: 100%; }
	.list_access dt:after { width:0; height:0; background: none; box-shadow: none;}
	.list_access dd { width: 100%; padding-left: 0; display: block; margin-bottom: 1em;  }
	.list_access dm { width: 100%; padding-left: 0; display: block; margin-bottom: 1em; color: #F82E00; }
}

/*相談内容メニューのリスト*/
.list_menu { background: #073665; padding: 0; }
.list_menu a { color: #FFF; }
.list_menu > li { color: #FFF; font-size: 1rem; text-align: left; position: relative; }
/*.list_menu > li.here { background: #A5A5A5; } */
.list_menu > li span { display: block; font-size: 1rem; margin-top: .3rem; font-weight: bold; }
.list_menu > li { color: #FFF; width: 100%; height: 100%; display: block; }
.list_menu > li:not(last-child) { border-bottom: 2px solid #A5A5A5; }
.list_menu > li > a { padding: 15px 10px 15px 45px; display: block; position: relative; }
.list_menu > li > a:before { content:''; width: 5px; height: 5px; border-width: 2px 2px 0 0 ; border-style: solid; display: inline-block; position: absolute; top: 0; bottom: 0; left: 15px; margin: auto; -ms-transform: rotate(45deg); -webkit-transform: rotate(45deg); transform: rotate(45deg); border-color: #FFF; -ms-transition: transform .3s; -webkit-transition: transform .3s; transition: transform .3s; }

.list_menu > li > a.open:before { -ms-transform: rotate(135deg); -webkit-transform: rotate(135deg); transform: rotate(135deg); }

.list_menu_sub { background: #05284E; }
.list_menu_sub li { padding: 12px 10px 12px 45px; }
.list_menu_sub li + li { border-top: 2px solid #073664; }
.list_menu_sub li:hover { opacity: .8; }

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

/*マーカーが矢印(>)のリスト*/
.list_arrow {  }
.list_arrow li { line-hegiht: 150%; padding-left: 20px; position: relative; margin-bottom: .5em; }
.list_arrow li:before { content:''; width: 5px; height: 5px; border-width: 2px 2px 0 0 ; border-style: solid; display: inline-block; position: absolute; top:.5em; left: 0; margin: auto; -ms-transform: rotate(45deg); -webkit-transform: rotate(45deg); transform: rotate(45deg); border-color: #A5A5A5; }
.list_arrow li a:hover { opacity: .8; }


/*リストのラベル*/
h4.label_list { padding-bottom:10px; border-bottom: 1px solid #000; }

/*-----------------------------------------
テーブル
-------------------------------------------*/
table.standard { width: 100%; border-collapse: collapse; }
table.standard th,
table.standard td { padding: .8rem 1rem; display: table-cell;}
table.standard thead { border-style: solid; border-color: #999; border-width: .8rem 1px .8rem 0; }
table.standard thead th { color: #FFF; font-weight: normal; background: #999; padding: 0 1rem; text-align: center; border-right: #FFF 1px solid; }
table.standard thead th:last-child { border: none; }
table.standard th { color: #000; font-weight: bold; text-align: center; background: #F5F5F5; border: 1px solid #999; }
table.standard td { color: #000; font-weight: normal; text-align:center; background: #FFF; border: 1px solid #999; }

@media screen and (max-width: 767px) {
	table.standard thead { display: none; }
	table.standard tr { width: 100%; border: 1px solid #999; display: block;}
	table.standard tr:not(:last-child) { margin-bottom: 1rem;  }
	table.standard th { width: 100%!important; border-width: 0 0 1px; display: block; }
	table.standard td { width: 100%!important; border: none;  display: block; padding: 5% 5% 0; }
	table.standard td:last-child { padding: 5%; }
	table.standard td:before { content: attr(data-label); width: 100%; color: #FFF; text-indent: .5em; background: #999; display: block; margin-bottom: .4rem; line-height: 200%; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -o-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; }

/*開閉式のテーブル*/
	table.toggleTable th { border: none; cursor: pointer; position:relative; }
	table.toggleTable th:after { content:''; width: 5px; height: 5px; border-width: 0 2px 2px 0 ; border-style: solid; border-color: #999; display: inline-block; position: absolute; top:0; bottom: 0;right: 1rem; margin: auto; -ms-transform: rotate(-45deg); -webkit-transform: rotate(-45deg); transform: rotate(-45deg); -webkit-transition: all .5s; transition: all .5s; }
	table.toggleTable th.open:after { rotate(45deg); -webkit-transform: rotate(45deg); transform: rotate(45deg); }
	
	table.toggleTable td { display: block; }
	table.toggleTable tr th + td { border-top: 1px solid #999; }
	table.toggleTable tr { margin-bottom: 0!important; border-width: 1px 1px 0; }
	table.toggleTable tr:last-child { border-width: 1px; }
}

/*-----------------------------------------
ピックアップボックス
-------------------------------------------*/
.conts_pickup { width: 100%; color: #FFF; background: #A5A5A5; }
.conts_pickup h3 { color: #FFF; border-left: 4px solid #FFF; }

/*-----------------------------------------
電話・メール
------------------------------------------*/
.tel_mail { width: 16rem; margin: 0 auto; }
.tel_mail .tel { width: 100%; color: #A5A5A5; font-size: 1.3rem; font-weight: bold; line-height: 110%; text-align: center; display: inline-block; margin-bottom: 12px;}
.tel_mail .tel a { color: #A5A5A5; }
.tel_mail .tel .t_s { font-size: .6em; margin-right: 1em; }
.tel_mail .mail { min-width: 0; width: 100%; margin-bottom: 0; padding: 5px 10px; }

@media screen and (max-width: 767px) {
	.tel_mail { width: 100%; }
	.tel_mail .tel { font-size: 1rem; }
	.tel_mail .mail { font-size: .85rem; }
}

/*-----------------------------------------
サービス
------------------------------------------*/
.service3 { width: 16rem; margin: 0 auto; }
.service3 .tel { width: 100%; color: #A5A5A5; font-size: 1.3rem; font-weight: bold; line-height: 110%; text-align: center; display: inline-block; margin-bottom: 12px;}
.service3 .tel a { color: #A5A5A5; }
.service3 .tel .t_s { font-size: .6em; margin-right: 1em; }
.service3 .mail { min-width: 0; width: 100%; margin-bottom: 0; padding: 5px 10px; }

@media screen and (max-width: 767px) {
	.service3 { width: 100%; }
	.service3 .tel { font-size: 1rem; }
	.service3 .mail { font-size: .85rem; }
}

/*------------------------------------------
ページネーション
-------------------------------------------*/
.pagination { width: 100%; color: #A5A5A5; font-size: 1rem; font-weight: bold; display: inline-block; text-align: center; }
.pagination a { color: #A5A5A5; }
.pagination span { margin: 0 1rem; border-bottom: 1px solid transparent; }
.pagination span.here { border-bottom: 1px solid #A5A5A5;} 
.pagination span:hover { opacity: .8;} 
.pagination span.prev,
.pagination span.next { width: 8px; height: 8px; border-style: solid; border-width: 2px 2px 0 0; border-color: #A5A5A5; display: inline-block; text-indent: 100%; white-space: nowrap; overflow:hidden;}
.pagination span.prev { margin-right: 1rem; -ms-transform: rotate(-135deg); -webkit-transform: rotate(-135deg); transform: rotate(-135deg); }
.pagination span.next { margin-left: 1rem; -ms-transform: rotate(45deg); -webkit-transform: rotate(45deg); transform: rotate(45deg); }

.pagination span.prev_post { float:left; }
.pagination span.next_post { float: right; }
.pagination span.prev_post:before,
.pagination span.next_post:after { content: ""; width: 8px; height: 8px; border-style: solid; border-width: 2px 2px 0 0; border-color: #A5A5A5; display: inline-block; }
.pagination span.prev_post:before  { margin-right: 1rem; -ms-transform: rotate(-135deg); -webkit-transform: rotate(-135deg); transform: rotate(-135deg); }
.pagination span.next_post:after  { margin-left: 1rem; -ms-transform: rotate(45deg); -webkit-transform: rotate(45deg); transform: rotate(45deg); }

/*-------------------------------------------
入力部品
---------------------------------------------*/
/*セレクトボックス*/
select { -moz-appearance: none; -webkit-appearance: none; appearance: none; border: none; border-radius: 0; margin: 0; padding: 0; outline: none; background: none transparent; vertical-align: middle; font-size: inherit; color: inherit; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -o-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; -moz-appearance: none; text-indent: 0.01px; text-overflow: '';}/*ブラウザのデフォルトスタイルをリセット*/
select::-ms-expand { display: none;}
select { color: #A5A5A5; font-weight: bold; font-size: 1rem; line-height: 200%; height: 2rem; border: 1px solid #A5A5A5; padding-left: 2.5rem; position: relative; cursor: pointer; background-color: #F5F5F5; 
background-image: -moz-linear-gradient(right top, #A5A5A5, #A5A5A5 42%, transparent 42%, transparent 55%, #A5A5A5 55%, #A5A5A5),
				  -moz-linear-gradient(left top, #A5A5A5, #A5A5A5 42%, transparent 42%, transparent 55%, #A5A5A5 55%, #A5A5A5), 
				  -moz-linear-gradient(right top, transparent, transparent 50%, #FFF 51%, #FFF 55%, transparent 56%, transparent),
				  -moz-linear-gradient(left top, transparent, transparent 50%, #FFF 51%, #FFF 55%, transparent 56%, transparent),
				  -moz-linear-gradient(#A5A5A5, #A5A5A5); 
background-image: -ms-linear-gradient(right top, #A5A5A5, #A5A5A5 42%, transparent 42%, transparent 55%, #A5A5A5 55%, #A5A5A5),
				  -ms-linear-gradient(left top, #A5A5A5, #A5A5A5 42%, transparent 42%, transparent 55%, #A5A5A5 55%, #A5A5A5), 
				  -ms-linear-gradient(right top, transparent, transparent 50%, #FFF 51%, #FFF 55%, transparent 56%, transparent),
				  -ms-linear-gradient(left top, transparent, transparent 50%, #FFF 51%, #FFF 55%, transparent 56%, transparent),
				  -ms-linear-gradient(#A5A5A5, #A5A5A5); 
background-image: -webkit-linear-gradient(right top, #A5A5A5, #A5A5A5 42%, transparent 42%, transparent 55%, #A5A5A5 55%, #A5A5A5),
				  -webkit-linear-gradient(left top, #A5A5A5, #A5A5A5 42%, transparent 42%, transparent 55%, #A5A5A5 55%, #A5A5A5), 
				  -webkit-linear-gradient(right top, transparent, transparent 50%, #FFF 51%, #FFF 55%, transparent 56%, transparent),
				  -webkit-linear-gradient(left top, transparent, transparent 50%, #FFF 51%, #FFF 55%, transparent 56%, transparent),
				  -webkit-linear-gradient(#A5A5A5, #A5A5A5); 
background-image: linear-gradient(to left bottom, #A5A5A5, #A5A5A5 42%, transparent 42%, transparent 55%, #A5A5A5 55%, #A5A5A5),
				  linear-gradient(to right bottom, #A5A5A5, #A5A5A5 42%, transparent 42%, transparent 55%, #A5A5A5 55%, #A5A5A5), 
				  linear-gradient(to left bottom, transparent, transparent 50%, #FFF 51%, #FFF 55%, transparent 56%, transparent),
				  linear-gradient(to right bottom, transparent, transparent 50%, #FFF 51%, #FFF 55%, transparent 56%, transparent),
				  linear-gradient(#A5A5A5, #A5A5A5); 
background-size: 2rem 2rem; background-position: center left; background-repeat: no-repeat; }

select:before { color: #FFF; content: '>';}


/*==========================================
各ページのスタイル
===========================================*/
/*----------------------------------------
トップページ
-----------------------------------------*/
#home #main { position: relative; }
//#home #main .conts_img { width: 100%; height: 460px; background: #2380d0; margin-bottom: 100px; }
#home #main .conts_img { width: 100%; height: 140px; background: #FFFFFF; margin-bottom: 100px; }
#home #main .conts_img1 { width: 100%; height: 140px; background: #F5F5F5; margin-top: 250px; }
//#home #main .conts_img { width: 100%; height: 160px; background: #F5F5F5; margin-top: 250px; }
#home #main .img_bg { height: 100%; background: url(../img/ueda.svg), url(../img/ueda-castle.svg); background-repeat: no-repeat no-repeat; background-position: left bottom, right bottom; background-size: 35% auto, 33% auto; text-align: center; position: relative}
#home #main #img_shirota { width: auto; height: 260px; max-height: 260px; margin: auto; position: absolute; top: -20px; left:0; right:0;  }
#home #main .conts_txt { max-width: 900px; width: 90%; position: absolute; top: 50px; left:0; right:0; margin: auto; font-size: 1rem; font-weight: bold; }
#home #main .conts_txt .text1 { float: right; }
#home #main .conts_txt .text2 { float: left; }

#home .btn_menu { width: 100%; font-size: 1.1rem; margin-bottom: 0; transition-property: none; }

#home .viewall { width: 200px; margin: 60px auto 80px; display: block; }
#home .consulter { width: auto; height: 100%; }
#home .consulter_speak { position: absolute; width: 106%; height: auto; left:0; margin-left: -3%; top: 20px; visibility:hidden; }
#home .consulter_s { width: auto; height: 100%; padding-top: 5%; }

/*#home #service .servce_menu .conts_textbox { height: 250px;text-align: center; padding: 20px; vertical-align: bottom; position: relative;}*/
//#home #service .servce_menu .conts_textbox { height: 300px;text-align: center; padding: 20px; vertical-align: bottom; position: relative;}
#home #service .servce_menu .conts_textbox { width: 300px; height: 400px;text-align: center; padding: 10px; vertical-align: bottom; position: relative; margin: auto;}
#home #service .servce_menu li:hover .conts_textbox { background:#FBF2B5; }
#home #service .servce_menu li:hover .consulter_speak { visibility: visible; }

#home .preparing .btn_menu { background: #666; border: 2px solid #666; }
#home #service .servce_menu li.preparing:hover .conts_textbox { background:#F5F5F5; }
#home #service .servce_menu li.preparing .consulter_speak { visibility: visible; }

#home .bnr .conts_box { width: 100%; height: auto; background-color: #F5F5F5; }
#home .bnr .conts_box img { width: 100%; height: auto; }
#home .bnr .conts_box:hover { background-color:#FBF2B5; }


@media screen and (max-width: 767px) {
	#home #main { height: auto; margin-bottom:0;  }
/*	#home #main .img_bg { height: 100%; background: url(../img/ueda.svg), url(../img/ueda-castle.svg); background-repeat: no-repeat no-repeat; background-position: left bottom, right bottom; background-size: 28% auto, 27% auto; text-align: center; position: relative}*/
//	#home #main .img_bg { height: 100%; background: #2380d0; background-repeat: no-repeat no-repeat; background-position: left bottom, right bottom; background-size: 28% auto, 27% auto; text-align: center; position: relative}
	#home #main .img_bg { height: 100%; background: #F5F5F5; background-repeat: no-repeat no-repeat; background-position: left bottom, right bottom; background-size: 28% auto, 27% auto; text-align: center; position: relative}
//	#home #main .conts_img { width: 100%; height: 173px; background: #2380d0; margin: 0px 0 80px; }
	#home #main .conts_img { width: 100%; height: 173px; background: #F5F5F5; margin: 0px 0 280px; }
	#home #main .conts_img .conts_wrapper { width: 100%; }
	#home #main #img_shirota { width: 150px; height: 230px; top:-10px; }
/*	#home #main .conts_txt { width: 90%; height: 13rem;  position: relative; top:0; margin: 0 auto;}*/
	#home #main .conts_txt { width: 90%; height: 13rem;  background: #2380d0; position: relative; top:0; margin: 0 auto;}
	#home #main .contact { width: 100%; border: 1px solid #A5A5A5; margin: 5% 0; padding: 5% 8%; }
	#home #main .contact .tel_mail { width: 100%; }
	#home #main .contact .tel { width: 100%; color: #A5A5A5; font-size: 1rem; font-weight: bold; line-height: 110%; text-align: center; display: inline-block; margin-bottom: 12px;}
	#home #main .contact .tel a { color: #A5A5A5; }
	#home #main .contact .tel .t_s { font-size: .7em; margin-right: 1em; }
	#home #main .contact .mail { min-width: 0; width: 100%; margin-bottom: 0; padding: .5rem 0; }
	
	#home #main .conts_txt .text1 { position:absolute; left: 55%; }
	#home #main .conts_txt .text2 { position:absolute; right: 45%; }

//	#home #service .servce_menu .conts_textbox { height: 300px; }
	#home #service .servce_menu .conts_textbox { height: 400px; }

	#home .consulter { width: 110px; height: 160px; }
	#home .consulter_s { width: 92px; height: 160px; }
	
	#home .consulter_speak { max-width: 90%; max-height: 150px; width: auto; height: auto; left:0; right:0; margin: 0 auto; visibility:visible; }

}
/*----------------------------------------
ごあいさつ
-----------------------------------------*/
#welcome #mainWrap h1 { margin-bottom: 0; }
#welcome #main { width: 100%; padding: 60px 0 120px; background-image: url(../img/ueda-white.svg); background-position: center bottom; background-size: 1100px auto; background-repeat: repeat-x; }
#welcome #main .lead { text-align: left; }
#welcome #main .lead .leadcopy { text-align: center; display: block; font-weight: normal; line-height: 250%; }
#welcome #main .lead .leadcopy span { font-size: 1.5rem; font-weight: bold; display: block; margin-bottom: 2em; }

#welcome #guide .conts_ph { width: 30%; margin-left: -3%; padding-top: 20px; }
#welcome #guide .conts_txt { width: 65%; }
#welcome #guide .conts_txt dl { margin-bottom: 20px; }
#welcome #guide .conts_txt dl dt, 
#welcome #guide .conts_txt dl dd { line-height: 120%;}

@media screen and (max-width: 767px) {
	#welcome #main { background-size: 120% auto;  padding: 60px 0; margin-bottom: 40px;}
	
	#welcome #guide .conts_ph { float: none; text-align: center; margin: 0 auto 1rem; padding-top: 0; }
	#welcome #guide .conts_ph img { width: 101px; height: 154px; display: block; margin: 0 auto;}
	#welcome #guide .conts_txt { width: 100%; float: none;  }
}

/*-----------------------------------------
業務案内
------------------------------------------*/
#service[data-page='service_top'] .service_menu li { background: #073665; }
#service[data-page='service_top'] .service_menu .conts_textbox { height: 300px; text-align: center; padding: 20px 20px 10px; }
#service[data-page='service_top'] .service_menu .btn_menu { width: 100%; font-size: 1.1rem; font-weight: bold; padding: 20px 0; margin-bottom: 0; }
#service[data-page='service_top'] .service_menu .btn_menu:before { left: 25px; }
#service[data-page='service_top'] .service_menu .list_menu { padding: 10px 10px 20px; }

#service[data-page='service_top'] .service_menu li.preparing { background: #999; }
#service[data-page='service_top'] .service_menu li.preparing .btn_menu { background: #666; border-color: #666; }
#service[data-page='service_top'] .service_menu li p.preparing { color: #FFF; display: block; font-size: 1rem; margin-top: .8rem; font-weight: bold; text-align: center;}

#service[data-page='service_top'] #flow .list_flow .conts_l { width: 65%; }
#service[data-page='service_top'] #flow .list_flow .conts_r { width: 30%; }
#service[data-page='service_top'] #flow .list_flow .conts_r *[class^='btn'] { width: 100%; }

@media screen and (max-width: 767px) {
	#service[data-page='service_top'] #flow .list_flow .conts_l { width: 100%; }
	#service[data-page='service_top'] #flow .list_flow .conts_r { width: 100%; margin-top: 1rem; }
}

/*各業務のインデックスページのメニュー*/
#service .service_idx_menu { width: 100%; margin: 0 auto; position: relative; }
#service .service_idx_menu .menuCenter { width: 40%; margin: 0 auto; }
#service .service_idx_menu .menuL, 
#service .service_idx_menu .menuR { width: 20%; height: 0; padding-bottom: 28%; position: absolute; top:0;  }
#service .service_idx_menu .menuL { left: 5%; }
#service .service_idx_menu .menuR { right: 5%; }
#service .service_idx_menu .list_menu { padding: 20px; }
#service .service_idx_menu .list_menu li { text-align: left; }
#service .service_idx_menu .list_menu_sub li { background: #A5A5A5; padding: 0; text-align: center;  }
#service .service_idx_menu .list_menu_sub li a { padding: 12px; display: block;}

#service .relative_menu { margin-top: 50px; text-align: center; }
#service .relative_menu *[class^='btn'] { margin-top: 1rem;left: 0; -webkit-transform: translate(0 ,0); transform: translate(0 ,0); }

@media screen and (max-width: 767px) {
	#service .service_idx_menu { margin-top: 35%; }
	#service .service_idx_menu .menuCenter { width: 100%; margin: 0 auto; }
	#service .service_idx_menu .menuL,
	#service .service_idx_menu .menuR { top: auto; bottom: 100%; }
	#service .service_idx_menu .menuL { left: auto; right: 52%; }
	#service .service_idx_menu .menuR { left: 52%; right: auto; }
	#service .service_idx_menu .list_menu li { text-align: left; }
}

/*ページ下部のリンクメニュー*/
#service .bottom_link { width: 600px; margin: 0 auto; }
#service .bottom_link .list_menu { padding: 20px; }
@media screen and (max-width: 767px) {
	#service .bottom_link { width: 100%; }
}
/*遺言書についての基礎知識*/
body[data-category='igon'] .kind .list_title2 { margin-bottom: 2rem; }
body[data-category='igon'] .kind .list_title2 dt { width: 50%; }
body[data-category='igon'] .kind .list_title2 dd { padding-left: 55%; }
body[data-category='igon'] ul + h4.label_list { margin-top: 30px; }


/*----------------------------------------
アクセス
------------------------------------------*/
#access .walk { font-size: 1.5rem; }
#access .walk .time { font-size: 1.8rem; font-weight: bold;  }
#access .map{background:#F5F5F5; margin-bottom:20px;}
#access .map img { width: 100%; height: auto; margin-bottom: 0; }

@media screen and (max-width: 767px) {
	#access .lead p { text-align: center; }
}
/*----------------------------------------
報酬額表
------------------------------------------*/
#price .priceTable tbody th,
#price .priceTable tbody td { text-align: left; vertical-align: top; width: 25%;}

@media screen and (max-width: 767px) {
	#price .priceTable tbody th,
	#price .priceTable tbody td { width: 100%;}
}
/*----------------------------------------
お知らせ
------------------------------------------*/
#information .info_article { width: 100%; position: relative; padding-top: 35px; margin-bottom: 50px; }
#information .info_article * { max-width: 100%; }
#information .info_article .date { font-weight: bold; display: inline-block;  position: absolute; top:0; left:0; }
#information .info_article .category { width: 120px; line-height: 180%; color: #A5A5A5; background: #fff; border:1px solid #A5A5A5; text-align: center; display: inline-block; position: absolute; top:0; right:0;}
#information .info_article .category a { color: #A5A5A5; font-size:0.84rem; } 
#information .info_article .more-link { color: #A5A5A5; font-weight: bold; margin-top: 2rem; display: block; }

#information .sidebar_info h4 { font-size: 1.2rem; }
#information .sidebar_info .list_arrow { margin-bottom: 30px; font-weight: bold; font-size: 1rem; }
#information .sidebar_info .list_arrow a { color: #A5A5A5; }
#information .sidebar_info select { width: 100%; }
#information .sidebar_info select option { width: 100%; }

/*----------------------------------------
お問い合わせ
------------------------------------------*/
#contact form { width: 100%; border-top: solid 1px #CCC; margin-top: 20px; padding-top: 10px;}
#contact #contactform { margin-bottom: 100px; }
#contact .goto_home { margin-bottom: 100px; }

#contact form input[type=text],
#contact form input[type=number],
#contact form input[type=date],
#contact form input[type=email],
#contact form input[type=tel],
#contact form textarea,
#contact form select { width: 100%; background: #F5F5F5; border: 1px solid #CCC; padding: 8px; box-shadow: none;}
#contact form .column2 li,
#contact form .column3 li{ margin-bottom: 0;}
#contact form dl { margin-bottom: 20px; }

.bottom_widget { text-align: center; margin: 0 auto 2rem; }
.bottom_widget > div { display: inline-block; vertical-align: middle; }
#zehitomo-pro-widget { margin-right: 2rem; }
#meetsmore-widget { width: 250px;}
@media screen and (max-width: 540px) {
	.bottom_widget > div { display: block; margin: 0 auto 2rem; }
	#zehitomo-pro-widget { margin-right: auto; }
}