@charset "utf-8";

/***************************************************************************

  top common

***************************************************************************/
a.btn {
	border: solid 1px #fff;
	padding: 0 20px;
	color: #fff;
	display: inline-block;
	background: transparent;
	line-height: 2;
	position: relative;
	transition: 0.3s;
}

a.btn:hover {
	background: rgba(255, 255, 255, 0.15);
	border: solid 1px #02c431;
}

a.btn:after {
	content: ' ＞';
}

@media screen and (max-width: 620px) {
	a.btn {
		padding: 0 15px;
		font-size: 0.86em;
	}

}

/***************************************************************************

  メインイメージ

***************************************************************************/
.portalVisual {
	width: 100%;
	min-width: 950px;
	clear: both;
}

.portalVisual .wrap {
	width: 100%;
	margin: 0 auto;
	position: relative;
	clear: both;
}

.portalVisual .mainImage {
	width: 53%;
	/*padding-top: 40%;*/
	height: 35vw;
	max-height: 480px;
	min-height: 332px;
	background: url(../images/portal/main_img.jpg) no-repeat left 20%;
	background-size: cover;
	float: left;
}

.portalVisual .readPart {
	float: left;
	width: 19%;
	background: #fff url(../images/portal/main_vleft.svg) no-repeat 53% 20px;
	background-size: 70px 58px;
	margin: 0 0 0;
	padding: 97px 0 0;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}

.portalVisual dl {
	width: 100%;
	margin: 0 auto 0;
	vertical-align: middle;
	padding: 0 5vw 0 0;
}

.portalVisual dt {
	font-weight: bold;
	font-size: 1.9vw;
	line-height: 2.6em;
}

.portalVisual dt span {
	display: block;
	color: #e78e1d;
	font-size: 0.95vw;
	padding: 0.5em 0;
	line-height: 1.5em;
}

.portalVisual dd {
	font-size: 0.95vw;
	font-weight: bold;
	padding: 0.5em 0;
	line-height: 1.8em;
}

.portalVisualNav {
	float: left;
	width: 28%;
	height: 35vw;
	min-height: 332px;
	max-height: 480px;
	background: #ccc;
	display: table;
}

.portalVisualNav li {
	width: 100%;
	height: 16.666%;
	height: 14.2857%;
	display: table-row;
}

.portalVisualNav li a {
	display: table-cell;
	padding: 0 0 0 10%;
	vertical-align: middle;
	color: #fff;
	opacity: 1;
	transition: 0.3s;
}

.portalVisualNav li a:hover {
	opacity: 0.7;
}

.portalVisualNav li a span {
	display: inline-block;
	font-weight: bold;
	line-height: 1.3;
}

.portalVisualNav li.pvNav01 a {
	background: #00187f url(../images/arw_icon.svg) no-repeat 93% center;
	background-size: 0.95vw auto;
}

.portalVisualNav li.pvNav02 a {
	background: #00b1e4 url(../images/arw_icon.svg) no-repeat 93% center;
	background-size: 0.95vw auto;
}

.portalVisualNav li.pvNav03 a {
	background: #e78e1d url(../images/arw_icon.svg) no-repeat 93% center;
	background-size: 0.95vw auto;
}

.portalVisualNav li.pvNav04 a {
	background: #9bc65b url(../images/arw_icon.svg) no-repeat 93% center;
	background-size: 0.95vw auto;
}

.portalVisualNav li.pvNav05 a {
	background: #838383 url(../images/arw_icon.svg) no-repeat 93% center;
	background-size: 0.95vw auto;
}

.portalVisualNav li.pvNav06 a {
	background: #EC6E6F url(../images/arw_icon.svg) no-repeat 93% center;
	background-size: 0.95vw auto;
}

.portalVisualNav li.pvNav07 a {
	background: #A33057 url(../images/arw_icon.svg) no-repeat 93% center;
	background-size: 0.95vw auto;
}

.portalVisualNav li.pvNav01 span {
	padding: 0.2em 0 0 2.8em;
	background: url(../images/cal_icon.svg) no-repeat left center;
	background-size: 2.3vw auto;
	background-size: 2.185vw auto;
}

.portalVisualNav li.pvNav02 span {
	padding: 0.2em 0 0 2.8em;
	background: url(../images/cal_icon.svg) no-repeat left center;
	background-size: 2.3vw auto;
	background-size: 2.185vw auto;
}

.portalVisualNav li.pvNav03 span {
	padding: 0.5em 0 0.5em 2.8em;
	background: url(../images/paper_icon.svg) no-repeat left 0.2vw center;
	background-size: 2.1vw auto;
	background-size: 1.995vw auto;
}

.portalVisualNav li.pvNav04 span {
	padding: 0.2em 0 0.2em 2.8em;
	background: url(../images/paper_icon.svg) no-repeat left 0.2vw center;
	background-size: 2.1vw auto;
	background-size: 1.995vw auto;
}

.portalVisualNav li.pvNav05 span {
	padding: 0.2em 0 0.2em 2.8em;
	background: url(../images/paper_icon.svg) no-repeat left 0.2vw center;
	background-size: 2.1vw auto;
	background-size: 1.995vw auto;
}

.portalVisualNav li.pvNav06 span {
	padding: 0.2em 0 0.2em 2.8em;
	background: url(../images/paper_icon.svg) no-repeat left 0.2vw center;
	background-size: 2.1vw auto;
	background-size: 1.995vw auto;
}

.portalVisualNav li.pvNav07 span {
	padding: 0.2em 0 0.2em 2.8em;
	background: url(../images/paper_icon.svg) no-repeat left 0.2vw center;
	background-size: 2.1vw auto;
	background-size: 1.995vw auto;
}

.portalVisualNav li span {
	font-size: 1.14vw;
}

