@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@700&display=swap');

body { position: relative; }

.teiki_lp { background: #000; color: #fff; font-size: 1.25rem; line-height: 2;}
/*.teiki_lp * { letter-spacing: 0.1rem; font-feature-settings: "palt" 1;}*/
.teiki_lp .container { padding:0 0 30px;}
.teiki_lp .container.narrow { width:950px;}
.teiki_lp .container.narrow2 { width:700px;}

/* font mincho */
 .teiki_lp .font_min, .feature_list .item .number_wrap *, .feature_list .item .ttl01, .use_list .item .ttl01, .latest .ttl_block *, .teacher_list section dd, .teacher_list section dd em, .item_detail .title, .numberlabel_list .item .ttl_wrap *, .center_title, .info_list a .tx_area .ttl, .backnumber_item .name *, #teacherList section dl *, .voice_list .item .tx01, .vertical_list .item .ttl, .cartblock_list .item .ttl, .bn_list .item .intro .tx01, .cartblock_list .item.type3 .intro li .tx01
{ font-family: "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", serif;}


/* common */
.btn.brown { background:#997951;}
.btn.brown:hover { background:#b68d5a;}
.label.brown { background:#997951;}
.label.gray { background:#3e3e3e; color: #fff;}
.cont_wrap { width: 1200px; margin: 0 auto; background:#151515;}
.section_wrap {}
.app_btn { text-align:center; margin:60px 0;}
.app_btn a { display:inline-block; width: 700px; }
.app_btn2 { text-align:center; padding:50px 0 0;}
.app_btn2 a { display:inline-block; width: 300px; border-radius:5px; background:linear-gradient(90deg, #146b00, #27be03); color:#fff; font-weight: 600; line-height: 1.4; text-decoration: none; padding: 15px 0 15px 40px; box-shadow: 0 -5px 0 0 rgba(0,0,0,0.2) inset; transition: 0.2s; position: relative; text-align: left;}
.app_btn2 a:after { display:flex; align-items: center; justify-content: center; content:"\e037"; font-family:'Material Icons'; position: absolute; width: 30px; height: 30px; top: 50%; right: 12px; margin-top:-1.2rem; font-size: 1.5rem; line-height: 1; border:1px solid #fff; border-radius: 100%;}
.app_btn2 a:hover { opacity: 0.9;}
.app_btn2 a.brown { background:#997951;}
.app_btn3 { text-align:center; padding:50px 0 0;}
.app_btn3 a { display:inline-block; width: 300px; border-radius:5px; background:#161616; font-weight: 600; line-height: 1.4; text-decoration: none; padding: 15px 30px; box-shadow: 0 -5px 0 0 rgba(0,0,0,0.2) inset; transition: 0.2s; position: relative; text-align: center; color: #fff;}
.app_btn3 a:hover { background:#333;}
.app_btn3 a i { position: absolute; right: 10px; top:50%; line-height: 1; margin-top:-1.0rem; font-size: 2.0rem;}

.tx_brown { color: #997951; }
.tx_brown2 { color: #c4a57e; }
.txlink_white { color:#fff; }
.txlink_black { color:#000; }
.teiki_lp .bg_gray { background:#222628; }
.teiki_lp .bg_lightgray { background:#eee; color:#000;}
.center_title { font-size: 2rem; font-weight: 600; margin:0 0 60px;  text-align: center; }

/* header */
.page_header { background: url(../images/teiki/teiki_header_bg.jpg) 0 0 no-repeat; background-size: 100% auto; position:relative; height: 1030px; margin-bottom:40px;}
.page_header:after { display:block; content:""; height:1px; width: 1100px; position:absolute; background: linear-gradient( 110deg, #bd7800 25%, #faf8af 35%, #f5de30 65%, #874f00 100%); bottom:0; left:50px;}
.page_header .sub { overflow: hidden; text-indent: 100%; white-space: nowrap; background: url(../images/teiki/teiki_header_sub.png) 0 0 no-repeat; background-size: 100% auto; height: 216px;}
.page_header .title { overflow: hidden; text-indent: 100%; white-space: nowrap;}
.page_header .red_label { background: url(../images/teiki/teiki_header_label.png) 0 0 no-repeat; background-size: 100% auto; width: 226px; height: 266px; position: absolute; top: 0; left: 50px; font-size: 55px; line-height: 1.1; text-align:center; font-weight: 600; padding-top: 50px; padding-right: 15px;}
.page_header .red_label p { font-weight: 600; background: linear-gradient(110deg, #e1b824 25%, #fcfcbc 35%, #f9d408 65%, #a77103 100%); -webkit-background-clip: text; -webkit-text-fill-color: rgba(255,255,255,0.0); color: transparent;}
@media all and (-ms-high-contrast:none){
  .page_header .red_label p {
    color: #fae453; background: none;
  }
}
.page_header .img01 { position: absolute; top:670px; left:50px; width:676px;}
.page_header .img02 { position: absolute; top:670px; right:50px; width:338px;}
.page_header .desc { color: #c4a57e; font-size:27px; line-height: 1.5; font-weight:600; position: absolute; top:910px; left:50px;}


header.fixed { box-shadow:none;}
header.fixed .nav_teiki_lp { display:block; background:linear-gradient( to bottom, #aaa 65%, rgba(0,0,0,0.1) 80%, transparent 100% ); padding-bottom:15px;}
header.fixed .nav_teiki_lp ul { width:1100px; margin:0 auto; display:flex; justify-content:center; height:80px; padding-top:12px;}
header.fixed .nav_teiki_lp ul li + li { margin-left:5px;}
header.fixed .nav_teiki_lp ul li a { background:#777; color:#fff; line-height:1; border-radius:30px; text-decoration:none; display:flex; align-items:center; padding:0 20px; height:38px; font-weight:700; position:relative;}
header.fixed .nav_teiki_lp ul li a span { font-weight:700;}
header.fixed .nav_teiki_lp ul li a .sp { display:none;}
header.fixed .nav_teiki_lp ul li a:hover,
header.fixed .nav_teiki_lp ul li a.active { background:#333;}



/* about */
.about .tx01 { font-size:1.5rem; line-height: 2; margin:80px 0 40px; }
.about .tx02 { font-size:1.1rem; color: #ccc; margin-bottom:80px;}

/* feature */
.feature_list {}
.feature_list .item { padding:40px 0 80px; display: flex; justify-content: space-between;}
.feature_list .item:last-of-type { padding-bottom:40px;}
.feature_list .item .tx_area { width:47%;}
.feature_list .item .img_area { width:47%;}
.feature_list .item:nth-of-type(even) .tx_area { order: 2;}
.feature_list .item:nth-of-type(even) .img_area { order: 1;}
.feature_list .item .number_wrap { display:inline-block; padding-bottom:20px; border-bottom: 1px solid #000; margin-bottom:25px;}
.feature_list .item .number_wrap .tx { display:inline-block; font-size: 2rem; line-height:1; vertical-align: bottom; margin-bottom: 10px;}
.feature_list .item .number_wrap .num { display:inline-block; font-size: 6rem; line-height: 1; vertical-align: middle;}
.feature_list .item .ttl01 { font-size: 1.8rem; line-height:1.5; margin-bottom:50px; font-weight: normal;}
.feature_list .item .ttl02 { margin-bottom:30px; line-height:1.5;}
.feature_list .item .ttl03 { margin-bottom:20px; font-size: 1.2rem; line-height:1.5;}
.feature_list .item .desc { font-size:1.1rem; line-height: 2;}
.feature_list .btn { margin-top:50px;}

/* use */
.use_list { margin-top:40px;}
.use_list .item { display: flex; justify-content: space-between; margin-bottom:80px;}
.use_list .item .tx_area { width:47%; display:flex; flex-wrap: wrap; align-content: center; }
.use_list .item .img_area { width:47%; }
.use_list .item:nth-of-type(even) .tx_area { order: 1;}
.use_list .item:nth-of-type(even) .img_area { order: 2;}
.use_list .item .ttl01 { font-size: 1.6rem; line-height:1.6; margin-bottom:30px; color: #c4a57e; font-weight: normal;}
.use_list .item .desc { font-size:1.2rem;}

/* latest */
.latest {}
.latest .ttl_block { text-align: center; margin:0 0 50px;}
.latest .ttl_block .label { width:180px; font-size: 1.2rem; font-weight: 600; padding: 6px 10px 5px; margin-right:10px;}
.latest .ttl_block .label:last-of-type { margin-right:0;}
.latest .ttl_block .tx_wrap { margin-top:10px; font-weight: 600; }
.latest .ttl_block .number { font-size: 7rem; line-height: 1; letter-spacing: -0.8rem;}
.latest .ttl_block .tx { font-size: 3.5rem;}
.teacher_list { display:flex; flex-wrap: wrap; margin-bottom:60px;}
.teacher_list section { width: 47%; margin-right:6%;}
.teacher_list section:nth-of-type(even) { margin-right:0;}
.teacher_list section:nth-of-type(n + 3) { margin-top:50px;}
.teacher_list section dt { margin-bottom:30px;}
.teacher_list section dd { font-size:1rem; line-height: 1.2; margin-bottom:30px;}
.teacher_list section dd em { font-size:1.85rem; line-height: 1.3; font-weight: 600; display:block; margin-top:10px; }
.teacher_list section h2 { border-top:1px solid #bebebe; border-bottom:1px solid #bebebe; padding:15px 0; margin-bottom:20px; font-size:0.9rem; line-height:1.3; font-weight:normal;}
.teacher_list section p { font-size:1rem; margin-bottom:20px;}
.teacher_list section .tag ul li { display:inline-block; font-size: 0.85rem; background:#151515; color:#c6c7c7; line-height:1; padding:6px 15px; border-radius: 30px; margin-right:2px; }
.backnumber_item .teacher_list section .tag ul li { background:#434445;}

.item_detail { background:#c8cece; padding:50px 150px 60px; }
.item_detail.wide { padding:50px 80px 60px; }
.item_detail + .item_detail{ margin-top:20px;}
.item_detail .title { font-size:2.2rem; margin-bottom:40px; text-align:center;}
.item_detail .youtube_wrap { margin-bottom:20px;}
.item_detail .youtube_wrap iframe { width:100%; height:450px}

.numberlabel_list { border-top:1px solid #a0a5a4; }
.numberlabel_list .item { padding:35px 0; border-bottom:1px solid #a0a5a4; font-size: 1.2rem;}
.numberlabel_list .item .ttl_wrap { display:flex; align-items: center; margin-bottom:25px;}
.numberlabel_list .item .ttl_wrap .num { width:70px; height: 70px; font-size: 3rem; background:#000; display: flex; align-items: center; justify-content: center; color: #fff;}
.numberlabel_list .item .ttl_wrap .tx { padding-left:20px; font-size: 1.8rem; display: flex; align-items: center; line-height:1.3; font-weight: 600;}

/* info */
#info .container { padding:60px 0; }
.info_list { border-top:1px solid #bbb; }
.info_list .item { border-bottom:1px solid #bbb;}
.info_list a { display:block; padding:30px 50px 30px 15px; position: relative; text-decoration: none; color: #000;}
.info_list a:after { display:inline-block; content:"\e315"; font-family:'Material Icons'; position: absolute; top: 50%; right: 10px; margin-top:-1rem; font-size: 2.2rem; line-height: 1;}
.info_list a:hover { background: #d8e0df;}
.info_list a .image { width: 160px; height: 160px; display:flex; align-items: center; justify-content: center; float: left; margin-right: 20px;}
.info_list a .date { font-size:0.9rem; margin-bottom:10px; font-weight: 600;}
.info_list a .ttl { font-size:1.2rem; line-height: 1.3; margin-bottom:10px; font-weight: 600;}
.info_list a .desc { font-size:1rem; display: table;}
.plan .desc { color:#ccc; margin-bottom:80px; font-size:1.1rem; }

/* backnumber_item */
.backnumber_item { margin-bottom:60px;}
.backnumber_item .name { width:180px; float:left; text-align: center;}
.backnumber_item .name .label { font-size: 1.1rem; padding:5px 15px;}
.backnumber_item .name .tx { font-size:2rem;}
.backnumber_item .cont_body { width:calc( 100% - 160px - 50px); float:right;}
.backnumber_item .teacher_list { justify-content: space-between;}
.backnumber_item .teacher_list section { width:49.9%; margin-right:0; padding-right:50px;}
.backnumber_item .teacher_list section dd em { color: #c4a57e;}
.backnumber_item .teacher_list section dt { margin-right:-50px;}
.backnumber_item .item_detail { padding:40px 100px 50px;}
.backnumber_item .item_detail .title { font-size:1.8rem;}
.backnumber_item .item_detail iframe { height:350px;}

/* past_teacher */
.history .tab ul { border-top:1px solid #151515; border-bottom:1px solid #151515; display:flex; margin-bottom:60px;}
.history .tab ul li { padding:10px 20px; font-size: 1rem; display: flex; align-items: center; cursor: pointer; }
.history .tab ul li .select_wrap { margin-left:10px;}
.history .tab ul li .select_wrap:before { content:"\e313";margin-top:-1.1rem; color: #151515;}
.history .tab ul li select { background:none;}
.history .tab ul li.active { background:#151515; position: relative; color: #fff;}
.history .tab ul li.active:after { display:inline-block; content: ""; width: 0; height: 0; border-left: 8px solid transparent; border-right: 8px solid transparent; border-top: 15px solid #151515; position: absolute; bottom: -15px; left: 50%; margin-left: -8px;}
#teacherList { display:flex; flex-wrap: wrap; margin-right:-25px;}
#teacherList section { width:350px; margin:0 25px 25px 0; background:#fff; padding:20px;}
#teacherList section dl { margin-bottom:20px;}
#teacherList section dl dt { display:flex; width:100%; height: 160px; margin-bottom: 20px; justify-content: center;}
#teacherList section dl dd { display:block; font-size:0.85rem; line-height:1.2; }
#teacherList section dl em { display:block; font-size:1.3rem; line-height:1.3; margin-top:5px; }
#teacherList section dl:after { content:""; display:block; clear: both;}
#teacherList section h2 { border-top:1px solid #aaa; border-bottom:1px solid #aaa; padding:15px 0; font-size:0.9rem; line-height: 1.3; margin-bottom:15px; font-weight: normal;}
#teacherList section p { font-size:0.9rem; line-height: 1.5; margin-bottom:20px;}
#teacherList section .tag ul { line-height:1;}
#teacherList section .tag li { display:inline-block; font-size: 0.85rem; background:#151515; color:#b8b8b8; line-height:1; padding:6px 10px; border-radius: 30px; margin-right:2px; margin-bottom:8px;}
.btnHistoryMore { margin:50px 0 0; padding:0; text-align: center;}

/* voice */
.voice_list { }
.voice_list .item { margin-bottom:70px; }
.voice_list .item .tx01 { font-size:1.6rem; line-height:1.3; margin-bottom:10px; font-weight: 600; color: #c4a57e;}

/* application */
.vertical_list { }
.vertical_list > .item { padding: 50px 100px; border-bottom: 1px solid #d7d7d7;}
.vertical_list .item:first-of-type { padding-top:0;}
.vertical_list .item:last-of-type { padding-bottom:20px; border:0;}
.vertical_list > .item > .ttl { font-size:1.6rem; line-height:1.3; margin-bottom:30px; font-weight: 600; }
.vertical_list .item .image { margin-bottom:30px;}
#application .teacher_list { margin-bottom: 0; }

/* cart_action */
.bg_black { background: url(../images/teiki/section7_bg.png) 0 0 repeat-y; background-size: 100% auto; padding-bottom:100px;}
.section_title02 { text-align: center; padding:80px 0;}
.section_title02 img { width:600px;}
.cartblock_list {}
.cartblock_list > .item { background: linear-gradient(135deg, #fbf084 15%, #f9d50f 30%, #3b0c00 50%, #3b0c00 55%, #eab806 65%, #f9ee91 75%, #9e7327 85%, #4f1e09 100%); margin-bottom:40px; }
.cartblock_list .item .inner { padding:5px;}
.cartblock_list .item .ttl { padding:18px 50px; font-size:1.8rem; line-height:1; background: #222628; color: #fff;}
.cartblock_list .item .item_body { padding:30px 50px; background: #151515; color: #fff;}
.cartblock_list .item .price_wrap { margin-bottom:30px;}
.cartblock_list .item .price_wrap .name { font-size:2.0rem; font-weight: 600; margin-bottom:10px;}
.cartblock_list .item .price_wrap .price * { font-weight: 700;}
.cartblock_list .item .price_wrap .price .number { font-size:7.0rem; font-family: 'Oswald', sans-serif; line-height:1;}
.cartblock_list .item .price_wrap .price .tx01 { font-size:3.0rem;}
.cartblock_list .item .price_wrap .price .tx02 { font-size:1.5rem;}
.cartblock_list .item .price_wrap .price .tx03 { font-size:1.5rem; color: #fff; display:inline-block; margin-left: 20px;}
.cartblock_list .item .tx_gold { background: linear-gradient(110deg, #c07c01 5%, #e3bd2b 30%, #fcfcbd 45%, #f8d714 80%, #c69b12 90%, #6c4707 100%); -webkit-background-clip: text; -webkit-text-fill-color: rgba(255,255,255,0.0); color: transparent; display:inline-block;}
@media all and (-ms-high-contrast:none){
  .cartblock_list .item .price_wrap .tx_gold {
    color: #fae453; background: none;
  }
}
.cartblock_list .item .desc * { font-weight:600;}
.cartblock_list .item ul.indent li { line-height: 1.3;}
.cartblock_list .item .cart_btn { display: flex; justify-content: space-between; margin:30px 0;}
.cartblock_list .item .cart_btn li { width:48%;}
.cartblock_list .item .cart_btn li a { display: flex; align-items:center; height: 100%; width: 100%; background: linear-gradient( 90deg, #008612, #00c91e ); box-shadow: 0 -5px 0 rgba(0,0,0,0.2) inset; color: #fff; justify-content: center; font-size: 1.3rem; text-decoration: none; font-weight: 600; padding:30px 0; border-radius: 5px;}
.cartblock_list .item .cart_btn li a:hover { opacity: 0.8;}
.cartblock_list .item .cart_btn li a i { margin-right:10px;}

/* 3カラム */
.bn_list { display:flex; }
.bn_list .item { width: calc( ( 100% - 80px ) / 3 ); margin-right: 40px;}
.bn_list .item:nth-of-type(3n) { margin-right: 0;}
.bn_list .item:nth-of-type(4 + n) { margin-top: 20px;}
.bn_list .item .namewrap { display: flex; justify-content: space-between; align-items: baseline;}
.bn_list .item .name { font-size: 1.4rem; font-weight: 600; }
.bn_list .item .status { font-size: 1.0rem; font-weight: 600; }
.bn_list .item .intro { border-top:1px solid #444; border-bottom:1px solid #444; padding:15px 0; margin:15px 0;}
.bn_list .item .intro li:nth-of-type(n + 2) { margin-top:10px;}
.bn_list .item .intro .tx01 { font-size:1rem; color: #997951;}
.bn_list .item .intro .tx02 { font-size:0.8rem; font-weight: normal;}
.bn_list .item .price .number { font-size:3.0rem; font-family: 'Oswald', sans-serif; line-height:1; display:inline-block;}
.bn_list .item .price .tx01 { font-size:1.5rem; font-weight:600;}
.bn_list .item .cart_btn { display: block;}
.bn_list .item .cart_btn li { width: 100%;}
.bn_list .item .cart_btn li:nth-of-type(n + 2) { margin-top:10px;}
.bn_list .item .cart_btn a { padding:15px 0!important;}

/* type2 */
.cartblock_list .item.type2 .price_wrap { margin-bottom:10px;}
.cartblock_list .item.type2 .price_wrap .name { font-size: 1.5rem; margin-bottom:0;}
.cartblock_list .item.type2 .price_wrap .price .number { font-size:3.0rem;}
.cartblock_list .item.type2 .price_wrap .price .tx01 { font-size:1.5.0rem;}
.cartblock_list .item.type2 .column { display: flex; justify-content: space-between; align-items: }
.cartblock_list .item.type2 .column > * { width: 48%;}
.cartblock_list .item.type2 .desc { line-height: 2;}
.cartblock_list .item.type2 .cart_btn { display: block; margin:0;}
.cartblock_list .item.type2 .cart_btn li { width:100%;}

/* type3 */
.cartblock_list .item.type3 .price_wrap { margin-bottom:10px;}
.cartblock_list .item.type3 .price_wrap .name { font-size: 1.5rem; margin-bottom:0;}
.cartblock_list .item.type3 .price_wrap .price .number { font-size:4.0rem;}
.cartblock_list .item.type3 .price_wrap .price .tx01 { font-size:1.5.0rem;}
.cartblock_list .item.type3 .column { display: flex; justify-content: space-between;}
.cartblock_list .item.type3 .column > .desc { width: 57%;}
.cartblock_list .item.type3 .column > .cart_btn { width: 40%;}
.cartblock_list .item.type3 .desc { line-height: 2;}
.cartblock_list .item.type3 .intro { border-top:1px solid #444; border-bottom:1px solid #444; padding:15px 0; margin:0 0 20px;}
.cartblock_list .item.type3 .intro li:nth-of-type(n + 2) { margin-top:10px;}
.cartblock_list .item.type3 .intro .tx01 { font-size:1rem; color: #997951;}
.cartblock_list .item.type3 .intro .tx02 { font-size:0.8rem; font-weight: normal;}
.cartblock_list .item.type3 .cart_btn { display: block; margin:0;}
.cartblock_list .item.type3 .cart_btn li { width:100%;}
.cartblock_list .item.type3 .cart_btn li:nth-of-type(n + 2) { margin-top:10px;}
.cartblock_list .item.type3 .cart_btn li a { padding:20px;}

/* sidenav */
.teiki_sidenav { position: fixed; right: 0; bottom: 20px; width: 100px; opacity: 0; transition: 0.2s; z-index: -1;}
.teiki_sidenav.active { opacity: 1; z-index: 10;}
.teiki_sidenav.none { opacity: 0; z-index: -1;}
.teiki_sidenav .nav_wrap { background: linear-gradient(110deg, #5f2e01 10%, #eab806 25%, #fbf084 45%, #f9d50f 50%, #3b0c00 60%, #3b0c00 65%, #f9ee91 75%, #9e7327 85%, #4f1e09 100%); border-radius: 5px 0 0 5px; padding:2px 0 2px 2px; }
.teiki_sidenav ul { background: #151515; border-radius: 5px 0 0 5px;}
.teiki_sidenav ul li a { border-bottom:1px solid #aaa; height:40px; display: flex; align-items: center; width: 100%; color: #fff; font-size:0.8rem; line-height: 1.2; font-weight: bold; position: relative; padding-left:27px; text-decoration: none;}
.teiki_sidenav ul li a:before { position: absolute; content: "●"; top: 50%; left: 10px; line-height: 1; margin-top:-0.5rem;}
.teiki_sidenav ul li a:hover { color: #997951;}
.teiki_sidenav .cartmove_btn { display: block; padding:5px; border-radius: 5px 0 0 5px; background: linear-gradient(135deg, #146b00, #27be03); color: #fff; margin-top:15px; text-decoration: none; transition: 0.2s;}
.teiki_sidenav .cartmove_btn:hover { background: linear-gradient(90deg, #27be03, #27be03);}
.teiki_sidenav .cartmove_btn img { opacity: 1!important;}
.teiki_sidenav .cartmove_btn .tx_wrap { display: flex; justify-content: space-between; align-items: center; margin-top:5px;}
.teiki_sidenav .cartmove_btn .tx_wrap .tx { font-size: 0.75rem;font-weight: 600; line-height:1.2;}
.teiki_sidenav .cartmove_btn .tx_wrap .icon { transform: scale(0.7);}
.teiki_sidenav .pagetop { margin-top:15px;}
.teiki_sidenav .pagetop a { display:flex; align-items: center; justify-content: center; border-radius: 4px; background:#333; color: #fff; height: 40px; width: 40px; text-decoration: none; margin:0 auto;}
.teiki_sidenav .pagetop a:hover { background:#444;}
.teiki_sidenav .pagetop a i { font-size: 2.2rem; line-height: 1; transform:rotate(180deg);}

.scroll_point { }

.sp_menuBtn, .sp_sidenav { display: none; }


/*********************************************
 SP 
**********************************************/
@media screen and (max-width: 640px){

	html { font-size: 14px; }
	body { position: relative; }

	/* sp only */
	.sp_tl { text-align: left!important; }

	.teiki_lp { font-size: 1.25rem; line-height: 2;}
	.teiki_lp .container { padding:0 3vw 20px;}

	/* width full */
	.teiki_lp .container.narrow, .teiki_lp .container.narrow2, .cont_wrap, .app_btn a, .feature_list .item .tx_area, .feature_list .item .img_area
	{ width: auto; }

	/* display none */
	header.fixed.active .box01,
  header.fixed.active .box02,
  header.fixed.active .box03,
  header.fixed.active .box04,
  .nav_wrap
	{ display: none; }

  header.fixed .nav_teiki_lp { background:linear-gradient( to bottom, rgba(0,0,0,1) 60%, rgba(0,0,0,0.1) 90%, transparent 100% );}
  header.fixed .nav_teiki_lp ul { width:auto; justify-content:space-between; padding:10px 10px 0; height: 60px;}
  header.fixed .nav_teiki_lp ul li { width:calc( ( 100% - 20px ) / 5 );}
  header.fixed .nav_teiki_lp ul li + li { margin:0;}
  header.fixed .nav_teiki_lp ul li a { width:100%; padding:0; justify-content:center; height:30px; background:#282828;}
  header.fixed .nav_teiki_lp ul li a .pc { display:none;}
  header.fixed .nav_teiki_lp ul li a .sp { display:inline-block;}


	/* common */
	.sp_common_inner { padding-left: 3vw; padding-right: 3vw; }
	.app_btn { margin:20px 0;}
	.app_btn2 { text-align:center; padding:20px 0 0;}
	.app_btn2 a { display:inline-block; width: 300px; border-radius:5px; background:linear-gradient(90deg, #146b00, #27be03); color:#fff; font-weight: 600; line-height: 1.4; text-decoration: none; padding: 15px 0 15px 40px; box-shadow: 0 -5px 0 0 rgba(0,0,0,0.2) inset; transition: 0.2s; position: relative; text-align: left;}
	.app_btn2 a:after { display:flex; align-items: center; justify-content: center; content:"\e037"; font-family:'Material Icons'; position: absolute; width: 30px; height: 30px; top: 50%; right: 12px; margin-top:-1.2rem; font-size: 1.5rem; line-height: 1; border:1px solid #fff; border-radius: 100%;}
	.app_btn2 a.brown { background:#997951;}
	.app_btn3 { text-align:center; padding:50px 0 0;}
	.app_btn3 a { display:inline-block; width: 300px; border-radius:5px; background:#161616; font-weight: 600; line-height: 1.4; text-decoration: none; padding: 15px 30px; box-shadow: 0 -5px 0 0 rgba(0,0,0,0.2) inset; transition: 0.2s; position: relative; text-align: center; color: #fff;}
	.app_btn3 a i { position: absolute; right: 10px; top:50%; line-height: 1; margin-top:-1.0rem; font-size: 2.0rem;}

	.center_title { font-size: 2rem; font-weight: 600; margin:0 0 60px;  text-align: center; }

	/* header */
	.page_header { background-position:-2vw 0; background-size: 112% auto; height: 130vw; margin-bottom:20px;}
	.page_header:after { width: 92vw; left:4vw;}
	.page_header .sub { height: 19vw;}
	.page_header .red_label { width: 20vw; height: 24vw; left: 4vw; font-size: 1.25rem; padding-top: 5vw; padding-right: 1.3vw;}
	.page_header .img01 { top:62vw; left:4vw; width:46vw;}
	.page_header .img02 { top:60vw; right:4vw; width:44vw;}
	.page_header .desc { font-size:1.25rem; line-height: 1.6; top:104vw; left:0; padding:0 15px;}

	/* about */
	.about .tx01 { font-size:1rem; line-height: 2; margin:0 0 20px; }
	.about .tx02 { font-size:0.9rem; line-height: 1.4; margin-bottom:0;}

	/* feature */
	.feature_list {}
	.feature_list .item { padding:20px 0 30px; display: flex; flex-wrap: wrap;}
	.feature_list .item .img_area { margin-top:20px;}
	.feature_list .item:last-of-type { padding-bottom:40px;}
	.feature_list .item:nth-of-type(even) .tx_area { order: unset;}
	.feature_list .item:nth-of-type(even) .img_area { order: unset;}
	.feature_list .item .number_wrap { padding-bottom:10px; margin-bottom:20px; margin-left:-3vw; padding-left: 3vw;}
	.feature_list .item .number_wrap .tx { font-size: 1.5rem; margin-bottom: 6px;}
	.feature_list .item .number_wrap .num { font-size: 4rem; margin-left:-10px;}
	.feature_list .item .ttl01 { font-size: 1.5rem; margin-bottom:20px;}
	.feature_list .item .ttl02 { font-size:1rem; margin-bottom:20px;}
	.feature_list .item .ttl03 { font-size:1rem; line-height:1.8; margin-bottom:10px;}
	.feature_list .item .desc { font-size:1rem; line-height: 2;}
	.feature_list .item .spimage { margin:20px 0 0;}
	.feature_list .btn { margin-top:30px;}

	/* use */
	.use_list { margin-top:20px;}
	.use_list .item { flex-wrap:wrap; margin-bottom:60px; align-items: flex-start;}
	.use_list .item .tx_area { width:100%; order:1!important; margin-bottom:20px;}
	.use_list .item .img_area { width:100%; display:flex; order:2!important; height: auto; align-items: flex-start;}
	.use_list .item .img_area img { height:auto;}
	.use_list .item .ttl01 { font-size: 1.5rem; line-height:1.6; margin-bottom:20px; border-left:5px solid #c4a57e; padding-left:10px;}
	.use_list .item .desc { font-size:1.2rem;}

	/* latest */
	.latest {}
	.latest .ttl_block { width:100%; margin:0 0 30px;}
	.latest .ttl_block .label { width:80px; font-size: 0.9rem; padding: 5px 5px 4px; margin-right:5px;}
	.latest .ttl_block .tx_wrap { margin-top:10px; font-weight: 600; }
	.latest .ttl_block .number { font-size: 3rem; letter-spacing: -0.2rem;}
	.latest .ttl_block .tx { font-size: 1.5rem;}
	.teacher_list { display:block; margin-bottom:0px;}
	.teacher_list section { width: 100%; margin-right:0; margin-bottom:30px;}
	.teacher_list section:nth-of-type(n + 3) { margin-top:0;}
	.teacher_list section dt { margin-bottom:20px;}
	.teacher_list section dd { font-size:0.85rem; margin-bottom:10px;}
	.teacher_list section dd em { font-size:1.3rem; line-height: 1.3; margin-bottom:20px;}
	.teacher_list section h2 { font-size:0.9rem; line-height:1.3; margin-bottom:10px; padding:10px 0;}
	.teacher_list section p { font-size:1rem; line-height: 1.3; margin-bottom:10px;}
	.teacher_list section .tag ul li { font-size: 0.85rem; padding:4px 10px; margin-right:0; }

	.item_detail { padding:30px 3vw 20px; font-size: 1rem; line-height: 1.4;}
	.item_detail.wide { padding:30px 3vw 20px; }
	.item_detail + .item_detail{ margin-top:20px;}
	.item_detail .title { font-size:1.2rem; margin-bottom:30px;}
	.item_detail .youtube_wrap { margin-bottom:20px;}
	.item_detail .youtube_wrap iframe { width:100%; height:450px}

	.numberlabel_list .item { padding:20px 0; font-size: 1rem;}
	.numberlabel_list .item .ttl_wrap { margin-bottom:15px;}
	.numberlabel_list .item .ttl_wrap .num { width:40px; height: 40px; font-size: 1.6rem; }
	.numberlabel_list .item .ttl_wrap .tx { padding-left:10px; font-size: 1.2rem; line-height:1.3;}

	/* info */
	#info .container { padding:60px 0; }
	.info_list { margin-bottom:-30px;}
	.info_list .item { }
	.info_list a { padding:15px 40px 15px 3vw; }
	.info_list a:after { right: 0; margin-top:-0.8rem; font-size: 1.8rem;}
	.info_list a .image { width: 60px; height: 60px; margin-bottom:10px;}
	.info_list a .date { font-size:0.8rem; margin-bottom:5px;}
	.info_list a .ttl { font-size:1.1rem; display: table;}
	.info_list a .desc { clear:both; font-size:0.85rem; }
	.plan .desc { color:#ccc; margin-bottom:80px; font-size:1.1rem; }

	/* backnumber_item */
	.backnumber_item { margin-bottom:60px;}
	.backnumber_item .name { width:auto; float:none; margin-bottom:10px;}
	.backnumber_item .name .label { font-size: 1rem;}
	.backnumber_item .name .tx { font-size:1.8rem;}
	.backnumber_item .cont_body { width:auto; float:none;}
	.backnumber_item .teacher_list { display:block;}
	.backnumber_item .teacher_list section { width:auto ; padding-right:0;}
	.backnumber_item .teacher_list section dt { margin-right:0;}
	.backnumber_item .item_detail { padding:30px 3vw 30px;}
	.backnumber_item .item_detail .title { font-size:1.2rem; line-height: 1.5;}
	.backnumber_item .item_detail iframe { height:150px;}

	/* past_teacher */
	.history .tab ul { border-top:0; border-bottom:0; display:flex; flex-wrap:wrap; margin-bottom:30px;}
	.history .tab ul li { padding:10px 0; margin-bottom:5px; color: #fff; justify-content: center; background:#666;}
	.history .tab ul li:first-of-type { width:100%;}
	.history .tab ul li:nth-of-type(n+2) { width:calc( (100% - 15px) / 4 ); margin-right: 5px;}
	.history .tab ul li:nth-of-type(5) { margin-right: 0;}
	.history .tab ul li .select_wrap { margin-left:10px;}
	.history .tab ul li .select_wrap:before { content:"\e313";margin-top:-1.1rem; color: #151515;}
	.history .tab ul li select { background:none;}
	.history .tab ul li.active { background:#151515; }
	.history .tab ul li.active:after { display:none;}
	#teacherList { display:flex; flex-wrap: wrap; margin-right:0;}
	#teacherList section { width:100%; margin:0 0 20px 0; padding:10px 3vw; height: auto!important;}
	#teacherList section dl { margin-bottom:10px; }
	#teacherList section dl dt { height:auto; margin-bottom: 15px;}
  #teacherList section dl dt img { max-height: 165px;}
	#teacherList section dl dd { display:block; line-height:1.2; }
	#teacherList section dl em { display:block; width:100%; font-size:1.1rem; margin-top:5px; }
	#teacherList section dl:after { content:""; display:block; clear: both;}
	#teacherList section h2 { border-top:1px solid #aaa; border-bottom:1px solid #aaa; padding:15px 0; font-size:0.9rem; line-height: 1.3; margin-bottom:15px; font-weight: normal;}
	#teacherList section p { font-size:0.9rem; line-height: 1.5; margin-bottom:20px;}
	#teacherList section .tag li { padding:5px 8px;margin-right:2px; margin-bottom:5px;}
	.btnHistoryMore { margin:20px 0 0; padding-top:0;}

	/* voice */
	.voice_list { }
	.voice_list .item { margin-bottom:30px; font-size: 0.9rem;}
	.voice_list .item .tx01 { font-size:1.5rem;}

	/* application */
	.vertical_list { }
	.vertical_list > .item { padding: 20px 3vw; font-size: 0.9rem; line-height: 1.4;}
	.vertical_list .item:first-of-type { padding-top:10px;}
	.vertical_list .item:last-of-type { padding-bottom:20px; border:0;}
	.vertical_list > .item > .ttl { font-size:1.6rem; line-height:1.3; margin-bottom:30px; font-weight: 600; }
	.vertical_list .item .image { margin-bottom:30px;}
	#application .teacher_list { margin-bottom: 0; }

	/* cart_action */
	.bg_black { padding-bottom:0;}
	.section_title02 { text-align: center; padding:40px 6vw;}
	.section_title02 img { width:auto;}
	.cartblock_list { padding: 0 3vw; }
	.cartblock_list > .item { margin-bottom:30px;}
	.cartblock_list .item .ttl { padding:18px 4vw; font-size:1.3rem;}
	.cartblock_list .item .item_body { padding:20px 4vw; font-size:0.9rem;}
	.cartblock_list .item .price_wrap { margin-bottom:20px;}
	.cartblock_list .item .price_wrap .name { font-size:1.4rem;  margin-bottom:0;}
	.cartblock_list .item .price_wrap .price .number { font-size:3.5rem;}
	.cartblock_list .item .price_wrap .price .tx01 { font-size:2.0rem;}
	.cartblock_list .item .price_wrap .price .tx02 { font-size:1.2rem;}
	.cartblock_list .item .price_wrap .price .tx03 { font-size:1.2rem; margin-left: 0;}
	.cartblock_list .item .cart_btn { display: block; margin:20px 0; font-size: 1.2rem;}
	.cartblock_list .item .cart_btn li { width:auto;}
	.cartblock_list .item .cart_btn li:nth-of-type(n+2) { margin-top:10px;}
	.cartblock_list .item .cart_btn li a { padding:15px 0; font-size: 1.2rem;}

	/* 3カラム */
	.bn_list { display:block; }
	.bn_list .item { width: auto; margin-right: 0; position: relative; margin-bottom:15px;}
	.bn_list .item:after { display:block; content:""; height:1px; background: linear-gradient(110deg, #5f2e01 10%, #eab806 45%, #3b0c00 65%, #f9ee91 75%, #9e7327 85%, #4f1e09 100%); margin:0 -4vw;}
	.bn_list .item:last-of-type:after { display:none;}
	.bn_list .item:nth-of-type(3n) { margin-right: 0;}
	.bn_list .item:nth-of-type(2 + n) { margin-top: 10px;}
	.bn_list .item:nth-of-type(4 + n) { margin-top: 10px;}
	.bn_list .item .name { font-size: 1.2rem;}
	.bn_list .item .status { font-size: 0.9rem;}
	.bn_list .item .intro { border-top:1px solid #444; border-bottom:1px solid #444; padding:20px 0; margin:15px 0;}
	.bn_list .item .intro li:nth-of-type(n + 2) { margin-top:10px;}
	.bn_list .item .intro .tx01 { font-size:1rem;}
	.bn_list .item .intro .tx02 { font-size:0.8rem;}
	.bn_list .item .cart_btn { margin-bottom:30px;}
	.bn_list .item .price .number { display: inline;}

	/* type2 */
	.cartblock_list .item.type2 .price_wrap { margin-bottom:10px;}
	.cartblock_list .item.type2 .price_wrap .name { font-size: 1.3rem;}
	.cartblock_list .item.type2 .column { display: block; }
	.cartblock_list .item.type2 .column > * { width: auto;}
	.cartblock_list .item.type2 .desc { line-height: 2;}
	.cartblock_list .item.type2 .cart_btn { margin-top:20px;}

  /* type3 */
  .cartblock_list .item.type3 .price_wrap { margin-bottom:10px;}
  .cartblock_list .item.type3 .price_wrap .name { font-size: 1.3rem;}
  .cartblock_list .item.type3 .column { display: block;}
  .cartblock_list .item.type3 .column > * { width: auto!important;}
  .cartblock_list .item.type3 .cart_btn { margin-top:15px;}

	/* sidenav */
	.teiki_sidenav { right:-65px; bottom: 0; width: 65px; height:100vh; padding-top: 15px;}
	.teiki_sidenav .cartmove_btn { padding:3px; width:65px; position: absolute; left:-65px; bottom:60px;}
	.teiki_sidenav .cartmove_btn img { width:60px;}
	.teiki_sidenav .cartmove_btn .tx_wrap { flex-wrap: wrap; justify-content: center; margin-top:5px;}
	.teiki_sidenav .cartmove_btn .tx_wrap .tx { width:100%; font-size: 10px; text-align: center;}
	.teiki_sidenav .cartmove_btn .tx_wrap .icon { transform: scale(0.85); display: flex; order: 2; margin-top:5px;}
	.teiki_sidenav .pagetop { position: absolute; bottom: 10px; left: -50px; }
	.teiki_sidenav .sp_menuBtn { display:flex; align-items: center; justify-content: center; border-radius: 4px; background:rgba(0,0,0,0.8); color: #fff; height: 40px; width: 40px; text-decoration: none; margin:0 auto; display:none;}
	.teiki_sidenav .sp_menuBtn i { font-size: 2.2rem; line-height: 1;}
	.sp_sidenav.active { opacity: 1; z-index:1000; display:block; background:rgba( 0,0,0,0.8); position: fixed; top: 0; left: 0; width: 100vw; height: 100vh;}
	.sp_sidenav .inner { position: relative; display: flex; align-items: center; justify-content: center; height: 100vh; width: 100vw;}
	.sp_sidenav .inner .close { color:#fff; position: absolute; right:30px; top:30px;}
	.sp_sidenav ul { width:65vw;}
	.sp_sidenav ul li a { color:#fff; font-weight:bold; display: block; text-align: center; padding:12px 0; border-bottom: 1px solid #aaa; text-decoration: none;}
	.sp_sidenav ul li:last-of-type a { border-bottom:0;}

	.sp_menuBtn { display:inline-block; position: absolute; left:-50px; top: 10px;}

  .scroll_point { margin-top:-60px; padding-top:60px;}
  .scroll_point#p0 { margin:0; padding-top:0;}

}
