@charset "utf-8";
/* CSS Document */



.container {
	margin-top: 0;
}

h2.title {	
	display:none;
}
#crumb {
	display:none;
}

h2.pagetitle {
	width: 100%;
	height:10vw;
	text-align:center;
	background:#29468a;
}
h2.pagetitle span {
	width: 100%;
	margin: auto;
	line-height: 10vw;
	font-size: 3.3vw;
	display: block;
	color:#FFF;
}
.pagemanu {
	display: block;
	width: 100%;
	overflow: hidden;
	position: relative;
}
.pagemanu h2 {
	font-weight: bold;
	display: block;
	line-height: 6vw;
	overflow: hidden;
	position: relative;
	margin-bottom:1vw;
	border-bottom: double 4px #3e3a39;
	-webkit-box-shadow: 0px 2px #c9c9c9;
	        box-shadow: 0px 2px #c9c9c9;
	text-align:center;
	padding:2vw 0;	
	font-size:3.8vw;
}
section.topbox {
	width:100%;
	overflow: hidden;
	padding-bottom:10vw;
	margin:auto;
}
.topphoto1 {
	background-image: url(../images/concept/photo-1.jpg);
	width: 100%;
	height: 62vw;
	text-align: left;
	position: relative;
	margin: auto;
	background-size: cover;
	background-repeat: no-repeat;
	padding-top:3px;
	padding-left:3px;
	padding-right:3px;
	margin-bottom:7vw;
}
.topphoto1 h3 {
	background-image: url(../images/concept/photo1-grade.png);
	background-repeat: no-repeat;
	text-align: center;
	width: 100%;
	height:24vw;
	background-size:contain;
}
.topphoto1 h3 span {
	padding-top:5.5vw;
	display: block;
	font-size:4.3vw;
	line-height: 6.5vw;	
	font-weight: bold;
	color: #333;
	background-image: url(../images/concept/photo1-line.png);
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size:contain;
	margin:auto;
	width:80%;
	padding-bottom:2vw;
}
.topbox p {
    font-size: 3.6vw;
    text-align: left;
    margin-bottom: 0;
    line-height: 1.7;
	width:90%;
	margin:auto;
}
.topbox div,
.topbox div:before,
.topbox div:after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}



/* 背景グレー説明（ポップアップと同じ内容）*/
section.boxpop {
	background:#E4EAEF;
	margin:0 auto 10vw;
	width:100%;
	overflow: hidden;
	padding-top:8vw;
	padding-bottom:0;
	margin:auto;
}
.boxpop .box_inr {
	margin:0 auto;
	width:90%;
	overflow: hidden;
	position:relative;
}
ul.multi_pop li {
	margin-bottom:8vw;
}
ul.multi_pop li img {
	padding-top:3vw;
	padding-bottom:2vw;
}
ul.multi_pop li p {
	font-size: 3.2vw;
	text-align: left;
	line-height: 1.7;
}
.boxpop h3 {
	position: relative;
	text-align: center;
	font-size: 4.2vw;
	color: #325886;
	font-weight: bold;
}
.boxpop h3 span {
  position: relative;
  z-index: 2;
  display: inline-block;
  margin: 0 2.5em;
  padding: 0 1em;
  background-color: #E4EAEF;
  text-align: left;
}
.boxpop h3::before {
  position: absolute;
  top: 50%;
  z-index: 1;
  content: '';
  display: block;
  width: 100%;
  height: 1px;
  background-color: #325886;
}


/*アフターサービス*/

.supportbox {
	overflow: hidden;
	position: relative;
}
.supportbox h2 {
	position: relative;
	color: #39418F;
	font-size: 4.3vw;
	padding: 2.5vw 0;
	text-align: center;
	margin: 1.5em 0;
	font-weight: bold;
}
.supportbox h2:before {
  content: "";
  position: absolute;
  top: -2.5vw;
  left: 50%;
  width: 32.66vw;
  height: 18vw;
  border-radius: 50%;
  border: 4px solid #d2d3f4;
  border-left-color: transparent;
  border-right-color: transparent;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
}
.topbox .supportbox p {
	padding-top:1vw;
}
.topbox .supportbox p img {
	padding-bottom:5vw;
	
}




/*スケジュール*/