@media screen and (min-width: 1940px) {
	.portalVisualNav li.pvNav01 a {
		background-size: 18px auto;
	}

	.portalVisualNav li.pvNav02 a {
		background-size: 18px auto;
	}

	.portalVisualNav li.pvNav03 a {
		background-size: 18px auto;
	}

	.portalVisualNav li.pvNav04 a {
		background-size: 18px auto;
	}

	.portalVisualNav li.pvNav05 a {
		background-size: 18px auto;
	}

	.portalVisualNav li.pvNav06 a {
		background-size: 18px auto;
	}

	.portalVisualNav li.pvNav07 a {
		background-size: 18px auto;
	}

	.portalVisualNav li.pvNav01 span {
		background-size: 40px auto;
	}

	.portalVisualNav li.pvNav02 span {
		background-size: 40px auto;
	}

	.portalVisualNav li.pvNav03 span {
		background-size: 36px auto;
	}

	.portalVisualNav li.pvNav04 span {
		background-size: 36px auto;
	}

	.portalVisualNav li.pvNav05 span {
		background-size: 36px auto;
	}

	.portalVisualNav li.pvNav06 span {
		background-size: 36px auto;
	}

	.portalVisualNav li.pvNav07 span {
		background-size: 36px auto;
	}

	.portalVisualNav li span {
		font-size: 21px !important;
	}
}

@media screen and (min-width: 1367px) {
	.portalVisual .mainImage {
		width: 61%;
		height: 40vw;
		max-height: 540px;
		background: url(../images/portal/main_img.jpg) no-repeat left 15%;
		background-size: cover;
	}

	.portalVisual .readPart {
		width: 16%;
	}

	.portalVisual dl {
		padding: 0 4vw 0 0;
	}

	.portalVisualNav {
		height: 40vw;
		max-height: 540px;
		width: 23%;
	}

	.portalVisual dt {
		font-size: 30px;
	}

	.portalVisual dt span {
		font-size: 13px;
	}

	.portalVisual dd {
		font-size: 13px;
	}

	.portalVisual dd {
		font-size: 13px;
	}

	.portalVisualNav li span {
		font-size: 1.2vw;
		font-size: 1.14vw;
	}
}

@media screen and (max-width: 950px) {
	.portalVisual dt {
		font-size: 18px;
	}

	.portalVisualNav li.pvNav01 span {
		background: url(../images/cal_icon.svg) no-repeat left center;
		background-size: 2.5vw auto;
		background-size: 20px auto;
	}

	.portalVisualNav li.pvNav02 span {
		background: url(../images/cal_icon.svg) no-repeat left center;
		background-size: 2.5vw auto;
		background-size: 20px auto;
	}

	.portalVisualNav li.pvNav03 span {
		background: url(../images/paper_icon.svg) no-repeat left center;
		background-size: 2.3vw auto;
		background-size: 19px auto;
	}

	.portalVisualNav li.pvNav04 span {
		background: url(../images/paper_icon.svg) no-repeat left center;
		background-size: 2.3vw auto;
		background-size: 19px auto;
	}

	.portalVisualNav li.pvNav05 span {
		background: url(../images/paper_icon.svg) no-repeat left center;
		background-size: 2.3vw auto;
		background-size: 19px auto;
	}

	.portalVisualNav li.pvNav06 span {
		background: url(../images/paper_icon.svg) no-repeat left center;
		background-size: 2.3vw auto;
		background-size: 19px auto;
	}

	.portalVisualNav li.pvNav07 span {
		background: url(../images/paper_icon.svg) no-repeat left center;
		background-size: 2.3vw auto;
		background-size: 19px auto;
	}

	.portalVisualNav li span {
		font-size: 12px;
	}
}

