@charset "utf-8";

a {
	outline: none;
}

.clrRed {
	color:#cc0000;
}

.fontXL {
	font-size: 24px;
	font-size: 2.4rem;
}

.fontXXL {
	font-size: 36px;
	font-size: 3.6rem;
}
.winSP .fontXXL {
	font-size: 30px;
	font-size: 3.0rem;
}

/* ========================================*/
/* dokugaku_fp */
#container {
	width: auto !important;
}
#innerBox {
	width: auto !important;
}
#dokugaku_fp {
	width: auto;
	padding: 0;
	margin: 5px 0 15px 0;
	z-index: 1;
	font-family: 'Lucida Grande', 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
	font-size: 1.2em;
}

#dokugaku_fp .notes_info02{
  background:#de0000;
  width:800px;
  max-width:100%;
  margin:0 auto;
  padding:1px;
  text-align:center;
  color:#fff;
  font-size:24px;
  font-size:2.4rem;
}
#dokugaku_fp .notes_info02 h5{
  padding:1%;
}
#dokugaku_fp .notes_info02 p{
  background:#fff;
  padding:3% 5%;
  color:#000;
}
#dokugaku_fp .notes_info02 a{
  color:#de0000;
  text-decoration:underline;
}



/*=====================================*/
/* メインエリア */
/*=====================================*/
.main-area {
  position: relative;
  width: 100%;
  margin-bottom: 0px;
  text-align: center;
  background-size: cover;
}
.main-area a {
  display: inline-block;
}
.main-area .title {
  margin: 0 auto;
  max-width:1200px;
}
.main-area .main_link {
    position: absolute;
    width: 15%;
    top: 38%;
    left: 51.5%;
}

.main-area .faq_btn{
	display:block;
	width:15%;
    position: absolute;
    top: 0%;
    left: 80%;
}
.main-area .faq_btn a{
	display:block;
	width:100%;
	height:2.5em;
	margin:0 auto;
	background:#537bc0;
	border:1px solid #b0c9f5;
	box-shadow: 0 0 0 1px #537bc0;
	font-size:12px;
	font-size:1.2rem;
	border-radius:3px;
	position:relative;
}
.main-area .faq_btn a:hover{
	background:#314973;
	box-shadow: 0 0 0 1px #314973;
}
.main-area .faq_btn a:after{
	position: absolute;
	display:inline-block;
	content:"\3009";
    top: 50%;
    right: 5%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    color:#fff;
}
.main-area .faq_btn a span{
	position: absolute;
	display:inline-block;
	width:calc(100% - 2px);
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    color:#fff;
}


.winSP .main-area .main_link {
    width: 29%;
    top: 37%;
    left: 69%;
}


.winSP .main-area .faq_btn{
	width:35%;
    left: 60%;
}
.winSP .main-area .faq_btn a{
	height:1.6em;
	font-size:3vw;
}

/*=====================================*/
/* アンカーナビ */
/*=====================================*/
.anchor-area {
  width: 100%;
  padding: 0;
  background: url(/dokugaku/fp/image/2018/bg_anchor.png) top left repeat;
}
.anchor-nav {
  margin: 0 auto;
  text-align: center;
  font-size: 0;
  padding:5px;
  max-width:1024px;
}
.anchor-nav li {
  display: inline-block;
  word-spacing: 0;
  letter-spacing: 0;
  vertical-align: top;
  width: calc((100% - 20px) / 5);
}
.anchor-nav li:not(:last-child) {
  margin-right:5px;
}
.anchor-nav li a{
	display:block;
	font-size:18px;
	font-size:1.8rem;
	background:#fff;
	border:1px solid #ccc;
	width:100%;
	height:6em;
	position:relative;
}
.anchor-nav li a:after{
	display:inline-block;
	content:"";
	width: 40px;
	height: 18px;
	background: url(/dokugaku/fp/image/32q/2022/ico_arr01.png)no-repeat left center/contain;
	position: absolute;
	bottom: 5%;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
.anchor-nav li a:hover{
	background:#ffe8eb;
}
.anchor-nav li a span{
	display:block;
	color:#2e446a;
	font-size:24px;
	font-size:2.4rem;
	font-weight:bold;
	width:100%;
	line-height:1.2;
}
.anchor-nav li a > span{
   position: absolute;
   top: 50%;
   left: 50%;
   -webkit-transform: translate(-50%, -50%);
   transform: translate(-50%, -50%);
}
.anchor-nav li a span.sub01{
	color:#c73557;
	font-size:12px;
	font-size:1.2rem;
}
.anchor-nav li a span.sub02{
	font-size:24px;
	font-size:2.4rem;
}
.anchor-nav li a.course span{
	color:#555;
	font-size:12px;
	font-size:1.2rem;
}
.anchor-nav li a span.title{
	display:block;
	color:#ccc;
	font-size:16px;
	font-size:1.6rem;
	width:90%;
	margin:0 auto;
}

.anchor-nav li a .title .que{
	display:inline-block;
	width:auto;
	font-size:30px;
	font-size:3rem;
}
.anchor-nav li a.c3q span.title,
.anchor-nav li a.c3q span.que{
	color:#f57a7a;
}
.anchor-nav li a.c2q span.title,
.anchor-nav li a.c2q span.que{
	color:#78b8c6;
}
.anchor-nav li a span.price{
	display:inline-block;
	width:auto;
	font-size:16px;
	font-size:1.6rem;
}
.anchor-nav li a span.kakunin{
	display:block;
	background:#e61743;
	color:#fff;
	font-size:14px !important;
	font-size:1.4rem !important;
	width:90%;
	margin:0 auto;
	height:2em;
	line-height:2em;    
	position:relative;
}
.anchor-nav li a span.kakunin:after{
		display:inline-block;
	content:"";
	width:10px;
	height:18px;
	background:url(/dokugaku/fp/image/2020/img_arr02.png)no-repeat right center/contain;
	position: absolute;
    top: 50%;
    right: 3%;
    -webkit-transform: translateY(-50%) rotate(90deg);
    transform: translateY(-50%) rotate(90deg);
}

.winSP .anchor-nav li {
  width: calc((100% - 2%) / 3);
}
.winSP .anchor-nav li:not(:last-child) {
  margin-right:0;
  margin-bottom:1%;
}
.winSP .anchor-nav li:not(:nth-child(3)):not(:last-child) {
  margin-right:0.5%;
}
.winSP .anchor-nav li a{
	font-size:5vw;
	height:5em;
}
.winSP .anchor-nav li a:after{
	width:10vw;
	height:5vw;
}
.winSP .anchor-nav li a span{
	font-size:5vw;
}
.winSP .anchor-nav li a span.sub01{
	font-size:1.5vw;
}
.winSP .anchor-nav li a span.sub02{
	font-size:4vw;
}
.winSP .anchor-nav li a.course span{
	font-size:2vw;
}
.winSP .anchor-nav li a span.title{
	font-size:3.5vw;
}
.winSP .anchor-nav li a .title .que{
	font-size:4vw;
}
.winSP .anchor-nav li a span.price{
	font-size:4vw;
	letter-spacing:-0.05em
}
.winSP .anchor-nav li a span.kakunin{
	font-size:2.5vw !important;
}
.winSP .anchor-nav li a span.kakunin:after{
	width:2vw;
	height:3vw;
}


/* section
--------------------------------------------------------- */
.section {
	margin: 0;
}
.section h2 {
	padding: 15px 0;
}
.section h3 {
	padding: 10px 0;
	text-align: center;
}
.sectionInner {
	max-width: 1024px;
	margin: 0 auto;
	position: relative;
}

#dokugaku_fp .note {
	display: block;
	font-size: 12px;
	line-height: 1.4;
	margin-top: 10px;
}



