@charset "utf-8";

/*-------------------------------------
css初期化
--------------------------------------*/
* {
	margin: 0;
	padding: 0;
}

body {
	font-size: 100%;
	font-family: 'Kiwi Maru', serif;

}

div:after {
	content: "";
	display: block;
	clear: both;
}

/*-------------------------------------
タグの基本設定 	background: rgb(84, 160, 97);
--------------------------------------*/
body {
    background-image: url("../img/pattern.png"); /* 小さな素材画像 */
    background-repeat: repeat; /* 繰り返して敷き詰める */
    background-size: auto; /* 元のサイズのまま表示 */
    background-position: top left; /* 左上から開始 */
    background-color: #f5f5f5; /* 万が一の余白に備えて背景色も指定 */
	line-height: 1.6;
	font-size: 81.25%;
	color: #414141;
}

html {
	overflow-y: scroll;
}

a {
	text-decoration: none;
	outline: none;
	color: #333333;
}

a:hover{
	text-decoration: underline;
	color: #666666;
}

a:hover img{
	opacity: 0.80;
}

/*--------------------------------------------------------------------
Container
--------------------------------------------------------------------*/
div#Container {
	width: 945px;
	padding: 10px 0;
	margin: 0 auto;
	background: rgb(255, 255, 204);
}

/*--------------------------------------------------------------------
h1
--------------------------------------------------------------------*/
h1 {
	padding: 10px 0;
	text-align: center;
}

/*--------------------------------------------------------------------
Contents
--------------------------------------------------------------------*/
div#Contents {
	width: 945px;
	margin: 0 auto;
	padding: 10px 0;
	overflow: hidden;
}

div#Contents:after {
	display: block;
	clear: both;
	height: 0;
	line-height: 0;
	font-size: 0;
}

/*--------------------------------------------------------------------
Nav
--------------------------------------------------------------------*/
nav {
	width: 945px;
	margin: 0 auto;
	position: relative;
}

nav ul li {
	list-style: none;
	width: 189px;
	margin: 0 0 20px 0;
	float: left;
}

nav ul li a img:nth-child(2){
	position: absolute;
	margin-left: -189px;
  transition: opacity 1s;
}

nav ul li a:hover img:nth-child(2){
  opacity: 0;
}


/*--------------------------------------------------------------------
Main
--------------------------------------------------------------------*/
div#Main {
	width: 700px;
	margin: 0 auto;
}

div#Main h2 {
	font-size: 105%;
	font-weight: bold;
	color: #504946;
}

div#Main div#TopImg {
	margin: 5px auto 0 auto;
	text-align: center;
}

div#Main div#PortImg {
	text-align: center;
	display: block;
    margin: 0 auto;
	line-height: 0;
}

div#Main p {
	color: #504946;
	margin-top: 10px;
}

div#Main table {
	width: 80%;
	margin: 10px auto 20px auto;
	border-collapse: collapse;
	border: 0 none;
}

div#Main table tr th {
	width: 25%;
	padding: 5px 10px;
	background: rgb(99, 168, 141);
	border: 1px solid #504946;
	text-align: left;
	vertical-align: top;
	color: #ffffff;
    letter-spacing: 0.05em;
}


div#Main table tr td {
	width: 75%;
	padding: 5px 10px;
	border: 1px solid #504946;
	text-align: left;
	vertical-align: top;
	background: rgb(255, 255, 255);

}

div#Main table tr td ul {
	padding: 0 0 0 8px;
	margin: 0 0 0 8px;
}

div#Main table tr td ol {
	padding: 0 0 0 8px;
	margin: 0 0 0 8px;
}

/* スクールプロモーション動画の見出しを中央＆大きく＆余白付き */
#Main h2 {
  text-align: center;
  font-size: 18px !important;
  font-weight: bold;
  color: #504946;
  margin: 90px 0 40px 0; /* 上下に余白を追加 */
  animation: fadeInUp 1.2s ease-out;
  font-family: 'Shippori Mincho', serif;
  letter-spacing: 0.12em;
  display: table; /* 中央揃えしやすくする */
  margin-left: auto;
  margin-right: auto;
  border-bottom: 2px solid #6b4f3b;
  padding-bottom: 4px;

}

/* アニメーション定義 */
@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translateY(15px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.movie__youtube {
    position: relative;
    aspect-ratio: 16 / 9;
}

.movie__youtube_Shorts {
	text-align: center; /* 中央寄せ */
}

/*--------------------------------------------------------------------
pagetop
--------------------------------------------------------------------*/
p.pagetop {
	text-align: right;
}

/*--------------------------------------------------------------------
address
--------------------------------------------------------------------*/
address {
	clear: both;
	text-align: center;
	color: #504946;
}