@charset "UTF-8";
/* HOME CSS */


.pageTop {
	position: fixed;
	display: none;
}

@media screen and (min-width:780px),print {	/* ▼ pageTop [PC] */
	.pageTop {
		bottom: 1.5rem;
		right: 2rem;
		color:  #0058FF;
		font-size: 0.9rem;
		font-weight: bold;
		cursor: pointer;


		background: rgba(255, 255, 255,0.8);
		width: 4rem;
		height: 2rem;
		line-height: 2rem;
		text-align:center;
		border-radius: 0.25rem;			/* CSS3草案 */
		-webkit-border-radius: 0.25rem;	/* Safari,Google Chrome用 */
		-moz-border-radius: 0.25rem;		/* Firefox用 */

	}
	.pageTop::before {
		content: "\f062";
		font-family: "Font Awesome 5 Free";
		font-weight: 900;
		color:  #00A2FF;
		margin-right: 0.5em;
	}

	.pageTop:hover {
		color: #fff;
		background-color:  #0058FF;
	}





}/* ▲ pageTop [PC] */

@media screen and (max-width:779px) {				/* ▼ pageTop [Mob] */
	.pageTop {
		bottom: 1.5rem;
		right: 2vw;

		padding-top: 1.45rem;
		width: 2.5rem;
		height: 2.5rem;
		box-sizing: border-box;
		background:#0058FF;

		border-radius: 50%;			/* CSS3草案 */
		-webkit-border-radius: 50%;	/* Safari,Google Chrome用 */
		-moz-border-radius: 50%;		/* Firefox用 */

		color: #fff;
		font-size: 0.5rem;
		line-height: 1rem;
		font-weight: bold;
		text-align:center;
	}
	.pageTop::before {
		position: absolute;
		top: 0.2rem;
		left: 0;
		right: 0;
		display: block;

		content: "\f062";
		font-family: "Font Awesome 5 Free";
		font-weight: 900;
		font-size: 1.35rem;
		line-height: 1.5rem;
	}

}/* ▲ pageTop [Mob] */



/* --------------------------------------------------------------------- ▼ layout */
#newsLine {
	display: flex;
	align-items: flex-start;
	gap: 0.5rem;
}


@media screen and (min-width:780px),print {	/* ▼ layout [PC] */
	#container {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 0;
	}
	#container > *:not(footer) {
		width: 1000px;
		box-sizing: border-box;
	}
	#sponsor {
		position: absolute;
		top: 3rem;
		right: 0;
	}
	#sponsor img {
	height: 72px;
	}

	#mainContents {
		display: flex;
		align-items: flex-start;
		flex-wrap: nowrap;
		gap: 2rem;
	}
	#mainContents > * {
		flex: 1;
		display: flex;
		flex-direction: column;
		gap: 1rem;
	}
	header {
		position: relative;
	}
	#globalNavi {
		position: absolute;
		top: 1rem;
		right: 0;
	}
	#globalNavi ul {
		display: flex;
		justify-content: flex-end;
		gap: 2rem;
	}
	#globalNavi ul li:not(:last-child) a::after {
		position: absolute;
		top: 50%;
		right: -1.5rem;
		content: "／";
		margin-left: 0.5rem;
		color: #00cfff;
		font-size: 1rem;
	}

	#newsLine {
		margin: 1rem 0;
		display: flex;
		align-items: flex-start;
		gap: 0.5rem;
	}
	#newsLine form {
		flex-grow: 1;
	}

	footer {
		width: 100%;
		}

}/* ▲ layout [PC] */


@media screen and (max-width:779px) {				/* ▼ layout [Mob] */
	header {
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		z-index: 1000;
		background: #fff;
		box-shadow: 2px 2px 5px rgba(0, 0, 0, 1);
	}


	header::before {
		position: fixed;
		top: 5px;
		left: 0;
		right: 0;
		content: "";
		height: 5px;
		display: block;
		z-index: -1;
		background-color: #00CFFF;
	}


	header h1 {
		display: fixed;
		top: 0;
	}
	header h1 img {
		width: 7rem;
		margin-left: 2vw;

	}

	#globalNavi {
		position: fixed;
		top: 0;
		right: 0;
	}

	#sponsor {
		position: fixed;
		left: 0;
		bottom: 2.5vw;
		z-index: 1000;
	}

	#newsLine {
		position: fixed;
		top: 4rem;
		left: 8rem;
		z-index: 1000;
	}






	.contents {
		margin: 0 1vw;
		padding-top: 7rem;
		padding-bottom: 4.5rem;
	}
	.contents,
	#homeInfo,
	#mainContents,
	#subContentsL {
		display: flex;
		flex-direction: column;
		gap: 1rem;
	}
	.contents > *,
	#mainContents > *,
	#subContentsL > * {
		box-sizing: border-box;
	}
}/* ▲ layout [Mob] */



