@charset "utf-8";
/*
.kosugi-maru-regular {
  font-family: "Kosugi Maru", sans-serif;
  font-weight: 400;
  font-style: normal;
}
.zen-maru-gothic-regular {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 400;
  font-style: normal;
}
.zen-maru-gothic-bold {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
}
.zen-maru-gothic-black {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 900;
  font-style: normal;
}
*/

/* ---------------------------------
  コンテンツページ
------------------------------------*/
/* common.cssへ
.con_wrapper {
    margin: 0 auto;
    width: 1100px;
    height: auto;
	padding: 4em;
	box-sizing: border-box;
	background-color: #ffffff;
}
*/
.con_wrapper h1 {
	display: flex;
	justify-content: center;
	align-items: center;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 700;
}
.con_wrapper h1 img {
	margin-right: 0.25em;
}
.con_wrapper p{
	margin-top: 0.5em;
}
.con_wrapper .main-image {
	margin: 3em 0;
}
.con_wrapper .main-image img {
	width: 100%;
}

.con_wrapper h2 {
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 700;
	font-size: 1.5em;
	border-bottom: 5px solid #e5aa03;
	margin: 0 auto 20px;
}
.image-right img,.image-left img {
	width: 40%;
	margin-bottom: 4em;
}
.image-right img {
	margin-left: 2em;
}
.image-left img {
	margin-right: 2em;
}
.image-right > div, .image-left > div {
	width: 100%;
}
/*１日の活動内容*/
.activity-wrap {
	display: flex;
	justify-content: space-between;
}
.activity-wrap div {
	width: 60%;
	padding-right: 2em;
	box-sizing: border-box;
}
.activity-wrap dl {
	display: flex;
	border-bottom: 2px solid #cccccc;
	padding: 1.5em 0;
}
.activity-wrap dl dt {
	width: 150px;
}
.activity-wrap .img-box {
	width: 40%;
	padding-right: 0;
	box-sizing: border-box;
}
.activity-wrap .img-box img {
	width: 100%;
	margin-bottom: 2em;
}

table.fee {
	border-collapse: collapse;
	width: 100%;
}
table.fee th {
	background-color: #eeeeee;
}
table.fee th, table.fee td {
    border: solid 1px #cccccc;
	padding: 2em;
	box-sizing: border-box;
	font-weight: normal;
}

@media screen and (max-width: 640px){
	.con_wrapper h1 {
		font-size: 2.2em;
	}
	.image-right, .image-left {
		margin-bottom: 2em;
	}
	.image-right img,.image-left img {
		width: 100%;
		margin-bottom: 4em;
	}
	.image-right img {
		margin: 0.5em 0;
	}
	.image-left img {
		margin: 0.5em 0;
	}
	.image-left {
		flex-direction: column-reverse;
	}
	.activity-wrap {
		flex-direction: column;
	}	
	.activity-wrap div {
		width: 100%;
		padding-right: 0;
	}
	.activity-wrap dl {
		flex-direction: column;
		padding: 1em 0;
	}
	.activity-wrap dl dt {
		width: 100%;
		font-weight: bold;
	}
	.activity-wrap .img-box {
		width: 100%;
	}
	.activity-wrap .img-box img {
		margin-bottom: 1em;
	}
		
	table.fee th {
		text-align:left;
	}
	table.fee th, table.fee td {
		display: block;
		width: 100%;
		border-bottom: none;
		padding: 0.5em 1em;
	}
	table.fee tr td:nth-of-type(2n-1){
		border-bottom: none;
	}
	table.fee tr td:nth-of-type(2n){
		border-top: none;
	}
	table.fee tr td.last {
		border-bottom: solid 1px #cccccc;
	}
	
}


