@charset "utf-8";

/* ----------------------------------------
- RESET
---------------------------------------- */
*,*::before,*::after{box-sizing:border-box}ul[class],ol[class]{padding:0}body,h1,h2,h3,h4,p,ul[class],ol[class],figure,blockquote,dl,dd{margin:0}body{min-height:100vh;scroll-behavior:smooth;text-rendering:optimizeSpeed;line-height:1.5}ul[class],ol[class]{list-style:none}a:not([class]){text-decoration-skip-ink:auto}img{max-width:100%;display:block}article>*+*{margin-top:1em}input,button,textarea,select{font:inherit}/*img:not([alt]){filter:blur(10px)}*/@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important}}


/* CLEAR
----------------------------------------------------- */
.clear {clear:both;}


/* CLEAR FIX
----------------------------------------------------- */
.clearfix::after {
	display: block;
	clear: both;
	content: "";
}


/* ----------------------------------------
- FORMAT
---------------------------------------- */
html {font-size:62.5%;}/*デフォルト16px*/

body {color:#000; font-family:YakuHanJP,"Cormorant","ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","Helvetica Neue",Helvetica,Arial,"Lucida Grande","メイリオ",Meiryo,sans-serif; text-size-adjust:100%; -webkit-text-size-adjust:100%;}

a {text-decoration:none; outline:none; color:#000; -webkit-tap-highlight-color:rgba(0,0,0,0);}

.spNone {display:none!important;}
.pcNone {display:block!important;}
/*** 960px以上 PCサイズcss適用 ***/
@media screen and (min-width: 960px) {
  .spNone {display:block!important;}
  .pcNone {display:none!important;}
}


/* ヘッダー */
.header {
  width: 100%;
  height: 80px;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 999;
}

@media screen and (min-width: 960px) {
  .header {
    height: 100px;
    background: #fff;
  }
}

.header_inner {
  padding: 0 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: inherit;
  position: relative;
}

.header_title {
  width: 180px;
  visibility: visible;
}

@media screen and (min-width: 960px) {
  .header_title {
    width: 350px;
  }
}

.header_title a {
  display: block;
  width: 100%;
  height: 100%;
  position:relative;
  top: 250px;
  left: 50%;
}

@media screen and (min-width: 960px) {
  .header_title a {
    top:140px;
    left:10px;
    z-index: 10;
  }
  .header_title a {
  	transition-property: opacity;
  	transition-duration: 0.5s;
  }
  .header_title a:hover {
  	opacity: 0.7;
  }
}

.header_nav {
  position: absolute;
  right: 0;
  left: 0;
  top: 0;
  width: 100%;
  height: 100vh;
  transform: translateX(100%);
  transition: ease .4s;
}


@media screen and (min-width: 960px) {
  .header_nav {
    position: static;
    transform: initial;
    height: inherit;
  }
}

.nav-items {
  position: absolute;
  top: 80px;
  left: 50%;
  transform: translateX(-50%);
  padding: 0;
}

.sns-items {
  position: absolute;
  top: 430px;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  border-top: solid 1px #fff;
}


@media screen and (min-width: 960px) {
  .nav-items, .sns-items {
    width: 100%;
    height: 100%;
    display: flex;
    position: static;
    top: 0;
    left: 0;
    transform: translate(0, 0);
  }
  .nav-items {
    justify-content: flex-end !important;
    padding: 20px 20px 0 0 !important;
  }
  .sns-items {
    border: none;
    justify-content: end !important;
    position: relative;
    top: -40px;
    left: -495px;
  }
  hr {
  	height: 0; margin: 0; padding: 0; border: 0;
  	border: solid 1px #fff;
  	width: 470px;
  	float: right;
  	margin: -130px 0 0;
  }
}

.nav-items_item a {
  color: #fff;
  width: 100%;
  display: block;
  text-align: center;
  font-size: 20px;
  margin-bottom: 24px;
  font-family: "Rammetto One", sans-serif;
}

.nav-items_item:last-child a {
  margin-bottom: 0;
}

@media screen and (min-width: 960px) {
  .nav-items_item a {
    margin-bottom: 0;
    color: #000;
    transition : all 0.5s ease 0s;
	width: fit-content;
  }
  .nav-items .nav-items_item a {
    margin-left: 25px;
  }
  .sns_items .nav-items_item a {
    margin-left: 25px;
  }
}

.nav-items_item i {
  color: #fff;
  font-size: 20px;
  float: left;
  margin: 30px 0 0 20px;
}

.nav-items_item i.fa-x-twitter {
  margin-left: 0;
}

@media screen and (min-width: 960px) {
  .nav-items_item i {
    color: #000;
	margin: 0;
  }
}


/* ハンバーガーメニュー */
.header_hamburger {
  width: 48px;
  height: 100%;
  margin-top: 5px;
}

.hamburger {
  background-color: transparent;
  border-color: transparent;
  z-index: 9999;
  font-family: "Concert One", sans-serif;
}

.hamburger::after {
	content: "MENU";
	font-size: 13px;
	color: #d1eff9;
}

@media screen and (min-width: 960px) {
  .hamburger {
    display: none;
  }
}

.hamburger span {
  width: 100%;
  height: 3px;
  background-color: #d1eff9;
  position: relative;
  transition: ease .4s;
  display: block;
  border-radius: 10px;
}

.hamburger span:nth-child(1) {
  top: 0;
}

.hamburger span:nth-child(2) {
  margin: 6px 0;
}

.hamburger span:nth-child(3) {
  top: 0;
}


/* ハンバーガーメニュークリック後のスタイル */
.header_nav.active {
  transform: translateX(0);
  background: linear-gradient(to bottom, #bbd9f1, #e7d2f7, #ffbfd4, #f8d7a4);
}

.hamburger.active::after {
	content: "CLOSE";
  color: #fff;
}

.hamburger.active span {
  background-color: #fff;
}

.hamburger.active span:nth-child(1) {
  top: 9px;
  transform: rotate(45deg);
}

.hamburger.active span:nth-child(2) {
  opacity: 0;
}

.hamburger.active span:nth-child(3) {
  top: -9px;
  transform: rotate(-45deg);
}



/*=============
banner area
=============*/
#bannerArea li {
	/*margin: 0 15px;*/
	margin: 0;
}

.metaslider.ms-theme-clarity .flexslider {
	margin-bottom: 0 !important;
}


/*=============
content  area
=============*/
#movie, #flow, #contact {
	width: 100%;
	background: url("../img/backimage.svg") repeat;
	margin: 0;
	padding: 0;
}

#apply, #eligibility {
	width: 100%;
	margin: 0;
	padding: 0;
}

