@charset "UTF-8";

/*  サイトマップ  */

.SL_wrapper {		/* 1カラム */
  display: grid;
  grid-template-columns: 1fr;
}
.SL_content {
    position: relative;
				margin-bottom: 80px;
  }
.SL_content:last-child {
				margin-bottom: 0px;
  }
@media screen and (max-width: 480px) {
.SL_content {
				margin-bottom: 50px;
  }
}

/* メニュー */
.SL_sitemap-menu {
  display: grid;
  grid-template-columns: repeat(3, 1fr); /* 3列に均等（1:1:1）に分割 */
  gap: 60px;	
}
.SL_sitemap-menu_inner	{
		width: 100%;
}

@media screen and (max-width: 1100px) {
		.SL_sitemap-menu {
				grid-template-columns: repeat(2, 1fr); 
		}
}
@media screen and (max-width: 640px) {
		.SL_sitemap-menu {
				grid-template-columns: 1fr; 
 		 gap: 40px;	
		}
}

.menu_title {
  position: relative;
  padding: 0 0 0.85rem 0;
		color: var(--color-title);
  font-size: 1.2rem;
  margin-bottom: 15px;
		font-weight: bold;	
		display: flex;
		align-items:center;
		line-height: normal;
}
.menu_title::after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 5px;
  content: '';
  background-image: -webkit-repeating-linear-gradient(135deg, var(--color-text), var(--color-text) 1px, transparent 2px, transparent 5px);
  background-image: repeating-linear-gradient(-45deg, var(--color-text), var(--color-text) 1px, transparent 2px, transparent 5px);
  background-size: 7px 7px;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
@media screen and (max-width: 480px) {
.menu_title {
  font-size: 1.1rem;
		line-height: 1.2;
  margin-bottom: 10px;
}
}

.menu_list {
  list-style-type: none;
  padding: 0.3em 0.2em;
}
.menu_list li {
  position: relative;
  padding: 0em 0em .5em 1.7em;
		font-size: 1rem;
}
.menu_list li::before,
.menu_list li::after {
  position: absolute;
  content: '';
}
.menu_list li::before {
		top:0.2em;
  left: 0;
  width: 1.2em;
  height: 1.2em;
  border-radius: 50%;
  background-color: var(--color-list-ya);
}
.menu_list li::after {
		top:0.6em;
  left: .6em;
  transform: translateX(-75%) rotate(-45deg);
  width: .3em;
  height: .3em;
  border-bottom: 2px solid #fff;
  border-right: 2px solid #fff;
}

/* サブメニュー-箇条書き（disc） */
.menu_list li > ul {
  display:block !important;
		width: 100% !important;
		margin: .5em 0;
  list-style-type: disc !important;
  padding-left: .2em !important;
}
.menu_list li > ul li {
  padding: .3em .3em .3em 0 !important;
}
.menu_list li > ul li::marker {
  color: var(--color-list-marker);
  font-size: 1.1em;
}
.menu_list li > ul li::before,
.menu_list li > ul li::after {
  display: none !important;
}

@media screen and (max-width: 480px) {
.menu_list li > ul {
  padding-left: 1.6em;
}
.menu_list li > ul li	{
	font-size: 0.9rem;
	line-height: 1.6;
  padding: .2em .2em .2em 0;
}
}


/* 大枠 */
.organization-box {
  background-color: var(--color-card-bg);
  border-radius: 20px;
  border: 3px solid var(--color-frame);
  box-shadow: 4px 4px 0px 0px var(--color-frame);
		margin-bottom: 50px;
}
.organization-box:last-child {
		margin-bottom: 0px;
}
.organization-box._p50 {
  padding: 50px;
}
.organization-box._p40 {
  padding: 40px;
}
.organization-box._p30 {
  padding: 30px;
}
.organization-box section,.organization-box .mt50 {
		margin-bottom: 50px;
}
.organization-box section:last-child,.organization-box .mt50:last-child {
		margin-bottom: 0px;
}
@media screen and (max-width: 1400px) {
.organization-box._p50 {
  padding: 40px 30px;
}
}
@media screen and (max-width: 1300px) {
.organization-box._p50 {
  padding: 30px 20px;
}
.organization-box._p40 {
  padding: 30px;
}
.organization-box._p30 {
  padding: 20px;
}
}
@media screen and (max-width: 898px) {

}
@media screen and (max-width: 480px) {
.organization-box {
		margin-bottom: 30px;
}
.organization-box section,.organization-box .mt50 {
		margin-bottom: 30px;
}
.organization-box._p40 {
  padding: 20px;
}
.organization-box._p30 {
  padding: 10px;
}
}


/* 大枠-文字サイズ */
.organization-box p	{
	line-height: 2;
}
.organization-box p a	{
	text-decoration: underline;
	font-weight: 500;
}
.organization-box p a:hover	{
	text-decoration: none;
}
@media screen and (max-width: 480px) {
.organization-box p	{
	font-size: 0.9rem;
	line-height: 1.8;
}
}



