@charset "UTF-8";

* {
	padding: 0px;
	margin: 0px;
	-webkit-text-size-adjust: 100%;
	color: #111;
	line-height: 1.6em;
}

body {
    animation: fadeIn 2s ease 0s 1 normal;
    -webkit-animation: fadeIn 2s ease 0s 1 normal;
}
.set {
	margin: 0px;
	padding: 0px;
	font-family: 'Noto Sans JP', sans-serif;
}
img {
	border: 0;
	width: 100%;
	display: block;
}
.alpha:hover {
	filter: alpha(opacity=80);
	opacity: 0.8;
}


/*clearfix*/
.cf:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

.cf {
  min-height: 1px;
}

* html .cf {
  height: 1px;
  /*¥*//*/
  height: auto;
  overflow: hidden;
  /**/
}

ul {
	list-style-type: none;
}



/* COMMON */
@media screen and (max-width: 768px) {
	.u_pc {
	  display: none;
	}
}

@media screen and (min-width: 769px) {
	.u_sp {
	  display: none;
	}
}


/* CONTAINER */
.container-s, .container, .container-l {
	width: 90%;
	margin: 0 auto;
	padding: 30px 0;
	box-sizing: border-box;
}

@media screen and (min-width: 769px) {
  .container-s {
    width: 760px;
  }
}

@media screen and (min-width: 769px) {
  .container {
	width: 1080px;
	padding: 60px 50px;
	box-sizing: border-box;
  }
}

@media screen and (min-width: 769px) {
	.container-l {
	  width: 1180px;
	  padding: 0 50px;
	}
}



/* HEADER */
.header {
	height: 50px;
	background-color: #111;
	position: fixed;
	top: 0;
	width: 100%;
	padding: 0 10px 0 15px;
	z-index: 30;
	box-sizing: border-box;
}
.header_wrap {
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.header_logo img {
	width: 180px;
}
.header_logo a {
	text-decoration: none;
}

@media screen and (min-width: 769px) {
	.header {
		min-width: 1300px;
		height: 80px;
		padding: 0 40px;
	 }
	.header_logo img {
		width: 280px;
	}
	.header_logo a h1 {
		font-size: 12px;
		font-weight: 400;
		line-height: 13px;
		color: #FFF;
		margin: 0 0 10px 7px;
	}
	.global_nav   {
		display: flex;
		justify-content: space-between;
		margin: 10px 0 0;
	}
	.global_nav li {
		margin: 0 0 0 25px;
	}
	.global_nav li a {
		font-size: 16px;
		color: #FFF;
		text-decoration: none;
		padding: 0 5px 7px;
	}
	.global_nav li.award a {
		color: #FFF;
		background-color: #03a65e;
		padding: 7px 15px;
	}
	.global_nav li.award a:hover {
		color: #03a65e;
		background-color: #FFF;
		transition: .5s;
	}
}	



/* MODAL */
.header-hm-icon {
	width: 35px;
}
#modal ul {
	width: 90%;
	max-width: 400px;
	margin: 0 auto 30px;
}
#modal ul li {
	font-size: 16px;
	font-weight: 400;
	margin: 0 0 10px;
	text-align: center;
}
#modal ul li a {
	color: #03a65e;
	background-color: #FFF;
	padding: 10px 15px;
	border-radius: 40px;
	text-decoration: none;
	display: block;
}
#modal ul li.award a {
	color: #FFF;
	background-color: #03a65e;
}

@media screen and (min-width: 769px) {
	.header-hm-icon, .remodal {
		display: none;
	}
}



/* MV */
.mv {
	background-image: url("../image/mv.jpg");
	background-position: center center;
	background-size: cover;
	margin: 50px 0 0;
	height: 380px;
	position: relative;
}
.mv .inner {
	/*position: absolute;
	top: 60px;
	left: 15px;*/
	padding: 100px 0 0;
}
.mv .inner h1 {
	font-size: 17px;
	font-weight: 700;
	font-style: italic;
	text-align: center;
}
.mv .inner h1 span {
	background-color: rgba(255,255,255,0.80);
	margin: 10px 0 0;
	padding: 5px;
	display: inline-block;
}
.mv .inner p {
	font-size: 18px;
	font-weight: 700;
}
.mv .inner p span {
	background-color: rgba(255,255,255,0.80);
	margin: 10px 0 0;
	padding: 5px 10px;
	display: inline-block;
}