/* --------------------------------------------------------------------- ▼ header */
@media screen and (min-width:780px),print {	/* ▼ header [PC] */
	#container::before {
		content: "";
		position: absolute;
		top: 0.5rem;
		right: 0;
		left: 0;
		height: 0.5rem;
		background: #00cfff;
	}
	#sponsor ul {
		display: flex;
		align-items: flex-start;
		gap: 0.5rem;
	}
	header {
		background: transparent url(home_img/slogan.gif) no-repeat 400px 90%;
	}
}/* ▲ header [PC] */

@media screen and (max-width:779px) {				/* ▼ header [Mob] */

	/* ------------------------------------------- ▽ #globalNavi [Mob] */
	#globalNavi * {
		box-sizing: border-box;
	}

	#globalNavi ul,
	#globalNavi li {
		display: flex;
		align-items: stretch;
		height: 100%;
	}
	#globalNavi li {
		margin-right: 1vw;
	}
	#globalNavi li:first-child {
		display: none;
	}
	#globalNavi a {
		margin: 2px 2px;
		padding: 0 2vw 1.5rem;
		min-width: 18vw;
		max-width: 25vw;
		border: 1px solid #999;

		border-radius: 1vw;			/* CSS3草案 */
		-webkit-border-radius: 1vw;	/* Safari,Google Chrome用 */
		-moz-border-radius: 1vw;		/* Firefox用 */
		box-shadow: 1px 1px 1px rgba(0,0,0,0.5);

		color: #222;
		font-size: 2.5vw;
		line-height: 1rem;
		text-align: center;
		text-decoration: none;
	}

	#globalNavi a {
		position: relative;
	}
	#globalNavi a::after {
		position: absolute;
		right: 0;
		bottom: 0;
		left: 0;

		font-family: "Font Awesome 5 Free";
		font-weight: 900;
		display: block;

		height: 1.8rem;
		line-height: 1.8rem;
		font-size: 1.4rem;
	}

	#globalNavi li:nth-of-type(2) a {	background:#EAF4F4;} /* 会員 */
	#globalNavi li:nth-of-type(3) a {	background:#FFE5EA;} /* スクール */
	#globalNavi li:nth-of-type(4) a {	background:#E5F4FF;} /* マップ */

	#globalNavi li:nth-of-type(2) a::after {content: "\f234";color: #399;} /* 会員 */
	#globalNavi li:nth-of-type(3) a::after {content: "\f118  \f1e3";color: #F03;} /* スクール */
	#globalNavi li:nth-of-type(4) a::after {content: "\f5a0";color: #09F;} /* マップ */














/* ------------------------------------------- ▽ #sponsor [Mob] */
	#sponsor ul {
		display: flex;
		justify-content: flex-start;
	}
	#sponsor img {
		width: 42vw;
		border: 1vw solid #fff;
	}













	
}/* ▲ header [Mob] */



/* --------------------------------------------------------------------- ▼ footer */
footer {
	background-color: #00CFFF;
}
footer .copy {
	color: #0030CE;
	font-weight: bold;
	text-align: center;
}

@media screen and (min-width:780px),print {	/* ▼ footer [PC] */
	footer .copy {
		font-size: 0.6rem;
		line-height: 1rem;
	}
}/* ▲ footer [PC] */

@media screen and (max-width:779px) {				/* ▼ footer [Mob] */
	footer {
		padding-top: 0.25vw;
		height: 3.75vw;
	}
	footer .copy {
		font-size: 2.75vw;
		line-height: 3vw;
	}
}/* ▲ footer [Mob] */