@media screen and (max-width: 768px) {
	.portalVisual {
		width: 100%;
		min-width: initial;
	}

	.portalVisual .wrap {
		width: 100%;
	}

	.portalVisual .mainImage {
		width: 100%;
		/*padding-top: 40%;*/
		height: 55vw;
		max-height: inherit;
		min-height: inherit;
		background: url(../images/portal/main_img.jpg) no-repeat left 20%;
		background-size: cover;
		float: none;
	}

	.portalVisual .readPart {
		float: left;
		width: 100%;
		background: none;
		margin: 55vw 0 0;
		text-align: center;
		padding: 0 10px 0;
		-webkit-writing-mode: inherit;
		-ms-writing-mode: inherit;
		writing-mode: inherit;
		display: inline-block;
	}

	.portalVisual dl {
		width: initial;
		background: #fff url(../images/portal/main_vleft.svg) no-repeat 20px center;
		background-size: 70px 58px;
		margin: 20px auto 20px;
		padding: 0 0 0 110px;
		text-align: left;
		display: inline-block;
	}

	.portalVisual dt {
		font-size: 22px;
		line-height: 1.4em;
	}

	.portalVisual dt span {
		font-size: 13px;
	}

	.portalVisual dd {
		font-size: 11px;
	}

	.portalVisualNav {
		float: left;
		width: 100%;
		height: initial;
		min-height: initial;
		max-height: initial;
		background: #ccc;
		display: block;
	}

	.portalVisualNav li {
		width: 100%;
		height: inherit;
		display: block;
		float: left;
	}

	.portalVisualNav li a {
		display: block;
		padding: 5px 25px 5px 20px;
	}

	.portalVisualNav li.pvNav01 span {
		padding: 1em 0 1em 2.2em;
		background: url(../images/cal_icon.svg) no-repeat left 45%;
		background-size: 1.5em auto;
	}

	.portalVisualNav li.pvNav02 span {
		padding: 1em 0 1em 2.2em;
		background: url(../images/cal_icon.svg) no-repeat left 45%;
		background-size: 1.5em auto;
	}

	.portalVisualNav li.pvNav03 span {
		padding: 1em 0 1em 2.2em;
		background: url(../images/paper_icon.svg) no-repeat left 45%;
		background-size: 1.5em auto;
		margin-top: 0;
	}

	.portalVisualNav li.pvNav04 span {
		padding: 1em 0 1em 2.2em;
		background: url(../images/paper_icon.svg) no-repeat left 45%;
		background-size: 1.5em auto;
	}

	.portalVisualNav li.pvNav05 span {
		padding: 1em 0 1em 2.2em;
		background: url(../images/paper_icon.svg) no-repeat left 45%;
		background-size: 1.5em auto;
	}

	.portalVisualNav li.pvNav06 span {
		padding: 1em 0 1em 2.2em;
		background: url(../images/paper_icon.svg) no-repeat left 45%;
		background-size: 1.5em auto;
	}

	.portalVisualNav li.pvNav07 span {
		padding: 1em 0 1em 2.2em;
		background: url(../images/paper_icon.svg) no-repeat left 45%;
		background-size: 1.5em auto;
	}

	.portalVisualNav li.pvNav01 a {
		background: #00187f url(../images/arw_icon.svg) no-repeat right 20px center;
		background-size: 10px auto;
	}

	.portalVisualNav li.pvNav02 a {
		background: #00b1e4 url(../images/arw_icon.svg) no-repeat right 20px center;
		background-size: 10px auto;
	}

	.portalVisualNav li.pvNav03 a {
		background: #e78e1d url(../images/arw_icon.svg) no-repeat right 20px center;
		background-size: 10px auto;
	}

	.portalVisualNav li.pvNav04 a {
		background: #9bc65b url(../images/arw_icon.svg) no-repeat right 20px center;
		background-size: 10px auto;
	}

	.portalVisualNav li.pvNav05 a {
		background: #838383 url(../images/arw_icon.svg) no-repeat right 20px center;
		background-size: 10px auto;
	}

	.portalVisualNav li.pvNav06 a {
		background: #EC6E6F url(../images/arw_icon.svg) no-repeat right 20px center;
		background-size: 10px auto;
	}

	.portalVisualNav li.pvNav07 a {
		background: #A33057 url(../images/arw_icon.svg) no-repeat right 20px center;
		background-size: 10px auto;
	}

	.portalVisualNav li a {
		background: #9bc65b url(../images/arw_icon.svg) no-repeat right 20px center;
		background-size: 10px auto;
	}
}

@media screen and (max-width: 500px) {
	.portalVisual .readPart {
		padding: 0 10px 0;
	}

	.portalVisual dl {
		background: #fff url(../images/portal/main_vleft.svg) no-repeat 10px center;
		background-size: 50px auto;
		margin: 20px auto 20px;
		padding: 0 0 0 75px;
	}

	.portalVisual dt {
		font-size: 20px;
		line-height: 1.2em;
	}

	.portalVisual dt span {
		font-size: 12px;
	}

	.portalVisual dd {
		font-size: 11px;
	}

	.portalVisualNav li a {
		display: block;
		padding: 5px 25px 5px 15px;
	}
}

/***************************************************************************

  新着情報

***************************************************************************/
.portalNews {
	width: 100%;
	padding: 55px 0 55px;
	margin: 0 auto 0;
	border-left: 20px solid #c2dc9b;
	background: #fff;
	clear: both;
}

.portalNews + .portalNews {
	padding: 10px 0 60px;
}

.portalNews .wrap {
	width: 950px;
	margin: 0 auto 0;
	clear: both;
}

.portalNews .leftBox {
	width: 100%;
	padding: 0 0 0 45px;
	margin: 0 0 40px;
	background: url(../images/news_icon.svg) no-repeat left 0.4em;
	background-size: 27px auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.portalNews .portalH2 {}

.portalNews .portalH2 strong {
	font-size: 28px;
	line-height: 1.4;
	margin: 0 0 10px;
	font-weight: bold;
	display: block;
}

.portalNews .portalH2 span {
	font-size: 16px;
	line-height: 1.4;
	font-weight: 500;
	padding: 0 0 1.5em;
	display: block;
	position: relative;
}

.portalNews .portalH2 span:after {
	content: '';
	width: 3em;
	height: 2px;
	background: #000;
	position: absolute;
	left: 0;
	bottom: 0;
}

.portalNews .ptlNewsTo a {
	background: #fff;
	color: #000;
	font-size: 18px;
	font-weight: 600;
	line-height: 1;
	padding: 11px 11px 11px 0.9em;
	border-radius: 10px;
	border: solid 4px #e78e1d;
	opacity: 1;
	transition: 0.3s;
}

.portalNews .ptlNewsTo a:hover {
	opacity: 0.7;
}

.portalNews .ptlNewsTo a span {
	padding: 0 3.5em 0 0;
	background: url(../images/arw_yellow_icon.svg) no-repeat right center;
	background-size: 13px auto;
}

.portalNews .ptlNewsBox {
	width: 100%;
	padding: 0 45px 0 93px;
}

.portalNews + .portalNews .ptlNewsBox {
	padding: 0 0 0 45px;
}

.ptlNewsTabBox {
	margin-bottom: 22px;
}

#ptlNewsTab {
	width: 100%;
	display: flex;
	align-items: flex-end;
	justify-content: flex-start;
	margin: 0 auto;
	border-bottom: solid 5px #e78e1d;
}

#ptlNewsTab.tabAll {
	border-bottom: solid 5px #e78e1d;
}

#ptlNewsTab.tabcourse {
	border-bottom: solid 5px #8db74d;
}

#ptlNewsTab.tabadministration {
	border-bottom: solid 5px #00b1e4;
}

#ptlNewsTab.tabsecretariat {
	border-bottom: solid 5px #ac3c62;
}