.schbox {
	overflow: hidden;
	position: relative;
}
.schbox h2 {
	position: relative;
	color: #39418F;
	font-size: 4.3vw;
	padding: 20px 0;
	text-align: center;
	margin: 1.5em 0;
	font-weight: bold;
	line-height:1.4;
}
.schbox h2 span {
  position: relative;
  line-height: 1.4;
  padding:0.25em 1em;
  display: inline-block;
  top:0;
}
.schbox h2 span:before, .schbox h2 span:after { 
  position: absolute;
  top: 0;
  content:'';
  width: 8px;
  height: 100%;
  display: inline-block;
}
.schbox h2 span:before {
  border-left: solid 1px #39418F;
  border-top: solid 1px #39418F;
  border-bottom: solid 1px #39418F;
  left: 0;
}
.schbox h2 span:after {
  content: '';
  border-top: solid 1px #39418F;
  border-right: solid 1px #39418F;
  border-bottom: solid 1px #39418F;
  right: 0;
}



/*スケジュール　全体の流れ*/

section.box1_sch {
	margin:0 auto 0;
	width:96%;
	-webkit-box-sizing:border-box;
	        box-sizing:border-box;
	overflow:visible;
	border-bottom:solid 1px #999;
	padding-bottom:5vw;
}
.box1_sch ul {
	width:100%;
	-webkit-box-sizing:border-box;
	        box-sizing:border-box;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	margin:auto;
}
/* 2列で、小項目を表示する場合
.box1_sch ul > li {
	width: 49.5%;
	background: lightblue;
	box-sizing: border-box;
	margin-right:1%;
	background-color:#E7E8EE;
	position:relative;
	overflow:visible;
	z-index:1;
	box-sizing:border-box;
	margin-bottom:6vw;
}
.box1_sch ul > li:nth-child(even) {
	margin-right:0;
}*/

/* 3列で、小項目を表示しない場合*/
.box1_sch ul > li {
	width: 33%;
	background: lightblue;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	margin-right:0.5%;
	background-color:#E7E8EE;
	position:relative;
	overflow:visible;
	z-index:1;
	box-sizing:border-box;
	margin-bottom:6vw;
}
.box1_sch ul > li:nth-child(3),
.box1_sch ul > li:nth-child(6) {
	margin-right:0;
}
/*ここまで*/

.box1_sch ul li h3 {
	width:90%;
	margin:auto;
	-webkit-box-sizing:border-box;
	        box-sizing:border-box;
	position:relative;
	display:block;
	text-align:center;
	padding:8vw 0 2vw;
	line-height: 2.0;
	font-size:3.8vw;
	font-weight: bold;
}
.box1_sch ul li h3 a {
	display:block;
}
.box1_sch ul li h3 a:hover {
	background-color: #7c82a5;
	color:#fff;
	text-decoration: none;
	-webkit-transition: 0.8s;
	-moz-transition: 0.8s;
	-o-transition: 0.8s;
	-ms-transition: 0.8s;
	transition: 0.8s;
}
.box1_sch ul li h4 {
	z-index:5;
	display:block;
	width:100%;
	height:10vw;
	top:-4vw;
	position:absolute;
}
.box1_sch ul li h4 span {
	display: block;
	width: 10vw;
	height: 10vw;
	margin: auto;
	background-color: #4C5170;
	position: relative;
	text-align: center;
	color: #fff;
	font-size: 4.5vw;
	line-height: 6vw;
	font-weight: bold;
	padding-top:2vw;
	padding-bottom:2vw;
	-webkit-box-sizing:border-box;
	        box-sizing:border-box;
	border-radius: 5vw;
    -webkit-border-radius: 5vw;
    -moz-border-radius: 5vw;
}


/* 3列で、小項目を表示しない場合*/
.box1_sch ul > li ol {
	display:none;
}
.box1_sch ul > li ol li {
	display:none;
}
.box1_sch ul > li ol li a {
	display:none;
}
/*ここまで*/