/* --------------------------------------------------------------------- ▼ ロゴ画像対応 */
#topics h2 {
	position: relative;
	font-size: 0;
	margin-bottom: 0.5rem;
}
#topics h2::before {
	content: "";
	display: block;
	height: 2rem;
	background: transparent url(home_img/topics_logo.png) no-repeat 50% 50%;
}


@media screen and (min-width:780px),print {	/* ▼ ロゴ画像対応 [PCのみ] */
	#globalNavi li {
		position: relative;
	}
	#globalNavi li a {
		position: absolute;
		top: 0;
		left: 0;
		font-size: 0;
	}
	#globalNavi li a::before {
		content: "";
		display: block;
		height: 24px;

		background-color: transparent;
		background-repeat: no-repeat;
		background-position: 0 50%;
	}

		#globalNavi li:first-child a::before {background-image: url(img/home.gif);}
		#globalNavi li:nth-child(2) a::before {background-image: url(img/club_ss.gif);}
		#globalNavi li:nth-child(3) a::before {background-image: url(img/school_ss.gif);}
		#globalNavi li:last-child a::before {background-image: url(img/map_ss.gif);}

		#globalNavi li:first-child,
		#globalNavi li:first-child a,	#globalNavi li:first-child a::before {	width: 37px;}
		#globalNavi li:nth-child(2),
		#globalNavi li:nth-child(2) a,#globalNavi li:nth-child(2) a::before {	width: 47px;}
		#globalNavi li:nth-child(3),
		#globalNavi li:nth-child(3) a,#globalNavi li:nth-child(3) a::before {	width: 74px;}
		#globalNavi li:last-child,
		#globalNavi li:last-child a,#globalNavi li:last-child a::before {	width: 80px;}

	#topics h2 {
		margin-left: -1rem;
	}
	#recruit h2 {
		position: relative;
		font-size: 0;
		margin-left: -1rem;
		margin-bottom: 0.5rem;
	}
	#recruit h2::before {
		content: "";
		display: block;
		background-color: transparent;
		background-repeat: no-repeat;	
	}
	#recruit h2::before {
		height: 1.5rem;
		background-image: url(home_img/stf.gif);
		background-position: 0 50%;
		background-size: auto 1.5rem;
	}

}/* ▲ ロゴ画像対応 [PCのみ] */




/* --------------------------------------------------------------------- ▼ category |  */
#category {
	background: transparent url(home_img/category_bg.jpg) no-repeat 50% 0;
}
#category,
#category > *,
#category article a  {
	box-sizing: border-box;
}
#category article a {
  display: block;
}
#category article dt {
  font-weight: bold;
}
#category article li:before {
  content: "・";
}

/* 表示・非表示 */
#category article a span {
  display: none;
}

@media screen and (min-width:780px),print {	/* ▼ category [PC] */
	#category {
		min-height: 430px;

		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	#category > * {
		min-width: 50%;
	}
	#category article {
		display: flex;
		gap: 0.5rem;

		position: relative;
	}
	#category article a,
	#category article dl {
		position: absolute;
	}
		#category article:nth-of-type(2n+1) a {left: 135px;}
		#category article:nth-of-type(2n) a {right: 135px;}

		#category article:nth-of-type(2n+1) dl {left: 230px;}
		#category article:nth-of-type(2n) dl {right: 230px;}

	#category article a {
		width: 80px;
		height: 80px;
		border-radius: 50%;			/* CSS3草案 */
		-webkit-border-radius: 50%;	/* Safari,Google Chrome用 */
		-moz-border-radius: 50%;		/* Firefox用 */
		border-width: 3px;
		border-style: solid;
	}
	#category article a:hover {
		background-color: #fff;
	}
	#category article a,
	#category article a:hover {
		background-repeat: no-repeat;
		background-position: 0 0;
		background-size: cover;
	}
	#category article a::before {
		content: "";
		display: none;
		width: 1rem;
		height: 1rem;

		position: absolute;
		top: calc(50% - 0.5rem);
		transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
		z-index: 0;

		transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		-webkit-transform: rotate(45deg);
	}
		#category article:nth-of-type(2n+1) a::before {right: -30px;}
		#category article:nth-of-type(2n) a::before {left: -30px;}

	#category article dl {
		padding: 5px 10px;
		background: #fff;
		border-width: 3px;
		border-style: solid;
		border-radius: 0.5rem;			/* CSS3草案 */
		-webkit-border-radius: 0.5rem;	/* Safari,Google Chrome用 */
		-moz-border-radius: 0.5rem;		/* Firefox用 */
	}
		#eventBt dl {width: 15rem;}
		#circleBt dl {width: 15rem;}
		#clubBt dl {width: 21rem;}
		#linkBt dl {width: 16rem;}
		#tayoriBt dl {width: 14rem;}


	.contents #category article dd * {
		font-size: 0.8rem;
	}
	.contents #category article ul {
		display: flex;
		align-items: flex-start;
		flex-wrap: wrap;
		gap: 0 1rem;
	}
	.contents #category #circleBt dd p {
		right: 5px;
		top: 5px;
		font-size: 1rem;
	}


	/* 表示・非表示 */
	#category article dl{
		display: none;
	}
	#category article a:hover + dl,
	#category article a:hover::before {
		display: block;
	}


}/* ▲ category [PC] */