#movie #content,
#flow #content,
#contact #content {
	width: 100%;
	padding: 50px 20px;
	background: rgba(255,255,255,0.9);
}

#apply #content,
#eligibility #content {
	width: 100%;
	padding: 30px 20px;
}

#movie #content div {
	aspect-ratio: 16 / 9;
	margin: 20px auto;
}

#movie #content iframe {
	width: 100%;
	height: 100%;
}

#message {
	width: 100%;
	background: url("../img/message_back-sp.jpg") 50% / cover no-repeat;
	margin: 0;
	padding: 0;
}

#message #content {
	width: 100%;
	padding: 50px 20px;
	background: rgba(0,0,0,0.3);
}

#message #content h2 {
	width: 70%;
	margin: -10px auto 10px;
}

#message #content div {
	color: #fff;
	text-align: center;
	font-weight: bold;
	font-size: 11px;
	line-height: 2em;
}

#group {
	width: 100%;
	background: url("../img/backimage.png") 50% / cover no-repeat;
	margin: 0;
	padding: 0;
}

#group #content {
	width: 100%;
	padding: 50px 20px;
}

#group #content .ds-logo {
	width: 30%;
	margin: 0 auto 10px;
}

#group #content h2 {
	color: #000;
	font-size: 30px;
	font-family: "RocknRoll One", sans-serif;
	text-align: center;
	font-weight: normal;
}

#group #content ul.group_info {
	padding: 0;
	justify-content: space-between;
	display:flex;
	flex-wrap:wrap;
}

#group #content li.group_img {
	width: 47.093%;
	position: relative;
	margin: 0 0 25px 0;
}

#group #content div.group_name {
	width: 85%;
	text-align: center;
	font-size: 11px;
	font-family: "RocknRoll One", sans-serif;
	padding: 0.3em 0;
    margin: -5px auto 0;
    color: #000;
    background: #fff;
    box-shadow: 0px 0px 0px 5px #fff;
    border: dashed 1px #000;
    border-radius: 8px;
	position: relative;
	z-index: 10;
}

#group #content ul.sns_items {
    text-align: center;
	margin: 15px auto 0;
}

#group #content li.sns_item {
    display: inline;
	margin: 0 5px 0 0;
}

#group #content li.sns_item:last-child {
	margin: 0;
}

#group #content li.sns_item i {
    color: #000;
	font-size: 15px;
}

#flow #content .period {
	margin: 30px auto 70px;
	padding: 24px 0;
	border-radius: 24px;
	width: calc(100% - 32px);
	background: linear-gradient(316deg, #ffa753, #ffaac3, #83daff);
	text-align: center;
}

