@charset "UTF-8";


/*  CSS Index
--------------------------------------------------------------
1 : text
 	  : tx
 	  : tx_sen
 	  : tx_kiji
 	  : tx_belt
 	  : tx_line
 	  : tx_bar
 	  : tx_check
 	  : tx_deco
 	  : tx_kage
 	  : tx_kage_w
 	  : tx_maru
 	  : tx_icon
 	  : tx_link
 	  : tx_ya
 	  : tx_ya_r
 	  : title1
 	  : title2
 	  : title3
2 : table
 	  : zebra
 	  : line_x
 	  : td_r/td_c/td_no
 	  : th_r/th_c/th_no/th_bg_no
 	  : size(スマホ表示で幅100％以上を横スクロール)
 	  : time
3 : btn(aタグ)
 	  : w400 (btn + w400)
 	  : ya (btn + ya)
 	  : tel (btn + tel)
 	  : push (btn + push)
 	  : kage (btn + kage)
4 : area
5 : nav
 	  : btn_nav
 	  : acc_nav
 	  : tab_nav
6 : list
 	  : link_list
 	  : list_ya
 	  : dt_maru (dl + dt_maru)
 	  : topics_list
 	  : medical_list
 	  : kyumei_list
7 : index
8 : item_box
 	  : item_input
9 : parts
 	  : flow
 	  : links
 	  : sitemap
 	  : googlemap
 	  : linkfile
 	  : ol
 	  : dot
 	  : kome
 	  : kome1-20
 	  : big (inline)
 	  : no (inline)
 	  : main_search
 	  : waku
-----------------------------------------------------------------------------------------*/