@media screen and (max-width:779px) {				/* ▼ category [Mob] */
	#category {
		background-size: 100% auto;
		padding-top: 42vh;

		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		align-content: flex-start;
		gap: 1vw 0;
	}
	#category article {
		height: 20vw;

		display: flex;
		align-items: flex-start;
		flex-wrap: nowrap;
		align-items: stretch;
	}

		#category #clubBt {height: 30vw;}

	#category dl {
		flex-grow: 1;
		width: calc(50vw - 12.5vw);
		border: 2px solid #eee;
	}
	#category dt {
		margin: 1vw;
		font-size: 3vw;
		line-height: 4vw;
	}
	#category dd {
		margin: 0 1vw;
	}
	#category article a {
		width: 10vw;
		background-size: 100%;
		background-repeat: no-repeat;
	}

	#category article a {
		position: relative;
	}
	#category article a::after {
		position: absolute;
		left: 0;
		right:0;
		bottom: 2vw;
		content: "\f0a9";
		font-family: "Font Awesome 5 Free";
		font-weight: 900;
		font-size: 1.5rem;
		text-align:center;
		color: #fff;
	}

		#category #aboutBt ul,
		#category #linkBt ul {
			display: flex;
			flex-wrap: wrap;
			align-content: flex-start;
		}

	#category li {
		font-size: 2.8vw;
	}
	#category dl p {
		font-size: 3vw;
		font-size: 2.8vw;
		line-height: 3.5vw;
	}
	#category #circleBt dl {
		position:	relative;
	}

	#category #circleBt dl p {
		position: absolute;
		height: 1rem;
		bottom: 0;
		right: 1vw;
		margin: 0;
		font-size: 3.5vw;
	}

}/* ▲ category [Mob] */



/* 色設定 */
#schoolBt a,
#schoolBt a::before {
	background-color:#F00;
}
	#schoolBt a {background-image: url(home_img/school_btn1.png);}
	#schoolBt a:hover {background-image: url(home_img/school_btn2.png);}
#schoolBt dt {
	color: #D40000;
}
#schoolBt a,
#schoolBt dl {
	border-color: #F00;
}

#communityBt a,
#communityBt a::before {
	background:#FF8200;
}
	#communityBt a {background-image: url(home_img/community_btn1.png);}
	#communityBt a:hover {background-image: url(home_img/community_btn2.png);}

#communityBt dt {
	color: #FF3200;
}
#communityBt a,
#communityBt dl {
	border-color: #FF8200;
}

#eventBt a,
#eventBt a::before {
	background: #FFCF00;
}
	#eventBt a {background-image: url(home_img/event_btn1.png);}
	#eventBt a:hover {background-image: url(home_img/event_btn2.png);}

#eventBt dt {
	color: #FFAB33;
}
#eventBt a,
#eventBt dl {
	border-color: #FFCF00;
}

#circleBt a,
#circleBt a::before {
	background: #77E700;
}
	#circleBt a {background-image: url(home_img/circle_btn1.png);}
	#circleBt a:hover {background-image: url(home_img/circle_btn2.png);}

