@charset "utf-8";
.searchbox { background: #F7F7F7; margin-top: 1em; padding: 10px 20px; border-radius: 16px; }
.searchbox .search-section { position: relative;}
.searchbox .search-section.text { display: flex; align-items: end; }
.searchbox .search-section.text ul { margin-top: 0;}
.searchbox .search-section.text input[type=text] { line-height: 1.65em; }
#main .searchbox .title { font-weight: bold; color: #D80000; margin-top: 1em; margin-bottom: 0; }
#main .searchbox .search-section:first-child .title { margin-top: 0; }
.searchbox ul { display: flex; flex-wrap: wrap; margin-top: 0.5em; }
.searchbox ul li:not(:first-child) { margin-right: 8px; margin-bottom: 0.5em;}

.searchbox input[type=radio] { display: none; }
.searchbox input[type=radio] + label { cursor: pointer; }
.searchbox ul:not(.icons) input[type=radio] + label { border: 1px solid #E0E0E0; border-radius: 2em; padding: 0.4em 0.7em; font-size: 1.3rem;	color: #045F64;	background: #FFFFFF; }
.searchbox ul:not(.icons) input[type=radio]:hover + label { border-color: #045F64;}
.searchbox ul:not(.icons) input[type=radio]:focus + label { outline: 2px transparent solid; box-shadow: 0 0 0 2px #FFFFFF, 0 0 0 4px #045F64;}
.searchbox ul:not(.icons) input[type=radio]:checked + label { border-color: #045F64; color: #FFFFFF; background: #045F64; font-weight: bold; box-shadow: 0 0 0 2px #fff inset, 0 0 0 1px #045F64; }

#main .layoutWrap .searchbox ul li { list-style: none;}
.searchbox ul.icons input[type=radio] + label {
	display: inline-block; padding: 0 4px 0 4px;  border: 1px solid #ccc;
	text-align: center; text-decoration: none; font-size: 1.3rem; line-height: 1.85em; border-radius: 8px; color: #333; font-weight: bold;
	background: border: 1px solid #ccc;
	box-shadow: 1px 2px 3px rgba(0,0,0,0.5); transition: .2s; }
.searchbox ul.icons input[type="radio"][value="type1"] + label { background-color: #8DC553; }
.searchbox ul.icons input[type="radio"][value="type2"] + label { background-color: #8CA5D3; }
.searchbox ul.icons input[type="radio"][value="type3"] + label { background-color: #EDAD81; }
.searchbox ul.icons input[type="radio"][value="type4"] + label,
.searchbox ul.icons input[type="radio"][value="type5"] + label,
.searchbox ul.icons input[type="radio"][value="type6"] + label { background: #F5BA1A; padding: 0 4px; }
.searchbox ul.icons input[type="radio"][value="type8"] + label { background-color: #87CAB1; }
.searchbox ul.icons input[type="radio"][value="type9"] + label { background-color: #EFEA3A; }
.searchbox ul.icons input[type="radio"][value="regulation"] + label { background-color: #EA5440; }

.searchbox ul.icons input[type="radio"]:hover + label { border: 1px solid #045F64; box-shadow: 0 1px 2px rgba(0,0,0,0.5); }

.searchbox ul.icons input[type=radio]:checked + label { color: #fff; border: 1px solid #fff; box-shadow: 0 0 0 1px #fff inset, 0 0 0 2px #045F64; background: #045F64;}
/*
.searchbox ul.icons input[type="radio"][value="type1"]:checked + label { background-color: #6b973e; }
.searchbox ul.icons input[type="radio"][value="type2"]:checked + label { background-color: #4A73BD; }
.searchbox ul.icons input[type="radio"][value="type3"]:checked + label { background-color: #D78B57; }
.searchbox ul.icons input[type="radio"][value="type4"]:checked + label,
.searchbox ul.icons input[type="radio"][value="type5"]:checked + label,
.searchbox ul.icons input[type="radio"][value="type6"]:checked + label { background: #D09C0D; padding: 0 4px; }
.searchbox ul.icons input[type="radio"][value="type8"]:checked + label { background-color: #5E8E7C; }
.searchbox ul.icons input[type="radio"][value="type9"]:checked + label { background-color: #BBB736; }
.searchbox ul.icons input[type="radio"][value="regulation"]:checked + label { background-color: #9F3223; }
*/
.searchbox ul.icons li span { margin-left: 1em; font-size: 1.3rem; color: #000;}

/* 選択解除 */
.searchbox .clear-search,
.searchbox .search-section ul li:first-child input[type=radio] + label {
	padding: 0 4px 0 1.5em; border: 1px solid #fff; border-radius: 8px;
	background: url(../img/cancel.svg) no-repeat 7px 0.6em / 8px #bbb; color: #333; font-weight: normal;
	line-height: 1.85em; box-shadow: none; }
.searchbox .clear-search:hover,
.searchbox .search-section ul li:first-child input[type=radio]:hover + label { color: #fff; box-shadow: 0 1px 2px rgba(0,0,0,0.5);}
.searchbox .clear-search:active,
.searchbox .search-section ul li:first-child input[type=radio]:active + label { background-color: #999; color: #fff; box-shadow: 0 1px 2px rgba(0,0,0,0.5);}

.searchbox .search-section ul li:first-child input[type=radio] + label { position: absolute; top: -2px; left: 10em; }
.searchbox .clear-search { cursor: pointer; font-size: 1.3rem; border-radius: 8px; color: #333; font-weight: bold; margin: 0 0 4px 5px; line-height: 1.85em; display: inline-block; }


@media screen and (max-width: 767px) {
	.searchbox .search-section.text { display: block; }
	.searchbox .search-section.text input[type=text] { line-height: 1.85em; }
}


/* 一覧 */
.linklist_wrap{}
.linklist_wrap h2{ position: sticky; top: 145px; z-index: 5; background: #fff; box-shadow: 0 0 0 20px #fff; }
.linklist_wrap h3{ position: sticky; top: 193px; z-index: 3; background: #fff; box-shadow: 0 5px 0 10px #fff; }
#main.secondpage .linklist_wrap p { margin-bottom: 0; }
#main.secondpage .linklist_wrap h2 + p { margin-bottom: 1em; }
@media screen and (max-width: 767px) {
	.linklist_wrap h2{ top: 60px; box-shadow: 0 0 0 10px #fff; }
	.linklist_wrap h3{ top: 90px; }
}


.masterlinklist { margin:0 10px 0 0; }
.masterlinklist p {margin:0;}
.masterlinklist > li { position: relative; flex-wrap: wrap; margin: 0 0 0 16px; border-top: 1px solid #ccc; padding: 10px 0;}
.masterlinklist > li:after{ clear: both; content: ""; display: block; height: 1px; }
.masterlinklist > li:not(:has(p.name:only-child))::before { position: absolute; content: ""; display: block; width: 100%; height: 25px; background: #eee; }


#main .masterlinklist > li p.name { position: relative; font-size: 16px; font-weight: bold; }
.masterlinklist > li ul.type{ list-style: none; margin-right: 4px; position: absolute; right: 5px; top: 0.5em; }
.masterlinklist > li ul.type li { float: left; margin: 0 0 0 10px; padding: 0;}
.masterlinklist > li ul.type a {
	display: inline-block; padding: 0 4px 0 1.5em; text-align: center; text-decoration: none; font-size: 13px; line-height: 1.85em;border-radius: 8px; color: #333; font-weight: bold;
	background: url(../img/arrow.svg) no-repeat 6px 0.35em / 8px auto; }
.masterlinklist > li ul.type .type1 a { background-color: #8DC553; border: 1px solid #ccc; box-shadow: 1px 2px 3px rgba(0,0,0,0.5); transition: .2s; width: calc(12em + 10px);}
.masterlinklist > li ul.type .type2 a { background-color: #8CA5D3; border: 1px solid #ccc; box-shadow: 1px 2px 3px rgba(0,0,0,0.5); transition: .2s; width: 6em;}
.masterlinklist > li ul.type .type3 a { background-color: #EDAD81; border: 1px solid #ccc; box-shadow: 1px 2px 3px rgba(0,0,0,0.5); transition: .2s; width: 6em;}
.masterlinklist > li ul.type .type1 a:hover { background-color: #6b973e; color: #fff; border: 1px solid #fff; box-shadow: 0 1px 2px rgba(0,0,0,0.5); }
.masterlinklist > li ul.type .type2 a:hover { background-color: #4A73BD; color: #fff; border: 1px solid #fff; box-shadow: 0 1px 2px rgba(0,0,0,0.5); }
.masterlinklist > li ul.type .type3 a:hover { background-color: #D78B57; color: #fff; border: 1px solid #fff; box-shadow: 0 1px 2px rgba(0,0,0,0.5); }

#main.secondpage .layoutWrap .masterlinklist a[href$=".pdf"]::after { display: none; }
#main .layoutWrap .masterlinklist li { list-style: none;}

.masterlinklist > li p.name + ul.effort { position: relative; margin-top: -2em; }
.masterlinklist > li ul.type + ul.effort { margin-top: 0.5em; }
.masterlinklist > li ul.effort { float: right; margin-right: 9px; }
.masterlinklist > li ul.effort li { float: left; margin: 0 0 0 10px; }
.masterlinklist > li ul.effort a {
	display: inline-block; padding: 0 4px 0 1.5em; text-align: center; text-decoration: none; font-size: 13px; line-height: 1.85em;border-radius: 8px; color: #333; font-weight: bold;
	background: url(../img/arrow.svg) no-repeat 6px 0.35em / 8px auto; }
.masterlinklist > li ul.effort .type4 a { background-color: #F5BA1A; border: 1px solid #ccc; box-shadow: 1px 2px 3px rgba(0,0,0,0.5); transition: .2s; width: 6em;}
.masterlinklist > li ul.effort .type4 a:hover { background-color: #DFA811; color: #fff; border: 1px solid #fff; box-shadow: 0 1px 2px rgba(0,0,0,0.5); }


@media screen and (max-width: 767px) {
	.masterlinklist > li {}
	.masterlinklist > li p.name { width: 100%; font-size: 16px; }
	.masterlinklist > li p.name:not(:only-child) { background: #eee; }
	.masterlinklist > li ul.type{ position: static; list-style: none; margin: 0.5em 4px 0 0;}
	.masterlinklist > li ul.type li { margin: -0 0 0 10px; padding: 0;}
	.masterlinklist > li ul.type:after { content: ""; display: block; clear: both; }
	.masterlinklist > li ul.type a { width: auto !important; }
	.masterlinklist > li p.name + ul.effort { margin-top: 0; }
	.masterlinklist li ul.effort { margin: 10px 0 0 10px; clear: both; }

}

/* 学会 */
.masterlinklist > li > p > a { display: inline-block; padding: 0 4px 0 1.5em; text-decoration: none; font-size: 13px; line-height: 1.85em; border-radius: 8px; color: #333; font-weight: bold;}
.masterlinklist > li > p.name a { color: #5b2b25; font-size: 18px; background: url(../img/arrow2.svg) no-repeat 0 0.4em / 7px auto; }
.masterlinklist > li > p.name a:hover { text-decoration: underline; }

.masterlinklist > li > p.type8 { position: absolute; top: 8px; right: calc(10em + 4px); }
.masterlinklist > li > p.type9 { position: absolute; top: 8px; right: 4px; }
.masterlinklist > li > p.type8 a { background: url(../img/arrow.svg) no-repeat 6px 0.35em / 8px auto #87CAB1; border: 1px solid #ccc; box-shadow: 1px 2px 3px rgba(0,0,0,0.5); transition: .2s;}
.masterlinklist > li > p.type9 a { background: url(../img/arrow.svg) no-repeat 6px 0.35em / 8px auto #EFEA3A; border: 1px solid #ccc; box-shadow: 1px 2px 3px rgba(0,0,0,0.5); transition: .2s;}
.masterlinklist > li > p.type8 a:hover { background-color: #5E8E7C; color: #fff; border: 1px solid #fff; box-shadow: 0 1px 2px rgba(0,0,0,0.5); }
.masterlinklist > li > p.type9 a:hover { background-color: #BBB736; color: #fff; border: 1px solid #fff; box-shadow: 0 1px 2px rgba(0,0,0,0.5); }
.masterlinklist li ul.regulation { width: 100%; list-style: none; margin: 10px 0 0 1em; padding: 0;}
.masterlinklist li ul.regulation li:not(:first-child) {margin-top: 1em;}
.masterlinklist li ul.regulation li span:first-child { display: inline-block; width: 5em; height: 2.1em; border-radius: 8px; text-align: center; background: #F5BA1A; color: #333; padding: 0 4px; border: 1px solid #F5BA1A; font-size: 13px; font-weight: bold; white-space: nowrap;}

.masterlinklist li ul.regulation li span.title { margin-left: 1em; font-size: 14px; }
.masterlinklist li ul.regulation li a{
	position: absolute; right: calc(12em + 4px);
	display: inline-block; padding: 2px 4px 2px 1.5em; text-align: center; text-decoration: none; font-size: 13px; line-height: 1.85em; border-radius: 8px; color: #333; font-weight: bold;
	background: url(../img/arrow.svg) no-repeat 6px 0.35em / 8px auto #EA5440; border: 1px solid #ccc; box-shadow: 1px 2px 3px rgba(0,0,0,0.5); transition: .2s;}
.masterlinklist li ul.regulation li a:hover { background-color: #BF4939; color: #fff; border: 1px solid #fff; box-shadow: 0 1px 2px rgba(0,0,0,0.5); }

@media screen and (max-width: 767px) {
	.masterlinklist li:after{ content: ""; display: block; height: 1px; clear: both;}
	.masterlinklist > li { clear: both; }
	.masterlinklist > li > p.type8 { position: static; margin: 0.5em 0 0 1em; float: left; }
	.masterlinklist > li > p.type9 { position: static; margin: 0.5em 0 0 1em; float: left; }
	.masterlinklist li ul.regulation:before { content: ""; display: block; height: 0.5em; clear: both;}
	.masterlinklist li ul.regulation li { line-height: 1.5; }
	.masterlinklist li ul.regulation li a{ position: static; margin-left: 0.5em; margin-top: 3px; }
	.masterlinklist li ul.regulation li span.title { margin-left: 0.5em; }
}

.linklist_wrap .notfound { color: #aaa; text-indent: 4em; display: none; font-weight: bold; }