/* about
--------------------------------------------------------- */
#about {
	margin: 0 2%;
}
#about h2 {
	font-size: 34px;
	font-size: 3.4rem;
	background-color: #ffa9b5;
	padding: 5px 1%;
	margin: 15px auto;
}
.winSP #about h2 {
	font-size: 8vw;
}


/* anshin
--------------------------------------------------------- */
#dokugaku_fp #anshin .sec_ttl {
	margin: 0 2%;
	padding: 4px 0;
	text-align: center;
	font-size:60px;
	font-size:6rem;
	font-weight:bold;
	color:#2f446a;
}
#dokugaku_fp #anshin .sec_ttl img{
	vertical-align:middle;
	display:inline-block;
	margin-right:1%;
}
#dokugaku_fp #anshin .point {
	padding: 0 2%;
}
#dokugaku_fp #anshin .udl_y{
	background:linear-gradient(transparent 60%, #FFFF00 0%, #FFFF00 80%, transparent 0%);
}

.winSP #dokugaku_fp #anshin .sec_ttl {
	font-size:8vw;
}
.winSP #dokugaku_fp #anshin .sec_ttl img{
	width:13vw;
}


/*#point01*/
#dokugaku_fp #anshin #point01 {
	margin-top: 30px;
	padding-bottom: 70px;
	background: #ffeaef url(/dokugaku/fp/image/2018/bg_anshin_point01_gr.png) center center no-repeat;
	background-size: contain;
}
#dokugaku_fp #anshin .point01 {
	padding-top: 70px;
	background: url(/dokugaku/fp/image/2018/bg_anshin_point01.png) top center no-repeat;
}
#dokugaku_fp #anshin #point01 .point01_lead {
	color: #c73557;
}
#dokugaku_fp #anshin .point_ico {
	float: left;
	width: 13%;
	margin-left: 1%;
	margin-right: 1%;
}
#dokugaku_fp #anshin .point_txt {
	width: 48%;
}
#dokugaku_fp #anshin .point_img {
	width: 33%;
}
#dokugaku_fp #anshin .point01 .point_txt {
	float: left;
	padding-top: 20px;
}
#dokugaku_fp #anshin .point01 .point_txt .point01_ttl{
	font-size:40px;
	font-size:4rem;
	letter-spacing:-0.05em;
	color:#333;
}
#dokugaku_fp #anshin .point01 .point_txt .point01_ttl span{
	font-weight:bold;
}
#dokugaku_fp #anshin .point01 .point_txt .point01_ttl sup{
	font-size:50%;
	vertical-align:top;
}
#dokugaku_fp #anshin .point01 .point_img {
	float: right;
	padding-top: 20px;
}

#dokugaku_fp #anshin .point01 .point_img .look_btn a{
	display:block;
	width:80%;
	margin:0 auto;
	height:4em;
	color:#fff;
	background:#e43743;
	position:relative;
}
#dokugaku_fp #anshin .point01 .point_img .look_btn a:hover{
	background:#af2c35;
}
#dokugaku_fp #anshin .point01 .point_img .look_btn a:after{	
    display:inline-block;
	content:"";
	width:46px;
	height:46px;
	background:url(/dokugaku/fp/image/2020/img_ico01.png)no-repeat right center/contain;
	position: absolute;
    top: 50%;
    left: 5%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}
#dokugaku_fp #anshin .point01 .point_img .look_btn a span{
	display:inline-block;
	width:100%;
	font-size:20px;
	font-size:2rem;
	font-weight:bold;
	position: absolute;
    top: 50%;
    left: 55%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
#dokugaku_fp #anshin .point01 .note {
	font-size: 11px;
	font-size: 1.1rem;
	line-height: 1.4;
}

#dokugaku_fp #anshin .point02 .point_ico {
	position: relative;
	top: -60px;
}
#dokugaku_fp #anshin .point02 .point_txt {
	float: right;
}
#dokugaku_fp #anshin .point02 .point_txt .point02_ttl{
	font-size:40px;
	font-size:4rem;
	letter-spacing:-0.05em;
	color:#333;
}
#dokugaku_fp #anshin .point02 .point_txt .point02_ttl > span:not(.udl_y){
	font-size:30px;
	font-size:3rem;
}
#dokugaku_fp #anshin .point02 .point_txt .point02_ttl .udl_y{
	font-weight:bold;
}
#dokugaku_fp #anshin .point02 .point_img {
	float: left;
}