/*text
-----------------------------------------------------------------------------------------*/
/*-------------------------tx*/
.tx,
.tx p{
	line-height:1.75;
}
.tx a{
	text-decoration:underline;
	color:#0038AD;
}
.single_kiji a.btn,
.tx a.btn{
	text-decoration:none;
	color:inherit;
}
.tx a:hover{
	text-decoration:none;
}
/*-------------------------tx_sen*/
.tx_sen{
	text-align:center;
}
.tx_sen::after{
	content:"";
	display:block;
	width:5em;
	margin:0 auto;
	height:0.3em;
	border-bottom:2px solid #000;
}
.tx_w .tx_sen::after,
.tx_w.tx_sen::after{border-color:#FFF;}
/*-------------------------tx_kiji*/
.tx_kiji{
	font-weight:bold;
	padding:0.8em 0;
	border-top:2px solid #000;
	border-bottom:1px solid #000;
}
/*-------------------------tx_belt*/
.tx_belt{
	font-weight:bold;
	background:#000;
	color:#FFF;
	padding:0.4em 0.8em;
	border-radius:2em;
}
.tx_belt,.tx_belt.center{
	margin-left:-20px;
	margin-right:-20px;
}
@media screen and (max-width: 767px) {
	.tx_belt{padding:0.3em 20px;border-radius:0;}
	.tx_belt,.tx_belt.center{margin:0 -20px 15px -20px;}
}
/*-------------------------tx_line*/
.tx_line{
	font-weight:bold;
	border-bottom:2px solid #000;
	padding-bottom:0.3em;
}
/*-------------------------tx_bar*/
.tx_bar{
	font-weight:bold;
	padding:0.1em 0 0.1em 0.8em;
	position:relative;
}
.tx_bar:after{
	position:absolute;
	left:0;
	top:0;
    background-color:#000;
    border-radius:0.15em;
    content: "";
    display: block;
    height: 100%; 
	width:0.3em;
}
/*-------------------------tx_check*/
.tx_check{
	font-size:inherit;
	font-weight:inherit;
	line-height:1.5;
	background:url(images/check.svg) left top 0.4em no-repeat;
	background-size:1.4em;
	padding:0.4em 0 0.4em 1.8em;
	border-bottom:1px solid rgba(0,0,0,0.3);
}
.tx_check.sen_none,
.sen_none{
	border:none;
}
/*-------------------------tx_deco*/
.tx_deco{
	font-size:inherit;
	font-weight:inherit;
	line-height:1.5;
	background:url(images/deco.svg) left top 0.125em no-repeat;
	background-size:1.25em;
	padding-left:1.5em;
}
/*-------------------------tx_kage*/
.tx_kage{
	text-shadow:#000 0 0 6px;
}
/*-------------------------tx_kage_w*/
.tx_kage_w{
  text-shadow:  2px  2px 10px #FFF ,
               -2px  2px 10px #FFF ,
                2px -2px 10px #FFF ,
               -2px -2px 10px #FFF;
}
/*-------------------------tx_maru*/
.tx_maru li{
	display:inline-block;
	padding:5px;
}
a.tx_maru,
.tx_maru a,
span.tx_maru,
dt.tx_maru{
	display:inline-block;
	position:relative;
	border-radius:1.5em;
	padding:0 1em;
	background:rgba(0,0,0,0.1);
}
a.tx_maru,
.tx_maru a{
	padding:0.2em 1em;
	line-height:1.5;
	text-decoration:none;
}
a.tx_maru:hover,.tx_maru a:hover{
	background:rgba(0,0,0,0.2);
}
/*-------------------------tx_icon*/
.tx_icon img{
	vertical-align:middle;
	height:2em;
	margin-right:0.5em;
}
/*-------------------------tx_link*/
.tx_link a:hover,
a.tx_link:hover{
	text-decoration:underline;
}
/*-------------------------tx_ya*/
.tx_ya{
	display:inline-block;
	padding-left:1.4em;
	line-height:1.5;
	background:url(images/ya_maru.svg) left top 0.2em no-repeat;
	background-size:1.11em;
}
.tx_ya:hover{
	text-decoration:underline;
}
/*-------------------------tx_ya_r*/
.tx_ya_r{
	display:inline-block;
	padding-right:1.4em;
	line-height:1.5;
	background:url(images/ya_maru.svg) right top 0.2em no-repeat;
	background-size:1.11em;
}
.tx_ya_r:hover{
	text-decoration:underline;
}
/*-------------------------title1*/
.title1{
	font-size:3.6rem;
	font-weight:bold;
	letter-spacing:2px;
	position:relative;
	margin-bottom:20px;
}
.title1 sup{
	font-size:50%;
	top:-0.75em;
}
@media screen and (max-width: 767px) {.title1{font-size:2.4rem;letter-spacing:0;margin-bottom:20px;}}
/*-------------------------title2*/
.title2{
	font-size:3rem;
	font-weight:bold;
	letter-spacing:1px;
	position:relative;
	margin-bottom:20px;
}
.title2 sup{
	font-size:50%;
	top:-0.75em;
}
@media screen and (max-width: 767px) {.title2{font-size:2.5rem;letter-spacing:0;margin-bottom:15px;}}
/*-------------------------title3*/
.title3{
	font-size:2.5rem;
	font-weight:bold;
	letter-spacing:1px;
	position:relative;
	margin-bottom:20px;
}
.title3 sup{
	font-size:50%;
	top:-0.75em;
}
@media screen and (max-width: 767px) {.title3{font-size:2.3rem;letter-spacing:0;margin-bottom:15px;}}



/*table
-----------------------------------------------------------------------------------------*/
table{
	empty-cells:show; 
	border-collapse:collapse; 
	border-spacing:0;
	width:100%;
	background:#FFF;
	font-size:1.6rem;
	line-height:1.5;
}
table th,
table td{
	padding:0.5em 1em;
	border:1px solid #999;
	text-align:left;
	width:auto;
}
@media screen and (max-width: 767px) {
	table th,
	table td{padding:0.5em;}
}
table th{
	background-color:#E8EFF7;
}
/*-------------------------zebra*/
table.zebra tr:nth-child(odd){
	background-color:rgba(0,0,0,0.05);
}
table.zebra tr.tx_title{
	background:#333;
}
/*-------------------------line_x*/
table.line_x th,
table.line_x td{
	border-left:none;
	border-right:none;
}
table.line_x th,table.line_x td{
	padding:1em;
}
@media screen and (max-width: 767px) {
	table.line_x th,table.line_x td{padding:1em 0.5em;}
}
/*-------------------------line_x_s*/
table.line_x_s th,
table.line_x_s td{
	border-left:none;
	border-right:none;
}
table.line_x_s th,table.line_x_s td{
	padding:0.5em 1em;
}
@media screen and (max-width: 767px) {
	table.line_x_s th,table.line_x_s td{padding:0.5em;}
}
/*-------------------------td */
table.td_r td{text-align:right;}
table.td_c td{text-align:center;}
table.td_no td{white-space:nowrap;}
@media print, screen and (min-width: 768px) {
table.pc_td_no td{white-space:nowrap;}
}
/*-------------------------th */
table.th_r th{text-align:right;}
table.th_c th{text-align:center;}
table.th_b th{font-weight:bold;}
table.th_no th{white-space:nowrap;}
table.th_bg_no th{background:none;}
table.th_bg_mix th{mix-blend-mode: multiply;}
@media print, screen and (min-width: 768px) {
table.pc_th_no th{white-space:nowrap;}
}
/*-------------------------size(スマホのときに横スクロール) */
@media screen and (max-width: 767px) {
	table.size{display:block; overflow-x:scroll; white-space:nowrap; -webkit-overflow-scrolling:touch;}
}
/*-------------------------time*/
table.time th,
table.time td{text-align:center;padding:10px 15px;}
table.time td{font-family: Osaka,"ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;;}
table.time + p{margin-top:10px}
table.time td:first-child{background:#E8EFF7;}
@media screen and (max-width: 599px) {
	table.time th,table.time td{padding:5px;}
	table.time td:first-child{width:7em;padding:5px;}
}


/*btn (aタグ)
-----------------------------------------------------------------------------------------*/
.btn{
	display:inline-block;
	padding:0.64em 1em;
	font-size:2rem;
	text-align:center;
	font-weight:bold;
	border:none;
	background:#333;
	color:#FFF;
	width:300px;
	max-width:100%;
	border-radius:5px;
	text-decoration:none;
}
.btn:hover{
	filter: brightness(75%);
	-webkit-filter: brightness(75%);
	-moz-filter: brightness(75%);
}
/*-------------------------w400*/
.btn.w400{
	width:400px;
}
@media screen and (max-width: 440px) {
	.btn.w400{width:100%;}
}
/*-------------------------ya*/
.btn.ya{
	background-image:url(images/ya_w.svg);
	background-repeat:no-repeat;
	background-position:right 1rem center;
	padding-right:2rem;
	background-size:0.5em;
}
/*-------------------------tel*/
.btn.tel::before{
	content:"";
	display:inline-block;
	width:1.2em;
	height:1.2em;
	margin-right:0.3em;
	margin-top:-0.1em;
	background:url(images/tel_w.svg);
	background-size:cover;
	vertical-align:middle;
}
/*-------------------------push*/
.btn.push{
	box-shadow: 0 -4px rgba(0,0,0,0.3) inset;
	position:relative;
	padding-top:0.7em;
	padding-bottom:0.9em;
}
.btn.push:hover{
	opacity:1;
	box-shadow:none;
	top:2px;
	box-shadow: 0 -1px rgba(0,0,0,0.3) inset;
}
/*-------------------------kage*/
.btn.kage{
	box-shadow: 0 0.166em 0 rgba(0,0,0,0.1);
	position:relative;
}
.btn.kage:hover{
	opacity:1;
	box-shadow:none;
	top:3px;
}




/*area
-----------------------------------------------------------------------------------------*/
.area{
	position:relative;
	padding-top:60px;
	padding-bottom:60px;
}
.area::before{
	content:"";
	display:block;
	position:absolute;
	width:100vw;
	height:100%;
	top:0;
	z-index:-1;
	left:50%;
	margin-left:-50vw;
}
.area::after{
	display: block;
	clear: both;
	content: "";
}
.area figure img{
	display:block;
	margin:0 auto;
}
.area figure.default img + img{
	margin-top:1px;
}
@media print, screen and (max-width:1200px) and (min-width: 768px){.area::before{width:1200px;margin-left:-600px;}}
@media screen and (max-width: 767px) {
	.area{padding-top:30px;padding-bottom:30px;}
}
@media screen and (max-width: 480px) {
	.area::before{width:480px;margin-left:-240px;}
}



/*nav
-----------------------------------------------------------------------------------------*/
/*-------------------------btn_nav*/
.btn_nav{
	margin-top:-40px;
	position:relative;
}
.btn_nav p{
	font-size:14px;
	line-height:40px;
	margin:0;
}
.btn_nav a{
	display:inline-block;
	padding:0 10px 0 40px;
	border-top:1px solid #FFF;
	border-left:1px solid #FFF;
	background:left no-repeat;
	background-size:40px;
	text-align:left;
}
.btn_nav a:hover{
	background-color:rgba(0,0,0,0.2);
}
.btn_nav a.modoru{
	background-image:url(images/modoru.svg);
}
.btn_nav a.print{
	background-image:url(images/print.svg);
}
@media screen and (max-width: 767px) {
.btn_nav a{width:40px;text-indent:-9999em;padding:0;}
}
/*-------------------------acc_nav*/
.acc_nav{
	vertical-align:top;
	border-radius:8px;
	overflow:hidden;
	width:25rem;
	max-width:100%;
	text-align:center;
	margin:5px;
}
.acc_nav .accordionopen{
	padding:1rem;
	position:relative;
}
.acc_nav .accordionopen::after{
	content:"▼";
	position:absolute;
	right:1.5rem;
	top:1.25rem;
	font-size:80%;
}
.acc_nav .accordionopen.open::after{
	content:"▲";
}
.acc_nav .accordion a{
	display:block;
	padding:1rem;
	border-top:1px solid #FFF;
}
.acc_nav.sen_waku .accordion a{
	border-top:1px solid #CCC;
}
.acc_nav .accordionopen:hover,
.acc_nav .accordion a:hover{
	background-color:rgba(0,0,0,0.2);
}
@media screen and (max-width: 580px) {
	.acc_nav{width:auto;margin:2px;}
	.acc_nav p,.acc_nav li{font-size:14px;}
	.acc_nav .accordionopen::after{position:static;margin-left:5px;}
}
/*-------------------------tab_nav*/
.tab_nav{
	margin:3px -3px;
}
.tab_nav li{
	width:100%;
	padding:3px;
}
.tab_nav a{
	width:100%;
	font-size:1.6rem;
	line-height:1.2;
	font-weight:bold;
	min-height:6rem;
	display:-webkit-flex;
	display:flex;
	-webkit-align-items:center;
	align-items:center;
	-webkit-justify-content:center;
	justify-content:center;
	background:#FFF;
	box-shadow: 0 3px 5px rgba(0,0,0,0.2);
	position:relative;
}
.tab_nav .active span,
.tab_nav span:hover{
	top:6px;
	box-shadow:none;
	background:#2483CB;
	color:#FFF;
}
@media screen and (max-width: 1079px) {
	.tab_nav ul{margin:2px -2px;}
	.tab_nav li{padding:2px;}
	.tab_nav span{font-size:1.4rem;}
	.tab_nav .active span,.tab_nav span:hover{top:4px;}
}
@media screen and (max-width: 767px) {
	.tab_nav span{-ms-writing-mode: tb-rl;-webkit-writing-mode: vertical-rl;writing-mode: vertical-rl;min-height:8rem;}
}
.tab_btn{
	cursor:pointer;
}
.tab_panel{
	display:none;
}
.tab_panel.active{
	display:block;
}

/*list
-----------------------------------------------------------------------------------------*/
.hensyu{
	position:absolute;
	top:0;
	right:0;
}
#wrapper .hensyu a{
	display:block;
	background:rgba(255,0,0,0.5);
	color:#FFF;
	padding:10px;
	font-size:15px;
	line-height:1;
	text-decoration:none;
	border:none;
}
#wrapper .hensyu a:hover{
	background:#FF0000;
}
/*-------------------------link_list*/
.link_list{
	background:#FFF;
}
.link_list li{
	position:relative;
	border:1px solid #CCC;
	margin-top:5px;
	border-radius:5px;
}
.link_list li > a{
	display:block;
	padding:15px;
	line-height:1.5;
	background-size:1.11em;
}
.link_list li > a:hover{
	background-color:rgba(255,255,0,0.2);
}
/*-------------------------list_ya*/
.list_ya{
	font-size:1.8rem;
}
.list_ya li{
	padding-left:1.4em;
	line-height:1.5;
	background:url(images/ya_maru.svg) left top 0.2em no-repeat;
	background-size:1.11em;
	margin-top:0.6em;
	font-size:inherit;
}
.list_ya a:hover{
	text-decoration:underline;
}
/*-------------------------dt_maru(dl + dt_maru)*/
.dt_maru{
	margin-top:0.75rem;
}
.dt_maru dt{
	background:#2261B4;
	color:#FFF;
	width:20%;
	text-align:center;
	border-radius:5px;
	margin-top:1rem;
	font-size:1.6rem;
	height:4rem;
	font-weight:bold;
	float:left;
	display:-webkit-flex;
	display:flex;
	-webkit-align-items:center;
	align-items:center;
	-webkit-justify-content:center;
	justify-content:center;
}
.dt_maru dd{
	border-bottom:1px solid #CCC;
	padding:0.75rem 0 1.5rem 0;
	margin-top:1rem;
	line-height:2.5rem;
	padding-left:calc(20% + 1.5rem);
	min-height:4.75rem;
}
@media screen and (max-width: 767px) {
	.dt_maru dt{font-size:1.2rem;border-radius:5px;width:16%;}
	.dt_maru dd{padding-left:calc(16% + 1rem);}
}
/*-------------------------topics_list*/
.topics_list{
	border-top:1px solid rgba(0,0,0,0.25);
}
.topics_list li{
	position:relative;
	border-bottom:1px solid rgba(0,0,0,0.25);
	padding:14px 0;
}
.topics_list li > a{
	display:block;
	padding:14px 0;
	margin:-14px 0;
	line-height:1.5;
}
.topics_list li > a:hover{
	background:rgba(0,0,0,0.05);
}
.topics_list time{
	display:inline-block;
	font-family:sans-serif;
	font-size:1.4rem;
	width:8em;
	letter-spacing:1px;
	text-align:center;
}
.topics_list .cat{
	display:inline-block;
	text-align:center;
	font-size:1.4rem;
	color:#FFF;
	width:8em;
	font-weight:bold;
	padding:5px 0;
	border-radius:3px;
}
.topics_list p{
	font-size:1.6rem;
	text-align:left;
	margin-top:4px;
	font-weight:bold;
}
@media print, screen and (min-width: 768px) {
	.topics_list time,.topics_list .cat{font-size:1.6rem;padding:7px 0;}
	.topics_list p{display:inline-block;vertical-align:top;width:calc(100% - 8em);font-size:1.8rem;}
	.topics_list .cat + time + p{width:calc(100% - 16em);}
}
/*-------------------------medical_list*/
.medical_list li{
	position:relative;
	border:1px solid #CCC;
}
.medical_list li + li{
	margin-top:-1px;
}
.medical_list li:nth-child(even){
	background:#FAFAFA;
}
.medical_list li > a{
	display:block;
	padding:0 10px;
	min-height:80px;
	background:url(images/ya_rb.svg) right bottom no-repeat;
	display:-webkit-flex;
	display:flex;
	-webkit-align-items:center;
	align-items:center;
	-webkit-justify-content:center;
	justify-content:center;
}
.medical_list li > a:hover{
	background-color:rgba(0,0,0,0.1);
}
.medical_list li a > span{
	padding:10px;
	color:#000;
}
.medical_list li span.shinryo{
	width:75px;
	padding:0 5px;
	font-size:18px;
}
.medical_list li span.shinryo.houmon::before{
	float:left;
}
.medical_list li span.shinryo.oushin::after{
	float:right;
}
.medical_list li span.name{
	width:30%;
	font-size:1.8rem;
	font-weight:bold;
	color:#2483CB;
}
.medical_list li span.section{
	font-size:1.6rem;
	word-spacing:5px;
	width:40%
}
.medical_list li span.data{
	font-size:1.6rem;
	width:30%
}
.medical_list li span.data strong{
	display:block;
}
@media screen and (max-width: 1079px) {
	.medical_list li > a{display:block;padding:10px;min-height:0;}
	.medical_list li a > span{display:block;padding:1px;}
	.medical_list li span.name,
	.medical_list li span.section,
	.medical_list li span.data{width:100%;}
	.medical_list li span.section{font-size:1.4rem;}
	.medical_list li span.data{font-size:1.4rem;display:none;}
	.medical_list li span.shinryo{width:52px;padding:0 0 0 5px;float:right;font-size:14px;}
}
/*-------------------------kyumei_list*/
.kyumei_list li{
	position:relative;
	background:#FFF;
	border:1px solid #CCC;
	padding:0 10px 0 50px;
	min-height:80px;
	display:-webkit-flex;
	display:flex;
	-webkit-align-items:center;
	align-items:center;
	-webkit-justify-content:center;
	justify-content:center;
}
.kyumei_list li + li{
	border-top:none;
}
.kyumei_list li:nth-child(even){
	background:#FAFAFA;
}
.kyumei_list li span{
	padding:10px;
	color:#000;
}
.kyumei_list li span.name{
	font-size:1.8rem;
	font-weight:bold;
	color:#2483CB;
	width:80%;
}
.kyumei_list li span.data{
	font-size:1.6rem;
	text-align:right;
}
.kyumei_list li a.area{
	font-size:1.6rem;
	width:10em;
	border-radius:3em;
	background:#DDD url(images/ya_k.svg) right 0.5em center no-repeat;
	background-size:0.5em;
	text-align:center;
	padding:0.3em 0.75em 0.3em 0.5em;
	margin-left:10px;
	display:inline-block;
}
@media print, screen and (min-width: 768px) {
.kyumei_list li span.data{white-space:nowrap;}
.kyumei_list li span.data strong{font-size:1.8rem;}
.kyumei_list .内科::before,
.kyumei_list .外科::before,
.kyumei_list .小児科::before,
.kyumei_list .産婦人科::before{
	position:absolute;
	left:-1px;
	top:-1px;
	width:20px;
	padding:0 10px;
	height:100%;
	display: flex;
  	display: -webkit-flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	font-size:16px;
	line-height:1;
}
}
@media screen and (max-width: 767px) {
.kyumei_list .内科::before,
.kyumei_list .外科::before,
.kyumei_list .小児科::before,
.kyumei_list .産婦人科::before{
	float:right;
	font-size:14px;
	line-height:2;
	width:5em;
	margin:-10px -10px 0 5px;
}
	.kyumei_list li{display:block;padding:10px;min-height:0;}
	.kyumei_list li span{display:block;width:100%;padding:1px;}
	.kyumei_list li span.data{font-size:1.4rem;text-align:left;}
	.kyumei_list li a.area{display:block;margin:-26px 0 0 auto;font-size:1.2rem;}
}
/*-------------------------内科/外科/小児科/産婦人科*/
.内科::before,
.外科::before,
.小児科::before,
.産婦人科::before{
	color:#FFF;
	text-align:center;
	font-weight:bold;
}
.内科::before{content:"内科";background:#00B9EE;}
.外科::before{content:"外科";background:#4DBD2E;}
.小児科::before{content:"小児科";background:#FF8B00;}
.産婦人科::before{content:"産婦人科";background:#FD67A6;}
/*-------------------------houmon/oushin*/
.houmon::before,
.oushin::after{
	content:"訪";
	display:inline-block;
	background:#4DBD2E;
	color:#FFF;
	font-weight:bold;
	width:1em;
	padding:0.3em;
	border-radius:1em;
	text-indent:0;
	line-height:1;
}
.oushin::after{
	content:"往";
	background:#FF8B00;
}



/*index
-----------------------------------------------------------------------------------------*/
.index li{
	display:inline-block;
	vertical-align:top;
	padding:10px;
}
.index a{
	display:block;
	position:relative;
	background:#FFF url(images/ya_maru_g.svg) right 10px center no-repeat;
	padding:10px;
	border-radius:5px;
	box-shadow: 0 5px 0 rgba(0,0,0,0.1);
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-align-items:center;
	align-items:center;
}
.index a:hover{
	top:2px;
	box-shadow: 0 0 2px rgba(0,0,0,0.2);
	filter: brightness(90%);
	-webkit-filter: brightness(90%);
	-moz-filter: brightness(90%);
}
.index figure{
	padding:10px;
}
.index p{
	font-size:2rem;
	line-height:1.25;
	font-weight:bold;
	width:100%;
	padding:0 30px 0 5px;
}
@media screen and (max-width: 1079px) {
	.index li{padding:5px;}
	.index a{padding:5px;background-size:15px;background-position:right 7px center;}
	.index figure{padding:5px;}
	.index p{padding:0 25px 0 5px;}
}
@media screen and (max-width: 767px) {
	.index li{padding:2px;}
	.index img{max-width:40px;}
	.index p{font-size:1.6rem;}
}


/*item_box
-----------------------------------------------------------------------------------------*/
.item_box{
	background:#FFF;
	box-shadow: 0 3px 5px rgba(0,0,0,0.2);
	margin-top:10px;
}
.item_box .accordionopen{
	padding:15px 30px;
	margin-bottom:0;
}
.item_box .accordionopen::after{
	content:"＋";
	position:absolute;
	right:30px;
	color:#2483CB;
}
.item_box .accordionopen.open::after{
	content:"ー";
}
.item_box .accordionopen:hover{
	background:rgba(0,0,0,0.1);
}
@media screen and (max-width: 767px) {
	.item_box .accordionopen{padding:15px;}
	.item_box .accordionopen::after{right:15px;}
}
/*-------------------------item_input*/
.item_input{
	border-left:1px solid #CCC;
	border-top:1px solid #CCC;
}
.item_input + .item_input{
	margin-top:30px;
}
.item_input label{
	border-right:1px solid #CCC;
	border-bottom:1px solid #CCC;
	width:33.333%;
	position:relative;
	display:block;
	font-size:inherit;
	padding:15px;
}
.item_input input[type="checkbox"]{
	margin-right:5px;
}
.item_input label:hover{
	cursor:pointer;
	background:#FEFCDD;
}
/*wide*/
.item_input label.wide{
	width:66.666%;
}
/*group*/
.item_input label.group{
	width:100%;
	background:#E5F3FE;
}
.item_input label.group:hover{
	background:#CCE7FD;
}
/*table*/
.item_input td{
	padding:0;
}
.item_input td label{
	border:none;
	width:100%;
	padding:20px 0;
}
@media screen and (max-width: 767px) {
	.item_input + .item_input{margin-top:10px;}
	.item_input label{padding:15px 10px;}
	.item_input label.wide,.item_input label{width:50%;}
}

/*parts
-----------------------------------------------------------------------------------------*/
/*-------------------------flow*/
.flow{
	padding:30px 0 30px 65px;
	min-height:90px;
	border-top:1px dashed #000;
	position:relative;
}
.flow_no{
	font-size:55px;
	width:55px;
	text-align:center;
	font-weight:bold;
	position:absolute;
	font-family:sans-serif;
	left:5px;
	top:5px;
}
@media screen and (max-width: 767px) {
	.flow{padding:15px 20px;margin:0 -20px;}
	.flow_no{font-size:40px;line-height:1.25;width:auto;position:static;margin:0 auto;}
}
/*-------------------------links*/
.links li{
	position:relative;
	border:1px solid #CCC;
	margin-top:5px;
	border-radius:5px;
	font-size:1.6rem;
}
.links li a{
	display:block;
	padding:15px;
	line-height:1.5;
}
.links li a .title{
	display:inline-block;
	font-size:1.25em;
	background:url(images/blank_c.svg) left no-repeat;
	background-size:0.8em;
	padding-left:1.2em;
	width:50%;
}
.links li > a:hover{
	background-color:rgba(255,255,0,0.2);
}
@media screen and (max-width: 767px) {
.links li{font-size:1.4rem;}
.links li a .title{width:100%;}
}
/*-------------------------sitemap
リンク青：#006AC1（tx_link_c）
灰色：#797979
赤系：#EC4C47
キーカラー1：（青色）#2261B4（青色薄い）#E8EFF7
キーカラー2：（緑色）#4DBD2E（緑色薄い）#DDEF89 （テキスト）#007947
キーカラー3：（黄色）#FFE052（黄色薄い）#FAF6E3
キーカラー4：（ピンク）#FD67A6（ピンク薄い）#FEE5F0 
キーカラー5：（オレンジ）#FF8B00（オレンジ薄い）#FF8B00 
*/
.sitemap{
	border-bottom:1px solid #CCC;
	display : -webkit-flex ;
	display : flex ;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}
.sitemap li a{
	display:block;
}
.sitemap > li > a{
	margin-top:1px;
	color:#FFF;
	padding:10px 10px 10px 30px;
	background:#2261B4 url(images/ya_maru_w.svg) left 10px center no-repeat;
	background-size:15px;
}
.sitemap li ul{
}
.sitemap > li > ul li + li{
	border-top:1px solid #CCC;
}
.sitemap > li > ul > li > a{
	padding:10px 10px 10px 30px;
	background:#FFF url(images/ya_maru.svg) left 10px center no-repeat;
	background-size:15px;
}
.sitemap > li > ul > li > ul{
	margin-left:30px;
	padding-bottom:10px;
}
.sitemap > li > ul > li > ul > li a{
	padding:6px 12px 6px 24px;
	background:#F1F1F1 url(images/ya.svg) left 10px center no-repeat;
	background-size:8px;
}
/*-------------------------googlemap*/
.googlemap iframe{
	vertical-align:bottom;
	width:100%;
	min-width:100%;
}
@media print, screen and (min-width: 768px) {
	.googlemap iframe{height:600px;}
}
@media screen and (max-width: 767px) {
	.googlemap iframe{height:400px;}
}
/*-------------------------linkfile*/
.linkfile a::before,
a .linkfile::after{
	width:16px;
	height:16px;
	display:inline-block;
	vertical-align:middle;
	margin:-3px 3px 0 3px;
}
.linkfile a[target]:before,
a[target] .linkfile:after{
	content:"";
	background:url(images/icon_blank.png);
}
.linkfile a[href$='.pdf']::before,
a[href$='.pdf'] .linkfile::after{
	content:"";
	background:url(images/icon_pdf.png);
}
.linkfile a[href$='.xls']::before,
.linkfile a[href$='.xlsx']::before,
a[href$='.xls'] .linkfile::after,
a[href$='.xlsx'] .linkfile::after{
	content:"";
	background:url(images/icon_excel.png);
}
.linkfile a[href$='.docx']::before,
.linkfile a[href$='.doc']::before,
a[href$='.docx'] .linkfile::after,
a[href$='.doc'] .linkfile::after{
	content:"";
	background:url(images/icon_word.png);
}
/*アイコン非表示はnoicon---aタグにつけるか、上の階層の要素につける*/
a.noicon::before,
.noicon a::before{
	display:none;
}
/*-------------------------ol*/
ol li{
	font-weight:inherit;
	list-style-type:decimal;
	margin-left:1.5em;
	margin-bottom:0.5em;
}
ol li:last-child{
	margin-bottom:0;
}
/*-------------------------dot*/
.dot li{
	padding-left:1em;
	margin-bottom:0.5em;
	font-weight:inherit;
}
.dot li:before{ 
	display:inline-block; 
	content:'';
	width:0.75em;
	height:0.75em;
	background:#00C4F5;
	border-radius:50%;
	margin-left:-1em;
	margin-right:0.25em;
}
.dot.tx_w li:before{ 
	background:rgba(255,255,255,0.7);
}
.dot li:last-child{
	margin-bottom:0;
}
.dot.dot_g li:before{ 
	background:#999;
}
/*-------------------------kome*/
.kome{
	margin-left:1em;
	text-indent: -1em;
	margin-bottom:0.5em;
}
.kome:before{
	content: "※";
	font-family:sans-serif;
}
/*-------------------------kome1-20*/
.kome1,.kome2,.kome3,.kome4,.kome5,.kome6,.kome7,.kome8,.kome9,.kome10,
.kome11,.kome12,.kome13,.kome14,.kome15,.kome16,.kome17,.kome18,.kome19,.kome20{
	margin-left:2.5em;
	text-indent: -2.5em;
	margin-bottom:0.5em;
}
.kome1:before{content: "※1";font-family:sans-serif;width:2.5em;float:left;}
.kome2:before{content: "※2";font-family:sans-serif;width:2.5em;float:left;}
.kome3:before{content: "※3";font-family:sans-serif;width:2.5em;float:left;}
.kome4:before{content: "※4";font-family:sans-serif;width:2.5em;float:left;}
.kome5:before{content: "※5";font-family:sans-serif;width:2.5em;float:left;}
.kome6:before{content: "※6";font-family:sans-serif;width:2.5em;float:left;}
.kome7:before{content: "※7";font-family:sans-serif;width:2.5em;float:left;}
.kome8:before{content: "※8";font-family:sans-serif;width:2.5em;float:left;}
.kome9:before{content: "※9";font-family:sans-serif;width:2.5em;float:left;}
.kome10:before{content: "※10";font-family:sans-serif;width:2.5em;float:left;}
.kome11:before{content: "※11";font-family:sans-serif;width:2.5em;float:left;}
.kome12:before{content: "※12";font-family:sans-serif;width:2.5em;float:left;}
.kome13:before{content: "※13";font-family:sans-serif;width:2.5em;float:left;}
.kome14:before{content: "※14";font-family:sans-serif;width:2.5em;float:left;}
.kome15:before{content: "※15";font-family:sans-serif;width:2.5em;float:left;}
.kome16:before{content: "※16";font-family:sans-serif;width:2.5em;float:left;}
.kome17:before{content: "※17";font-family:sans-serif;width:2.5em;float:left;}
.kome18:before{content: "※18";font-family:sans-serif;width:2.5em;float:left;}
.kome19:before{content: "※19";font-family:sans-serif;width:2.5em;float:left;}
.kome20:before{content: "※20";font-family:sans-serif;width:2.5em;float:left;}
/*-------------------------big*/
.big{
	font-size:2em;
	margin-right:0.2em;
}
/*-------------------------no*/
.no{
	float:left;
	width:2em;
	line-height:2em;
	background:#000;
	color:#FFF;
	text-align:center;
	margin-right:0.5em;
}
.tx_belt .no{
	margin-top:-0.25em;
	margin-bottom:-0.25em;
	margin-left:-0.8em;
	background:none;
	border-right:1px solid #FFF;
}
.tx_line .no{
	margin-top:-0.2em;
}
/*-------------------------main_search*/
.main_search{
	margin:0 auto;
	width:100%;
	max-width:800px;
	border-radius:5px;
	border:3px solid;
	overflow:hidden;
}
.main_search input[type="text"]{
	width:calc(100% - 70px);
	height:70px;
	border:none;
	float:left;
	text-indent:1em;
}
.main_search [type="text"]:focus {
	outline: 0;
}
.main_search:hover ::placeholder {
	opacity:0;
}
.main_search ::placeholder {
	opacity:1;
	color:#2261B4;
	font-weight:bold;
}
.main_search input[type="submit"]{
	width:70px;
	height:70px;
	border:none;
	background:url(images/search_btn.svg) center center no-repeat;
	background-size:50%;
}
.main_search input[type="submit"]:hover{
	background-color:rgba(0,0,0,0.1);
	cursor:pointer;
}
@media screen and (max-width: 1079px) {
	.main_search input[type="text"]{width:calc(100% - 50px);height:50px;font-size:1.6rem;}
	.main_search input[type="submit"]{width:50px;height:50px;}
}
/*-------------------------waku*/
.waku{
	padding:40px;
	border-radius:20px;
	margin:20px -20px;
}
@media screen and (max-width: 767px) {
	.waku{padding:20px;border-radius:0;margin:15px -20px;}
}