@charset "UTF-8";

/* すべてのwebページに適用される */
html {
	font-family:sans-serif;
}
html * {
	box-sizing: border-box;
}
body {
	margin: 0 0 0 0;
	background-color: #c2f4ff;
}
.wrapper {
	margin: 0 auto 0 auto;
	max-width: 960px;
}
h2 {
	color: #3f5170;
	font-size: 22px;
	border-bottom: 3px dotted #3f5170;
	margin-top: 20px;
	margin-right: 0px;
	margin-bottom: 20px;
	margin-left: 0px;
	padding-top: 5px;
	padding-right: 5px;
	padding-bottom: 5px;
	padding-left: 5px;
}
p {
	line-height: 1.6;
}
a:link {
	color: #3f5170;
}
a:visited {
	color: #d25833;
}
a:hover {
	color: #e3937a;
}
a:active {
	color: #ff6a3b;
}
img {
	max-width: 100%;
	height: auto;
}

/* すべてのページに適用 - ヘッダー - */
.logo {
	margin: 50px 0 40px 0;
	line-height: 0;
	text-align: center;
}

.nav ul {
	display: flex;
	margin: 0 0 0 0;
	padding: 20px 10px 15px 20px;
	background-image: url /* ここに画像を入力 */
	background-repeat: repeat-x;

}

.nav li{
	flex-grow: 1;
	list-style-type: none;
	text-align: center;
	display: block;
}

@media (max-width: 820px) {
	.nav li {
	font-size: 14px;
	} 
}

li + li {
	border-left: 1px solid #000000;
}


.nav a:link {
	color: #3c454d;
	text-decoration: none;
}
.nav a:visited {
	color: #3c454d;
	text-decoration: none;
}
.nav a:hover {
	color: #7b8dac;
	text-decoration: none;
}
.nav a:active {
	color: #5a9bc0;
	text-decoration: none;
}

/* すべてのページに適用 - フッター - */
.footer {
	margin-top: 30px;
	padding: 80px 15px 20px 15px;
	font-size: 12px;
	color: #3f5170;
}

/* 個別のスタイル */
/* index.html */

.keyvisual img {
	width: 383px;
	height: 130px;
	max-width: 100%;
	height: auto;

}
.keyvisual-box {
	text-align: center;

}
.keyvisual {
	max-width:100%;
	height: auto;
	margin-left: 0px;
	margin-right: 0px;
	justify-content: space-evenly;

}

.nayami {
	width: 500px;
	height: 200px;
	display: block;
	margin: auto;
}

.terakoya {
	width: 600px ;
	height: 130px ;
	margin: 0 auto ;
	margin-top: 50px ;
}



.news-box {
	 position: relative;
    margin: 2em 0;
    padding: 0px 5px;
    border: solid 3px #62c1ce;
	background: #ffffff;
	border-bottom: solid 6px #3f87ce;

	border-radius: 0 5px 5px 5px; 
}


.news-item {
	 position: absolute;
    display: inline-block;
    top: -27px;
    left: -3px;
    padding: 0 9px;
    height: 25px;
	line-height: 25px;
    font-size: 17px;
    background: #62c1ce;
    color: #ffffff;
    font-weight: bold;
    border-radius: 5px 5px 0 0;
}
.box10 p {
    margin: 0; 
    padding: 0;
}

.news-box-box .news-box .news-item {
	pointer-events: none;
}

.index-table {
	text-align: center;
	border-top: 5px solid #3f5170;
	border-bottom: 0px;
	margin-top: 100px;
	margin-bottom: 0px;
	font-size: 30px;
}

/* free-school */
.free-kome {
	font-size: 12px;

}
.nyukaikin {
	margin-bottom:0px;
}

/* policy.html */
.toku {
	padding-top: 0px;
	padding-left: 15px;
}
.yoyaku {
	margin-bottom: 0px;
}