#circleBt dt {
	color: #28B100;
}
#circleBt a,
#circleBt dl {
	border-color: #77E700;
}
.contents #category #circleBt dd p {
	position: absolute;
	color: #00CF8B;
	font-weight: bold;
	text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2);
}
#clubBt a,
#clubBt a::before {
	background:#078AA3;
}
	#clubBt a {background-image: url(home_img/club_btn1.png);}
	#clubBt a:hover {background-image: url(home_img/club_btn2.png);}

#clubBt dt {
	color: #078AA3;
}
#clubBt a::after {
	color: #fff;
}
#clubBt a,
#clubBt dl {
	border-color: #078AA3;
}

#aboutBt a,
#aboutBt a::before {
	background: #00A2FF;
}
	#aboutBt a {background-image: url(home_img/about_btn1.png);}
	#aboutBt a:hover {background-image: url(home_img/about_btn2.png);}

#aboutBt dt {
	color: #00A2FF;
}

#aboutBt a,
#aboutBt dl {
	border-color: #00A2FF;
}

#faqBt a,
#faqBt a::before {
	background: #0058FF;
}
	#faqBt a {background-image: url(home_img/faq_btn1.png);}
	#faqBt a:hover {background-image: url(home_img/faq_btn2.png);}

#faqBt dt {
	color: #0030A7;
}
#faqBt a,
#faqBt dl {
	border-color: #0058FF;
}

#linkBt a,
#linkBt a::before {
	background: #0030ce;
}
	#linkBt a {background-image: url(home_img/link_btn1.png);}
	#linkBt a:hover {background-image: url(home_img/link_btn2.png);}

#linkBt dt {
	color: #007EFF;
}
#linkBt a,
#linkBt dl {
	border-color: #0030ce;
}

#tayoriBt a,
#tayoriBt a::before {
	background: #FF009F;
}
	#tayoriBt a {background-image: url(home_img/tayori_btn1.png);}
	#tayoriBt a:hover {background-image: url(home_img/tayori_btn2.png);}

#tayoriBt dt {
	color: #97009F;
}
#tayoriBt a,
#tayoriBt dl {
	border-color: #FF009F;
}


/* --------------------------------------------------------------------- ▼ newsLine | 流れる新着情報 */
#newsLine h2 {
	color: #ff6000;
	text-align: center;
}
#newsLine h2::before {
	content: "What's NEW!";
	display: block;
	color: #fc3;
}
#newsLine input {
	width: 100%;
	box-sizing: border-box;
	border: 1px solid #ff6000;
	border-right: none;
	color: #090;
}


@media screen and (min-width:780px),print {	/* ▼ newsLine [PC] */
	#newsLine h2 {
		padding-right: 2rem;
	}
	#newsLine h2::before {
		font-size: 0.85rem;
		line-height: 0.5rem;
	}
	#newsLine input {
		padding: 5px 1rem;
	}

}/* ▲ newsLine [PC] */

@media screen and (max-width:779px) {				/* ▼ newsLine [Mob] */
	#newsLine h2 {
		font-size: 1rem;
	}
	#newsLine h2::before {
		white-space: nowrap;
		font-size: 0.55rem;
		line-height: 0.5rem;
	}
	#newsLine input {
		padding: 0.25rem 2vw;
		width: 48vw;
	}






}/* ▲ newsLine [Mob] */



/* --------------------------------------------------------------------- ▼ homeInfo */


/* ------------------------------------------- ▽ programDL */
#programDL {
	position: relative;
	border: 1px solid #666;
	background: transparent url(home_img/bg_reportevent.png) no-repeat 0 0;
	background-size: 100% 58px;
}
#programDL::before {
	position: absolute;
	top: 6px;
	left: 6px;
	content: "";
	display: block;
	width: 38px;
	height: 47px;
	background: transparent url(home_img/bg_pdf.png) no-repeat 0 0;
}
#programDL h2 {
	color: #fff;
	line-height: 35px;
	padding-left: 55px;
}

#programDL p {
	text-align: right;
}
#programDL a {
	margin-right: 0.5rem;
	padding: 0 0.5rem;
	background: #fff;
	font-size: 0.9rem;
	line-height: 20px;
}