#ptlNewsTab li {
	width: 134px;
	background-color: inherit;
	font-size: 18px;
	font-weight: bold;
	cursor: pointer;
	height: 42px;
	position: relative;
	margin: 0 5px 0 0;
	text-align: center;
	border-radius: 8px 8px 0 0;
	line-height: 1;
	display: flex;
	justify-content: center;
	align-items: center;
	opacity: 1;
}

#ptlNewsTab li:hover {
	opacity: 0.8;
}

.tab.active {
	font-size: 20px !important;
	padding: 0 0 1px;
}

#tabAll {
	color: #e78e1d;
	border-top: solid 2px #e78e1d;
	border-left: solid 2px #e78e1d;
	border-right: solid 2px #e78e1d;
}

#tabAll.active {
	background: #e78e1d;
	color: #fff;
}

#tabcourse {
	color: #8db74d;
	border-top: solid 2px #8db74d;
	border-left: solid 2px #8db74d;
	border-right: solid 2px #8db74d;
}

#tabcourse.active {
	background: #8db74d;
	color: #fff;
}

#tabadministration {
	color: #00b1e4;
	border-top: solid 2px #00b1e4;
	border-left: solid 2px #00b1e4;
	border-right: solid 2px #00b1e4;
}

#tabadministration.active {
	background: #00b1e4;
	color: #fff;
}

#tabsecretariat {
	color: #ac3c62;
	border-top: solid 2px #ac3c62;
	border-left: solid 2px #ac3c62;
	border-right: solid 2px #ac3c62;
}

#tabsecretariat.active {
	background: #ac3c62;
	color: #fff;
}

.tab.active span {
	margin-top: -1px;
}

.newsList {
	max-width: 1060px;
	margin: 0 auto 40px auto;
	display: none;
}

.newsList.show {
	display: block;
}

.portalNews .ptlNewsBox a {
	width: 100%;
	float: left;
	padding: 0 5px 20px;
	margin: 0 0 20px;
	border-bottom: 1px dashed #bfbfbf;
	opacity: 1;
	transition: 0.3s;
}

.portalNews .ptlNewsBox a:hover {
	opacity: 0.6;
}

.portalNews .ptlNewsBox a dt {
	font-size: 14px;
	width: 210px;
	float: left;
}

.portalNews .ptlNewsBox a dt i {
	display: inline-block;
	color: #808080;
	width: 6.5em;
	float: left;
}

.portalNews .ptlNewsBox a dt span {
	display: inline-block;
	text-align: center;
	font-weight: bold;
	width: 7em;
	color: #bbb;
	border: 1px solid #bbb;
	padding: 1px 0 0;
}

.portalNews .ptlNewsBox a dt span.courseIcon {
	color: #8db74d;
	border: 1px solid #8db74d;
}

.portalNews .ptlNewsBox a dt span.administrationIcon {
	color: #00b1e4;
	border: 1px solid #00b1e4;
}

.portalNews .ptlNewsBox a dt span.secretariatIcon {
	color: #ac3c62;
	border: 1px solid #ac3c62;
}

.portalNews .ptlNewsBox a dd {
	float: left;
	width: 590px;
	font-size: 114%;
}

ul.linkList {
	width: 100%;
	margin: 0 0 0;
	padding: 0 0 0 0;
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	flex-wrap: wrap;
}

ul.linkList li {
	width: 32%;
	margin: 0 2% 0 0;
	padding-left: 0;
	background: none;
	display: block;
}

ul.linkList li:nth-child(3n) {
	margin: 0 0 0 0;
}

ul.linkList li a {
	width: 100%;
	border: solid 4px #ea9c39 !important;
	background: #fff url(../images/arw_yellow_icon.svg) no-repeat 97% center;
	background-size: 14px 25px;
	font-size: 143%;
	font-weight: bold;
	padding: 10px 45px 10px 25px !important;
	margin: 13px 0;
	display: block;
	opacity: 1;
	transition: 0.3s;
}

@media screen and (max-width: 1000px) {
	.portalNews .wrap {
		width: calc(100% - 20px);
	}
}

@media screen and (max-width: 768px) {
	.portalNews {
		padding: 25px 0 20px;
		border-left: 10px solid #c2dc9b;
	}

	.portalNews + .portalNews {
		padding: 0 0 20px;
	}

	.portalNews .leftBox {
		float: none;
		width: 100%;
		padding: 0 0 0 0;
		background: none;
		margin: 0 auto;
	}

	.portalNews .portalH2 {
		float: left;
		width: initial;
		padding: 0 0 0 40px;
		background: url(../images/news_icon.svg) no-repeat left 0.4em;
		background-size: 27px auto;
		display: inline-block;
	}

	.portalNews .portalH2 strong {
		font-size: 20px;
	}

	.portalNews .portalH2 span {
		font-size: 12px;
		margin: 0 0 20px;
		padding: 0 0 1.5em;
	}

	.portalNews .ptlNewsTo {
		float: left;
		text-align: left;
		margin: 20px 0 30px 40px;
		display: block;
	}

	.portalNews .ptlNewsTo a {
		font-size: 16px;
		padding: 10px 10px 10px 0.7em;
	}

	.portalNews .ptlNewsTo a span {
		background: url(../images/arw_yellow_icon.svg) no-repeat right center;
		background-size: 12px auto;
	}

	.portalNews .ptlNewsBox {
		width: 100%;
		padding: 0 0 0 40px;
	}

	.portalNews + .portalNews .ptlNewsBox {
		padding: 0 0 0 40px;
	}

	.portalNews .ptlNewsBox a {
		padding: 0 0 12px;
		margin: 0 0 12px;
	}

	.portalNews .ptlNewsBox a dt {
		font-size: 100%;
		width: 100%;
		float: left;
	}

	.portalNews .ptlNewsBox a dt i {
		padding-top: 3px;
		font-size: 12px;
	}

	.portalNews .ptlNewsBox a dt span {
		font-size: 10px;
		padding: 0 0 0;
	}

	.portalNews .ptlNewsBox a dd {
		width: 100%;
		margin: 8px 0 0;
		font-size: 14px;
	}

	ul.linkList li a {
		background: #fff url(../images/arw_yellow_icon.svg) no-repeat 97% center;
		background-size: 12px auto;
		font-size: 114%;
	}
}