#dokugaku_fp #anshin .point03 {
	padding-top: 70px;
	background: url(/dokugaku/fp/image/2018/bg_anshin_point03.png) top center no-repeat;
}
#dokugaku_fp #anshin .point03 .point_ico {
	float: none;
	display: inline-block;
	vertical-align: bottom;
}
#dokugaku_fp #anshin .point03 .point_txt {
	float: none;
	display: inline-block;
	width: 84%;
	vertical-align: bottom;
	padding-bottom: 20px;
}

.winSP #dokugaku_fp #anshin .point_ico {
	float: left;
	width: 20%;
	margin-left: 1%;
	margin-right: 1%;
}
.winSP #dokugaku_fp #anshin .point_txt {
	float: left;
	width: 78%;
}
.winSP #dokugaku_fp #anshin .point_txt p {
	margin-left: -20%;
}
.winSP #dokugaku_fp #anshin .point_img {
	float: none;
	clear: both;
	width: auto;
}

.winSP #dokugaku_fp #anshin .point01 .point_txt .point01_ttl{
	font-size:6vw;
}

.winSP #dokugaku_fp #anshin .point02 .point_txt .point02_ttl{
	font-size:7vw;
}
.winSP #dokugaku_fp #anshin .point02 .point_txt .point02_ttl > span:not(.udl_y){
	font-size:6vw;
}
.winSP #dokugaku_fp #anshin .point02 .point_ico {
	top: -7vw;
}
.winSP #dokugaku_fp #anshin .point01 .point_img .look_btn a:after{	
	width:10vw;
	height:10vw;
}
.winSP #dokugaku_fp #anshin .point01 .point_img .look_btn a span{
	font-size:6vw;
}
.winSP #dokugaku_fp #anshin .point01 .note {
	font-size: 11px;
	font-size: 1.1rem;
	line-height: 1.4;
}


/*#point02*/
#dokugaku_fp #anshin #point02 {
	padding-top: 0;
	padding-bottom: 70px;
	background: #ffd5d9 url(/dokugaku/fp/image/2018/bg_anshin_point02_gr.png) center center no-repeat;
	background-size: contain;
}
#dokugaku_fp #anshin #point02 .sectionInner {
	padding-top: 70px;
	background: url(/dokugaku/fp/image/2018/bg_anshin_point02.png) top center no-repeat;
	text-align:center;
}
#dokugaku_fp #anshin #point02 .point_ttl{
	font-size:28px;
	font-size:2.8rem;
	letter-spacing:-0.05em;
	color:#333;
	display:inline-block;
	position:relative;
}
#dokugaku_fp #anshin #point02 .point_ttl span{
	font-size:40px;
	font-size:4rem;
	font-weight:bold;
}
#dokugaku_fp #anshin #point02 .point_ttl:before{
	display:inline-block;
	content:"";
	width:2px;
	height:4em;
	background:#333;
	-webkit-transform: skewX(-150deg);
	transform: skewX(-150deg);
	position:absolute;
	bottom:10%;
	left:-10%;
}
#dokugaku_fp #anshin #point02 .point_ttl:after{
	display:inline-block;
	content:"";
	width:2px;
	height:4em;
	background:#333;
	-webkit-transform: skewX(150deg);
	transform: skewX(150deg);
	position:absolute;
	bottom:10%;
	right:-10%;
}

.winSP #dokugaku_fp #anshin #point02 .point_ttl{
	font-size:4vw;
	
}
.winSP #dokugaku_fp #anshin #point02 .point_ttl span{
	font-size:6vw;
}

/*#point03*/
#dokugaku_fp #anshin #point03 {
	padding-bottom: 70px;
	background: #d5edf6 url(/dokugaku/fp/image/2018/bg_anshin_point03_gr.png) top center no-repeat;
	background-size: 100% 100%;
}
#dokugaku_fp #anshin #point03 .point_area {
	max-width: 1024px;
	margin: 0 auto;
	padding: 0 2%;
	background: #fff;
	border: 1px solid #eb7c8d;
	padding-bottom: 23px;
}
#dokugaku_fp #anshin #point03 .point_area .inner_point_area {
	max-width: 920px;
	margin: 0 auto;
}
#dokugaku_fp #anshin #point03 .point03_ttl{
	font-size:28px;
	font-size:2.8rem;
	letter-spacing:-0.05em;
	color:#333;
	display:inline-block;
	position:relative;
}
#dokugaku_fp #anshin #point03 .point03_ttl span{
	font-size:40px;
	font-size:4rem;
	font-weight:bold;
}
#dokugaku_fp #anshin #point03 .point03_img{}
#dokugaku_fp #anshin #point03 .point03_img .img_box{
	font-size:0;
	text-align:center;
}
#dokugaku_fp #anshin #point03 .point03_img .img_box li{
	display:inline-block;
}
#dokugaku_fp #anshin #point03 .point03_img .point03_img_note{
	width:35%;
	display: block;
	margin:0 15% 0 auto;
	padding:2%;
}
#dokugaku_fp #anshin #point03 .point03_img .point03_img_note li{
	margin-left:1em;
	text-indent:-1em;
	font-size:12px;
	font-size:1.2rem;
}


.winSP #dokugaku_fp #anshin #point03 .point03_ttl{
	font-size:6vw;
	padding-bottom:0;
	padding-top: 10%;
}
.winSP #dokugaku_fp #anshin #point03 .point03_ttl span{
	font-size:7vw;
}
.winSP #dokugaku_fp #anshin #point03 .point03_img .img_box li{
	width:50%;
}
.winSP #dokugaku_fp #anshin #point03 .point03_img .point03_img_note{
	width:50%;
	margin:0 0 0 auto;
	padding:0%;
}
.winSP #dokugaku_fp #anshin #point03 .point03_img .point03_img_note li{
	font-size:2.5vw;
}

