@charset "UTF-8";

@media only screen and (max-width:1350px) {
	
	.spread_item h4{font-size: 18px;letter-spacing: 0;}
	
	.fixed_button a{padding:20px 15px 20px 5px;}
	.fixed_button a:hover{padding:20px 30px 20px 5px;}
	#page_top {right:7px;}
	
}

@media only screen and (max-width:1150px) {
	
	.intro_box::before, .intro_box::after{width: calc(100% - 800px);}
	.intro_box::before {left: -60px;}
	.intro_box::after{right: -60px;}

}

@media only screen and (max-width:1100px) {
	
	.timeline_item_contents h3 {font-size: 22px;}
	.timeline_item_year {width: 120px;font-size: 22px;}
	.timeline_item_contents {width: calc(100% - 20px - 120px - 30px);}
	.timeline_item-text {font-size: 16px;}
	.timeline_item-mix .text{font-size:16px;}
	.timeline_item-book .text{font-size:16px;}
	
	.profile_box{padding:0 60px 80px;}
	
	.feature_textbox p {font-size: 16px;}
	
	.spread_text p {font-size: 16px;padding-bottom: 15px;}
	
	.spread_item{width: calc((100% - (15px * 1)) / 2);}
	.spread_list{max-width:800px;}
	
	
	.special_contents{padding:60px 30px;}
	.special_contents01_fee{display:block;}
	.special_contents01_fee-normal{margin:auto;width:fit-content;}
	.special_contents01_fee-triangle{margin:10px auto;aspect-ratio: 6 / 5;clip-path: polygon(0 0, 100% 0%, 50% 100%);}
	.special_contents01_fee-student{margin:auto;width:510px;}
	
	.special_contents02_mvarea{padding:0 60px;}

/*==========================
ディレクター
===========================*/
	.director_name h2 span{display:block;}
	
}

@media only screen and (max-width:1050px) {
	.intro_box::before, .intro_box::after{content:none;}
	
	.timeline_item_wrap{display:block;width:calc(100% - 20px - 15px);}
	.timeline_item_year{width:100%;}
	.timeline_item_contents{width:100%;}
	
	.feature_main{gap:0;margin:auto;max-width:700px;}
	.feature_img{
		position:relative;
		margin:auto;
		width:100%;height:450px;
		overflow: hidden;
		order:2;
	}
	.feature_img img{
		position:absolute;
		max-width:500px;
		top:0;
		left:50%;
		transform: translateX(-50%);
	}
	.feature_h2box{width:100%;order:1;}
	.feature_text{display:contents;}
	.feature_textbox{width:100%;order:3;}
	
	
}



@media screen and ( max-width:940px) {
	
	.event_detail_main.date > div:nth-child(1) div:nth-child(2){margin:0;width:100%;padding-bottom:10px;}
	
	.event_banner_links > div a{font-size:20px;}
	
/*==========================
ハンバーガーメニュー
===========================*/
	
	.header_box{justify-content:space-between;}
	.header_nav{display:none;}
	
	.hamburger_box{display:block;margin: auto 0 auto;}
	.hamburger_button{cursor: pointer;}
	.hamburger_button.open{width:35px;}
	.hamburger_button.open span{
		display: block;
		height: 2px;
		width: 100%;
		border-radius: 10px;
		background-color: #fff;
		margin: auto 0 10px;
	}
	.hamburger_button.open span:last-child{margin-bottom: 2px;}
	.hamburger_button.open.hide{opacity: 0;}
	.hamburger_menu{
		display:none;
		position: fixed;
		top: 0;
		left: 0;
		width: 100vw;
		height: 100vh;
		padding-bottom: 60px;
		background-color: rgba(0,0,0,.92);
		z-index: 80;
		overflow-y: scroll;
	}
	.hamburger_button_innerbox{
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-end;
	}
	.hamburger_button.close {width: 55px;padding: 17px 10px 20px;}
	.hamburger_button.close span {
		display: block;
		height: 2px;
		width: 100%;
		border-radius: 10px;
		background-color: #fff;
	}
	.hamburger_button.close span:nth-child(1) {margin: 5px 0px 0px -3px;transform: rotate(45deg);}
	.hamburger_button.close span:nth-child(2) {margin: -1px 0px 0px -3px;transform: rotate(-45deg);}
	
	
/*==========================
ハンバーガーメニュー
===========================*/
	
	.hamburger_menu_main{padding:30px;}
	.hamburger_menu_wrap{margin:auto;max-width:800px;}
	
	.hamburger_menu_wrap{
		margin: auto;
		max-width:600px;
	}
	
	.hamburger_menu_wrap ul{
		display: flex;
		flex-wrap: wrap;
		gap:20px;
	}
	
	.hamburger_menu_wrap ul li{
		width:calc((100% - 20px)/ 2);
	}
	
	.hamburger_menu_wrap ul li a{
		position: relative;
		display:block;
		width:100%;
		height:100%;
		color:#eee;
		letter-spacing:0.05em;
		text-decoration:none;
		font-family: "Helvetica Neue", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
		padding:2px 10px;
		border-bottom:1px rgba(255,255,255,.7) solid;
	}
	.hamburger_menu_wrap ul li a::after {
		position: absolute;
		content: "";
		width: 9px;
		height: 9px;
		border-bottom: #fff 1px solid;
		border-right: #fff 1px solid;
		top: 48%;
		right: 10px;
		transform: rotate(-45deg) translateY(-50%);
		transition: .2s;
	}
	
	
	
}