@media screen and (max-width: 768px) {
	ul.linkList {
		margin: 0 0 10px;
	}

	ul.linkList li {
		width: 100%;
		margin: 0 0 0 0;
	}

	ul.linkList li a {
		width: 100%;
		font-weight: bold;
		padding: 10px 45px 10px 25px !important;
		margin: 13px 0;
		display: block;
		opacity: 1;
		transition: 0.3s;
	}

	.ptlNewsTabBox {
		margin-bottom: 18px;
	}

	#ptlNewsTab {
		width: 100%;
		flex-wrap: wrap;
		border-bottom: solid 2px #e78e1d;
		padding: 0 0 10px;
	}

	#ptlNewsTab.tabAll {
		border-bottom: solid 2px #e78e1d;
	}

	#ptlNewsTab.tabcourse {
		border-bottom: solid 2px #8db74d;
	}

	#ptlNewsTab.tabadministration {
		border-bottom: solid 2px #00b1e4;
	}

	#ptlNewsTab.tabsecretariat {
		border-bottom: solid 2px #ac3c62;
	}

	#ptlNewsTab li {
		width: 134px;
		font-size: 16px;
		height: 38px;
		margin: 0 10px 10px 0;
		border-radius: 0;
	}

	#ptlNewsTab li:hover {
		opacity: 1;
	}

	.tab.active {
		font-size: 16px !important;
		padding: 0 0 0;
	}

	#tabAll {
		border-top: solid 1px #e78e1d;
		border-bottom: solid 1px #e78e1d;
		border-left: solid 1px #e78e1d;
		border-right: solid 1px #e78e1d;
	}

	#tabcourse {
		border-top: solid 1px #8db74d;
		border-bottom: solid 1px #8db74d;
		border-left: solid 1px #8db74d;
		border-right: solid 1px #8db74d;
	}

	#tabadministration {
		border-top: solid 1px #00b1e4;
		border-bottom: solid 1px #00b1e4;
		border-left: solid 1px #00b1e4;
		border-right: solid 1px #00b1e4;
	}

	#tabsecretariat {
		border-top: solid 1px #ac3c62;
		border-bottom: solid 1px #ac3c62;
		border-left: solid 1px #ac3c62;
		border-right: solid 1px #ac3c62;
	}

	#tabJimukyoku.active {
		background: #ac3c62;
		color: #fff;
	}

	.tab.active span {
		margin-top: 0;
	}
}

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


	#ptlNewsTab li {
		width: 110px;
		font-size: 14px;
		height: 32px;
	}

	.tab.active {
		font-size: 14px !important;
		padding: 0 0 0;
	}
}

/***************************************************************************

  講習会・研修会

***************************************************************************/
.portalWorkShop {
	width: 100%;
	padding: 55px 0 80px;
	margin: 0 auto 0;
	border-left: 20px solid #ea9c39;
	background: #fff url(../images/portal/ptl_workshop_bg.jpg);
	background-size: cover;
	clear: both;
}

.portalWorkShop .wrap {
	width: 950px;
	margin: 0 auto 0;
	clear: both;
}

.portalWorkShop .leftBox {
	float: left;
	width: 250px;
	padding: 0 0 0 45px;
	background: url(../images/nav03.svg) no-repeat left 0.1em;
	background-size: 30px auto
}

.portalWorkShop .portalH2 {
	float: left;
	width: 100%;
}

.portalWorkShop .portalH2 strong {
	font-size: 28px;
	line-height: 1;
	margin: 0 0 10px;
	font-weight: bold;
	display: block;
}

.portalWorkShop .portalH2 span {
	font-size: 16px;
	line-height: 1;
	font-weight: 500;
	margin: 0 0 50px;
	padding: 0 0 1.5em;
	display: block;
	position: relative;
}

.portalWorkShop .portalH2 span:after {
	content: '';
	width: 3em;
	height: 2px;
	background: #000;
	position: absolute;
	left: 0;
	bottom: 0;
}

.portalWorkShop .portalWorkShopint {
	float: right;
	width: 650px;
}

.portalWorkShop .portalWorkShopint p {
	font-size: 114%;
	line-height: 1.7;
}

.portalWorkShopCont {
	float: left;
	width: 100%;
	clear: both;
	padding: 0 0 0 45px;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
}

.portalWorkShopCont li {
	float: left;
	width: 31%;
	position: relative;
	border-radius: 20px;
}

.portalWorkShopCont li:before {
	display: block;
	content: '';
	padding-top: 100%;
}

.portalWorkShopCont li div {
	position: absolute;
	top: 0;
	width: 100%;
	height: 100%;
}

.ptlWorkshopList01 {
	border: 10px solid #8d294b;
	background: #fff;
	cursor: pointer;
	opacity: 1;
	transition: 0.3s;
}

.ptlWorkshopList01:hover {
	opacity: 0.7;
}

.ptlWorkshopList01 div article {
	display: table;
	width: 100%;
	height: 100%;
}

.ptlWorkshopList01 a {
	width: 100%;
	height: 100%;
	display: table-cell;
	vertical-align: middle;
	text-align: center
}

.ptlWorkshopList01 span {
	font-size: 26px;
	font-weight: bold;
	display: block;
	color: #8d294b;
	letter-spacing: 0.1em;
}