/*point04*/
#dokugaku_fp #anshin #point04 {
	padding-top: 70px;
	padding-bottom: 70px;
	background: #fff url(/dokugaku/fp/image/2018/bg_anshin_point04.png) top center no-repeat;
	text-align:center;
}
#dokugaku_fp #anshin #point04 .point_ttl{
	font-size:28px;
	font-size:2.8rem;
	letter-spacing:-0.05em;
	display:inline-block;
	position:relative;
}
#dokugaku_fp #anshin #point04 .point_ttl span{
	
	font-weight:bold !important;
	color:#c73557;
}
#dokugaku_fp #anshin #point04 .point_ttl .udl_y{
	font-size:40px;
	font-size:4rem;
	color:#333;
	font-weight:bold;
}
#dokugaku_fp #anshin #point04 .point_ttl:before{
	display:inline-block;
	content:"";
	width:2px;
	height:4em;
	background:#c73557;
	-webkit-transform: skewX(-150deg);
	transform: skewX(-150deg);
	position:absolute;
	bottom:10%;
	left:-10%;
}
#dokugaku_fp #anshin #point04 .point_ttl:after{
	display:inline-block;
	content:"";
	width:2px;
	height:4em;
	background:#c73557;
	-webkit-transform: skewX(150deg);
	transform: skewX(150deg);
	position:absolute;
	bottom:10%;
	right:-10%;
}

.winSP #dokugaku_fp #anshin #point04 .point_ttl{
	font-size:4vw;
}
.winSP #dokugaku_fp #anshin #point04 .point_ttl .udl_y{
	font-size:6vw;
}
.winSP #dokugaku_fp #anshin #point04 .point_ttl:before,
.winSP #dokugaku_fp #anshin #point04 .point_ttl:after{
	background:none;
}

/* course
--------------------------------------------------------- */
#dokugaku_fp .secq .sectionInner {
	max-width: 980px;
	margin: 0 auto;
}
#dokugaku_fp .secq .course_area {
	padding: 0 5%;
	border: 1px solid #cfcda1;
	background-color: #fff;
}
.winSP #dokugaku_fp .secq .course_area {
	margin: 0 2%;
}
.isDeviceTB #dokugaku_fp .secq .course_area {
	margin: 0 2%;
}

/*course_head*/
#dokugaku_fp .course_head {
	margin: 0 auto;
	padding: 54px 0 26px 20px;
	text-align: left;
}
#dokugaku_fp .course_head .course_ttl {
	display: inline-block;
	width: 48%;
	vertical-align: bottom;
	color: #f95080;
	font-weight:bold;
	font-size:20px;
	font-size:2rem;
	padding:0;
}
#dokugaku_fp .course_head .course_ttl span{
	font-weight:bold;
}
#dokugaku_fp .course_head .course_ttl .date{
	color:#0039ae;
}
#dokugaku_fp .course_head .course_ttl .date_num{
	font-size:26px;
	font-size:2.6rem;
}
#dokugaku_fp .course_head .course_ttl .course{
	font-size:60px;
	font-size:6rem;
	line-height:1;
}
#dokugaku_fp .course_head .course_ttl .course_num{
	font-size:100px;
	font-size:10rem;
}
#dokugaku_fp .course_head .course_lead {
	display: inline-block;
	width: 46%;
	margin-left: 2%;
	vertical-align: bottom;
	font-weight: bold;
}

#dokugaku_fp .sec2q .course_head .course_ttl {
	color: #009dd1;
}
#dokugaku_fp .sec2q .course_head .course_ttl .date{
	color:#f95080;
}
#dokugaku_fp .sec3q .course_head .course_lead {
	color: #f95080;
}
#dokugaku_fp .sec2q .course_head .course_lead {
	color: #009dd1;
}

.winSP #dokugaku_fp .course_head {
	margin: 0 2%;
	padding: 24px 0;
}
.winSP #dokugaku_fp .course_head .course_ttl {
	display: block;
	width: auto;
}
.winSP #dokugaku_fp .course_head .course_ttl {
	font-size:4vw;
}
.winSP #dokugaku_fp .course_head .course_ttl .date_num{
	font-size:5vw;
}
.winSP #dokugaku_fp .course_head .course_ttl .course{
	font-size:10vw;
}
.winSP #dokugaku_fp .course_head .course_ttl .course_num{
	font-size:20vw;
}
.winSP #dokugaku_fp .course_head .course_lead {
	display: block;
	width: auto;
	margin-left: 0;
}


/*schedule_area*/
#dokugaku_fp .schedule_area {
	padding-top: 21px;
}
#dokugaku_fp .schedule_area .schedule_area_inner{
	position:relative;
}
#dokugaku_fp .schedule_dvd {
	margin: 30px 0;
	padding: 15px;
	background-color: #ffffdf;
	border: 1px solid #b7a575;
}

#dokugaku_fp .secq .course_btn_list {
	position: relative;
	margin: 15px auto 30px 40px;
}
#dokugaku_fp .secq .course_btn_list > li {
	display: inline-block;
	width:100%;
}
#dokugaku_fp .secq .course_btn_list .look_btn a{
	display:block;
	width:30%;
	margin:0;
	height:4em;
	color:#fff;
	background:#e43743;
	position:relative;
}
#dokugaku_fp .secq .course_btn_list .look_btn a:hover{
	background:#af2c35;
}
#dokugaku_fp .secq .course_btn_list .look_btn a:after{	
    display:inline-block;
	content:"";
	width:46px;
	height:46px;
	background:url(/dokugaku/fp/image/2020/img_ico01.png)no-repeat right center/contain;
	position: absolute;
    top: 50%;
    left: 5%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}
