@charset "UTF-8";

/* top
---------------------------------------------------------------------------*/
body#top #mainContents {
	padding-top: 100px;
}

/* .top-img
------------------------------------*/
.top-img {
	position: relative;
	box-sizing: border-box;
	width: 100%;
	margin-bottom: 115px;
}

.top-img .cover {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	background: #FFFFFF;
	width: 100%;
	height: 100%;
	z-index: 10;
}

.top-img figure {
	position: relative;
	z-index: 0;
}

.top-img figure img {
	border-radius: 90px 0 0 0;
	width: 100%;
	height: auto;
}

.top-img .pic {
	position: absolute;
	top: 61%;
	left: 46.2%;
	width: 11.3%;
	transform-origin: center bottom;
	z-index: 2;
}

.top-img .pic img { width: 100%; }
.top-img .pic1 { z-index: 5; }
.top-img .pic2 { z-index: 4; }
.top-img .pic3 { z-index: 3; }

.top-img .pic4 {
	top: 56.5%;
	left: 40.8%;
	width: 20%;
	transform-origin: center center;
	z-index: 2;
}

.top-img .pic-teacher {
	top: 56.2%;
	left: 59%;
	width: 3.76%;
	z-index: 5;
}

.top-img h1 {
	position: absolute;
	top: clamp(53px, 4.2vw, 76px);
	left: 4.8%;
	width: min(24.7%, 445px);
	z-index: 2;
	opacity: 0;
}

.top-img h1 img {
	display: block;
	width: 100%;
	height: auto;
}

.top-img p {
	position: absolute;
	top: clamp(176px, 14vw, 252px);
	left: 4.8%;
	font-size: clamp(15px, 1.18vw, 21px);
	font-weight: bold;
	line-height: 2.05;
	letter-spacing: 0.16em;
	white-space: nowrap;
	opacity: 0;
}

.top-img .sns-list {
	overflow: inherit;
	position: absolute;
	bottom: -165px;
	right: 25px;
	z-index: 2;
}

.top-img .sns-list li {
	float: none;
	margin: 11px 0 0 -60px;
	transform-origin: center center;
}

/* .sec-lead
------------------------------------*/
.sec-lead {
	position: relative;
	box-sizing: border-box;
	display: -webkit-box;
	display: flex;
	width: 1110px;
	margin: 0 auto 45px;
	padding: 0 0 0 115px;
}

.sec-lead .pic {
	position: absolute;
	bottom: 15px;
	left: 15px;
}

.sec-lead .inner {
	width: 415px;
}

.sec-lead h2 {
	margin-bottom: 80px;
}

.sec-lead h2 i {
	display: inline-block;
	position: relative;
}

.sec-lead h2 i:after {
	display: block;
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	background-color: #000000;
	width: 100%;
	height: 1px;
}

.sec-lead h2 i img {
	width: 125px;
}

.sec-lead h2 strong {
	display: block;
	margin: 22px 0 28px;
}

.sec-lead .btn-link {
	margin-bottom: 12px;
}

.sec-lead .btn-link a {
	width: 315px;
	padding-right: 75px;
	padding-left: 45px;
}

.sec-lead .txt-set {
	margin-top: 45px;
}

.sec-lead .txt-set p {
	margin-bottom: 15px;
	font-size: 22px;
	font-weight: 600;
	line-height: 1.95;
	letter-spacing: 0.14em;
	white-space: nowrap;
}

.sec-lead .txt-set p.size-s {
	margin-top: 30px;
	font-size: 16px;
}

.sec-lead .txt-set p span {
	position: relative;
	display: inline-block;
	font-weight: 600;
}

.sec-lead .txt-set p span:before {
	display: block;
	content: '';
	position: absolute;
	top: -2px;
	left: 50%;
	background: #EF859F;
	border-radius: 50%;
	width: 5px;
	height: 5px;
	margin-left: -3px;
}

/* .group-hoiku
------------------------------------*/
.group-hoiku {
	overflow: hidden;
	margin-bottom: 100px;
	padding-top: 60px;
}

.group-hoiku .fish {
	display: block;
	position: absolute;
	top: 74px;
	left: 50%;
	width: 125px;
	height: auto;
	margin-left: -555px;
	z-index: 1;
	opacity: 0;
}