.ptlWorkshopList01 i {
	display: inline-block;
	background: #8d294b url(../images/arw_sml.svg) no-repeat 93% center;
	background-size: 7px auto;
	font-size: 15px;
	color: #fff;
	font-weight: bold;
	width: 10em;
	border-radius: 1em;
	padding: 3px 0;
}

.ptlWorkshopList02 {
	border: 10px solid #ff7a41;
	background: #fff;
	cursor: pointer;
	opacity: 1;
	transition: 0.3s;
}

.ptlWorkshopList02:hover {
	opacity: 0.7;
}

.ptlWorkshopList02 div article {
	display: table;
	width: 100%;
	height: 100%;
}

.ptlWorkshopList02 a {
	width: 100%;
	height: 100%;
	display: table-cell;
	vertical-align: middle;
	text-align: center;
}

.ptlWorkshopList02 span {
	font-size: 26px;
	font-weight: bold;
	display: block;
	color: #ff7a41;
	letter-spacing: 0.15em;
}

.ptlWorkshopList02 i {
	display: inline-block;
	background: #ff7a41 url(../images/arw_sml.svg) no-repeat 93% center;
	background-size: 7px auto;
	font-size: 15px;
	color: #fff;
	font-weight: bold;
	width: 10em;
	border-radius: 1em;
	padding: 3px 0;
}

.ptlWorkshopList03 {
	border: 15px solid #fff;
	background: #fff;
}

.ptlWorkshopList03 a {
	display: table;
	width: 100%;
	height: 50%;
	color: #fff;
	font-size: 19px;
	line-height: 1.4;
	font-weight: bold;
}

.ptlWorkshopList03 a span {
	display: table-cell;
	vertical-align: middle;
	padding: 0 15px 0 75px;
	background-size: 38px auto;
	opacity: 1;
	transition: 0.3s;
}

.ptlWorkshopList03 a i {
	display: block;
	background: url(../images/arw_icon.svg) no-repeat right center;
	background-size: 14px auto;
}

.ptlWorkshopList03 a:nth-child(1) span {
	background: #8d294b url(../images/paper_icon.svg) no-repeat 20px center;
	background-size: 38px auto;
}

.ptlWorkshopList03 a:nth-child(2) span {
	background: #ff7a41 url(../images/paper_icon.svg) no-repeat 20px center;
	background-size: 38px auto;
}

.ptlWorkshopList03 a:hover span {
	opacity: 0.7;
}

@media screen and (max-width: 1000px) {
	.portalWorkShop .wrap {
		width: calc(100% - 20px);
	}
}

@media screen and (max-width: 768px) {
	.portalWorkShop {
		padding: 30px 0 30px;
		border-left: 10px solid #ea9c39;
	}

	.portalWorkShop .leftBox {
		float: none;
		width: 100%;
		padding: 0 0 0 0;
		background: none;
	}

	.portalWorkShop .portalH2 {
		float: none;
		padding: 0 0 0 40px;
		background: url(../images/nav03.svg) no-repeat left 0.1em;
		background-size: 30px auto;
		width: 100%;
		display: inline-block;
	}

	.portalWorkShop .portalH2 strong {
		font-size: 20px;
	}

	.portalWorkShop .portalH2 span {
		font-size: 12px;
		margin: 0 0 20px;
	}

	.portalWorkShop .portalWorkShopint {
		float: none;
		width: 100%;
	}

	.portalWorkShop .portalWorkShopint p {
		font-size: 100%;
		padding-left: 40px;
		margin: 0 0 20px;
	}

	.portalWorkShopCont {
		float: left;
		width: 100%;
		clear: both;
		padding: 0 0 0 0;
	}

	.portalWorkShopCont li {
		width: 32%;
	}

	.ptlWorkshopList01 {
		border: 5px solid #8d294b;
	}

	.ptlWorkshopList01 span {
		font-size: 20px;
	}

	.ptlWorkshopList01 i {
		background-size: 5px auto;
		font-size: 12px;
	}

	.ptlWorkshopList02 {
		border: 5px solid #ff7a41;
	}

	.ptlWorkshopList02 span {
		font-size: 20px;
	}

	.ptlWorkshopList02 i {
		background-size: 5px auto;
		font-size: 12px;
	}

	.ptlWorkshopList03 a {
		font-size: 16px;
	}

	.ptlWorkshopList03 a span {
		display: table-cell;
		vertical-align: middle;
		padding: 0 5px 0 50px;
	}

	.ptlWorkshopList03 a i {
		background-size: 12px auto;
	}

	.ptlWorkshopList03 a:nth-child(1) span {
		background: #8d294b url(../images/paper_icon.svg) no-repeat 15px center;
		background-size: 25px auto;
	}

	.ptlWorkshopList03 a:nth-child(2) span {
		background: #ff7a41 url(../images/paper_icon.svg) no-repeat 15px center;
		background-size: 25px auto;
	}
}

@media screen and (max-width: 660px) {
	.portalWorkShopCont {
		padding: 0 40px;
	}

	.portalWorkShopCont li {
		float: left;
		width: 100%;
		margin: 0 0 10px;
	}

	.portalWorkShopCont li br {
		display: none;
	}

	.portalWorkShopCont li:before {
		padding-top: 120px;
	}

	.ptlWorkshopList03 a i {
		padding-right: 15px;
	}

}

/***************************************************************************

  組織・支部情報 上

***************************************************************************/
.portalOrg {
	width: 100%;
	padding: 55px 0 80px;
	margin: 0 auto 0;
	border-left: 20px solid #a8d5e1;
	background: url(../images/portal/ptl_org_bg.jpg);
	clear: both;
}

.portalOrg .wrap {
	width: 950px;
	margin: 0 auto 0;
	clear: both;
}