@media screen and ( max-width:767px) {

	body{position: relative;background-image:none;}
	body::after {
        content: "";
        position: fixed;
        display: block;
        top: 0;
        left: 0;
        width: 100%;
        height: 120vh;
		background-image: url("../images/bk.webp");
		background-size: cover;
		background-position: center;
		background-repeat: no-repeat;
        z-index: -20;
    }
	
/*==========================
ハンバーガーメニュー
===========================*/
	.hamburger_button.open {width:30px;}
	.hamburger_button.open span {margin: auto 0 7px;}
	
/*==========================
MV
===========================*/
	.mv_box::before, .mv_box::after{width: 27%;}
	
	
	.intro_box{padding:60px 30px;}
	.intro_main{font-size:22px;}
	
	
	.profile_box {padding: 0 30px 80px;}
	.profile_h2box{font-size:40px;}
	.profile_button a{width:100%;}
	

	.timeline_box{padding:70px 30px 80px;}
	.timeline_box::before{width:80%;}
	.timeline_intro_img img:nth-child(1){width:34%;}
	.timeline_intro_img img:nth-child(2){width:34%;margin: auto 0 -50px -20.2%;}
	.timeline_intro_img img:nth-child(3){width:34%;margin:45px 0 auto -8%;}
	.timeline_intro_img img:nth-child(4){width:34%;margin-left:-8%;}
	
	.timeline_intro_text {font-size: 16px;}
	.timeline_intro{padding-bottom:0;}
	
	.timeline_item_contents{padding-bottom:30px;}
	.timeline_item-img.list02-1 img:nth-child(1) {width:54%;}
	.timeline_item-img.list02-1 img:nth-child(2) {margin: auto 0 -40px -2%;}
	
	.feature_box{background-image:none;padding: 60px 30px;}
	
	.spread_textbox{padding: 35px 30px 60px;}
	
	.spread_listbox{padding: 40px 30px;}
	.spread_list{max-width:500px;margin:auto;}
	.spread_item{width:100%;}
	
	.event_main {padding: 60px 30px;}
	.event_first{font-size:38px;padding-bottom: 15px;}
	.event_wrap{gap:10px;}
	.event_titile {width: 80px;margin:0 0 auto;}
	.event_text{width: calc(100% - 80px - 10px);}
	.event_h2box h2{font-size:34px;}
	.event_textbox p{font-size:16px;}
	.event_img{width:100%;}
	
	.event_titile.sticky{position:sticky;top:60px;}
	
	.event_detail_main.fee {font-size: 23px;}
	
	.event_banner_area{padding: 30px 0;}
	
	.event_banner_links > div{width:100%;}
	.event_banner_links > div a{z-index:5;}
	.event_banner_links > div p{margin-top: 8px;}
	
	.event_detail_item > div:nth-child(1){width: 110px;font-size: 22px;}
	.event_detail_item > div:nth-child(2) {width: calc(100% - 15px - 110px);}
	
	
	.special_contents_h3box h3 {font-size: 1.3em;}
	.special_contents01_fee-student{width:100%;max-width:450px;}
	.special_contents01_fee-student > div:nth-child(1){width: 110px;}
	.special_contents01_fee-student > div:nth-child(2) {width: calc(100% - 15px - 110px);}
	.special_contents01_fee-student > div:nth-child(2) > div:nth-child(3){display:none;}
	.special_contents01_apply a {padding: 3px 30px;font-size: 26px;}
	.special_contents02_mvarea{padding:0 30px;}
	
	.faq_box{padding: 50px 30px;}
	
	.director_box{padding: 50px 30px;}
	
	
/*==========================
fixed
===========================*/
	.fixed_button{
		opacity: 0;
		visibility: hidden;
		transition: 0.3s;
		max-width:430px;
		width:100%;
		bottom:0;
		left: 50%;
		transform: translateX(-50%);
		display:flex;flex-wrap: wrap;gap:10px;
	}
	.fixed_button div{
		padding:0;
		width:calc((100% - 10px)/ 2);}
	.fixed_button a{
		text-align: center;
		width:100%;
		padding:10px 10px 20px;
		border-radius: 2px 2px 0 0;
	}
	.fixed_button a:hover{padding:10px 10px 20px;}
	
	.fixed_button.show {opacity:1;visibility: visible;}
	
	#page_top {right: 20px;}
	#page_top a{width:36px;}
	
	
	footer {padding: 12px 0 65px;}
	
}