#flow #content .period .text1 {
	width: 149px;
	height: 46px;
	background: rgb(255, 255, 255);
	border-radius: 15px;
	margin: 0 auto;
}

#flow #content .period .text1 p {
	font-size: 20px;
	font-family: "RocknRoll One", sans-serif;
	font-weight: 400;
	letter-spacing: 0.2em;
	line-height: 2.3;
	opacity: 0.8;
	text-align: center;
	background: linear-gradient(316deg, #ffa753, #ffaac3, #83daff);
	-webkit-background-clip: text;
	  -webkit-text-fill-color: transparent;	
}

#flow #content .period .text2 {
	margin: 15px 0 0;
}

#flow #content .period .text2 i {
	color: #fff;
	font-size: 28px;
	position: relative;
	top: 8px;
	line-height: 1.5;
}

#flow #content .period .text2 .datetime {
	color: #fff;
	font-family: "Racing Sans One", sans-serif;
	font-weight: 400;
	line-height: 1.2;
}

#flow #content .period .text2 .datetime div {
	display: inline;
}

#flow #content .period .text2 .datetime .date {
	font-size: 54px;
}

#flow #content .period .text2 .datetime .dayofweek {
	font-size: 24px;
	margin: 0 0 9px;
	font-family: "RocknRoll One", sans-serif;
}

#flow #content .period .text2 .datetime .time {
	font-size: 32px;
	margin: 12px 0 0;
}

#flow #content div.steps {
	border: 3px solid #333;
	box-shadow: 7px 8px 0px #333;
	border-radius: 17px;
	flex: none;
	margin: 0 11px 0 0;
	padding: 0 0 19px;
	width: calc(100% - 11px);
	z-index: -1;
}

#flow #content div.no1 {
	background: rgb(60, 196, 239);
}

#flow #content div.no2 {
	background: rgb(160, 130, 217);
}

#flow #content div.no3 {
	background: rgb(255, 109, 156);
}

#flow #content div.no4 {
	background: rgb(146, 230, 98);
}

#flow #content .steps p.number {
	color: #333;
	flex: none;
	font-family: "Racing Sans One", sans-serif;
	font-size: 72px;
	font-weight: 700;
	height: auto;
	letter-spacing: 0.01em;
	line-height: 1.4;
	margin: -45px 0px 0px 13px;
	text-align: left;
	width: calc(100% - 13px);
	justify-content: flex-start;
}

#flow #content .steps img {
	height: 139px;
	left: 22px;
	margin: 0;
	mix-blend-mode: screen;
	opacity: 0.2;
	position: absolute;
	width: 148px;
	z-index: 0;
}

#flow #content .items {
	margin: -29px 8px 0px 8px;
	padding: 0px;
	width: calc(100% - 16px);
	position: relative;
	z-index: 9;
}

#flow #content .steps .items p {	
	line-height: 1.4;
	text-align: center;	
}

#flow #content .steps .items p.text1 {
	font-family: "RocknRoll One", sans-serif;
	color: #fff;
	font-size: 32px;
	margin: 0 0 17px;
}

#flow #content .steps .items p.text2 {
	color: #333;
	font-size: 18px;
	font-weight: bold;
}

#flow #content .steps .items p.text3 {
	color: #333;
	font-size: 13px;
	margin: 20px 0 5px;
}

#flow #content .arrows {
	margin: 20px 0 10px;
	text-align: center;
}

#flow #content .arrows p {
	font-size: 25px;
	height: 35px;
}

#flow #content .pass div {
	width: calc(100% - 10px);
	margin: 20px 10px 0 0;
	border: 5px solid #333;
	border-radius: 21px;
	background: url("../img/passed_back.png") center center / cover, linear-gradient(45deg, #ffa753, #ffaac3, #83daff);
	box-shadow: 16px 24px 0 #333;
}

#flow #content .pass p.text0 {
	font-size: 17px;
	margin: 70px 0 0;
}

#flow #content .pass p.text1,
#flow #content .pass p.text2, 
#flow #content .pass p.text3 {
	color: #fff;
	font-family: "RocknRoll One", sans-serif;
	font-style: italic;
	line-height: 1.4;
}

#flow #content .pass p.text1 {
	font-size: 24px;
	margin: 10px 0 0 10px;
}

#flow #content .pass p.text2 {
	font-size: 54px;
	margin: 0 0 0 10px;
}

#flow #content .pass p.text3 {
	font-size: 24px;
	text-align: right;
	margin: 0 10px 0 0;
	position: relative;
	top: -20px;
}

#flow #content .advisors {
	width: 100%;
	margin: 80px auto 0;
}

#flow #content .advisors .catchphrase img.advisor {
	width: 223px;
	margin: 0 0 30px -19px;
}