/* ------------------------------------------- ▽ lnkFR */
#lnkFR {
	text-align:right;
}
#lnkFR a {
	width: 355px;
	height: 80px;
	display: inline-block;
	background: transparent url(home_img/btn_fr_off.jpg) no-repeat 0 0;
}
#lnkFR a:hover {
	background-image: url(home_img/btn_fr_on.jpg);
}
#lnkFR a span {
	display: none;
}


@media screen and (min-width:780px),print {	/* ▼ homeInfo [PC] */
	#homeInfo {
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
	}
	#programDL h2 {
		padding-top: 2px;
		font-size: 1rem;
	}

}/* ▲ homeInfo [PC] */

@media screen and (max-width:779px) {				/* ▼ homeInfo [Mob] */
	#programDL h2 {
		padding-top: 8px;
		box-sizing: border-box;
		font-size: 4.3vw;
		height: 38px;

		position: relative;
	}
	#programDL h2 span {
		position: absolute;
		top: 2px;
		font-size: 2vw;
		display: block;
	}

}/* ▲ homeInfo [Mob] */



/* --------------------------------------------------------------------- ▼ topics,recruit */

/* ------------------------------------------- ▽ ﾄﾋﾟｯｸｽ */
.topiNote {
	border-radius: 0.5rem;			/* CSS3草案 */
	-webkit-border-radius: 0.5rem;	/* Safari,Google Chrome用 */
	-moz-border-radius: 0.5rem;		/* Firefox用 */
	border: 2px solid #1789be;
}
.topiNote h3 {
	padding-bottom: 0.5rem;
	padding-left: 0.25rem;
	color: #1789be;
	font-size: 1.1rem;

	background: transparent url(img/topics_bg01.gif) no-repeat 0 100%;
	background-size: 100% 6px;
}
.topiNote ol {
	margin: 0.5rem;
	padding: 1rem 0.5rem;
	background: #eff9ff;
	border: 1px solid #aedfff;

	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}
.topiNote li {
	margin-left: 2rem;
	list-style-type: decimal;
	color: #1d6cab
}
.topiNote ol + p {
	text-align: right;
}
.topiNote div {
	border-bottom: 1px dotted #1789be;
}
.topiNote > p {
	margin-top: 0.5rem;
	padding-right: 0.25rem;
	padding-left: 1.5rem;
	background: transparent url(img/point01_bl.gif) no-repeat 0.5rem 0.25rem;
}


/* ------------------------------------------- ▽ ｽﾀｯﾌ募集 */
#recruit {
	border: 1px solid #b2b2b2;
}
#recruit h2 {
	color: #00a33d;
}
#recruit .note {
	background: transparent url(img/note_bg.gif) repeat 0 0;
	background-size: 5px 1.45rem;
}

#recruit address h3 {
	color: #063;
}



@media screen and (min-width:780px),print {	/* ▼ topics,recruit [PC] */
	.topiNote,#recruit {
		padding: 1rem;
	}
	#recruit .note {
		padding: 0 0.25rem;
	}
	#recruit address {
		margin-top: 1rem;
		width: 100%;
		display: table;
	}
	#recruit address {
		border-bottom: 1px solid #000;
	}
	#recruit address > * {
		padding: 0.5rem;
		display: table-cell;
		vertical-align: middle;
	}

	#recruit address h3 {
		padding: 0.5rem;
		width: 1.5rem;
		border-right: 7px solid #e4facc;
		font-size: 1.2rem;
		text-align: center;
	}
	#recruit address dl {
		padding-left: 1rem;
	}
	#recruit address dd {
		font-size: 0.9rem;
	}
}/* ▲ topics,recruit [PC] */

@media screen and (max-width:779px) {				/* ▼ topics,recruit [Mob] */
	.topiNote,#recruit {
		padding: 2vw;
	}
	#recruit .note {
		padding: 0 1vw;
	}
	#recruit address  {
		margin: 0.5rem 0;
		padding-bottom: 0.5rem;
		background: #e4facc;
	}
	#recruit address h3 {
		padding: 0 2vw;
		background: #00a33d;
		color: #fff;
		font-size: 1rem;
		font-weight: normal;
	}
	#recruit address h3::before {
		content: "▼ ";
	}
	#recruit address dl {
		padding: 2vw;
	}
	#recruit address dt {
		font-weight: bold;
		color: #063;
		font-size: 1.2rem;
	}
	#recruit address dd {
		margin-left: 0.5rem;
	}
	#recruit address dd span {
		text-align:right;
	}
}/* ▲ topics,recruit [Mob] */