#dokugaku_fp .secq .course_btn_list .look_btn a span{
	display:inline-block;
	text-align:center;
	width:100%;
	font-size:20px;
	font-size:2rem;
	font-weight:bold;
	position: absolute;
    top: 50%;
    left: 55%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.winSP #dokugaku_fp .secq .course_btn_list{
	display:inline-block;
	width:100%;
	margin: 0 auto;
	position:absolute;
	top: 135vw;
	left:50%;
	transform:translateX(-50%);
}
.winSP #dokugaku_fp .secq .course_btn_list > li {
	display: block;
	text-align: center;
	margin-top: 10px;
}
.winSP #dokugaku_fp .secq .course_btn_list .look_btn a:after{	
	width:10vw;
	height:10vw;
}
.winSP #dokugaku_fp .secq .course_btn_list .look_btn a span{
	font-size:6vw;
}
.winSP #dokugaku_fp .sec3q .course_btn_list{
	top: 150vw;
}
.winSP #dokugaku_fp .sec3q .course_btn_list .look_btn a{
	width:100%;
	height: 15vw;
}
.winSP #dokugaku_fp .sec2q .course_btn_list .look_btn a{
	width:100%;
	height: 15vw;
}
.winSP #dokugaku_fp .sec2q .course_btn_list{
	top: 160vw;
}

/*teacher*/
.teacher {
  margin: 20px 40px;
}
.teacher .photo {
  float: left;
  width: 25%;
}
.teacher .voice-outer {
  float: right;
  width: 71%;
}

.teacher .voice {
  position: relative;
  background: #fff;
  border: 2px solid #000;
  border-radius: 3px;
  padding: 2%;
}
.teacher .voice:after, .voice:before {
  right: 100%;
  top: 50%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
}

.teacher .voice:after {
  border-color: rgba(136, 183, 213, 0);
  border-right-color: #fff;
  border-width: 26px 30px 0 0;
  margin-top: -78px;
}
.teacher .voice:before {
  border-color: rgba(0, 0, 0, 0);
  border-right-color: #000;
  border-width: 30px 34px 0 0;
  margin-top: -80px;
}

.winSP .teacher {
  margin: 20px 0;
}
.winSP .teacher .photo {
  float: none;
  width: 100%;
  text-align: center;
}
.winSP .teacher .voice-outer {
  float: none;
  width: 100%;
  margin-top: 15%;
}
.winSP .teacher .voice:after, .winSP .teacher .voice:before {
  top: -30px;
  bottom: 100%;
  left: 50%;
}

.winSP .teacher .voice:after {
  border-color: transparent transparent #fff;
  border-width: 0 30px 30px 30px;
  margin-top: 0;
  margin-left: -30px;

}
.winSP .teacher .voice:before {
  border-color: transparent transparent #000;
  border-width: 0 33px 33px 33px;
  margin-top: -3px;
  margin-left: -33px;
}


#dokugaku_fp .course_dvd {
  margin: 20px 3%;
}
#dokugaku_fp .course_dvd .dvd_ttl > *{
	display:inline-block;
	vertical-align:middle;
}
#dokugaku_fp .course_dvd .dvd_ttl p{
	color:#ec3853;
	font-size:24px;
	font-size:2.4rem;
}
#dokugaku_fp .course_dvd .dvd_ttl p{}
#dokugaku_fp .course_dvd .dvd_ttl .bold{
	font-size:30px;
	font-size:3rem;
}

#dokugaku_fp .course_dvd .bg_pink dt{
	background:#ff7b88;
	padding:1.2% 0 0.5%;
	color:#fff;
	font-size:24px;
	font-size:2.4rem;
	letter-spacing:0.5em;
}
#dokugaku_fp .course_dvd .bg_pink dd{
	background:#fee0e3;
	padding:2%;
}
#dokugaku_fp .course_dvd .bg_pink dd .tcenter{
	color:#ec3853;
	font-size:18px;
	font-size:1.8rem;
}
#dokugaku_fp .course_dvd .bg_blue dt{
	background:#62b3f2;
	padding:1.2% 0 0.5%;
	color:#fff;
	font-size:24px;
	font-size:2.4rem;
	letter-spacing:0.5em;
}
#dokugaku_fp .course_dvd .bg_blue dd{
	background:#ecf9ff;
	padding:2%;
}
#dokugaku_fp .course_dvd .bg_blue dd .tcenter{
	color:#27b6d6;
	font-size:18px;
	font-size:1.8rem;
}

.winSP #dokugaku_fp .course_dvd .dvd_ttl p{
	font-size:4vw;
}
.winSP #dokugaku_fp .course_dvd .dvd_ttl .bold{
	font-size:5vw;
}

/*course_price*/
.course_price_ttl {
	margin-top: 40px;
	padding: 5px;
	border: 1px solid #bf9a57;
	text-align: center;
}
.course_price {
	padding: 23px 50px 20px;
	position:relative;
}
.course_price [class^=box0] {
	width: 48%;
}
.course_price .box01 {
	margin-bottom: 12px;
	color:#fff;
	font-weight:bold;
	font-size:18px;
	font-size:1.8rem;
}
.course_price .box01 span{
	font-weight:bold;
}
.course_price .box01 .date_num{
	font-size:24px;
	font-size:2.4rem;
}
.course_price .box01 .course{
	font-size:30px;
	font-size:3rem;
	color:#fff555;
	line-height:1;
}
.course_price .box01 .course_name{
	font-size:50px;
	font-size:5rem;
}
.course_price .box01 .limit{
	font-size:20px;
	font-size:2rem;
	color:#555;	
}