#flow #content .advisors .catchphrase p.text0 {
	font-size: 16px;
	line-height: 1.6;
	margin: -53px 0 0;
	font-family: "RocknRoll One", sans-serif;
	text-align: center;
}

#flow #content .advisors .catchphrase img.diamond {
	width: 48px;
	width: 48px;
	margin: 25px auto;
}

#flow #content .introduction {
	width: 100%;
	margin: 150px auto 0;
}

#flow #content .introduction .person {
	border-radius: 16px;
	padding: 40px 20px 20px;
	margin: 0 auto 170px;
	background: linear-gradient(45deg, #ffa753, #ffaac3, #83daff);
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.35);
}

#flow #content .introduction .person:nth-child(3n) {
	margin-bottom:40px;
}

#flow #content .introduction .person .advisor {
	width: 160px;
	height: 160px;
	margin: -152px auto 0;
	padding: 0;
	border: 7px solid #fff;
	border-radius: 50%;
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
	position: relative;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
}

#flow #content .introduction .person .yamamoto {
	background: url("../img/advisor1.jpg") center center / cover;
}

#flow #content .introduction .person .ran {
	background: url("../img/advisor2.jpg") center center / cover;
}

#flow #content .introduction .person .pinky {
	background: url("../img/advisor3.jpg") center center / cover;
}

#flow #content .introduction .person .caroline {
	background: url("../img/advisor4.jpg") center center / cover;
}

#flow #content .introduction .person div {
	margin: 28px 0 0;
	position: relative;
}

#flow #content .introduction .person p.text1,
#flow #content .introduction .person p.text2,
#flow #content .introduction .person p.text3 {
	font-size: 16px;
	color: #fff;
	margin: 0 0 6px;
	text-align: center;
	line-height: 1.4;	
}

#flow #content .introduction .person p.text1,
#flow #content .introduction .person p.text2 {
	font-weight: 700;
}

#flow #content .introduction .person p.text2 {
	font-size: 20px;
	margin: 0 0 16px;
}

#flow #content .introduction .person p.text3 {
	font-size: 15px;
	margin: 0 0 20px;
	text-align: left;
}

#flow #content .introduction .person .advisor_sns {
	margin: 0 auto 40px;
	text-align: center;
}

#flow #content .introduction .person a {
	background: #fff;
	color: #ffaac3;
	border-radius: 50%;
	font-size: 24px;
	width: 46px;
	height: 46px;
	padding: 5px 11px 11px;
	display: inline-block;
	margin: 0 0 0 10px;
}

#flow #content .introduction .person a:first-child {
	margin: 0;
}

#apply #content .info {
	width: 100%;
	border: 3px solid #e5e5e5;
	border-radius: 51px;
	background: url("../img/apply_back.svg") repeat rgba(255,255,255,0.9);
	background-blend-mode: lighten;
	margin: 50px 0 0;
}

#apply #content .info .application {
	margin: -147px 0 0 30px;
	height: 191px;
}

#apply #content .info .application .title {
	position: relative;
	top: 50px;
	right: 135px;
	z-index: 0;
	float: right;
}

#apply #content .info .application .title p {
	z-index: 3;
	font-size: 18px;
	line-height: 1.4;
	position: relative;
	top: 105px;
	text-align: center;
	width: 200px;
}

#apply #content .info .application .title img {
	width: 200px;
}

#apply #content .info .application .amu {
	z-index: 4;
	position: relative;
	float: right;
}

#apply #content .info .application .amu div {
	position: relative;
	top: 100px;
	right: 130px;
}

#apply #content .info .application .amu div p.groupname {
	font-size: 13px;
	color: #616161;
	line-height: 1.4;
	text-align: center;
}

#apply #content .info .application .amu div p.parsonname {
	font-size: 15px;
	color: #616161;
	line-height: 1.4;
	text-align: center;
	margin: 0;
}

#apply #content .info .application .amu img {
	width: 173px;
	margin: -120px 0 0;
}

#apply #content .info .items {
	margin: 200px 0 0;
	height: 1000px;
}

#apply #content .info .items .photo .photo1,
#apply #content .info .items .photo .photo2 {
	width: 164px;
	border: 8px solid #fff;
	border-radius: 12px;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
	position: relative;
}

#apply #content .info .items .photo .photo1 {
	transform: rotate(-10deg);
	left: 10px;
}

#apply #content .info .items .photo .photo2 {
	transform: translate(-32px, 58px) rotate(10deg);
	top: -280px;
	left: 180px;
}

#apply #content .info .items .number {
	margin: -180px auto 0;
	text-align: center;
}

#apply #content .info .items .number .item {
	width: 280px;
	margin: 0 auto 30px;
}

