@charset "UTF-8";
/* 
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin:0;
  padding:0;
  border:0;
  outline:0;
  font-size:100%;
  vertical-align:baseline;
  background:transparent;
  list-style: none ;
  box-sizing: border-box;/**/
}

body {
  line-height:1;
}
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section { 
  display:block;
}
nav ul {
  list-style:none;
}
blockquote, q {
  quotes:none;
}
blockquote:before, blockquote:after,
q:before, q:after {
  content:'';
  content:none;
}
a {
  margin:0;
  padding:0;
  font-size:100%;
  vertical-align:baseline;
  background:transparent;
}
/* change colours to suit your needs */
ins {
  background-color:#ff9;
  color:#000;
  text-decoration:none;
}
/* change colours to suit your needs */
mark {
  background-color:#ff9;
  color:#000; 
  font-style:italic;
   font-weight:bold;
}
del {
  text-decoration: line-through;
}
abbr[title], dfn[title] {
  border-bottom:1px dotted;
  cursor:help;
}
table {
  border-collapse:collapse;
  border-spacing:0;
}
/* change border colour to suit your needs */
hr {
  display:block;
  height:1px;
  border:0;   
  border-top:1px solid #cccccc;
  margin:1em 0;
  padding:0;
}
input, select {
  vertical-align:middle;
}



html {
  overflow-x: hidden;
  font-size: 10px;
}

html, html a, body {
  -webkit-font-smoothing: antialiased;
}

body {
  padding:0 !important;
  background: url(/special/gokakukigan/img/bg.png);
}
@media (max-width: 767px) {
  body {
    background-image: url(/special/gokakukigan/img/bg_cloud_full-sp.png), url(/special/gokakukigan/img/bg.png);
    background-repeat: no-repeat , repeat;
    background-size: cover , auto;
    background-position: center;
  }
}

h1, h2, h3, h4, h5, h6, p,li,dt,dd,span,td,th,a,summary {
  font-size: 1.7rem;
  font-weight: 400;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "メイリオ", sans-serif;
  line-height: 1.8em;
  letter-spacing: 0.1em;
  word-wrap:break-word;
  font-weight: bold;
}