@media screen and (min-width: 769px) {
	.mv {
		margin: 80px 0 0;
		height: 620px;
	}
	.mv .inner {
		/*top: 100px;
		left: 40px;*/
		width: 1080px;
		margin: 0 auto;
	}
	.mv .inner h1 {
		font-size: 42px;
	}
	.mv .inner h1 span {
		padding: 5px 10px;
	}
	.mv .inner p {
		font-size: 32px;
	}
	.mv .inner p span {
		margin: 10px 0 0;
		padding: 7px 15px;
	}
}




/* TTL */
.main_ttl_wrap {
	margin: 0 0 20px;
}
.main_ttl_wrap .main_ttl {
	font-size: 32px;
	font-weight: 700;
	font-family: "Josefin Sans", sans-serif;
	line-height: 1.1em;
}
.main_ttl_wrap .txt {
	font-size: 16px;
	font-weight: 700;
	color: #03a65e;
}

@media screen and (min-width: 769px) {
.main_ttl_wrap .main_ttl {
	font-size: 60px;
}
.main_ttl_wrap .txt {
	font-size: 18px;
}
}




/* BG */
.bg_beige {
	background-image: url("../image/bg_beige.png");
	background-position: center center;
}
.bg_gray {
	background-image: url("../image/bg_gray.png");
	background-position: top left;
}
.icon_zebra {
	background-image: url("../image/icon_zebra.png");
	background-repeat: no-repeat;
	background-position: right 20px bottom;
	background-size: 108px 60px;
}


@media screen and (min-width: 769px) {
	.icon_zebra {
		background-size: 162px 90px;
	}
}




/* LEAD */
.lead {
	padding: 20px 0 40px;
}
.lead .caption {
	font-size: 20px;
	font-weight: 700;
	font-style: italic;
	color: #03a65e;
	margin: 0 0 10px;
}
.lead .caption span {
	font-size: 14px;
	display: block;
}
.lead .txt {
	font-size: 15px;
	margin: 0 0 15px;
}

@media screen and (min-width: 769px) {
	.lead {
		padding: 20px 0 50px;
	}
	.lead .caption {
		font-size: 32px;
	}
	.lead .caption span {
		font-size: 20px;
		margin: 0 0 0 10px;
		display: inline-block;
	}
	.lead .txt {
		font-size: 18px;
		line-height: 1.6em;
		margin: 0 0 25px;
	}
}




/* POINT */
.point {
}
.point .desc {
	font-size: 15px;
	margin: 0 0 20px;
}
.point ul li {
	background-color: #FFF;
	margin: 0 0 15px;
	padding: 12px;
}
.point ul li img {
	margin: 0 0 5px;
}
.point ul li .inner .caption {
	font-size: 18px;
	font-weight: 700;
	color: #03a65e;
	margin: 0 0 5px;
}
.point ul li .inner .txt {
	font-size: 15px;
}

@media screen and (min-width: 769px) {
.point .desc {
	font-size: 16px;
	margin: 0 0 30px;
}
.point ul li {
	margin: 0 0 20px;
	padding: 15px 20px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-direction: row-reverse;
}
.point ul li img {
	width: 28%;
	margin: 0 0 0 2%;
}
.point ul li .inner .caption {
	font-size: 24px;
	margin: 0 0 10px;
}
.point ul li .inner .txt {
	font-size: 16px;
}
}




/* SCHEDULE */
.schedule {
}
.schedule ul li {
	margin: 0 0 15px;
}
.schedule ul li .period {
	font-size: 15px;
	padding: 5px 7px;
	border: solid 1px #AAA;
}
.schedule ul li .inner {
	padding: 5px 7px;
}
.schedule ul li .inner .caption {
	font-size: 15px;
	font-weight: 700;
}
.schedule ul li .inner .txt {
	font-size: 15px;
}

@media screen and (min-width: 769px) {
.schedule ul li {
	display: flex;
	justify-content: space-between;
	margin: 0 0 20px;
}
.schedule ul li .period {
	font-size: 16px;
	padding: 10px;
	width: 23%;
	margin: 0 2% 0 0;
	display: flex;
	align-items: center;
	justify-content: center;
}
.schedule ul li .inner {
	align-items: center;
	padding: 7px 0;
	width: 75%;
}
.schedule ul li .inner .caption {
	font-size: 18px;
}
.schedule ul li .inner .txt {
	font-size: 16px;
}
}




/* PROGRAM */
.program {
	background-color: #FFF;
	margin: 0 0 40px;
	padding: 12px;
}
.program .program_ttl {
	font-size: 18px;
	font-weight: 700;
	color: #FFF;
	background-color: #111;
	text-align: center;
	margin: 0 0 10px;
	padding: 5px 10px;
}
.program .desc {
	font-size: 15px;
	margin: 0 5px 20px;
}