section.box2_sch {
	margin:0 auto 5vw;
	width:96%;
	overflow: hidden;
	-webkit-box-sizing:border-box;
	        box-sizing:border-box;
}
.box2_sch h2 {
	line-height: 7vw;
	font-size:4.2vw;
	font-weight: bold;
	padding:2vw;
	text-align:center;
	margin-bottom:1vw;
}
.box2_sch h3 {
	display:block;
	width:100%;
	height:10vw;
	padding-top:14vw;
}
.box2_sch h3 span {
	display: block;
	width: 10vw;
	height: 10vw;
	margin: auto;
	background-color: #4C5170;
	position: relative;
	text-align: center;
	color: #fff;
	font-size: 4.5vw;
	line-height: 6vw;
	font-weight: bold;
	padding-top:2vw;
	padding-bottom:2vw;
	-webkit-box-sizing:border-box;
	        box-sizing:border-box;
	border-radius: 5vw;
    -webkit-border-radius: 5vw;
    -moz-border-radius: 5vw;
}
.box2_sch h4 {
	line-height: 1.7;
	font-size:3.8vw;
	font-weight: bold;
	padding:5vw 3vw 1vw;
	text-align:left;
	margin-bottom:2vw;
	border-bottom:dotted 1px #333;
}
.box2_sch .rows {
	width:94%;
	-webkit-box-sizing:border-box;
	        box-sizing:border-box;
	margin:auto;
	overflow:hidden;
	position:relative;
}
p.honbun1,
p.honbun2 {
	font-size:3.6vw;
	line-height:1.6;
	-webkit-box-sizing:border-box;
	        box-sizing:border-box;
	width:100%;
	display:block;
}
p.linkbox1 {
	width:60%;
	display:block;
	margin:5vw auto 0;
}
p.linkbox1 a {
	width:100%;
	background-color:#000;
	text-align:center;
	padding:2vw 1vw;
	margin-bottom:3vw;
	-webkit-box-sizing:border-box;
	        box-sizing:border-box;
	color:#fff;
	display:block;
	text-decoration: none;
	font-weight: bold;
	font-size:3.8vw;
}
p.linkbox1 a:hover {
	color:#fff;
	background-color:#4C5170;
	text-decoration: none;
	-webkit-transition: 0.8s;
	-moz-transition: 0.8s;
	-o-transition: 0.8s;
	-ms-transition: 0.8s;
	transition: 0.8s;
}
.box2_sch .rows ul {
	display:block;
	margin:1vw auto;
	width: 100%;
}
.box2_sch .rows ul > li {
	width: 100%;
	background-color:#F9F9F9;
	border: 1px solid #D7D9E0;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	margin-right:1%;
	position:relative;
	overflow:hidden;
	margin-bottom:2vw;
}
.box2_sch .rows ul > li h5 {
	margin: 4vw 4vw 3vw;
	font-size: 3.8vw;
	line-height: 1.2;
	font-weight: bold;	
}
p.s_honbun1 {
	margin: 0 4vw;
	font-size: 3.8vw;
	line-height: 1.4;
	margin-bottom:12vw;
}
p.s_honbun1.nonlink {
	margin-bottom:2vw;
}
p.s_linkbox1,
p.s_linkbox2 {
	width: 100%;
	display: block;
	overflow: hidden;
	position: absolute;
	bottom:0;
	left:0;
}
p.s_linkbox1 a {
	width:49.5%;
	background-color:#00356D;
	text-align:center;
	padding:2vw 1vw;
	-webkit-box-sizing:border-box;
	        box-sizing:border-box;
	color:#fff;
	display:block;
	text-decoration: none;
	font-size:3.8vw;
	line-height:1.7;
	font-weight: bold;
	float:left;
}
p.s_linkbox1 .firstbox a {
	margin-right:1%;
}
p.s_linkbox2 a {
	width:100%;
	background-color:#00356D;
	text-align:center;
	padding:2vw 1vw;
	-webkit-box-sizing:border-box;
	        box-sizing:border-box;
	color:#fff;
	display:block;
	text-decoration: none;
	font-size:3.8vw;
	line-height:1.7;
	font-weight: bold;
}
p.s_linkbox1 a:hover,
p.s_linkbox2 a:hover {
	color:#fff;
	background-color:#4C5170;
	text-decoration: none;
	-webkit-transition: 0.8s;
	-moz-transition: 0.8s;
	-o-transition: 0.8s;
	-ms-transition: 0.8s;
	transition: 0.8s;
}

.sch_hosoku {
	margin:auto;
	width:100%;
	text-align:left;
	font-size:3.5vw;
	line-height:1.7;
	margin-top:4vw;
}