.portalOrg .leftBox {
	float: left;
	width: 250px;
	padding: 0 0 0 45px;
	background: url(../images/nav02.svg) no-repeat left top;
	background-size: 27px auto
}

.portalOrg .portalH2 {
	float: left;
	width: 100%;
}

.portalOrg .portalH2 strong {
	font-size: 28px;
	line-height: 1;
	margin: 0 0 10px;
	font-weight: bold;
	display: block;
}

.portalOrg .portalH2 span {
	font-size: 16px;
	line-height: 1;
	font-weight: 500;
	margin: 0 0 50px;
	padding: 0 0 1.5em;
	display: block;
	position: relative;
}

.portalOrg .portalH2 span:after {
	content: '';
	width: 3em;
	height: 2px;
	background: #000;
	position: absolute;
	left: 0;
	bottom: 0;
}

.portalOrg .portalOrgint {
	float: right;
	width: 650px;
}

.portalOrg .portalOrgint p {
	font-size: 114%;
	line-height: 1.7;
}

.maplink {
	width: 100%;
	padding: 0 0 0 183px;
	clear: both;
}

.maplink img {
	width: 100%;
	height: auto;
}

@media screen and (max-width: 1000px) {
	.portalOrg .wrap {
		width: calc(100% - 20px);
	}
}

@media screen and (max-width: 768px) {
	.portalOrg {
		padding: 30px 0 30px;
		border-left: 10px solid #a8d5e1;
	}

	.portalOrg .leftBox {
		float: none;
		width: 100%;
		padding: 0 0 0 0;
	}

	.portalOrg .portalH2 {
		float: none;
		padding: 0 0 0 40px;
		background: url(../images/nav02.svg) no-repeat left top;
		background-size: 27px auto;
		display: inline-block;
	}

	.portalOrg .portalH2 strong {
		font-size: 20px;
	}

	.portalOrg .portalH2 span {
		font-size: 12px;
		margin: 0 0 20px;
	}

	.portalOrg .portalOrgint {
		float: right;
		width: 100%;
	}

	.portalOrg .portalOrgint p {
		font-size: 100%;
		padding-left: 40px;
		margin: 0 0 20px;
	}

	.maplink {
		width: 100%;
		padding: 0 40px 0;
	}
}

@media screen and (max-width: 500px) {
	.maplink {
		padding: 0 0 0;
	}
}

/***************************************************************************

  組織・支部情報 下

***************************************************************************/
.portalOrgSec {
	width: 100%;
	padding: 55px 0 20px;
	margin: 0 auto 0;
	border-left: 20px solid #81bfd1;
	background: #bbdfe9;
	clear: both;
}

.portalOrgSec .wrap {
	width: 950px;
	margin: 0 auto 0;
	clear: both;
}

.portalOrgSecList {
	width: 100%;
}

.portalOrgSecList li {
	float: left;
	width: 46%;
	margin: 0 0 50px;
}

.portalOrgSecList li:nth-child(2n) {
	float: right;
}

.portalOrgSecList li dl dt {
	width: 100%;
	float: left;
	border-bottom: 6px solid #fff;
	padding: 0 0 5px;
	margin: 0 0 10px;
}

.portalOrgSecList li dl dt strong {
	float: left;
	font-size: 129%;
	font-weight: bold;
}

.portalOrgSecList li dl dt a {
	float: right;
	background: #63b6cc;
	font-size: 93%;
	letter-spacing: 0.1em;
	font-weight: bold;
	color: #fff;
	border-radius: 1em;
	padding: 1px 1em 1px 1.5em;
	transition: 0.3s;
	opacity: 1;
}

.portalOrgSecList li dl dt a:hover {
	opacity: 0.7;
}

.portalOrgSecList li dl dt a span {
	background: #63b6cc url(../images/arw_icon.svg) no-repeat right center;
	background-size: 7px auto;
	padding: 0 1em 0 0;
}

.portalOrgSecList li dl dd {
	width: 100%;
	float: left;
	font-size: 100%;
	padding: 0 3px;
}

.portalOrgSecList li.portalOrgSecInq {}

.portalOrgSecList li.portalOrgSecInq a {
	width: 100%;
	height: 100%;
	color: #fff;
	font-size: 129%;
	font-weight: bold;
	letter-spacing: 0.15em;
	background: #63b6cc url(../images/arw_icon.svg) no-repeat 90% center;
	background-size: 14px auto;
	border-radius: 10px;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	align-items: center;
	box-shadow: 0 5px 0 rgba(73, 159, 186, 1);
	transition: 0.2s;
}

.portalOrgSecList li.portalOrgSecInq a:hover {
	margin: 5px 0 0;
	box-shadow: 0 0 0 rgba(73, 159, 186, 1);
}

.portalOrgSecList li.portalOrgSecInq a span {
	padding: 0 0 0 45px;
	background: url(../images/mail_white_icon.svg) no-repeat left center;
	background-size: 29px auto;
}

@media screen and (max-width: 1000px) {
	.portalOrgSec .wrap {
		width: calc(100% - 20px);
	}
}

@media screen and (max-width: 768px) {
	.portalOrgSec {
		padding: 20px 0 20px;
		border-left: 10px solid #81bfd1;
	}

	.portalOrgSecList {
		width: 100%;
		padding: 0 10px;
	}

	.portalOrgSecList li {
		width: 48%;
		margin: 0 0 30px;
	}

	.portalOrgSecList li dl dt {
		border-bottom: 4px solid #fff;
	}

	.portalOrgSecList li dl dt strong {
		font-size: 121%;
	}

	.portalOrgSecList li dl dt a {
		font-size: 80%;
		margin: 3px 0 0;
	}

	.portalOrgSecList li dl dt a span {
		background: #63b6cc url(../images/arw_icon.svg) no-repeat right center;
		background-size: 5px auto;
	}


	.portalOrgSecList li.portalOrgSecInq a {
		font-size: 121%;
		background: #63b6cc url(../images/arw_icon.svg) no-repeat 95% center;
		background-size: 10px auto;
	}

	.portalOrgSecList li.portalOrgSecInq a:hover {
		margin: 5px 0 0;
		box-shadow: 0 0 0 rgba(73, 159, 186, 1);
	}

	.portalOrgSecList li.portalOrgSecInq a span {
		padding: 0 15px 0 35px;
		background: url(../images/mail_white_icon.svg) no-repeat left center;
		background-size: 24px auto;
	}
}