@media screen and (min-width: 769px) {
.program {
	margin: 0 0 80px;
	padding: 20px;
}
.program .program_ttl {
	font-size: 20px;
	margin: 0 0 20px;
	padding: 5px 10px;
}
.program .desc {
	font-size: 16px;
	margin: 0 0 30px;
	text-align: center;
}
}




/* LEARNING */
.learning {
	/*border-top: solid 1px #DDD;*/
	padding: 15px 5px;
}
.learning .date {
	font-size: 18px;
	font-weight: 700;
	border-top: solid 2px #DDD;
	border-bottom: solid 2px #DDD;
	margin: 0 0 10px;
	padding: 5px 0;
}
.learning .caption {
	font-size: 18px;
	font-weight: 700;
	color: #03a65e;
	margin: 0 0 10px;
}
.learning .txt {
	font-size: 15px;
	margin: 0 0 20px;
}
.learning ul {
}
.learning ul li {
	margin: 0 0 15px;
}
.learning ul li img {
	width: 120px;
	float: right;
	margin: 0 0 10px 10px;
}
.learning ul li .inner .name {
	font-size: 18px;
	font-weight: 700;
	margin: 0 0 5px;
}
.learning ul li .inner .name span {
	font-size: 14px;
	font-weight: 400;
	display: block;
}
.learning ul li .inner .specialty {
	margin: 0 0 8px;
}
.learning ul li .inner .specialty span {
	font-size: 13px;
	color: #FFF;
	background-color: #999;
	margin: 0 5px 7px 0;
	padding: 2px 8px;
	display: ruby;
	border-radius: 20px;
}
.learning ul li .inner .txt {
	font-size: 15px;
}
.learning .entry {
	margin: 20px 0 5px;
}
.learning .entry a {
	display: block;
	margin: 0 auto;
	padding: 10px 20px;
	width: 240px;
	color: #FFF;
	font-size: 16px;
	font-weight: 700;
	background-color: #da08a2;
	transition: 0.3s;
	text-align: center;
	text-decoration: none;
}
.learning .entry a i {
	color: #FFF;
	margin: 0 0 0 5px;
}
.learning .entry a:hover {
	background-color: #03a65e;
}
.learning .note {
	font-size: 14px;
	text-align: center;
}

@media screen and (min-width: 769px) {
.learning {
	padding: 20px 10px;
}
.learning .date {
	font-size: 22px;
	margin: 0 0 15px;
	padding: 10px 5px;
}
.learning .caption {
	font-size: 24px;
	margin: 0 0 5px;
}
.learning .txt {
	font-size: 16px;
	margin: 0 0 20px;
}
.learning ul li {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-direction: row-reverse;
	margin: 0 0 20px;
}
.learning ul li img {
	width: 18%;
	margin: 0 0 0 2%;
}
.learning ul li .inner .name {
	font-size: 20px;
	margin: 0 0 5px;
}
.learning ul li .inner .name span {
	font-size: 15px;
	margin: 0 0 0 20px;
	display: inline-block;
}
.learning ul li .inner .specialty {
	margin: 0 0 10px;
}
.learning ul li .inner .specialty span {
	font-size: 15px;
	margin: 0 10px 0 0;
	padding: 3px 10px;
	display: inline-block;
}
.learning ul li .inner .txt {
	font-size: 16px;
}
.learning .entry {
	margin: 30px 0 10px;
}
.learning .entry a {
	padding: 15px 20px;
	width: 300px;
}
.learning .note {
	font-size: 15px;
}
}




/* ENTRY */

@media screen and (min-width: 769px) {
}



/* SEMINAR */
.aaa {
}

@media screen and (min-width: 769px) {
}




/* AWARD */
.award {
}
.award .award_ttl {
	overflow: hidden;
	text-align: center;
	margin: 0 0 15px;
}
.award .award_ttl span {
	position: relative;
	display: inline-block;
	margin: 0 2.5em;
	padding: 0 0.5em;
	text-align: center;
	font-size: 18px;
	font-weight: 700;
}
.award .award_ttl span::before,
.award .award_ttl span::after {
	position: absolute;
	top: 50%;
	content: '';
	width: 420%;
	height: 1px;
	background-color: #222;
}
.award .award_ttl span::before {
	right: 100%;
}
.award .award_ttl span::after {
	left: 100%;
}
.award dl {
	font-size: 15px;
}
.award dl dt {
	background-color: #EEE;
	padding: 2px 5px;
}
.award dl dd {
	margin: 0 0 15px;
	padding: 5px;
}
.award dl dd ul {
	list-style-type: circle;
	margin: 0 0 0 1.2em;
}
.award .txt {
	font-size: 15px;
	font-weight: 700;
	font-style: italic;
	color: #03a65e;
	text-align: center;
	margin: 10px 0;
}