/* --------------------------------------------------------------------- ▼ report | 話題 */
#report {
	background: transparent url(home_img/report_back.png) no-repeat 100% 0;
}
.newsList {
	text-align:right;
}
.newsList a::after {
	content: "\f0da";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	margin-left: 0.5rem;
	color: #fc3;
	font-size: 1rem;
}
.newsList a {
	padding: 0 0.5rem 2px;
	border: 1px solid #999;
	display: inline-block;
	color: #3c3;
	font-size: 0.8rem;
	line-height: 1rem;
	font-weight: bold;
	text-decoration: none;
}
.newsList a:hover {
	background: #35db35;
	color: #fff;
}
#report h3 b,
#report li b {
	margin-left: 0.5rem;
	color: #f90;
	font-size: 0.9rem;
}
#report h3 {
	font-size: 1rem;
	font-weight: normal;
}
#report p {
	margin: 0.5rem;
}
#report p img {
	max-width: 160px;
	margin: 0 0.5rem 0.5rem 0;
	float: left;
}

#report ul {
	padding: 0.5rem;
	border-top: 2px dotted #93ec35;
}
#report li {
	font-size: 0.9rem;
}

@media screen and (min-width:780px),print {	/* ▼ report [PC] */
	#report ul {
		border-bottom: 2px dotted #93ec35;
	}

}/* ▲ report [PC] */

@media screen and (max-width:779px) {				/* ▼ report [Mob] */

}/* ▲ report [Mob] */



/* --------------------------------------------------------------------- ▼ contactAdd | 問合先・検索 */
#contactAdd {
	border-top: 2px solid #00cfff;
	background: transparent url(home_img/contact_bg01.jpg) no-repeat 0 0.5rem;
}
#contactAdd form {
	text-align:right;
}
#contactAdd input[type=text] {
	border: 1px solid #0030ce;
	background: none;
}
#contactAdd input[type=image] {
	height: 1rem;
}
	#contactAdd form {
		text-align:right;
	}



/* ------------------------------------------- ▽ address */
#contactAdd address dt {
	font-weight: bold;
	color: #666;
}
	#contactAdd address dt::before { content: "［ ";}
	#contactAdd address dt::after { content: " ］";}

#contactAdd address dd {
	margin-left: 1rem;
}
address dd span {
	display: block;
}
address dd.tel::before {
	content: "TEL / FAX：";
}
address dd.eMail::before {
	content: "E-mail：";
}

#contactAdd > dl {
	margin: 0.5rem 0 0 0;
	padding: 0.25rem 0.25rem 0.25rem 1rem;
	border-top:1px dotted #999;
}
#contactAdd > dl dt {
	color: #090;
	margin-bottom: 0.25rem;
	margin-bottom: 0.25rem;
}
#contactAdd > dl ul li {
	margin-left: 1.5rem;
}
#contactAdd > dl ul li b {
	font-size: 0.9rem;
	color: #666;
}
#contactAdd > dl ul li b::before {
	content: "【";
}
#contactAdd > dl ul li b::after {
	content: "】";
	margin-right: 0.5rem;
}





@media screen and (min-width:780px),print {	/* ▼ contactAdd [PC] */
	#contactAdd form {
		height: 5rem;
		margin-left: 250px;
	}
	#contactAdd input[type=text] {
		margin: 5px 10px 5px 0;
		padding: 3px 5px;
		width: calc(100% - 10px);
	}

}/* ▲ contactAdd [PC] */

@media screen and (max-width:779px) {				/* ▼ contactAdd [Mob] */
	#contactAdd form {
		height: 5rem;
		margin-right: 2vw;
	}
	#contactAdd input[type=text] {
		margin-bottom: 0.5rem;
		padding: 1vw 2vw;
		width: 30vw;
	}

}/* ▲ contactAdd [Mob] */