@media only screen and (max-width:580px) {

	.hamburger_button.close {width: 55px;padding: 17px 10px 20px;}
	.hamburger_menu_wrap{max-width:400px;}
	.hamburger_menu_wrap ul li{width:100%;font-size:14px;}
	
	
	.mv_box{padding-top: 50px;}
	.mv_img{width:96vw;height:auto;padding:6vw 0 12vw;}
	.mv_img img{width:100%;height:auto;}
	
/*==========================
導入
===========================*/
	.intro_box{padding:8vw 5vw;}
	.intro_main{font-size:5.4vw;}
	.intro_maininner{display:contents;}
	.intro_main p{display:block;padding-bottom:6vw;line-height:1.4em;font-weight:700;}
	
	.profile_box{padding: 0 5vw 12vw;}
	
	
/*==========================
軌跡
===========================*/
	.timeline_box {padding: max(58px,10vw) 5vw 12vw;}
	.timeline_h2box {padding-bottom: 7vw;}
	.timeline_h2sub {max-width: 34px;}
	.timeline_h2box h2{font-size: 9vw;line-height:1.1em;}
	
	.timeline_intro_img{padding-bottom: 7vw;}
	.timeline_intro_img img:nth-child(2){margin: auto 0 -7vw -20.2%;}
	.timeline_intro_img img:nth-child(3){margin: 4vw 0 auto -8%;}
	
	.timeline_intro_text{padding: 7vw 0;font-size: 14px;}
	
	.timeline_item{gap: 10px;}
	.timeline_item_wrap {width: calc(100% - 20px - 10px);}
	.timeline_item_year{letter-spacing:.05em;}
	.timeline_item_contents {padding-bottom: 20px;}
	.timeline_item_contents h3 {font-size: 16px;line-height: 1.4em;}
	.timeline_item-text{font-size: 14px;padding-bottom: 10px;}
	
	.timeline_item-mix .img {width: 50%;margin:auto;}
	.timeline_item-mix .text{width:100%;font-size: 14px;}
	
	.timeline_item-book .book {width: 40%;margin:auto;}
	.timeline_item-book .text{width:100%;font-size: 14px;}
	.timeline_item-book .book_links{text-align: center;padding: 10px 0 0;}
	.timeline_item-book .book_links a{font-size:16px;margin:auto;}
	
	.timeline_item-img.list02-2 img:nth-child(2) {width:47%;margin: -7vw 0 auto -5%;}
	.timeline_item-img.list03 {gap: 8px;}
	.timeline_item-img.list03 img:nth-child(1) {width: calc((100% - 8px) / 2);}
	.timeline_item-img.list03 img:nth-child(2) {width: calc((100% - 8px) / 2);}
	.timeline_item-img.list06 p{font-size:11px;}
	.timeline_item-img.list07 {gap: 10px;}
	.timeline_item-img.list07 img{width:100%;}
	.timeline_item-img.list07 img:nth-child(3){display:none;}
	
	.timeline_item:last-child .timeline_item-img{
		margin:-10px auto 0 -30px;
		width:calc(100% + 20px + 10px);
	}
	.timeline_item:last-child .timeline_item-img::before, .timeline_item:last-child .timeline_item-img::after{width: 38vw;}
	.timeline_item:last-child .timeline_item-img::before {left: -3vw;}
	.timeline_item:last-child .timeline_item-img::after{right:-4vw;}
	
	
/*==========================
特徴
===========================*/
	.feature_box {
		padding: max(58px,10vw) 5vw 10vw;
		background-image: url("../images/event_bk.webp");
		background-size: 24%;
		background-repeat: repeat;
		background-position: center;
	}
	.feature_h2box {text-align:center;font-size: 35px;padding:0 0 10px;}
	.feature_h2box::before{
		width:100%;
		height:1px;
		top:auto;
		bottom:0;
	}
	.feature_img{
		position:relative;
		width:100%;
		height:auto;
		aspect-ratio:4 / 3;
	}
	.feature_img::before,.feature_img::after{
		content:"";
		position: absolute;
		display: block;
		top:14px;
		width:34%;
		height:auto;
		aspect-ratio:1 / 1;
		background-image: url("../images/timeline_last.webp");
		background-size: contain;
		background-repeat: no-repeat;
		z-index:-1;
		opacity:.5;
	}
	.feature_img::before{
		left:0;
		transform:rotate(70deg);
	}
	.feature_img::after{
		right:0;
		transform:scale(-1,1) rotate(70deg);
	}
	
	.feature_img img{
		top:8px;
		width:110%;left: 44%;
		transform: translateX(-50%) rotate(-4deg);
	}
	
	.feature_textbox{padding-top: 20px;}
	.feature_textbox p {font-size: 14px;padding-bottom: 15px;}
	

	.spread_box {padding: max(58px,10vw) 0 5vw;}
	.spread_h2box h2{padding-bottom:6vw;}
	.spread_textbox{padding: 9vw 5vw 10vw;}
	.spread_text p {font-size: 15px;}
	.spread_listbox {padding: 8vw 5vw;}
	.spread_listbox h3{font-size: 8vw;padding-bottom:6vw;}
	.spread_item h4{text-decoration:underline;}
	
	.event_box{background-size:30%;}
	.event_main{padding:max(58px,8vw) 8vw 5vw;}
	.event_first{font-size: 9vw;line-height: 1.1em;padding-bottom: 5vw;}
	
	.event_wrap{gap:1.5vw;}
	.event_titile {width: 15vw;}
	.event_text {width: calc(100% - 15vw - 1.5vw);}
	.event_h2box{padding:0 2vw;}
	.event_h2box div{width:5vw;}
	.event_h2box h2 {font-size: 6vw;}
	
	.event_banner_area{padding-top:max(58px,8vw);}
	.event_banner_box h3{font-size: 7vw;padding-bottom: 1vw;}
	
	.event_banner_links > div a {font-size: 5.2vw;}
	.event_banner_links > div p{padding: 14px 12px;}
	
	.event_detail{padding-bottom:0;}
	
	.event_detail_item{gap:5px;}
	.event_detail_item > div:nth-child(1){width:100%;}
	.event_detail_item > div:nth-child(2){width:100%;padding:0 0 20px;}
	
	.event_textbox p {font-size: 15px;}
	
	.event_detail_main.date {font-size: 8vw;}
	.event_detail_main.fee {font-size: 6vw;}
	.event_detail_main.fee > div:nth-child(1){gap:6px;}
	.event_detail_main.fee > div:nth-child(1) div{width:100%;display: flex;flex-wrap: wrap;}
	.event_detail_main.fee > div:nth-child(1) div span{display:block;}
	.event_detail_main.fee > div:nth-child(1) div span:nth-child(1)::after{content: "";padding:0;}
	.event_detail_main.fee > div:nth-child(1) div span:nth-child(1){width:26%;padding:.2em 0;font-size:.8em;background-color:rgba(30,0,0,.4);text-align:center;}
	.event_detail_main.fee > div:nth-child(1) div span:nth-child(2){padding-left:.4em;}
	.event_detail_main.fee > div:nth-child(2) span:nth-child(2) i{font-size:.8em;}
	.event_detail_main.fee > div:nth-child(2) span span:nth-child(2)::after{content:"";}
	
	.event_detail_main.fee > div:nth-child(2) > span:nth-child(1){
		display:flex;flex-wrap:wrap;justify-content: center; width:100%;
		background-color:rgba(30,0,0,.4);padding:.2em 0;
	}
	.event_detail_main.fee > div:nth-child(2) > span:nth-child(2){
		display: block;margin: auto; font-size:1.2em;
		line-height:1.2em;letter-spacing:0.05em;
		padding:.1em 0;
	}
	.event_detail_main.fee > div:nth-child(3){text-align:center;}
	.event_detail_main.place{font-size:14px;}
	
	.event_map iframe{height:300px;}
	
	
	
/*==========================
企画
===========================*/
	.special_box{
		background-image: url("../images/event_bk.webp");
		background-size: 40%;
		background-position: center;
	}
	.special_main{padding: max(62px,12vw) 0 0;}
	.special_h2box {font-size: 7vw;}
	.special_h2box h2{max-width: 180px;padding-bottom:6px;}
	.special_h2title{line-height:1.2em;}
	
	.special_contents {padding: 58px 5vw 15vw;}
	.special_contents_h3box{font-size:5vw;padding-bottom: 4vw;}
	.special_contents_h3img {max-width: 90px;padding-bottom:10px;}
	.special_contents_h3box h3{border: #fff solid 3px;padding: 4px 2em;}
	.special_contents_h3box h3::after{border: #fff solid 1px;}
	.special_contents_h3box h3 span::before {left: -1.1em;}
	.special_contents_h3box h3 span::after {right: -1.1em;}
	.special_contents01_img div{font-size:12px;}
	
	.special_contents01_intro{padding: 5vw 0;}
	.special_contents01_intro p{font-size: 15px;}
	
	
	.special_contents01_fee{padding:6vw;font-size:6vw;}
	.special_contents01_fee-normal{width:100%;gap:10px;}
	.special_contents01_fee-normal > div:nth-child(1){width:100%;}
	.special_contents01_fee-normal > div:nth-child(2){width:100%;text-align: center;}
	.special_contents01_fee-normal > div:nth-child(2) > div:nth-child(2){justify-content: center;}
	
	.special_contents01_fee-triangle{margin: 5vw auto;width: 7vw;}
	
	.special_contents01_fee-student{gap: 10px;}
	.special_contents01_fee-student > div:nth-child(2) > div:nth-child(1) {font-size: 1em;padding-bottom:.2em;}
	.special_contents01_fee-student > div:nth-child(1){
		width:100%;background-color:#fff;
		color:#840F0D;justify-content: center;
	}
	.special_contents01_fee-student > div:nth-child(2){width:100%;}
	.special_contents01_fee-student > div:nth-child(2) > div:nth-child(1){text-align:center;width:100%;}
	.fee-student_num{width:100%;justify-content: center;}
	
	.fee-student_num div:nth-child(1) {font-size: 3.2em;padding-right: .1em;}
	
	.special_contents01_apply{padding:6vw 0;}
	.special_contents01_apply a {width:100%;justify-content:center;padding: 8px 10vw 8px 5vw;font-size: 7vw;line-height:1.2em;}
	
	.special_contents01_flow{padding-top:8vw;}
	.special_contents01_flow h4 {font-size:8vw;padding-bottom:2vw;}
	.special_contents01_flow ul li{gap:0;}
	.special_contents01_flow ul li div:nth-child(1){width:100%;background-color:rgba(255,255,255,0);border:2px solid rgba(255, 255, 255, .8);}
	.special_contents01_flow ul li div:nth-child(1) span{color:#fff;padding: 2px;}
	.special_contents01_flow ul li div:nth-child(2){width:100%;font-size:15px;}
	.special_contents01_flow ul li div:nth-child(2) h5{text-align:center;}
	
	.special_contents02_mvbox{padding-bottom: 8vw;}
	.special_contents02_mvbox h4 {font-size: 6vw;}
	.special_contents02_mvtext p {padding: 0 0 15px;font-size:14px;}
	
	.special_contents02_mvtext .open_title{
		display:block;
		position:relative;
		text-align: center;
		padding:5px 0;
		border:#fff solid 1px;
		font-family: "Helvetica Neue", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
		transition: .2s;
	}
	.special_contents02_mvtext .open_title::after {
		position: absolute;
		content: "";
		width: 9px;
		height: 9px;
		border-bottom: #fff 2px solid;
		border-right: #fff 2px solid;
		top: 48%;
		right: 10px;
		transform: rotate(-45deg) translateY(-50%);
		transition: .2s;
	}
	.special_contents02_mvtext .open_title.open{border-color:rgba(255,255,255,0) rgba(255,255,255,0) #fff;}
	.special_contents02_mvtext .open_title.open::after{transform: rotate(-135deg) translateY(-20%);top: 35%;}
	
	.special_contents02_mvtext .open_box{
		display:none;
		padding-top:10px;
	}
	
	.special_contents02_intro{font-size: 4.5vw;padding-bottom: 4vw;letter-spacing:0.05em;}
	
	
	
	
/*==========================
faq
===========================*/
	.faq_box{padding:max(58px,10vw) 5vw 5vw;}
	.faq_2hbox{filter: drop-shadow(2px 2px 5px rgba(0, 0, 0, .35));}
	.faq_2hbox h2 {font-size: 8vw;}
	.faq_2hsub{font-size:14px;}
	.faq_group{padding: 6vw 0 3vw;}
	.faq_group h3 {font-size: 4.8vw;padding-left: 4vw;margin-bottom:8px;}
	.faq_group h3::before {width: 2.2vw;}
	.faq_group h4 {padding:5px 7vw 5px 9vw;font-size: 14px;}
	.faq_group h4::before{left: 3px;font-size: 1.1em;top: 16px;}
	.faq_group h4 .toggle_icon{right: 3px;height:20px;top: 5px;}
	.faq_group .open_box{padding: 10px 20px 10px 36px;}
	.faq_group .open_box::before {left: 3px;top:8px;}
	.faq_group .open_box p{font-size:14px;}
	.faq_group .open_box ul li{font-size:14px;}
	
	
	
/*==========================
ディレクター
===========================*/
	.director_box{padding:max(58px,10vw) 5vw 6vw;}
	.director_wrap{padding:7vw 6vw;}
	.director_title{gap:5px 10px;}
	.director_name{display:contents;}
	.director_img{width:50px;order:1;margin:0 0 auto;}
	.director_namemain{display:contents;}
	.director_name h2{font-size: 18px;order:4;}
	.director_nameletter{order:2;}
	.director_namesub {font-size: 12px;}
	.director_namelinks{order:3;}
	.director_text p {font-size: 13px;}
	
	
	.fixed_button{width: 94%;}
	.fixed_button a{font-size:4vw;letter-spacing:0.05em;padding:1.8vw 2vw 20px;}
	
	
	#page_top{right:10px;bottom:60px;}
	#page_top a {width: 30px;}
	footer {padding: 12px 0 14vw;}
	
	
	
}



@media screen and ( max-width:520px) {

	
}


@media screen and ( max-width:374px) {

}