@media screen and (max-width: 620px) {
	.portalOrgSecList {
		padding: 0 0;
	}

	.portalOrgSecList li {
		width: 100%;
		margin: 0 0 25px;
	}

	.portalOrgSecList li.portalOrgSecInq {
		height: 4em;
	}
}

/***************************************************************************

  組織・支部情報 下

***************************************************************************/
.portalLink {
	width: 100%;
	padding: 35px 0 15px;
	margin: 0 auto 0;
	border-left: 20px solid #eddb82;
	background: #fff;
	clear: both;
}

.portalLink .wrap {
	width: 950px;
	margin: 0 auto 0;
	clear: both;
}

.portalLinkList {
	width: 100%;
}

.portalLinkList li {
	float: left;
	width: 47%;
	margin: 0 0 20px;
}

.portalLinkList li:nth-child(2n) {
	float: right;
}

.portalLinkList li a {
	width: 100%;
	padding: 40px 40px 40px 40px;
	color: #000;
	font-size: 157%;
	font-weight: 500;
	border: 1px solid #9dc75e;
	background: #f2f7e9 url(../images/arw_green_icon.svg) no-repeat 90% center;
	background-size: 20px auto;
	border-radius: 10px;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	align-items: center;
	transition: 0.2s;
}

.portalLinkList li a:hover {
	background: #f2f7e9 url(../images/arw_green_icon.svg) no-repeat 95% center;
}

@media screen and (max-width: 1000px) {
	.portalLink .wrap {
		width: calc(100% - 20px);
	}
}

@media screen and (max-width: 768px) {
	.portalLink {
		width: 100%;
		padding: 20px 0 0;
		border-left: 10px solid #eddb82;
	}

	.portalLinkList {
		padding: 0 10px;
	}

	.portalLinkList li {
		width: 48%;
	}

	.portalLinkList li a {
		padding: 20px 20px 20px 20px;
		font-size: 135%;
		background: #f2f7e9 url(../images/arw_green_icon.svg) no-repeat 95% center;
		background-size: 10px auto;
		transition: 0.3s;
		opacity: 1;
	}

	.portalLinkList li a:hover {
		padding: 20px 20px 20px 20px;
		font-size: 135%;
		background: #f2f7e9 url(../images/arw_green_icon.svg) no-repeat 95% center;
		background-size: 10px auto;
		opacity: 0.7;
	}
}


@media screen and (max-width: 550px) {
	.portalLinkList {
		padding: 0 0;
	}

	.portalLinkList li {
		width: 100%;
	}

	.portalLinkList li:first-child {
		margin: 0 0 10px;
	}

	.portalLinkList li a {
		padding: 10px 10px 10px 20px;
		font-size: 135%;
	}

	.portalLinkList li a:hover {
		padding: 10px 10px 10px 20px;
		font-size: 135%;
	}
}

/***************************************************************************

  協会営業日・時間のお知らせ

***************************************************************************/

.ptlBusinesDay {
	font-size: 118%;
	font-weight: bold;
	margin: 0 0 15px 0;
}

.ptlBusinesDay dt {
	width: 82px;
	float: left;
	clear: both;
	margin: 0 0 15px 0;
}

.ptlBusinesDay dd {
	float: left;
	width: 548px;
	margin: 0 0 0 15px;
	padding: 3px 0 0 0;
}

.businesDayIcon {
	display: inline-block;
	background: #e2e2e2;
	width: 100%;
	text-align: center;
	font-size: 89%;
	padding: 4px 0;
}

@media screen and (min-width: 769px) {
	.ptlBusinesDayBox p {
		font-size: 114%;
	}
}

@media screen and (max-width: 768px) {
	.ptlBusinesDay {
		font-size: 104%;
		margin: 0;
	}

	.ptlBusinesDay dt {
		width: 74px;
		float: none;
		clear: both;
		margin: 0;
	}

	.ptlBusinesDay dd {
		float: none;
		width: 100%;
		margin: 0 0 15px 0;
	}

	.businesDayIcon {
		padding: 2px 0;
	}
}

/***************************************************************************

  新型コロナウイルス関連情報

***************************************************************************/
.ncov {
	width: 80%;
	margin: 0 auto 55px;
	min-width: 950px;
}

.ncov a {
	width: 100%;
	text-align: center;
	border: solid 4px #d02f00;
	background: #fff url(../images/arw_red_icon.svg) no-repeat 99% center;
	background-size: 14px 25px;
	display: block;
	font-size: 23px;
	padding: 8px 0;
	font-weight: bold;
	transition: 0.3s;
	opacity: 1;
}

.ncov a:hover {
	opacity: 0.6;
}

@media screen and (max-width: 1000px) {
	.ncov {
		width: 100%;
		min-width: initial;
		padding: 0 10px;
	}
}

@media screen and (max-width: 768px) {
	.ncov {
		margin: 0 auto 25px;
	}

	.ncov a {
		background: #fff url(../images/arw_red_icon.svg) no-repeat 97% center;
		background-size: 12px auto;
		font-size: 20px;
	}
}

@media screen and (max-width: 360px) {
	.ncov a {
		font-size: 17px;
	}
}