.orange_ttl { color: #e9483c; font-weight: bold; }
.purple_ttl { color: #551f65; font-weight: bold; }
.marker { background:linear-gradient(transparent 60%, #fff27e 60%); }


img {
	max-width: 100%;
  /*vertical-align: top;*/
	height: auto;
}
a img {
	transition: .8s;
	opacity: 1;
	position: relative;
	z-index: 0;
}
a:hover img {
	opacity: .7;
}

.sp_none {
  display: inline-block;
}
.pc_none {
  display: none;
}

@media screen and (min-width: 768px) {
	a[href^="tel:"] {
		pointer-events: none;
	}
}
@media (max-width: 767px) {
	.pc_none {
		display: inline-block;
	}
	.sp_none {
		display: none;
	}
}

/*
*/

.bg_cloud {
	width: 100%;
	height: 120vh;
	background: url(/special/gokakukigan/img/bg_cloud.png) no-repeat;
	background-size: cover;
	background-attachment: fixed;
	position: fixed;
  top: 0;
	z-index: -1;
	/*animation-name: clouds;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
    animation-direction: alternate;
    animation-duration: 1.5s;*/
}
@keyframes clouds {
    0% {
        transform: translate(0,0px);
    }
    100% {
        transform: translate(0,-15px)
    }
}

header {
	/*background: url(/special/gokakukigan/img/header_bg.png) no-repeat center top;*/
	max-width: 1140px;
	width: 92%;
	/*max-height: 220px;*/
	box-sizing: border-box;
	margin: 0 auto -2px;
	text-align: center;
}
header img {
  vertical-align: top;
} 


@media (max-width: 767px) {
  .bg_cloud {
    background:none;
    animation: none;
  }
  header {
    margin: 60px auto -2px;
  }
}




/*
*/

main {
  overflow-x: hidden;
}
main section {
  position: relative;
}
.contents {
	background: url(/special/gokakukigan/img/contents_bg.png) repeat-y center;
	background-size: contain;
	max-width: 1140px;
	width: 92%;
	box-sizing: border-box;
	margin: 0 auto;
	text-align: center;
}
.yellow_bg {
	background: url(/special/gokakukigan/img/contents_bg-yellow.png) repeat-y center;
	background-size: contain;
  width: 100%;
}
.white_box {
  background: #fff;
}
.purple_box {
  background: #ebe7f1;;
}
.yellow_box {
  background: #fffaf1;
}
.gray_box {
  background: #efefef;
}

h2 {
  font-size: 3rem;
  margin-bottom: 50px;
}
h2 strong {
  font-size: 1.5em;
}
h3 {
  font-size: 2.5rem;
  margin-bottom: 50px;
}
.mizukiri_ttl::before {
  content: '';
  width: 70px;
  height: 45px;
  display: block;
  background: url(/special/gokakukigan/img/mizuhiki_l.png) no-repeat;
  background-size: contain;
  margin: 0 auto 20px;
}
.caution {
  font-size: 1.4rem;
}

.point {
  max-width: 920px;
  box-sizing: border-box;
  margin: 0 auto 30px;
  padding: 0 150px 30px;
  text-align: left;
}
.point h3 {
  font-size: 2em;
  line-height: 1.2em;
  display: inline-block;
  padding: 0 20px;
  margin: -10px 0 30px -50px;
  transform: rotate(-10deg);
}
.point ul li {
  font-weight: bold;
  margin-bottom: 10px;
  padding-left: 50px;
  position: relative;
}
.point ul li::before {
  content: '';
  width: 32px;
  height: 24px;
  display: block;
  background: url(/special/gokakukigan/img/mizuhiki_s.png) no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  top: 2px;
}

.newRed {
	color: #e9483c;
}

.btn {
  display: inline-block;
  text-decoration: none;
  width: 80%;
  max-width: 600px;
  line-height: 80px;
  border-radius: 8px;
  color: #fff;
  background: #e9483c;
  position: relative;
  transition: .5s;
}
.btn::after {
  content: '';
  width: 9px;
  height: 15px;
  display: block;
  background: url(/special/gokakukigan/img/btn_icon.png) no-repeat;
  background-size: contain;
  position: absolute;
  right: 30px;
  top: 50%;
  margin-top: -7.5px;
  transition: .5s;
}
.btn:hover {
  background: #b6a4c7;;
}
.btn:hover::after {
  right: 20px;
}
@media (max-width: 919px) {
  main section {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}
@media (max-width: 767px) {

  .contents {
    background-image: url(/special/gokakukigan/img/contents_bg-sp.png) ;
  }
  .yellow_bg {
    background-image: url(/special/gokakukigan/img/contents_bg-yellow-sp.png) ;
  }
  h2,h3,h4 {
    zoom: 60%;
    letter-spacing: 0.05em;
  }
  .point {
    margin: 0 auto 15px;
    padding: 0 20px 10px;
  }
  .point h3 {
    font-size: 2.5em;
    margin: -10px 0 30px -20px;
  }
  .point ul li {
    font-size: 1.25rem;
    margin-bottom: 10px;
    padding-left: 30px;
  }
  .point ul li::before {
    zoom: 60%;
    top: 7px;
  }
  .btn {
    line-height: 45px;
    font-size: 1.4rem;
  }
  .btn::after {
    zoom: 60%;
  }
}


/* cloud */

.cloud {
  position: absolute;
  display: inline-block;
  transition: .8s;
  z-index: 2;
}
.ttl_area .cloud_01 {
  top:100px;
  left: -48px;
}
.ttl_area .cloud_02 {
  top:60px;
  right: -47px;
}
.ttl_area .cloud_03 {
  bottom: 165px;
  right: 54px;
}
.ttl_area .cloud_04 {
  bottom: 81px;
  left: 38px;
}

.kinds .cloud_01 {
  top:300px;
  left: -118px;
}
.kinds .cloud_02 {
  top:285px;
  right: -16px;
}

.topchoice .cloud_01 {
  top:55px;
  left: -50px;
}
.topchoice .cloud_02 {
  top:111px;
  right: -16px;
}
.topchoice .cloud_03 {
  bottom: -44px;
  left: -49px;
}

.within .cloud_01 {
  top:111px;
  right: -16px;
}
.within .cloud_02 {
  bottom: -44px;
  left: -49px;
}

.chance .cloud_01 {
  top:90px;
  right: -16px;
}
.chance .cloud_02 {
  top: 1166px;
  left: -125px;
}
.chance .cloud_03 {
  top:1166px;
  right: -104px;
}
.chance .cloud_04 {
  bottom: 1020px;
  left: -76px;
}
.chance .cloud_05 {
  bottom: 902px;
  right: -16px;
}
.chance .cloud_06 {
  bottom: -38px;
  right: -16px;
}

.tuition .cloud_01 {
  top: 38px;
  left: -48px;
}
.tuition .cloud_02 {
  bottom: -45px;
  left: -28px;
}
.tuition .cloud_03 {
  bottom: -54px;
  right: -98px;
}

@media (max-width: 1099px) {
  .cloud_left{
    margin-left: -150px;
  } 
  .cloud_right{
    margin-right: -150px;
  } 

}
@media (max-width: 767px) {
  .cloud {
    zoom: 60%;
  }
  .ttl_area .cloud_01 {
    top: 45px;
    left: -45px;
  }
  .ttl_area .cloud_02 {
    top: 82px;
    right: 7px;
  }
  .ttl_area .cloud_03 {
    bottom: -75px;
    right: 69px;
  }
  .ttl_area .cloud_04 {
    bottom: 141px;
    left: 27px;
  }
  .kinds .cloud_01 {
    top: 405px;
    left: -69px;
  }
  .kinds .cloud_02 {
    top: 575px;
    right: 20px;
  }

  .topchoice .cloud_01 {
    top: -45px;
    left: 30px;
  }
  .topchoice .cloud_02 {
    top: -10px;
    right: 94px;
  }
  .topchoice .cloud_03 {
    bottom: -55px;
    left: 30px;
  }
  
  .within .cloud_01 {
    top: -10px;
    right: 94px;
  }
  .within .cloud_02 {
    bottom: -55px;
    left: 30px;
  }
  
  .chance .cloud_01 {
    top: -10px;
    right: 94px;
  }
  .chance .cloud_02 {
    top: 2100px;
    left: -65px;
  }
  .chance .cloud_03 {
    top: 2065px;
    right: 60px;
  }
  .chance .cloud_04 {
    bottom: 1530px;
    left: -46px;
  }
  .chance .cloud_05 {
    bottom: 1530px;
    right: 64px;
  }
  .chance .cloud_06 {
    bottom: -45px;
    right: 110px;
  }
  
  .tuition .cloud_01 {
    top: 18px;
    left: -8px;
  }
  .tuition .cloud_02 {
    bottom: -45px;
    left: 92px;
  }
  .tuition .cloud_03 {
    bottom: -54px;
    right: 32px;
  }

}

/*
*/

.ttl_area {
  margin-bottom: 110px;
}
.ttl_area .orange_ttl {
  font-size: 2.3rem;
  line-height: 1.8em;
  margin-bottom: 40px;
}
.ttl_area .orange_ttl span {
  font-size: 3.5rem;
}
.ttl_area .orange_ttl span strong {
  font-size: 3.9rem;

}
.ttl_area h1 {
  margin-bottom: 70px;
}
.ttl_area .read {
  line-height: 2.5em;;
}

@media (max-width: 767px) {
  .ttl_area {
    margin-bottom: 50px;
  }
  .ttl_area .orange_ttl {
    zoom: 60%;
  }
  .ttl_area h1 {
    margin-bottom: 20px;
  }
  .ttl_area .read {
    letter-spacing: 0;
    font-size: 1.25rem;
  }
}


.kinds {
  padding-bottom: 50px;
}
.omamori,
.examination {
  max-width: 920px;
  display: flex;
  gap: 0 15px;
  margin: 0 auto 80px;
}
.omamori li,
.examination li {
  width: calc((100% - 45px) / 4);
}
.omamori li a {
  display: inline-block;
  position: relative;
  transition: 0.4s;
}
.omamori li a:hover {
  filter: drop-shadow(2px 2px 0px #b6a4c7);
}
.omamori li a::after {
  content: '';
  background: url(/special/gokakukigan/img/vektor_s.png) no-repeat;
  background-size: contain;
  width: 43px;
  height: 25px;
  display: block;
  position: absolute;
  left: 50%;
  bottom: -30px;
  margin-left: -21.5px;
  transition: 0.4s;
}
.omamori li a:hover::after {
  bottom: -40px;
}

@media (max-width: 767px) {
  .kinds {
    padding-bottom: 20px;
  }
  .omamori,
  .examination {
    flex-wrap: wrap;
    margin-bottom: 40px;
  }
  .omamori {
    gap: 40px 15px;
  }
  .omamori li,
  .examination li {
    width: calc((100% - 15px) / 2);
  }
  .omamori li a::after {
    zoom: 60%;
    bottom: -20px;
  }
}


.topchoice {
  padding: 100px 0;
}
.selection_box {
  max-width: 920px;
  padding: 40px;
  box-sizing: border-box;
  margin: 0 auto 50px;
  position: relative;
}
.selection_box::after {
  content: '';
  background: url(/special/gokakukigan/img/vektor_s.png) no-repeat;
  background-size: contain;
  width: 43px;
  height: 25px;
  display: block;
  position: absolute;
  left: 50%;
  bottom: -15px;
  margin-left: -21.5px;
  transition: 0.4s;
}
.selection_box h3 {
  margin-bottom: 30px;
}
.comprehensive {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}

.comprehensive li {
  background: #fff;
  border: 1px solid #e7b200;
  border-radius: 5px;
  line-height: 1.5em;;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 85px;
  min-width: 195px;
}
.topchoice h4 {
  font-size: 3rem;
  margin-bottom: 40px;
}

@media (max-width: 767px) {
  .topchoice {
    padding: 40px 0 60px;
  }
  .selection_box {
    padding: 20px 20px 30px;
    margin-bottom: 30px;
  }
  .selection_box::after {
    zoom: 60%;
  }
  .comprehensive {
    gap: 10px;
  }
  .comprehensive li {
    font-size: 1.25rem;
    width: calc((100% - 10px) / 2);
    min-width: auto;
    min-height: 65px;
  }
}


.within {
  padding: 100px 0;
}
.within h3 {
  margin-bottom: 40px;
}
.within .btn {
  margin-top: 50px;
}

@media (max-width: 767px) {
  .within {
    padding: 40px 0 60px;
  }
}

.chance {
  padding: 100px 0;
}
.chance .read {
  max-width: 734px;
  text-align: left;
  font-size: 1.6em;
  margin: 0 auto 25px;
}
.chance h3 {
  margin-bottom: 30px;
}
.chance h3 span {
  display: block;
  font-size: 2rem;
}
.chance h3.tilde_ttl {
  margin-bottom: 20px;
}
.chance h4 {
  font-size: 2.5rem;
  margin-bottom: 50px;
}
.chance h4 span {
  font-size: 4rem;
}
.chance h4 strong{
  font-size: 7rem;
}
.schedule_list {
  max-width: 734px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
.schedule_list li {
  max-width: 172px;
}
.schedule_list + .caution {
  display: block;
  max-width: 734px;
  text-align: left;
  margin: 0 auto 45px;
}
.application_img {
  margin-bottom: 45px;
}
.application_img img {
  max-width: 65px;
}
.chance .btn {
  margin-top: 50px;
}
.plus_icon {
  max-width: 27px;
  vertical-align: text-top;
}

@media (max-width: 767px) {
  .chance {
    padding: 40px 0 60px;
  }
  .chance h3 {
    zoom: 70%;
  }
  .chance .read {
    font-size: 1.25rem;
    line-height: 1.8em;
  }
  .schedule_list {
    flex-wrap: wrap;
  }
  .schedule_list li {
    max-width: 48%;
  }
  .schedule_list + .caution {
    font-size: 1.25rem;
  }
  .application_img {
    margin-bottom: 20px;
  }
  .chance .btn {
    margin-top: 20px;
  }
}


.tuition {
  padding: 100px 0;
  border-bottom: 1px solid #b6a4c7;
}
.tuition h2 span {
  display: block;
  font-size: 2rem;
}
.tuition .tilde_ttl {
  margin-bottom: 20px;
}
.tuition_img {
  margin-bottom: 80px;
}

@media (max-width: 767px) {
  .tuition {
    padding: 40px 0 60px;
  }
  .tuition_img {
    margin-bottom: 30px;
  }
}

.information {
  padding: 100px 0 170px;
}
.information h2 {
  font-size: 2.5rem;
}
.information h2::before {
  content: url(/special/gokakukigan/img/kazari.png);
  margin-right: 30px;
}
.information h2::after {
  content: url(/special/gokakukigan/img/kazari.png);
  margin-left: 30px;
}
.information .gray_box {
  max-width: 920px;
  box-sizing: border-box;
  margin: 0 auto 50px;
  padding: 40px 80px;
  text-align: left;
}
.information .gray_box h3 {
  font-size: 2rem;
  margin-bottom: 15px;
}
.information .gray_box ol {
  padding-bottom: 20px;
}
.information .gray_box ol li {
  margin-bottom: 20px;
  font-size: 1.4rem;
  font-weight: normal;
  list-style: auto;
  margin-left: 1.5em;
}
.information .gray_box p {
  font-size: 1.4rem;
  font-weight: normal;
}
.information .gray_box ol dl {
  margin: 5px 0 5px -1.5em;
  display: flex;
  padding: 8px 20px;
}
.information .gray_box ol dl dt,
.information .gray_box ol dl dd {
  font-size: 1.6rem;
  letter-spacing: 0;
}

.information .gray_box ol dl dt {
  border-right: 1px solid #333;
  margin-right: 15px;
  padding-right: 10px;
}

@media (max-width: 767px) {
  .information {
    padding: 40px 0 80px;
  }
  .information h2::before ,
  .information h2::after {
    margin: 0;
    display: block;
  }
  .information .gray_box {
    padding: 20px 20px 15px;
  }
  .information .gray_box h3 {
    zoom: 90%;
  }
  .information .gray_box p,
  .information .gray_box ol li {
    font-size: 1.25rem;
    line-height: 1.8em;
    letter-spacing: 0.05em;;
  }
  .information .gray_box ol dl {
    flex-direction: column;
  }
  .information .gray_box ol dl dt {
    border-right: 0;
    border-bottom: 1px solid #333;
    margin-right: 0;
    padding-right: 0;
    margin-bottom: 10px;
    padding-bottom: 10px;
  }
  .information .gray_box ol dl dt,
  .information .gray_box ol dl dd {
    font-size: 1.4rem;
  }
}

.backtop {
  text-align: center;
  width: 124px;
  height: 124px;
  background: url(/special/gokakukigan/img/backtop_hover.png) no-repeat;
  background-size: contain;
  margin: -62px auto 180px;
}
.backtop a {
  display: inline-block;
  transition: .8s;
}
.backtop a:hover {
  opacity: 0;
}
.copyright {
	text-align: center;
	font-size: 1.3rem;
	padding-bottom: 20px;
}

.gotop {
	display: block;
	background: url(/special/gokakukigan/img/backtop.png) no-repeat;
	background-size: contain;
	text-decoration: none;
	width: 80px;
	height: 80px;
	position: fixed;
	bottom: -80px;
	right: 20px;
	color: #fff;
	z-index: 2;
	transition: .8s;
}
.gotop:hover {
	background: url(/special/gokakukigan/img/backtop_hover.png) no-repeat;
	background-size: contain;
}

.annotation {
	text-align: center;
	
}

.annotation_txt{
	font-size: 1.5rem;
	/*font-weight: normal;*/
	margin-bottom: 50px;
	display: inline-block;
	text-align: left;
}

.annotation_txt li {
	text-indent: -4em;
	padding-left: 4em:
}

.free_txt{
	line-height: 1.0;
	font-weight: normal;
	letter-spacing: normal;
	font-size: 1.5rem;
	margin-bottom: 10px;
}

@media (max-width: 767px) {
  .backtop {
    zoom: 50%;
    margin-bottom: 140px;
  }
	.gotop {
		display: none;
	}
	
	.free_txt{
		margin-bottom: 20px;
	}
	
	.annotation_txt{
		font-size: 1.25rem;
		text-align: left;
		line-height: 1.3;
	}
	
	.ano_sp_none{
		display: none;
	}
	
}

/*
*/

.pointImg {
	padding-left: 50px;
	margin-top: 20px;
}

.mb0 {
	margin-bottom: 0 !important;
}

.cautionWrap {
	padding: 0 18%;
	text-align: left;
}

.caution_txt {
	font-size: 1.2rem !important;
	/*font-weight: normal;*/
	margin-bottom: 50px;
}

.caution_txt li {
	font-size: 1.4rem;
	text-indent: -4em;
	padding-left: 4em;
}

.caution_txt li .newRed {
	font-size: 1.4rem;
}

.mb50 {
	margin-bottom: 50px;
}

@media (max-width: 767px) {
	
	.pointImg {
		padding-left: 0;
		margin-top: 20px;
	}
	
	.newRed {
		font-size: 1.2rem;
	}
	
	.cautionWrap {
		padding: 0;
	}
	
	.caution_txt li {
		font-size: 1.2rem;
	}
	.caution_txt li .newRed {
		font-size: 1.2rem;
	}
	
	.mb50 {
		margin-bottom: 30px;
	}
	
}