.course_price .box02 {
	font-size: 12px;
	border-top: 1px dashed #665059;
	padding-top: 10px;
}
.course_price .course_r {
	width: 45%;
	padding: 15px 0 8px;
	text-align: center;
	border: 1px dotted #665059;
	border-radius: 3px;
	position: absolute;
	top: 50%;
	right: 3%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
.course_price .course_r  *{
	font-weight:bold;
}
.course_price .course_r .full_price{
	font-weight:bold;
	color:#ca1111;
	font-size:16px;
	font-size:1.6rem;
	display:inline-block;
	-webkit-transform:skew(-10deg);
	transform:skew(-10deg);
}
.course_price .course_r .full_price .price{
	font-size:40px;
	font-size:4rem;
}
.course_price .course_r .price_btn{
	display:block;
	width:100%;
}
.course_price .course_r .price_btn a{
	display:block;
	width:80%;
	height:3em;
	margin:0 auto;
	background:#ca1111;
	font-size:20px;
	font-size:2rem;
	position:relative;
}
.course_price .course_r .price_btn a:hover{
	background:#940f0f;
}
.course_price .course_r .price_btn a:after{
	position: absolute;
	display:inline-block;
	content:"\3009";
    top: 50%;
    right: 5%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    color:#fff;
}
.course_price .course_r .price_btn a span{
	position: absolute;
	display:inline-block;
	width:100%;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    color:#fff;
}


.winSP .course_price_ttl {
	margin: 40px 2% 0;
}
.winSP .course_price {
	margin: 0 2%;
	padding: 23px 3% 20px;
}
.winSP .course_price {
	width: auto;
}
.winSP .course_price [class^=box0] {
    width: 100%;
}
.winSP .course_price .box01 {
	font-size:4vw;
}
.winSP .course_price .box01 .date_num{
	font-size:6vw;
}
.winSP .course_price .box01 .course{
	font-size:6vw;
}
.winSP .course_price .box01 .course_name{
	font-size:8vw;
}
.winSP .course_price .box01 .limit{
	font-size:4vw;	
}
.winSP .course_price .box02 {
    border-top: none;
}
.winSP .course_price .course_r {
	position: relative;
	width: 100%;
	padding: 15px 5px 8px;
	top: 0;
	right: 0;
	transform: none;
}
.winSP .course_price .course_r .full_price{
	font-size:3vw;
}
.winSP .course_price .course_r .full_price .price{
	font-size:9vw;
}
.winSP .course_price .course_r .price_btn a{
	font-size:5vw;
}
.winSP .course_price_check,
.winSP .note {
	margin: 0 2%;
}

.isDeviceTB .course_price_ttl {
	margin: 40px 2% 0;
}
.isDeviceTB .course_price {
	margin: 0 2%;
}
.isDeviceTB .course_price .course_r {
	padding: 15px 5px 8px;
}
.isDeviceTB .course_price_check,
.isDeviceTB .note {
	margin: 0 2%;
}



/* 3q
--------------------------------------------------------- */
#dokugaku_fp .sec3q {
	background: url(/dokugaku/fp/image/2018/bg_3q.png) top center no-repeat #f8f9eb;
	border-top: 10px solid #f5696a;
	padding-bottom: 77px;
}
#dokugaku_fp .sec3q .course_price_ttl {
	margin-bottom: 16px;
}
.course_price3q {
	background: #ff7b88;
}
.course_price3q .course_l dt .date {
	color:#001fa6;
}
.course_price3q .course_r {
	background: #ffecee;
}


/* 2q
--------------------------------------------------------- */
#dokugaku_fp .sec2q {
	background: url(/dokugaku/fp/image/2018/bg_2q.png) top center no-repeat #fdfeee;
	border-top: 10px solid #27b6d6;
	padding-bottom: 90px;
}
#dokugaku_fp .sec2q .course_dvd .dvd_ttl p{
	color:#2da4d0;
}
#dokugaku_fp .sec2q .course_price_ttl {
	margin-bottom: 5px;
}
.course_price2q {
	background: #62b3f2;
}
.course_price2q .course_l dt .date {
	color:#d6004c;
}
.course_price2q .course_r {
	background: #ecf9ff;
}

#dokugaku_fp .sec3q .course_price a,
#dokugaku_fp .sec2q .course_price a {
	color: #001cab;
}


/*app_area*/
#dokugaku_fp #app {
	border-top: 3px solid #ec1d2e;
	margin: 0 2%;
	padding: 34px 0 40px;
}
#app .app_btn{
	display:block;
	width:100%;
}
#app .app_btn a{
	display:block;
	width:350px;
	max-width:80%;
	margin:0 0 0 auto;
	height:3em;
	background:#ca1111;
	font-size:20px;
	font-size:2rem;
	position:relative;
	text-align:center;
}
#app .app_btn a:hover{
	background:#940f0f;
}
#app .app_btn a:after{
	position: absolute;
	display:inline-block;
	content:"\3009";
    top: 50%;
    right: 1%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    color:#fff;
}
#app .app_btn a span{
	position: absolute;
	display:inline-block;
	width:100%;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    color:#fff;
    font-weight:bold;
}
#app .app_btn.until a{
	background:#acacac;
	pointer-events:none;
}
#app .app_btn.until a:after{
	content:"";
}


.winSP #app .app_btn a{
	max-width:100%;
	font-size:5vw;
}

/*voice_area*/
#dokugaku_fp #voice {
	border-top: 3px solid #ec1d2e;
	padding: 34px 0 40px;
}
#dokugaku_fp #voice .sectionInner {
	max-width: 920px;
	margin: 0 auto;
}
#dokugaku_fp #voice .voice_ttl {
	margin: 0 2% 22px;
	/*color: #cc1a28;*/
	color:#e42445;
}
#voice .voice_box {
  border:1px solid #fd242e;
  line-height: 1.8;
  margin: 20px 2% 0;
  background: url(/dokugaku/fp/image/2018/bg_voice.gif) 0 0 repeat;
}
#voice .voice_box .left_box {
  float:left;
  width: 17%;
  text-align: center;
  margin-top: 15px;
}

#voice .voice_box .right_box {
  float:right;
  width: 83%;
  padding: 25px;
}
.winSP #voice .voice_box .left_box {
  float:none;
  width: 100%;
  text-align: center;
}
.winSP #voice .voice_box .left_box img {
  margin-left: -15px;
}
.winSP #voice .voice_box .right_box {
  float:none;
  width: 100%;
  padding: 25px;
}


/* sub-block
--------------------------------------------------------- */
.sub-block {
	clear: both;
/*	min-width: 1025px;*/
}
.sub-block-pb {
	padding-bottom: 70px;
}
.sub-block-bd {
	border-top: 3px solid #ec1d2e;
}
.sub-block-bd h3 {
	text-align: center;
}