#apply #content .info .items .number .item .numbers {
	width: 40px;
	height: 40px;
	margin: -30px 0 0;
	background: #fff;
	border: 4px solid #3cd066;
	border-radius: 50%;
	z-index: 1;
	position: relative;
}

#apply #content .info .items .number .item .numbers p {
	color: #3cd066;
	font-size: 20px;
	font-weight: 800;
	line-height: 1.6;
}

#apply #content .info .items .number .item .text {
	width: 280px;
	height: 80px;
	background: #3cd066;
	border-radius: 34px;
	padding: 0px 16px;
	position: relative;
	top: -20px;
}

#apply #content .info .items .number .item .text p {
	font-size: 21px;
	color: #fff;
	font-weight: 700;
	line-height: 3.7;
}

#apply #content .info .items .okurudake {
	color: #333;
	font-size: 22px;
	font-weight: 500;
	margin: -20px auto 0;
	text-align: center;
}

#apply #content .info .caution {
	color: #616161;
	font-size: 15px;
	line-height: 2;
	font-weight: 400;
	position: relative;
	top: -290px;
	left: 15px;
}

#apply #content .period {
	margin: -230px 16px 0;
	padding: 24px 0;
	border-radius: 24px;
	width: calc(100% - 32px);
	background: linear-gradient(316deg, #ffa753, #ffaac3, #83daff);
	text-align: center;
}

#apply #content .period .text1 {
	width: 149px;
	height: 46px;
	background: rgb(255, 255, 255);
	border-radius: 15px;
	margin: 0 auto;
}

#apply #content .period .text1 p {
	font-size: 20px;
	font-family: "RocknRoll One", sans-serif;
	font-weight: 400;
	letter-spacing: 0.2em;
	line-height: 2.3;
	opacity: 0.8;
	text-align: center;
	background: linear-gradient(316deg, #ffa753, #ffaac3, #83daff);
	-webkit-background-clip: text;
	  -webkit-text-fill-color: transparent;	
}

#apply #content .period .text2 {
	margin: 15px 0 0;
}

#apply #content .period .text2 i {
	color: #fff;
	font-size: 28px;
	position: relative;
	top: 8px;
	line-height: 1.5;
}

#apply #content .period .text2 .datetime {
	color: #fff;
	font-family: "Racing Sans One", sans-serif;
	font-weight: 400;
	line-height: 1.2;
}

#apply #content .period .text2 .datetime div {
	display: inline;
}

#apply #content .period .text2 .datetime .date {
	font-size: 54px;
}

#apply #content .period .text2 .datetime .dayofweek {
	font-size: 24px;
	margin: 0 0 9px;
	font-family: "RocknRoll One", sans-serif;
}

#apply #content .period .text2 .datetime .time {
	font-size: 32px;
	margin: 12px 0 0;
}

#apply #content .apply {
	margin: 57px 0 0;
	
}

#apply #content .apply img {
	height: 139px;
	left: 22px;
	margin: 0;
	mix-blend-mode: screen;
	opacity: 0.2;
	position: absolute;
	width: 148px;
	z-index: 0;
}

#apply #content .apply a {
	background: #3cd066;
	border-radius: 34px;
	box-shadow: 0px -8px 0px rgba(0, 0, 0, 0.2) inset;
	width: 100%;
	height: 131px;
	font-size: 28px;
	line-height: 1.3;
	color: #fff;
	font-weight: 700;
	text-align: center;
	padding: 27px 0 20px;
	display: block;
}

#eligibility  #content .midashi {
	font-size: 20px;
	color: #616161;
	font-weight: 700;
	margin: 30px 0 19px;
	text-align: center;
}

#eligibility  #content .description1 {
	background: rgba(152, 225, 253, 0.17);
	border-radius: 11px;
	padding: 0 29px;
	margin-bottom: 30px;
	display: flex;
	align-items: center;
}

#eligibility  #content .description1:last-child {
	margin-bottom: 80px;
}

#eligibility  #content .description1 .dot {
	background: #98e1fd;
	border-radius: 50%;
	height: 16px;
	width: 16px;
}

#eligibility  #content .description1 p {
	font-size: 18px;
	color: #333;
	font-weight: 400;
    line-height: 1.4;
    margin: 24px 16px;
}

#eligibility  #content .description2 {
	background: rgba(152, 225, 253, 0.17);
	border-radius: 11px;
	padding: 6px 16px;
	width: 100%;
	margin-bottom: 80px;
}

#eligibility  #content .description2 p {
	font-size: 15px;
	color: #616161;
	font-weight: 400;
    line-height: 1.8;
    margin: 24px 16px;
    text-align: left;
}