/* about.html */
.shop-photo {
	float: left;
	padding: 0 1em 1em 0;
}
.clear {
	clear: both;
}
.indent-ue {
	margin: 16px 0px 0px 0px;
}
.indent {
	padding-left: 1em;
	text-indent: -1em;
	margin: 0px 0px 0px 0px;
}

.about-sita {
	margin-bottom: 0px;
}

/* テーブル */

.info {
	border-collapse: collapse;
	margin-left: auto;
	margin-right: auto;
    width: 100%; /* 幅を100%にして親要素に合わせる */
    max-width: 700px; /* 最大幅を700pxに設定 */
    height: auto; /* 高さを自動で調整 */
    text-align: center;
    overflow-x: auto; /* 横スクロールが発生しないようにする */
}
.info th, .info td {
	padding: 8px;
	border: 1px solid #bec2c7;
	text-align: left;
}
.info th {
	background-color: #dde2ea;
	width: 90px;
	color: #3f5170;
	vertical-align: top;
	text-align: center;
	white-space: nowrap;
	vertical-align: middle;
}

.price {
	text-align: center;
}

.day td {
	background-color: #fcba03;
}
.info .mushoku {
	background-color: #c2f4ff;
}
.marker {
	background: linear-gradient(transparent 60%, #ff99cc 0%);
}

/* 講師紹介 */


.balloon5 {
  width: 100%;
  margin: 1.5em 0;
  overflow: hidden;
}

.balloon5 .faceicon {
  float: left;
  margin-right: -90px;
  width: 80px;
}

.balloon5 .faceicon img{
  width: 100%;
  height: auto;
  border: solid 3px #c2f4ff;
  border-radius: 50%;
}

.balloon5 .chatting {
  width: 100%;
}

.says {
  display: inline-block;
  position: relative; 
  margin: 5px 0 0 105px;
  padding: 17px 13px;
  border-radius: 12px;
  background: #fffdda;
}

.says:after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 18px; 
  left: -24px;
  border: 12px solid transparent;
  border-right: 12px solid #fffdda;
}

.says p {
  margin: 0;
  padding: 0;
}

.syokai {
	
}

.intro {
	margin: 0 20px;
}



/* お申し込み方法 */
.qrcode {
	width: 250px;
	height: 250px;
}

/* access.html */
.map {
	padding: 10px;
	margin: 0 auto;
	width: 500px;
	height: 500px;
}
.root {
	padding: 10px 0 0 0;
}




/* スマートフォン向けCSS */
@media (max-width: 767px) {
	/* 全体 - ナビゲーション */
	.wrapper {
		margin: 0 8px;
	}
	.logo {
		margin: 30px 0;
	}
	.logo img {
		width: 400px;
	}
	.nav {
		background-color: #dfddda;
	}
	.nav ul {
		display: block;
		padding-left: 8px;
	}
	.nav li {
		display: block;
		text-align: left;
		list-style-type: circle:
	}
	li + li {
		border-left: 0px solid #000000;
	}

	/* ホーム */
	.keyvisual {
	display: block;
  	flex-direction: column;
	text-align: center;
	vertical-align: bottom;
	max-width: 100%;
	height: auto;
	}
	.keyvisual-box {
	padding-top: 15px;
	max-width: 100%;
	height: auto;
	}

	.keyvisual img {
	text-align: center;
	}

	.nayami {
		max-width: 100%;
		height: auto;
	}

	.terakoya {
		max-width: 100%;
		height: auto;
	}

	iframe {
		max-width: 100%;
		height: 400px;
	}

	/* about 時間割・内容 */
	.info {
		max-width: 100%;
	}

	/* apply お申込み方法 */
	.url {
		word-break: break-all;
	}

	/* menu.html -横並び解除 */
	.menu-item {
		display: block;
	}
	.menu-photo {
		margin-right: 0;
		width: 100%;
	}
	.menu-text {
		width: 100%;
	}

	/* about.html - 画像のパディングを調整 */
	.shop-photo {
		padding-right: 0;
	}
}