.title-line {
	text-align: center;
	padding: 10px 0;
	background: #ff577c;
	color: #fff;
}
.wp-1024 {
	margin-right: auto;
	margin-left: auto;
	max-width: 1024px;
}



/* sub-block faq
--------------------------------------------------------- */
#faq {
	padding: 38px 2% 0;
}
#faq .sectionInner{
	max-width: 917px;
	margin: 0 auto;
}

/*=====================================*/
/* faq */
/*=====================================*/
#faq {
	color: #cc1a28;
}
#faq h3 {
	font-size: 36px;
	font-size: 3.6rem;
	font-weight: bold;
	text-align: center;
}
.faq-list {
  border-bottom: 1px solid #cc1a28;
  margin-top: 30px;
}
.faq-list dt {
  border-top: 1px solid #cc1a28;
  position: relative;
  /*cursor:pointer;*/
  color: #cc1a28;
  font-weight: bold;
  padding: 8px 90px 8px 48px;
  font-size: 18px;
  font-size: 1.8rem;
}

.faq-list dt i {
  position: absolute;
  width: 25px;
  height: 25px;
  top: 8px;
  left: 12px;
}

.faq-list dd {
  font-size: 14px;
  font-size: 1.4rem;
  border-top: 1px solid #cc1a28;
  position: relative;
}

.faq-list dd i {
  position: absolute;
  width: 25px;
  height: 25px;
  top: 20px;
  left: 33px;
}
.faq-list dd .txt {
  margin: 8px 0 15px;
  padding: 15px 10px 15px 65px;
  color: #cc1a28;
  background: #fef2f3;
}


/* flow
--------------------------------------------------------- */
/* content - #apply-flow */
#apply-flow .sectionInner {
	padding: 63px 2%;
	text-align: center;
}
#apply-flow .flow {
  display: table;
  width: 102%;
  word-spacing: -1em;
  margin-left: -2%;
  font-size: 18px;
  font-size: 1.8rem;
  color: #eb263a;
}
#apply-flow .flow > li {
  word-spacing: normal;
  display: inline-block;
  vertical-align: top;
  border: #a6a6a6 1px solid;
  padding: 10px 10px 150px 10px;
  text-align: center;
  width: 22%;
  margin-left: 2%;
  background-repeat: no-repeat;
  background-position: center 92%;
  -webkit-background-size: auto 117px;
       -o-background-size: auto 117px;
          background-size: auto 117px;
}
#apply-flow .flow .ttl {
  margin-right: -10px;
  margin-bottom: 10px;
}
#apply-flow .flow p ~ p {
/*  margin-top: 1em;*/
}
#apply-flow .flow > li:nth-child(1) {
  width: 50%;
  text-align: left;
  position:relative;
}
#apply-flow .flow > li:nth-child(1) p {
  font-size: 14px;
  font-size: 1.4rem;
}
#apply-flow .flow > li:nth-child(1) .img_click {
  display: inline-block;
  width:100%;
  position:absolute;
  bottom: 20px;
  left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}
#apply-flow .flow > li:nth-child(2) {
  background-image: url(./image/2018/flow_step02_bg.gif);
}
#apply-flow .flow > li:nth-child(3) {
  background-image: url(./image/2018/flow_step03_bg.gif);
}
#apply-flow .flow .colRED {
  color: #c00;
}
#apply-flow .flow .colGRY {
  color: #707070;
}
#apply-flow .flow .caution li {
  margin-top: 0;
}
#apply-flow .flow > li:nth-child(2) .ib + p {
  margin-top: 1.3em;
}
#apply-flow .btn {
  width: 30%;
  margin: 0 0 0 auto;
}
#apply-flow .date img{
	vertical-align:bottom;
	display:inline-block;
	margin-right:3%;
}
#apply-flow .date span{
	font-weight:bold;
	color:#d0222b;
	line-height:1;
	display:inline-block;
	margin-bottom:10px;
	font-size:22px;
	font-size:2.2rem;
}
#apply-flow .date .date_num{
	font-size:36px;
	font-size:3.6rem;
}


.winSP #apply-flow .flow {
  display: block;
  width: 100%;
  margin-left: 0;
  font-size: 15px;
  font-size: 1.5rem;
}
.winSP #apply-flow .flow > li {
  display: block;
  padding: 10px 90px 10px 10px;
  width: 100%;
  margin-left:0;
  text-align: left;
  background-position: 97% 5%;
  -webkit-background-size: auto 58px;
       -o-background-size: auto 58px;
          background-size: auto 58px;
}
.winSP #apply-flow .flow > li ~ li {margin-top: 10px;}
.winSP #apply-flow .flow .ttl {
  margin-right: -10px;
  margin-bottom: 10px;

}
.winSP #apply-flow .flow .ttl img {
  width: auto;
  height: 30px;
}
.winSP #apply-flow .flow p ~ p {
  margin-top: .5em;
}
.winSP #apply-flow .flow .caution li {
  margin-top: 0;
}
.winSP #apply-flow .flow .caution.colRED {
  font-size: 12px!important;
  font-size: 1.2rem!important;
}
.winSP #apply-flow .flow > li:nth-child(1) {
  padding-right: 10px;
}
.winSP #apply-flow .flow > li:nth-child(1) .img_click {
  position:relative;
  bottom: 0px;
}
.winSP #apply-flow .flow > li:nth-child(2) .ib + p {
  margin-top: .5em;
}
.winSP #apply-flow .flow > li:nth-child(3) {
  padding-right: 60px;
}

.winSP #apply-flow .btn {
  width: 100%;
  margin-top: 10px;
}
.winSP #apply-flow .date img{
	width:15%;
}
.winSP #apply-flow .date span{
	font-size:4vw;
	margin-bottom:0px;
}
.winSP #apply-flow .date .date_num{
	font-size:6vw;
}