/* 学研コース */
.method-wrap dl{
	margin-bottom: 1em;
}
.method-wrap dl dt {
	color: #34753d;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 700;
	font-size: 1.3em;
}
section#gakken-contents .con_wrapper h2 {
	border-bottom: 5px solid #6cd37d;
}
section#gakken-contents h3 {
	padding: 0.25em 0.5em;
	margin: 1em 0;
}
section#gakken-contents h3.es {
	background-color: #f9dfaf;
}
section#gakken-contents h3.js {
	background-color: #dae6f7;
}
section#gakken-contents h3.robot {
	background-color: #d6f7cb;
}
table.gakken {
	border-collapse: collapse;
	width: 100%;
}
table.gakken th {
	background-color: #eeeeee;
	padding: 1em;
}
table.gakken th, table.gakken td {
    border: solid 1px #cccccc;
	box-sizing: border-box;
	font-weight: normal;
}
table.gakken td {
	padding: 2em;
}
@media screen and (max-width: 640px){
table.gakken th, table.gakken td {
	padding: 0.5em 0.25em;
}
}


/* 長期休暇のご利用 */
section#vacation-contents .con_wrapper h2 {
	border-bottom: 5px solid #fca2a9;
}
table.vacation-fee {
	border-collapse: collapse;
	width: 100%;
}
table.vacation-fee th {
	background-color: #eeeeee;
}
table.vacation-fee th, table.vacation-fee td {
    border: solid 1px #cccccc;
	padding: 2em;
	box-sizing: border-box;
	font-weight: normal;
}
@media screen and (max-width: 640px){
table.vacation-fee th, table.vacation-fee td {
	padding: 0.5em 0.25em;
}
}


/* 年間行事 */
.event-wrap {
	display: flex;
	justify-content: space-between;
}
.event-wrap div {
	width: 60%;
	padding-right: 2em;
	box-sizing: border-box;
}
.event-wrap dl {
	margin-bottom: 2em;
}
.event-wrap dl dt {
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 700;
	font-size: 1.3em;
	border-bottom: 3px solid #fca2a9;
}
.event-wrap ul {
	display: flex;
	flex-wrap: wrap;
	margin: 0.5em 0;
}
.event-wrap ul li {
	margin-right: 2em;
}
.event-wrap ul li:before {
  content: '';
  display: inline-block;
  position: relative;
  left: 0;
  top: 0;
  width: 0.8em;
  height: 0.8em;
  background: #fc9b32;
  border-radius: 100%;
  margin-right: 0.25em;
}
.event-wrap .img-box {
	width: 40%;
	padding-right: 0;
	box-sizing: border-box;
}
.event-wrap .img-box img {
	width: 100%;
	margin-bottom: 2em;
}

@media screen and (max-width: 640px){
	.event-wrap {
		flex-direction: column;
	}	
	.event-wrap div {
		width: 100%;
		padding-right: 0;
	}
	.activity-wrap dl {
		flex-direction: column;
		padding: 1em 0;
	}
	.event-wrap dl dt {
		width: 100%;
		font-weight: bold;
	}
	.event-wrap .img-box {
		width: 100%;
	}
	.event-wrap .img-box img {
		margin-bottom: 1em;
	}
}


/* 申込み */
section#entry-contents h1 {
	margin-bottom: 1em;
}
.entry-wrapper {
	background-color: #ffffcc;
	border: 4px solid #ff9900;
	padding: 1em 4em;
	border-radius: 30px;
	width: fit-content;
	margin: 2em auto;
}
.entry-wrapper > div {
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 700;
	font-size: 1.5em;
	color: #ff9900;
	line-height: 1.2;
}
.entry-wrapper > div a {
	color: #ff9900;
}
.entry-wrapper span {
	font-size: 1.8em;
}
@media screen and (max-width: 640px){
.entry-wrapper {
	padding: 1em;
	border-radius: 20px;
}
}


/* 送迎のご案内 */
section#transfer-contents h1 {
	margin-bottom: 2em;
}
section#transfer-contents .con_wrapper h2 {
	border-bottom: 5px solid #52a33b;
}


