@charset "utf-8";
.subh1 {
  font-size: xx-large;
  padding-bottom: 16px;
  color: var(--blue);
}
.date0308,.date230310{
	display: none;
}
.oosaki06{
	max-width: 800px;
	grid-row-gap: 8px;
	border: 2px solid #ddd;
	border-radius: 8px;
	background-color: #ffffcc;
	padding: 12px 0
}
.oosaki06 .item_row2_3{
	border-bottom: 2px dashed #ddd;
	padding-bottom: 8px
}
.sectionsub {
  margin: 32px auto 0;
  background: var(--bg);
  border-radius: var(--border-radius);
  padding: 24px 48px;
}
.h3_bo {
	color: var(--blue);
  padding: 0.5em 1em;
  margin: 40px auto 16px;
  position: relative;
  letter-spacing: 0.10em;
  font-size: large;
}
.h3_bo::after {
  content: "";
  left: 1em;
  position: absolute;
  bottom: -4px;
  width: calc(100% - 2em);
  height: 2px;
  background-color: #f6f6f6;
}
.ji_h3, .sh_h3, .f_h3,.h2_news {
  font-size: large;
  padding: 12px 1em;
  margin: 56px auto 24px;
  position: relative;
  letter-spacing: 0.12em;
  background: #f6f6f6;
  background-size: contain;
  border-left: 6px solid var(--blue);
  border-radius: 0 4px 4px 0;
  background-repeat: repeat;
  color: var(--blue);
}
.ji_h3:first-of-type{
	margin-top: 12px
}
.h3_bo::before {
  content: "";
  left: 0em;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 4px;
  height: 45%;
  background-color: var(--blue);
}
/*----------ãƒ‘ãƒ³ã‚¯ã‚ºstart----------*/
.crumbsection {
  margin: 32px auto 0;
}
.crumbwrap a {
  color: #999;
}
.crumbol {
  display: flex;
  flex-wrap: wrap;
}
.crumbli {
  padding-right: 0.5em;
	width: fit-content;
}
.crumbli:last-child a {
  color: #000;
}
/*----------ãƒ‘ãƒ³ã‚¯ã‚ºend----------*/
.downroadli {
  display: block;
}
.downloadh2 {
  font-size: x-large;
  width: 100%;
  margin-bottom: 4px;
}
.formwrap {
  width: 100%;
  margin: 0 auto;
  max-width: 1200px;
}
.formwrap {
  height: 600px;
}
.formwrap iframe {
  height: 100%;
  width: 100%;
}
.parth2 {
  padding: 24px 24px 0;
  border-radius: 8px 8px 0 0;
  font-size: x-large;
  letter-spacing: 0.12em;
}
.p_news{
	color: var(--blue);
	border-bottom: var(--border);
	padding-bottom: 16px;
	font-size: large;
}
.sectionpart {
  margin: 32px auto 0;
  background: var(--bg);
  border-radius: var(--border-radius);
}
.sectionpartwrap {
  padding: 24px;
}
/*.chart******************************************/
.chartflex, .chartflexbt {
  display: flex;
  flex-wrap: nowrap;
  text-align: center;
}
.chart1, .chart2 {
  padding: 1em;
  width: 7em;
  border-right: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
}
.chart, .chart3 {
  padding: 1em;
  border-bottom: 1px solid #ddd;
}
.chart {
  border-right: 1px solid #ddd;
}
.chart4 {
  width: calc(100% - 7em);
  padding: 1em;
}
.chartflexbtwrap, .chart3 {
  width: calc(100% - 14em);
}
.chartflex:first-child {
  background-color: #333;
  color: #fff;
}
.chartflexbt div:first-child {
  width: 70%;
}
.chartflexbt div:last-child {
  width: 30%;
  border-right: none;
}
.chartflexbt:hover {
  background-color: #f4f4f4;
}
.addressflex {
  display: flex;
  flex-wrap: nowrap;
}
.conbp {
  flex: 1
}
.addressflexp {
  width: 4.5em;
}
.parth2news {
  background-color: var(--color-red);
}
.my_chartwrap {
  max-width: 900px;
  padding-bottom: 20px;
  padding-left: 24px;
}
.os_chartwrap {
  max-width: 800px;
  padding-bottom: 20px;
  padding-left: 24px;
}
.pdfimgwrap {
  width: 1.5em;
	height: 1.3em;
	margin-top: 0.3em;
}
.pdfimgwrap img {
  width: 100%;
  height: 100%;
  object-fit: contain;
	display: block;
}
.pdflist {
  display: flex;
  width: 100%;
  flex: 1;
	line-height: 1.5;
  flex-wrap: nowrap;
  flex-direction: row;
  overflow-wrap: break-word;
  word-wrap: break-word;
}
.pdflist a {
  vertical-align: text-top;
}
.pdflist div:nth-of-type(2) {
  max-width: calc(100% - 1.5em)
}
.qalist {
  margin-bottom: 1em;
  padding-left: 1em;
  padding: 1em 1em 2em;
  border-bottom: 3px solid #ddd;
}
.qalist h3 {
  color: var(--blue);
}
.mapwrap {
  width: 100%;
  max-width: 1000px;
  position: relative;
}
.mapwrap::before {
  content: "";
  display: block;
  padding-top: 56.25%;
}
.mapwrap iframe {
  position: absolute;
  top: 0;
  left: 0;
}
.listflex {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
.listflex li {
  padding-right: 2em;
}
.siteul, .siteol {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.siteli, .siteol li {
  width: calc(50% - 4px);
  font-weight: bold;
  margin-bottom: 8px;
}
.siteli a, .siteol li a {
  width: 100%;
  display: block;
  background-color: #f2f2f2;
  height: 100%;
  padding: 16px;
}
.siteli a:hover, .siteol li a:hover {
  background-color: #ddd;
}
.link_list:first-of-type {
  border-top: var(--border)
}
.link_list {
  border-bottom: var(--border)
}
.link_list a {
  padding: 12px 48px 12px 1em;
  display: block;
}
.link_list .list_y::before {
  top: calc(50% - 3px);
}
.link_list .list_y:hover,.link_list .page_y:hover,.yoko_dt:hover {
  background:var(--su_blue);
}
.ac_grid {
  display: grid;
  grid-template-columns: 100px;
  grid-column-gap: 24px;
}
.ac_wrap { /*
	border-bottom: 2px dashed #ddd;*/
}
.ac_pwrap {
  display: grid;
  grid-row-gap: 12px;
  justify-content: flex-start;
}
.ac_h4 {
  padding-bottom: 12px;
  grid-row: 1/2;
}
.ac_grid2 {
  grid-column: 1/2;
  border-right: 2px solid #ddd;
  padding-right: 1em;
}
.ac_p {
  grid-column: 2/3;
  padding-left: 1em;
  text-indent: 0;
}
.ac_grgr {
  grid-column: 2/3;
  margin-bottom: 48px;
}
.ac_icon {
  grid-column: 1/2;
  margin: 0 auto;
  ;
  width: 80px;
  height: 80px;
  background-color: var(--bg);
  border: 6px solid #333;
  border-radius: 100vh;
  display: grid;
  place-items: center;
}
.pad_top12 {
  padding-top: 12px;
}
.ac_icon img {
  width: 50px;
  height: 50px;
  border-radius: 100vh;
}
.ac_map {
  width: 100%;
  height: 50vw;
  max-height: 600px;
}
.indent0 {
  text-indent: 0;
}
.accordion_title{
	padding: 12px 0 12px 1em;
	color: var(--color);
	cursor: pointer;
	position: relative;
}
.accordion_title:hover{
	background: #F2F7FF;
}
.accordion_title:focus,.accordion_title:active{
	background: #F2F7FF;
}
.accordion_title::before{
	content: "";
  position: absolute;
  display: block;
	top: calc(0.5em + 11px);
  left: 0px;
  width: 5px;
  height: 5px;
  border-bottom: 1.5px solid #666;
  border-right: 1.5px solid #666;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.accordion_title.close{
	background: #F2F7FF;
}
.accordion_title.close::before{
  border-top: 1.5px solid #666;
  border-left: 1.5px solid #666;
  border-bottom: none;
  border-right: none;
}
.accordion_box{
	display: none;
	padding: 12px 0 12px 1em;
}.contact_a{
	display: inline!important;
	padding: 0!important;
}
.soshiki_wrapp{
	padding-top: 12px;
	column-gap: 10px;
  row-gap: 10px;justify-content: flex-start
}
.soshikizu01{
	grid-column: 1/5;
	grid-row: 1/3;
}
.soshikizu01 div,.soshikizu02 .s02min{
	background-color: #eee;
	padding: 0.5em 1em;
	margin-bottom: 4px;
	border: 2px solid #999;
}
.soshikizu02{
	grid-column: 12/16;grid-row: 1/3;
}
.soshikizu_01{
	background-color: #eee;
	padding: 0.5em 1em;
	border: 2px solid #999;
	position: relative;
	grid-column: 6/11;
	margin-bottom: 56px
}
.soshikizu_01::before{
	content: "";
	width: 2px ;
	height:128px;
	background-color: #999;
	position: absolute;
	left: calc(50% - 1px);
	bottom: -130px;
}
.soshikizu_05{
	grid-column: 1/16;
	display: grid;
	grid-template-columns:1/16;
	border: 2px dotted #999;
	padding: 0 0 8px;
}
.soshikizu_03::before{
	content: "";
	width: 2px ;
	height:28px;
	background-color: #999;
	position: absolute;
	left:50% ;
	bottom: -28px;
	transform: translateX(-50%);
}
.soshikizu_03::after{
	content: "";
	max-width: calc((calc(1600px * 0.9) - 64px) - ((calc(1600px * 0.9) - 64px - 150px) / 16));
	width: calc((90vw - 64px) - ((90vw - 64px - 150px) / 16));
	height: 2px;
	background-color: #999;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: -30px;
}
.soshikizu_wrapp{
	column-gap: 5px;
	grid-template-columns: repeat(15, 1fr);
	font-size: 16px;
}
.soshikizu_02{
	position: relative;
	border: 2px solid #999;
	align-items: center;
	grid-row: 5/6;
	writing-mode: vertical-rl;
	padding: 0.5em 4px;
	margin: 0 auto;
	margin-top: 20px;
	background-color: var(--bg);
}
.soshikizu_02::before{
	content: "";
	width: 2px ;
	height: 20px;
	background-color: #999;
	position: absolute;
	left: calc(50% - 1px);
	top: -22px;
}
.soshikizu_03{
	padding: 0.5em 1em;
	border: 2px solid #999;
	grid-column: 6/11;
	position: relative;
	margin: 70px 0 28px;
}
.soshikizu_wrapp2{
	grid-template-columns: repeat 1fr
}
.soshikizu_04{
	padding-top: 16px;
  grid-column-start: 2;
  grid-row-start: 3;
  grid-column-end: 6;
  grid-row-end: 5;
}
@media screen and (max-width:1200px) {
  .my_chartwrap {
    padding-left: 0px;
    margin-bottom: 12px;
  }
}
@media screen and (max-width:816px) {
	.soshikizu_02{
		width: 90%;
		writing-mode:horizontal-tb;
		margin:  0 0 12px auto;
	}
	.soshikizu_01 {
		margin-top: 24px;
		margin-bottom: 0;
	}
	.soshikizu_wrapp .soshikizu_01:first-of-type{
		margin-bottom: 24px;
	}
	.soshikizu_02::before{
		left: -20px;
		height: calc(100% + 18px);
		top: calc(-50% + 13px);
		transform: translateY(-50%)
}
	.soshikizu_02::after{
		content: "";
		position: absolute;
		left: -20px;
		height:2px;
		width: 20px;
		top: calc(50% - 1px);
		transform: translateY(-50%);
		background-color: #999;
	}
	.soshikizu_03::after{
		content: none;
	}
	.soshikizu_03::before{
		top: -50px;
		height: 50px;
		bottom: inherit
	}
	.soshikizu_01::before {
	  height: 60px;
	  bottom: -60px;
	}
	.soshikizu_04 {
		width: calc(50% + 1px);
		max-width: 201px;
		border-right: 2px solid #999;
		padding:12px 0 12px;
	}
	.soshikizu_03 {
		margin-bottom: 18px;
		background-color: var(--bg);z-index: 1;
		margin-top: 0;
	}
	.soshikizu_wrapp{
		display: block!important;
		max-width: 400px;
	}
	.soshikizu_05{
		display: block;
		margin-top: 8px;
		padding: 0 4px 
	}
}
@media screen and (max-width:768px) {
	.crumbsection{
		width: 94%;
		margin: 32px auto;
	}
  .chart1, .chart2 {
    padding: 1em 0;
    width: 5em;
    font-size: small;
  }
  .chartflexbtwrap, .chart3 {
    font-size: small;
    width: calc(100% - 10em);
  }
  .chart4 {
    width: calc(100% - 5em);
    padding: 1em;
    font-size: small;
  }
  .chart, .chart3 {
    padding: 1em 8px;
  }
  .chart:first-of-type {
    text-align: left;
  }
  .os_chartwrap {
    padding-left: 0;
  }
  .siteli, .siteol li {
    width: 100%;
    font-weight: normal;
  }
}
/*アコーディオン*/
.q_dd{  padding: 16px 16px 16px 42px;
  background-color: rgba(250,250,250,1);
  border-right: 3px solid #f6f6f6;
	border-bottom: 3px solid #f6f6f6;
	border-left: 3px solid #f6f6f6;
  display: none;
  width: 100%;
  margin: 0 auto;
	position: relative;
  border-radius:0 0 6px 6px;
}
.q_dt::before{
	position: absolute;
	content: "Q";
	left: 1em;
	font-weight: bold;
}
.q_dt::after{
	position: absolute;
	content:"";
	width: 12px;
	height: 12px;
	border-bottom: 3px solid #666;
	border-right: 3px solid #666;
	transform: rotate(45deg) translateY(-50%) translatex(-50%);
	right:1em;
	top: 50%;
}
.q_close::after{
	border-top: 3px solid #666;
	border-left: 3px solid #666;
	border-bottom:none!important;
	border-right: none!important;
}
.q_dd::before{
	position: absolute;
	left: 1em;
	content:"A";
	font-weight: bold;
	color: firebrick
}
.q_dd{
	display: none;
}
.q_dd p{
	padding-bottom: 8px;
	text-indent: 0
}

.q_dt{  color: var(--dark);
  padding: 16px 10em 16px 42px;
  position: relative;
  display: block;
  text-align: left;
  width: 100%;
  margin: 0 auto;
  font-size: medium;
  cursor: pointer;
  background-color: rgba(255,255,255,1);border: 3px solid #f6f6f6;
  margin-top: 6px;
  border-radius: 6px;
}
.q_close{
  border-radius: 6px 6px 0 0;
}
.q_dt:hover{
	color: #777
}
.suidou_grid{
	margin-top: 16px;
	display: grid;
	grid-template-columns: 1fr 1fr;
}
.bosyu-grid{
	display: grid;
	grid-template-columns: 30% 1fr;
	border-top: 2px solid #ddd;
	border-left: 2px solid #ddd;
}
.bosyu-box{
	padding: 1em;
	border-bottom: 2px solid #ddd;
	border-right: 2px solid #ddd;
}
@media screen and (max-width:599px) {
	.soshikizu_wrapp{
	font-size: 12px;
	}
	.soshikizu_02::before{
		top: calc(-50% + 7px);
}
  .sectionpart {
    width: 96%;
  }
  .sectionsub {
    padding: 24px;
  }
  .formwrap iframe {
    min-height: 2350px;
  }
  .m_chart1 {
    width: 20%;
  }
  .subh1 {
    font-size: x-large;
  }
  .parth2 {
    font-size: large;
  }
  .sectionpartwrap {
    padding: 24px 12px;
  }
	.parth2{
		padding: 24px 12px 0
	}
  .siteli {
    width: 100%;
  }
  .ac_grid {
    display: block;
  }
  .ac_h4 {
    text-align: center;
    margin-top: 12px;
    font-size: large;
  }
}
@media screen and (max-width:499px) {
	.q_dd::before ,.q_dt::before {
		left: 8px
	}
	.q_dt::after {
		display: none
	}
	.q_dt,.q_dd{
		padding: 16px 8px 16px calc(1em + 18px);
	}
}
#root_tab .css-1cms2kn:-webkit-any-link {
	color: inherit
}
#root_tab .Mui-selected:-webkit-any-link {
	    color: rgb(25, 118, 210);
}
#root_tab a:hover{
	text-decoration: none
}
.css-1cms2kn{
	width: calc(100% / 3);
	max-width: 200px!important;
	padding: 12px 6px!important
}