.group-hoiku .btn-movie {
	display: block;
	position: absolute;
	top: -134px;
	right: 50%;
	width: 213px;
	height: 164px;
	margin-right: -560px;
	z-index: 1;
}

.group-hoiku .btn-movie a {
	display: block;
	width: 100%;
	height: 100%;
}

.group-hoiku .btn-movie a:hover {
	opacity: 0.5;
	transform: rotate(2deg) translateX(4px);
}

.group-hoiku .security2 {
	display: block;
	position: absolute;
	bottom: 0;
	right: 0;
	width: 198px;
	height: 93px;
	opacity: 0;
}

.group-hoiku .txt-onair {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
}

.group-hoiku .txt-movie {
	display: block;
	position: absolute;
	top: 25px;
	left: 0;
	opacity: 0;
}

.group-hoiku .security1 {
	display: block;
	position: absolute;
	top: -65px;
	right: 31%;
	width: 154px;
	height: auto;
	z-index: 0;
}

/* .group-hoiku - media query
-----------------------------------*/
@media (max-width: 1200px) {
	.group-hoiku .fish { margin-left: -525px; }
	.group-hoiku .btn-movie { margin-right: -530px; }
}

/* .sec-architect
------------------------------------*/
.sec-architect {
	position: relative;
	width: 100%;
	max-width: 1360px;
	margin: 0 auto 160px;
}

.sec-architect:before {
	display: block;
	content: '';
	position: absolute;
	top: 80px;
	left: 0;
	background: #EAF5FA;
	width: 53.7%;
	height: 60.5%;
	z-index: -1;
}

.sec-architect .architect1 {
	display: block;
	position: absolute;
	top: 128px;
	right: 29.6%;
}

.sec-architect .architect2 {
	display: block;
	position: absolute;
	top: 58px;
	right: 7.7%;
}

.sec-architect .txt-set {
	box-sizing: border-box;
	width: 43.5%;
	padding: 0 8% 0 12.4%;
}

.sec-architect h2 {
	position: relative;
	display: inline-block;
	margin: 0 0 70px 2px;
}

.sec-architect h2 span {
	display: block;
	position: absolute;
	top: 3px;
	right: -52px;
	color: #3576B3;
	font-size: 10px;
	letter-spacing: 0.4em;
	white-space: nowrap;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}

.sec-architect p {
	max-width: 300px;
	margin-bottom: 10px;
	font-size: 15px;
	text-align: justify;
	line-height: 1.95;
}

.sec-architect p:last-of-type {
	margin-bottom: 0;
}

.sec-architect .slider-wrap {
	position: absolute;
	bottom: 5px;
	right: 0;
	width: 56.5%;
}

.sec-architect .slider {
	background: #FFFFFF;
}

.sec-architect .slider .inner img {
	width: auto;
}

.sec-architect .slider .slick-dots {
	position: absolute;
	right: inherit;
	left: -30px;
}

.sec-architect .slider .slick-dots button:after {
	top: 8px;
	left: 8px;
	background: #D7E4F0;
	width: 5px;
	height: 5px;
}

.sec-architect .slider .slick-dots button:hover:after,
.sec-architect .slider .slick-dots .slick-active button:after {
	background: #3576B3;
}

/* .sec-architect .illust
------------------------------------*/
.sec-architect .illust-kitchen-wrap {
	position: absolute;
	top: -5px;
	left: 37%;
	z-index: -2;
	opacity: 0;
}

.sec-architect .illust-kitchen {
	transform: scale(1.7);
}

.sec-architect .ladle {
	position: absolute;
	top: 69px;
	left: 41.6%;
	width: 58px;
	height: auto;
	opacity: 0;
}

.sec-architect .pencil1 {
	display: block;
	position: absolute;
	top: 210px;
	left: 33.8%;
	opacity: 0;
}

.sec-architect .pencil2 {
	display: block;
	position: absolute;
	top: 164px;
	left: 37.2%;
	opacity: 0;
}

.sec-architect .akakurage {
	display: block;
	position: absolute;
	top: -120px;
	left: 14px;
	z-index: -1;
	width: 160px;
	height: auto;
}