#content h2 {
	/*color: #8d5cbc;
	font-size: 30px;
	font-family: "Rammetto One", sans-serif;*/
	margin: 0 auto 40px;
}

#content ul li {
	list-style: none;
}

#content .title {
	font-size: 13px;
}

#pageTop {position:fixed; bottom:10px; right:10px; z-index:9;}
#pageTop a {background:url(../img/page_top_icon.png) center no-repeat; width:60px; height:0; padding:60px 0 0; display:block; overflow:hidden;}


@media screen and (min-width: 960px) {
  #content {
    width: 960px;
    padding: 0;
    margin: 0 auto;
  }
  #content h2 {
	/*font-size: 40px;*/
	  margin: 50px auto 60px;
	  width: 50%;
  }
  #content .title {
  	font-size: 15px;
  }

#movie #content {
	padding: 50px 0 120px;
}
#message #content {
	padding: 50px 0 140px;
}
#flow #content {
	width: 100%;
	padding: 50px 0 1px;
}
#movie #content div {
	width: 800px;
}
#message {
	background: url("../img/message_back-pc.jpg") 50% / cover no-repeat;
}
#message #content h2 {
	width: 30%;
	margin: 20px auto 40px;
}
#message #content div {
	font-size: 22px;
}
#group #content .ds-logo {
	width: 200px;
	margin: 60px auto 0;
}
#group #content h2 {
	font-size: 40px;
	width: 100%;
	margin: 30px auto 60px;
}
#group #content ul.group_info {
	justify-content: flex-start;
}
#group #content li.group_img {
	width: 31.5%;
	margin-right: 2.75%;
	margin-bottom: 70px;
}
#group #content li.group_img:nth-child(3n) {
	margin-right:0;
}
#group #content div.group_name {
	width: 70%;
	font-size: 20px;
	padding: 0.4em 0;
    margin: -20px auto 0;
    box-shadow: 0px 0px 0px 10px #fff;
	border: dashed 2px #000;
}
#group #content ul.sns_items {
	margin: 30px auto 0;
}
#group #content li.sns_item {
	margin: 0 15px 0 0;
}
#group #content li.sns_item i {
    transition : all 0.5s ease 0s;
	font-size: 30px;
}
#group #content li.sns_item i:hover {
    color: #2cd6fa;
}
#flow #content .period {
	margin: 30px auto 100px;
	padding: 35px 0;
	width: 600px;
}
#flow #content .period .text1 {
	width: 185px;
}
#flow #content .period .text1 p {
	font-size: 28px;
	line-height: 1.6;
}
#flow #content .period .text2 {
	margin: 24px 0 0;
}
#flow #content .period .text2 .datetime {
	float: left;
	margin-left: 20px;
}
#flow #content .period .text2 .datetime .date {
	font-size: 80px;
}
#flow #content .period .text2 .datetime .dayofweek {
	font-size: 32px;
	/*margin: 0 0 20px;*/
}
#flow #content .period .text2 .datetime .time {
	margin: 0;
	display: block;
}
#flow #content .period .text2 i {
	float: left;
	margin: 20px 10px 0 5px;
}
#flow #content div.steps {
	border: 5px solid #333;
	box-shadow: 16px 14px 0px #333;
	flex-direction: column;
    flex-wrap: nowrap;
	margin: 0 auto;
	width: 570px;
}
#flow #content .steps img {
	left: 31%;
}
#flow #content .steps p.number {
	margin: 0 0 0 32px;
	width: calc(100% - 32px);
}
#flow #content .steps .items {
	margin: -69px 0px 0px 0px;
	width: 100%;
}
#flow #content .steps .items p.text1 {
	font-size: 48px;
	margin: 10px 0 20px;
}
#flow #content .steps .items p.text2 {
	font-size: 20px;
}
#flow #content .steps .items p.text3 {
	font-size: 14px;
	margin: 20px 0 15px;
}
#flow #content .arrows {
	margin: 30px 0 15px;
}
#flow #content .arrows p {
	font-size: 30px;
	height: 45px;
}
#flow #content .pass,
#flow #content .advisors {
	width: 960px;
	margin: 0 auto;
}
#flow #content .pass div {
	width: 960px;
	margin: 30px auto 0;
	padding: 65px 0;
}
#flow #content .pass p.text0 {
	font-size: 36px;
	margin: 150px 0 0;
}
#flow #content .pass p.text1 {
	font-size: 40px;
	margin: 0;
	position: relative;
	top: 87px;
	left: 20px;
}
#flow #content .pass p.text2 {
	font-size: 72px;
	margin: 0;
	position: relative;
	left: 275px;
}
#flow #content .pass p.text3 {
	font-size: 40px;
	margin: 0;
	position: relative;
	top: -70px;
	right: 40px;
}
#flow #content .advisors {
	margin: 170px auto 0;
	width: 100%;
}
#flow #content .advisors .catchphrase img.advisor {
	width: 480px;
	/*margin: 0 0 0 -40px;*/
	margin: 0 0 0 250px;
}
#flow #content .advisors .catchphrase p.text0 {
	font-size: 36px;
}
#flow #content .advisors .catchphrase img.diamond {
	width: 67px;
	width: 67px;
	margin: 40px auto 0;
}
#flow #content .introduction {
	padding: 0;
	justify-content: flex-start;
	display:flex;
	flex-wrap:wrap;
}
#flow #content .introduction .person {
	width: 47.093%;
	margin-right: 2.75%;
	margin-bottom: 180px;
}
#flow #content .introduction .person:first-child {
	margin-left: 2.75%;
}
#flow #content .introduction .person:nth-child(3n) {
	/*margin-right:0;*/
	margin-bottom:120px;
}
#flow #content .introduction .person {
	border-radius: 30px;
	/*width: 440px;*/
	width: 29.6%;
	padding: 40px 20px;
	margin-bottom:120px;
}
/*#flow #content .introduction .person:nth-child(3n),
#flow #content .introduction .person:nth-child(4n) {
	margin-bottom:120px;
}*/
#flow #content .introduction .person .advisor {
	width: 220px;
	height: 220px;
	margin: -152px auto -110px;
}
#flow #content .introduction .person div {
	margin: 150px 0 0;
}
#flow #content .introduction .person p.text1 {
	font-size: 14px;
}
#flow #content .introduction .person p.text2 {
	font-size: 24px;
}
#flow #content .introduction .person p.text3 {
	font-size: 16px;
}
#flow #content .introduction .person a {
	margin: 0 0 0 15px;
}
#apply #content .info {
	width: 960px;
	height: 800px;
	margin: 50px auto 0;
}
#apply #content .info .application {
	margin: 0 63px 0 0;
	width: calc(100% - 63px);
}
#apply #content .info .application .title {
	top: -120px;
}
#apply #content .info .application .amu div {
	top: 180px;
	left: 60px;
}
#apply #content .info .application .amu div p.groupname {
	font-size: 16px;
}
#apply #content .info .application .amu div p.parsonname {
	font-size: 20px;
	margin: 7px 0 0;
}
#apply #content .info .application .amu img {
	width: 240px;
	position: relative;
	left: 260px;
}
#apply #content .info .items {
	margin: -50px 0 0;
	height: 582px;
}
#apply #content .info .items .photo .photo1,
#apply #content .info .items .photo .photo2 {
	width: 240px;
}
#apply #content .info .items .photo .photo2 {
	top: -400px;
	left: 250px;
}
#apply #content .info .items .number {
	position: relative;
	top: -500px;
	left: 220px;
}
#apply #content .info .items .number .item .numbers {
	width: 64px;
	height: 64px;
	margin: -28px -40px 0 0;
	top: 10px;
	right: 30px;
}
#apply #content .info .items .number .item .numbers p {
	font-size: 36px;
}
#apply #content .info .items .number .item .text {
	width: 335px;
}
#apply #content .info .items .number .item .text p {
	font-size: 24px;
	line-height: 3.3;
}
#apply #content .info .items .okurudake {
	font-size: 24px;
	position: relative;
	top: -480px;
	left: 250px;
}
#apply #content .info .caution {
	line-height: 1.4;
	font-size: 20px;
	top: -40px;
	left: 20px;
}
#apply #content .period {
	margin: 0;
	padding: 35px 0;
	width: 600px;
	position: relative;
	top: -100px;
	left: 700px;
}
#apply #content .period .text1 {
	width: 185px;
}
#apply #content .period .text1 p {
	font-size: 28px;
	line-height: 1.6;
}
#apply #content .period .text2 {
	margin: 24px 0 0;
}
#apply #content .period .text2 .datetime {
	float: left;
	margin-left: 20px;
}
#apply #content .period .text2 .datetime .date {
	font-size: 80px;
}
#apply #content .period .text2 .datetime .dayofweek {
	font-size: 32px;
	/*margin: 0 0 20px;*/
}
#apply #content .period .text2 .datetime .time {
	margin: 0;
	display: block;
}
#apply #content .period .text2 i {
	float: left;
	margin: 20px 10px 0 5px;
}
#apply #content .apply {
	width: 737px;
	margin: -150px auto 30px;
}
#apply #content .apply img {
	position: relative;
	top: 160px;
	left: -150px;
}
#apply #content .apply a {
	width: 737px;
	height: 171px;
	font-size: 40px;
	line-height: 1.4;
	transition: .3s
}
#apply #content .apply a:hover {
	transform: translateY(8px);
	box-shadow: none;
}
#eligibility  #content .midashi {
	font-size: 28px;
	margin: 30px 0 40px;
}
#eligibility  #content .description1 {	
	width: 880px;
	margin: 0 auto 40px;
}
#eligibility  #content .description1 p {
	font-size: 20px;
}
#eligibility  #content .description2 {	
	width: 960px;
	margin: 0 auto 80px;
}
#eligibility  #content .description2 p {
	font-size: 16px;
    line-height: 2.5;
}
	
	
	
	
	


  #pageTop {bottom:20px; right:20px;}
  #pageTop a {transition-property: opacity; transition-duration: 0.5s;}
  #pageTop a:hover {opacity: 0.7;}
}






