/*
Theme Name: ohsugi
Theme URI: https://ohsugi.ed.jp/
Description: 大杉学園オリジナルテーマ
Author: ryoei
Version: 1.0
*/
@charset "UTF-8";

* {
     margin: 0;
     padding: 0;
	 min-height: 0vw;
}
img, a img {
     border: none;
}
figure {
	margin: 0;
}
a:focus,
area:focus {
     outline:none;
}
.pic {
	width: 100%;
	height: auto;
}
.radius30 {
	border-radius: 30px;
}

.trans-up {transform: translate(0,50px); opacity: 0;}
.trans-up.on {transform: translate(0,0); opacity: 1; transition: all 1s;}
.trans-down {transform: translate(0,-50px); opacity: 0;}
.trans-down.on {transform: translate(0,0); opacity: 1; transition: all 1s;}
.trans-left {transform: translate(-100px,0); opacity: 0;}
.trans-left.on {transform: translate(0,0); opacity: 1; transition: all 1s;}
.trans-right {transform: translate(100px,0); opacity: 0;}
.trans-right.on {transform: translate(0,0); opacity: 1; transition: all 1s;}

.trans-fv-up {transform: translate(0,50px); opacity: 0;}
.trans-fv-up.on {transform: translate(0,0); opacity: 1; transition: all 1s;}
.trans-fv-right {transform: translate(100px,0); opacity: 0;}
.trans-fv-right.on {transform: translate(0,0); opacity: 1; transition: all 1s;}

.trans-d-up {transform: translate(0,50px); opacity: 0;}
.trans-d-up.on {transform: translate(0,0); opacity: 1; transition: all 1s;}
.trans-d-down {transform: translate(0,-50px); opacity: 0;}
.trans-d-down.on {transform: translate(0,0); opacity: 1; transition: all 1s;}
.trans-d-left {transform: translate(-100px,0); opacity: 0;}
.trans-d-left.on {transform: translate(0,0); opacity: 1; transition: all 1s;}
.trans-d-right {transform: translate(100px,0); opacity: 0;}
.trans-d-right.on {transform: translate(0,0); opacity: 1; transition: all 1s;}

.delay-02 { transition-delay: 0.2s !important;}
.delay-03 { transition-delay: 0.4s !important;}
.delay-04 { transition-delay: 0.6s !important;}

:root {
	--brown: #933F00;
	--blue: #0084CF;
	--green: #33B495;
}

:root {
	--marugo: "M PLUS Rounded 1c", sans-serif;
	--gothic: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

header.pc {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	box-sizing: border-box;
	padding: 0 50px;
	z-index: 999;
}
header.pc .outer {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
header.pc .outer h1 {
	width: 164px;
	height: 130px;
	background: #FFF;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 0 0 20px 20px;
}
header.pc .outer h1 img {
	width: 120px;
	height: auto;
}
header.pc .outer .bt-menu {
	width: 82px;
	height: 82px;
	background: #FFF;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 100%;
	cursor: pointer;
}
header.pc .outer .bt-menu img {
	width: 40px;
	height: auto;
}
header.pc nav {
	position: fixed;
	top: 20px;
	right: -384px;
	width: 364px;
	background: #FFF;
	border-radius: 20px;
	box-sizing: border-box;
	padding: 74px 0 50px 40px;
	transition: all 0.6s;
}
header.pc nav.active {
	right: 20px;
}
header.pc nav p.close {
	width: 42px;
	position: absolute;
	top: 34px;
	right: 50px;
	cursor: pointer;
}
header.pc nav ul {
	margin-top: 30px;
}
header.pc nav ul li {
	font-size: 18px;
	list-style: none;
	margin-bottom: 20px;
}
header.pc nav ul li:last-of-type {
	margin-bottom: 0;
}
header.pc nav ul li a {
	font-weight: 700;
	text-decoration: none;
}
header.pc nav ul li:nth-of-type(1) a {
	color: #933F00;
}
header.pc nav ul li:nth-of-type(2) a {
	color: #3860A0;
}
header.pc nav ul li:nth-of-type(3) a {
	color: #DF82AD;
}
header.pc nav ul li:nth-of-type(4) a {
	color: #43B79B;
}
header.pc nav ul li:nth-of-type(5) a {
	color: #0084CF;
}
header.pc nav ul li:nth-of-type(6) a {
	color: #33B495;
}
header.pc nav ul li:nth-of-type(7) a {
	color: #66AADB;
}
header.pc nav ul li:nth-of-type(8) a {
	color: #666666;
}

header.sp {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	box-sizing: border-box;
	z-index: 999;
}
header.sp .outer {
	width: 100%;
	height: 60px;
	box-sizing: border-box;
	padding: 0 10px;
	background: #FFF;
	display: flex;
	justify-content: space-between;
	align-items: center;
	line-height: 0;
}
header.sp .outer h1 {
}
header.sp .outer h1 img {
	width: 170px;
	height: auto;
}
header.sp .outer .bt-menu {
}
header.sp .outer .bt-menu img {
	width: 38px;
	height: auto;
}
header.sp nav {
	position: fixed;
	top: 0;
	right: -100%;
	width: 100%;
	height: 100vh;
	background: #FFF;
	box-sizing: border-box;
	padding: 74px 0 50px 40px;
	transition: all 0.6s;
}
header.sp nav.active {
	right: 0;
}
header.sp nav p.close {
	width: 38px;
	position: absolute;
	top: 20px;
	right: 20px;
	cursor: pointer;
}
header.sp nav ul {
	margin-top: 30px;
}
header.sp nav ul li {
	font-size: 18px;
	list-style: none;
	margin-bottom: 20px;
}
header.sp nav ul li:last-of-type {
	margin-bottom: 0;
}
header.sp nav ul li a {
	font-weight: 700;
	text-decoration: none;
}
header.sp nav ul li:nth-of-type(1) a {
	color: #933F00;
}
header.sp nav ul li:nth-of-type(2) a {
	color: #3860A0;
}
header.sp nav ul li:nth-of-type(3) a {
	color: #DF82AD;
}
header.sp nav ul li:nth-of-type(4) a {
	color: #43B79B;
}
header.sp nav ul li:nth-of-type(5) a {
	color: #0084CF;
}
header.sp nav ul li:nth-of-type(6) a {
	color: #33B495;
}
header.sp nav ul li:nth-of-type(7) a {
	color: #66AADB;
}
header.sp nav ul li:nth-of-type(8) a {
	color: #666666;
}