/* .sec-architect - media query
-----------------------------------*/
@media (max-width: 1260px) {
	.sec-architect .architect1 { right: 28%; }
	.sec-architect .architect2 { right: 3%; }
	.sec-architect .txt-set { padding: 0 12% 0 7%; }
	.sec-architect p { font-size: 14px; }
	.sec-architect .slider-wrap { width: 61%; }
	.sec-architect .pencil1 { left: 31.5%; }
	.sec-architect .pencil2 { left: 35.5%; }
}

/* .sec-news
------------------------------------*/
.sec-news {
	overflow: hidden;
	box-sizing: border-box;
	width: 100%;
	max-width: 1240px;
	padding: 0 60px;
	margin: 0 auto;
}

.sec-news .news-wrap {
	float: left;
	width: 64%;
}

.sec-news .title-set {
	position: relative;
	height: 65px;
}

.sec-news .title-set h2 {
	padding-left: 22px;
}

.sec-news .title-set h2 span {
	font-size: 16px;
}

.sec-news .arrow-list {
	position: absolute;
	top: 0;
	right: 15px;
}

.sec-news .news-list {
	clear: both;
	background: url(../img/share/line-dot.svg) repeat-x left top;
}

.sec-news .news-list .post-categories {
	display: none;
}

.sec-news .news-list time {
	top: 25px;
	left: 25px;
	letter-spacing: 0.12em;
}

.sec-news .news-list .news-title {
	padding-left: 140px;
}

.sec-news .news-list h2 a, .sec-news .news-list h2 span {
	padding: 20px 65px 18px 0;
	font-size: 15px;
	letter-spacing: 0.18em;
}

.news-list .accordion h2 span:after {
	right: 25px;
}

.news-list .news-main {
	padding: 0 65px 40px 140px;
}

.news-list .news-main p {
	font-size: 13px;
}

.news-list .news-link .btn-link-s a {
	font-size: 13px;
}

.sec-news .btn-wrap {
	float: right;
	width: 29%;
}

.sec-news .btn-wrap .sns-list {
	float: right;
	height: 65px;
	margin-right: 15px;
}

.sec-news .btn-wrap .btn-link {
	margin-bottom: 12px;
}

.sec-news .btn-wrap .btn-link a {
	background-position: right 22px center;
	width: 100%;
	padding-left: 27px;
	text-align: left;
}

/* .sec-no-graduation
------------------------------------*/
.sec-no-graduation {
	width: 1058px;
	margin: 0 auto 110px;
	transform: translateX(4px);
}

.sec-no-graduation figure {
	position: relative;
	margin-bottom: 115px;
}

.sec-no-graduation figure .img2 {
	display: block;
	position: absolute;
	top: -30px;
	right: 98px;
}

.sec-no-graduation figure .img3 {
	display: block;
	position: absolute;
	top: 246px;
	right: 0;
}

.sec-no-graduation .txt {
	position: relative;
	padding-left: 390px;
}

.sec-no-graduation .txt h2 {
	position: absolute;
	top: -5px;
	left: 72px;
}

.sec-no-graduation .txt h2 strong {
	display: block;
	margin-bottom: 18px;
	font-size: 40px;
	font-weight: bold;
	line-height: 1.55;
	letter-spacing: 0.18em;
}

.sec-no-graduation .txt h2 em {
	display: block;
	margin-left: 4px;
	color: #3576B3;
	font-size: 13px;
	font-weight: 500;
	line-height: 2.35;
	letter-spacing: 0.3em;
	text-transform: uppercase;
}

.sec-no-graduation .txt h3 {
	margin: 44px 0 22px;
	font-size: 19px;
	font-weight: bold;
	letter-spacing: 0.18em;
}

.sec-no-graduation .txt p {
	margin-bottom: 12px;
	font-size: 15px;
	line-height: 2.3;
}

/* .img-scroll-top
------------------------------------*/
.img-scroll-top-wrap {
	overflow: hidden;
	width: 100%;
	height: 280px;
	margin-bottom: 180px;
}

.img-scroll-top {
	display: -webkit-box;
	display: flex;
}

.img-scroll-top figure {
	margin-right: 1px;
}

.img-scroll-top figure img {
	width: auto !important;
	height: 100% !important;
	-webkit-backface-visibility: hidden;
	image-rendering: -webkit-optimize-contrast;
}