/*=============
footer  area
=============*/
footer {
	width: 100%;
	background: #d1eff9;
	margin: 30px 0 0;
	padding: 0 0 50px;
	text-align: center;
}

.footer-logo {
	width: 50%;
	display: block;
	position: relative;
	top: -50px;
	left: 50%;
	transform: translateX(-50%);
}

footer ul li {
	display: inline-block;
	width: fit-content;
}

.footer-sns {
	position: relative;
	top: -10px;
}

.footer-menu {
	position: relative;
	top: 15px;
}

.footer-sns li.fc a {
    font-size: 20px;
    font-family: "Cherry Bomb One", system-ui;
}

.footer-sns i {
	font-size: 25px;
	margin: 0 0 0 20px;
}

.footer-sns i.fa-x-twitter {
	margin-left: 0;
}

.footer-menu li {
	font-size: 10px;
	margin: 0 0 0 15px;
}

.footer-menu li:first-child {
	margin-left: 0;
}

.copyright {
	font-size: 10px;
	position: relative;
	top: 30px;
	font-family: "Rammetto One", sans-serif;
}

@media screen and (min-width: 960px) {
	footer {
		margin: 100px 0 0;
	}
	footer a {
  		transition : all 0.5s ease 0s;
  	}
	footer a:hover {
		color: #2cd6fa;
	}
	.footer-logo {
		width: 300px !important;
		top: -85px;
	}
	.footer-sns {
		top: -25px;
	}
	.footer-menu {
		top: 12px;
	}
	.footer-sns li.fc a {
	    font-size: 35px;
	}
	.footer-sns i {
		font-size: 35px;
		margin: 0 0 0 30px;
	}
	.footer-menu li {
		font-size: 12px;
		margin: 0 0 0 40px;
	}
	.copyright {
		top: 35px;
	}
}