@media screen and (min-width: 769px) {
.award .award_ttl span {
	font-size: 20px;
}
.award dl {
	font-size: 16px;
	display: flex;
	flex-wrap: wrap;
}
.award dl dt {
	width: 25%;
	margin: 0 0 15px;
	padding: 5px 10px;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
}
.award dl dd {
	width: 75%;
	margin: 0 0 15px;
	padding: 5px 10px 5px 20px;
	box-sizing: border-box;
	/*display: flex;*/
	align-items: center;
}
.award dl dd ul {
	list-style-type: circle;
	margin: 0 0 0 1.2em;
}
.award .txt {
	font-size: 18px;
	margin: 20px 0;
}
}




/* MESSAGE */
.message {
	margin: 0 0 60px;
}
.message .producer {
	margin: 0 0 10px;
}
.message .producer img {
	width: 180px;
	margin: 0 auto 5px;
}
.message .producer .name {
	font-size: 15px;
	font-weight: 700;
	line-height: 1.3em;
	text-align: center;
}
.message .producer .name span {
	font-size: 15px;
}
.message .inner .txt {
	font-size: 15px;
	margin: 0 0 15px;
}

@media screen and (min-width: 769px) {
.message {
	width: 100%;
	display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
	margin: 0 0 50px;
}
.message .producer {
	width: 25%;
	margin: 0 0 10px;
}
.message .producer img {
	width: 100%;
	margin: 0 0 5px;
}
.message .producer .name span {
	font-size: 16px;
}
.message .inner {
	width: 72%;
	margin: 0 3% 0 0;
}
.message .inner .txt {
	font-size: 16px;
	line-height: 1.8em;
	margin: 0 0 20px;
}
}




/*  */
.aaa {
}

@media screen and (min-width: 769px) {
}




/*  */
.aaa {
}

@media screen and (min-width: 769px) {
}




/* FOOTER */
footer {
	background-color: #111;
}
footer .footer_container {
	width: 90%;
	margin: 0 auto;
	padding: 20px 0 30px;
	box-sizing: border-box;
}
footer .footer ul {
	padding: 10px 0;
}
footer .footer ul li {
	font-size: 14px;
	color: #FFF;
	margin: 0 0 5px;
}
footer .footer .operation {
	background-color: #FFF;
	padding: 10px 10px 15px 5px;
}
footer .footer .operation .caption {
	font-size: 14px;
	font-weight: 700;
}
footer .footer .operation .txt {
	font-size: 14px;
	padding: 0 0 0 1em;
}
footer .copy {
	font-size: 12px;
	color: #FFF;
	text-align: center;
	border-top: solid 1px #FFF;
	margin: 0 10px;
	padding: 10px 0;
}

@media screen and (min-width: 769px) {
	footer .footer_container {
		width: 1080px;
		padding: 30px 50px;
		box-sizing: border-box;
	}
	footer .footer {
		display: flex;
		justify-content: space-between;
	}
	footer .footer ul li {
		font-size: 15px;
		margin: 0 0 10px;
	}
	footer .footer .operation {
		padding: 12px 20px 20px 10px;
	}
	footer .footer .operation .caption {
		font-size: 16px;
	}
	footer .footer .operation .txt {
		font-size: 15px;
	}
	footer .footer .operation .txt a {
		color: #111;
	}
	footer .footer .operation .txt a:hover {
		transition: .5s;
		text-decoration: none;
	}
	footer .copy { 
		font-size: 13px;
		margin: 0 20px;
	}
}




/* PAGETOP */
#pagetop {
	width: 40px;
	height: 40px;
	position: fixed;
	bottom: 5px;
	right: 5px;
	z-index: 6;
}
@media screen and (min-width: 769px) {
	#pagetop {
		width: 50px;
		height: 50px;
		position: fixed;
		bottom: 10px;
		right: 10px;
	}
}

/* ANCHOR */
#anc_top, #anc01, #anc02, #anc03, #anc04, #anc05 {
	padding-top: 50px;
	margin-top: -50px;
}
@media screen and (min-width: 769px) {
	#anc_top, #anc01, #anc02, #anc03, #anc04, #anc05 {
		padding-top: 80px;
		margin-top: -80px;
	}
}