.isDeviceTB #apply-flow .flow {
  font-size: 14px;
  font-size: 1.4rem;
}
.isDeviceTB #apply-flow .flow > li {
  padding-bottom: 130px;
  background-position: center 95%;
  -webkit-background-size: 70% auto;
       -o-background-size: 70% auto;
          background-size: 70% auto;
}
.isDeviceTB #apply-flow .flow .fontL,
.isDeviceTB #apply-notes {
  font-size: 12px!important;
  font-size: 1.2rem!important;
}

/* shien
--------------------------------------------------------- */
#shien .title-line {
	padding: 20px 0;
	font-size:30px;
	font-size:3rem;
}
#shien .title-line span{
	font-size:46px;
	font-size:4.6rem;
}
#shien .title-line .fntYLW{
	color:#fffd31;
}

#shien .sectionInner {
	background: url(/dokugaku/fp/image/2018/bg_shien.gif) top center no-repeat;
	padding: 40px 2% 45px;
}
#shien .sectionInner .shien_img {
	margin-top: 26px;
}


.winSP #shien .title-line {
	font-size:6vw;
}
.winSP #shien .title-line span{
	font-size:10vw;
}


/* apply
--------------------------------------------------------- */
.apply .apply-list {
	margin: 0 2% 70px;
	font-size: 14px;
	font-size: 1.4rem;
}
.apply .apply-list li {
	line-height: 1.8;
}



/* app_area
--------------------------------------------------------- */
#dokugaku_fp #app .pass {
	margin-top: 20px;
}
#dokugaku_fp #app .sectionInner {
	overflow: hidden;
}
.winSP #dokugaku_fp #app .pass {
	text-align:left !important;
}

/*=====================================*/
/* close_Info */
/*=====================================*/
.close_Text {
	width: 100%;
	font-size: 18px;
	font-size: 1.8rem;
	font-weight: bold;
	text-align: center;
	color: #ffffff;
	background-color: #eb6101;
	padding: 20px 1%;
	margin-top:20px;
	margin-bottom:25px;
}

.close_Text p {
	font-size: 18px;
	font-size: 1.8rem;
	font-weight: bold;
	margin-top:10px;
	color: #ffffff;
}

.winSP .close_Text{
  width: 80%;
  margin-left: 10%;
  background:   #eb6101;
  text-align: left;
  color: #ffffff;
  font-size:13px;
  font-size: 1.3rem;
  font-weight: bold;
}


/*20190513*/
.announce{
	 margin:5px auto;
	 padding:15px;
	 font-size:12px;
	 font-size:1.2rem;
	 text-align:left;
}
.announce h3{
	text-align:left !important;
    padding: 0 !important;
}
.announce h3:before{
	content:"\025a0";
	margin: 0px 0px 0px 0;
}
.announce h3:after{
	content:"\025a0";
	margin: 0px 0px 0px 0;
}

.announce p{
	margin:0;
	padding:0;
}
.announce p span{
	font-weight:bold;
}
.announce_text{
	margin:10px 0 5px;
	font-size:12px;
	font-size:1.2rem;
}
.announce_text span{
	color:#ff0000;
}

.sec3q .announce {background:#fee0e3;}
.sec2q .announce {background:#e0eafe;}


.voice_ttl02 {
  position: relative;
  display: inline-block;
  padding: 0 45px;
  color:#e42445;
  font-size: 34px;
  font-size: 3.4rem;
}
.winSP .voice_ttl02 {
font-size: 21px;
  font-size: 2.1rem;
}
.voice_ttl02:before {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 44px;
  height: 2px;
  background-color: #e42445;
  -webkit-transform: rotate(60deg);
  transform: rotate(60deg);
}
.voice_ttl02:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 44px;
  height: 2px;
  background-color: #e42445;
  -webkit-transform: rotate(-60deg);
  transform: rotate(-60deg);
}
.voice_ttl02:before {
  left:0;
}
.voice_ttl02:after {
  right: 0;
}
.fontvoice{
	font-size:60px;
	font-size:6.0rem;
}
.winSP .fontvoice{
	font-size: 36px;
	font-size: 3.6rem;
}



/*============================
料金カセット改修
============================*/

/*course_price*/
.course_price [class^=box0] {
	margin-top:20px;
	color: #343434;
}
.course_price .box01 {
	color: #343434;
}

.course_price .box01 .date {
	color:#001fa6;
}

.course_price .box01 .course{
	color: #343434;
	line-height: 1.5;
}

.course_price .box01 .course_lank{
	color:#cc0000;
}

.course_price .box02 {
	padding-top: 20px;
}

.course_price .box02 .limit{
	font-size:20px;
	font-size:2rem;
	color:#555;	
	font-weight:bold;
}

.course_price .course_r {
    margin-top: 0;
    padding: 0;
    border: none;
    border-radius: unset;
}
.course_price .course_r .inner_fullpack{
	padding: 15px 0;
	border-radius: 3px;
	background:#fff;
}
.course_price .course_r .inner_nopack{
	margin-top:15px;
}

.course_price .course_r .price_btn a{
	background:#ff6600;
}
.course_price .course_r .inner_nopack .price_btn a{
	background:#ff9755;
	font-size:15px;
	font-size:1.5rem;
	letter-spacing:-0.1em;
}
.course_price .course_r .price_btn a:hover{
	background:#b34902;
}
.course_price .course_r .price_btn a:after{
    right: 0%;
}
.course_price .course_r .inner_nopack .price_btn a sup{
	vertical-align:top;
}

.winSP .course_price [class^=box0]  {
	margin-top: 0;
}

.winSP .course_price .box02{
	text-align:center;
}
.winSP .course_price .box02 .limit{
	font-size:5vw;
}
.winSP .course_price .course_r {
	padding:5px;
}
.winSP .course_price .course_r .price_btn a{
	font-size:4vw;
    width: 90%;
}
.winSP .course_price .course_r .inner_nopack .price_btn a{
	font-size:3vw;
}



/* 3q
--------------------------------------------------------- */
.course_price3q {
	background: #ffddcc;
}
.course_price3q .course_r {
	background:unset;
}



/* 2q
--------------------------------------------------------- */
.course_price2q {
	background: #ccebfa;
}
.course_price2q .course_r {
	background: unset;
}