/*=============
FORM
=============*/
#contact {
	padding: 0 0 30px;
	font-size: 16px;
}

#contact #content {
	padding: 50px 20px 100px;
	margin: 0 0 -30px;
}

#contact h2 {
	color: #000;
	font-size: 30px;
	font-family: "RocknRoll One", sans-serif;
	font-weight: normal;
}

/*#contact #content p:nth-child(16n),
#contact #content p:nth-child(19n) {
	margin-top: -20px;
}*/

.c-form__required {
	color: #ef8383;
}

input, textarea {
  padding: 10px 10px;
  border: 1px solid #cecece;
  background: #fff;
  border-radius: 5px;
  background-clip: padding-box;
  box-sizing: border-box;
  width: 100%;
}

select {
	padding: 5px 5px;
	border: 1px solid #cecece;
}

input[type=file] {
	padding: 0;
	border: none;
	background: none;
}

textarea {
  height:100px;
}

.mw_wp_form .error {
	color: #ef8383 !important;
}

.btn {
  background-color: #06c6ef;
  padding: 12px 45px;
  margin-bottom: 30px;
  border: 1px solid #06c6ef;
  display: block;
  cursor: pointer;
  color: #fff;
}

.conf {
	margin-top: 15px;
}

.backBtn {
	background-color: #93e9fb;
	border: 1px solid #93e9fb;
}

@media screen and (min-width: 960px) {
	#contact {
		padding: 0 0 60px;
		font-size: 18px;
	}
	#contact #content {
		padding: 100px 0 200px;
		margin: 0 0 -60px;
	}
	#contact .inner {
    	width: 960px;
    	padding: 0;
    	margin: 0 auto;
  	}
	#contact h2 {
		width: 100%;
		font-size: 40px;
	}
	textarea {
		height:200px;
	}
	.btn {
		width: 50%;
		margin: 0 auto 40px;
		transition: .5s;
	}
	.btn:hover {
		opacity: 0.7;
	}
	.conf {
		margin-top: 20px;
	}
	.backBtn {
		margin-bottom: 60px;
	}
}