/*---------------------------------------------------
トップページ
----------------------------------------------------*/
/*---メインタイトル&ロゴ・画像（2022.7修正）---*/
.box__bg_photo{
background-image:url(../images/top/heropc.jpg);background-size:cover;background-position:center;  
}

#main,#main-contents{padding:0 !important;}
.intro_box{
    position: absolute;
    top: 80%;
  left: 50%;
    width: 100%;
  -ms-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  margin:0;
  padding:0;
}

/*トップログイン・登録ボタンレスポンシブ調整*/
@media screen and (max-width:600px){
    .intro_box{top:50%;}
}
@media screen and (max-width:480px){
    
    .intro_box .btn2,.intro_box .btn3{font-size: 14px;}    
}

/*申し込みボタン*/
.bn_linkBtn{
/*  display: inline-block;*/
  position: absolute;
  width: 200px;
  top:70%;
  left:50%;
  -ms-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  margin:0;
  padding: 10px 25px;
  border-radius: 25px;
  text-decoration: none;
  font-size:1.2em;
  font-weight: bold;
  letter-spacing: 0.1em;
  color: #f76a35;
  background-color: #ffffff;
/*  background-image: linear-gradient(45deg, #FFC107 0%, #ff8b5f 100%);*/
  transition: .4s;}

.bn_linkBtn:hover{
    background-image: linear-gradient(45deg, #FFC107 0%, #f76a35 100%);
    color:#ffffff;
    outline: none;
    text-decoration:none;
}



/*-----料金表キャンペーン追加----*/
.price_detail{font-size:0.8em;}

@media screen and (max-width:768px){
    .crownIcon {display: none;}
}
   

/*-----レッスンまでの流れ----*/
.inner-block .flow_box .prep_pc{
    margin:0 10px;
    text-align: center;
}
.flow_box .step2_box{
    position: relative;
}

@media screen and (max-width:660px){
    .zoomLesson_box{
        width: 100%;
    }
    .zoomLesson_box img{
        width: 100%;
    }
}
@media screen and (max-width:480px){
.bnr_pc{display: none;}
.bnr_sp{display: block;}
}

/*----------------------------
 トップページリニューアル(2024.3.8)
-----------------------------*/

/*h1・ログインボタンリニューアル*/
#header-line h1{line-height: 2.5em;}
#header-line img{display:block;width:180px;padding-left: 1em;margin: 5px 0 0;}
.header_wrap{
   display:flex;
   justify-content:space-between; 
   padding: 5px 0;
}
#header-line .header-link{
 display:flex;
line-height:2.5em;
}
#header-line .header_login{
  display:block;
        border:solid 1px;
    margin-right: 5px;
    letter-spacing: 0.1em;
    padding: 0 5px;
    text-decoration: none;
   }
#header-line .header_login:hover{
    background: #ffffff;
    color: #90B2DC;
    }
.header_corp,.header_site{
    margin:0 5px;
}
.header_corp:hover,.header_site:hover{
    text-decoration: none;
}
.header_login .fa-user{
    line-height: 30px;
    margin-right: 5px;
}
/*メイン画像内タイトル・ロゴ*/
#main_title .lead_text{
    font-weight:bold;
    font-size:1.5em;
    position:absolute;
    top:40%;
    left: 60%;
    }
#main_title .top_logo{
    position:absolute;
    top:50%;
   left: 50%;
  -ms-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  margin:0;
  padding:0;
}
.lead_text span{
    color:#fff;
    text-shadow: 1px 0 0 #333, 0 1px 0 #333, -1px 0 0 #333, 0 -1px 0 #333; 
}
.top_bn_link{
    padding-top: 30px;
}
.top_bn_link a:hover{
    opacity:0.8;
	transition:0.3s;
}
.familyuse_bn{
    max-width:800px;
/*    border:solid 1px #114232;*/
}
.top_lead{
    font-family: YuMincho, "Yu Mincho", 游明朝体, sans-serif;
    position:absolute;
    width:100%;
    left: 50%;
    top:60%;
    -ms-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  margin:0;
  padding:0;
    font-size: 1.5em;
    font-weight:bold;
    color:#ffffff;
  }
.top_lead span{display: block;margin-top: 5px;}
.top_lead a {
    font-family: sans-serif;
    padding: 10px 25px;
    font-size: 0.7em;
    font-weight: bold;
    letter-spacing: 0.1em;
    color: #ffffff;
    line-height: 1em;
    background-image: linear-gradient(45deg, #faa51a 0%, #f47a20 100%);
　　transition: .4s;
    border-radius: 20px;
/*
    border: solid 1px #da7c0c; 
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.2);
*/
    text-decoration: none;
    text-shadow: 0 1px 0 rgba(0,0,0,0.2);
}
.top_lead a:hover{
/*    border: solid 1px #faa51a;*/
  background-image: linear-gradient(45deg, #faa51a 0%, #f78d1d 100%);
    text-shadow: none;
}
.top_lead img{
    margin: 20px auto;
}
.fa-caret-right{
    font-size: 1.4em;
    line-height:2em;
    margin-left: 5px;
}
/*****料金プラン変更(作業中)*****/
.plan-box{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
.plan-ticket,
.plan-month{
	width: 320px;
	height: 340px;
	position: relative;
	background: #FEFFD2;
    font-size: 1.2em;
	overflow: visible;
	margin: 2em 3em;
	padding: 5em 0.5em 0.5em;
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
}
.plan-info{
    font-weight: bold;
}
.plan-title {
	line-height: 50px;
	position: absolute;
	top: 15px;
	display: block;
	width: calc(100% + 20px);
	height: 50px;
	margin-right: -10px;
	margin-left: -18px;
	text-align: center;
	color: #ffffff;
    font-weight: bold;
    font-size: 1.5em;
}
.plan-ticket .plan-title{
    background: #55AD9B;
}
.plan-month .plan-title{
    background: #F6635C;
}
.plan-title:before, .plan-title:after {
	position: absolute;
	content: '';
}
.plan-title:before {
	bottom: -10px;
	left: 0;
	width: 0;
	height: 0;
	border-top: 10px solid #1565C0;
	border-left: 10px solid transparent;
}
.plan-title:after {
	right: 0;
	bottom: -10px;
	width: 0;
	height: 0;
	border-top: 10px solid #1565C0;
	border-right: 10px solid transparent;
}
.plan-ticket .plan-title:before,
.plan-ticket .plan-title:after{
    border-top: 10px solid #5C8984;
}
.plan-month .plan-title:before,
.plan-month .plan-title:after{
    border-top: 10px solid #C23373;
}
.plan-price{
  background:#ffffff;
  height: 200px;
  margin-top: 30px;
}
.plan-price li{
    display: block;
}
.plan-price li:nth-child(even){
    font-size: 1.8em;
}
.plan-price li:nth-child(odd){
    background: #FFEEA9;
    color: #FF7D29;
    font-size: 1.2em;
}
.price-link{
/*    background: #8EACCD;*/
    
}
.price-link a{
    margin: 20px auto;
    border-radius: 15px;
    padding: 5px;
    width:200px;
    font-size: 0.9em;
    display: block;
    color: #ffffff;
    text-decoration: none;
}
.plan-ticket .price-link a{
    background: #95D2B3;
}
.plan-month .price-link a{
    background: #FFBC97;
}
.plan-ticket .price-link a:hover{
    border: solid 1px #95D2B3;
    background: #ffffff;
    color: #95D2B3;
    transition: 0.5s;
}
.plan-month .price-link a:hover{
    border: solid 1px #FFBC97;
    background: #ffffff;
    color: #FFBC97;
    transition: 0.5s;
}
#price-section .payment_box{
    
}
#price-section .payment_box p{
    font-size: 1.2em;
}
@media screen and (max-width:960px){
    .header_corp,.header_site{display: none;}/*h1法人、サイトマップを非表示*/
    .lead_banner{
        position: initial;
        transform: unset;
    }
    .family_box{
        width:50%;
        margin: 0;
    }
    .familyuse_bn{
        width:90%;
    }
}
@media screen and (max-width:600px){
    .lead_banner{
        display: block;
    }
    .family_box{
        width:100%;
        border: none;
        position: initial;
        transform: none;
    } 
    .top_lead{font-size:1.2em;}
    .top_lead img{margin-top:10px;width:150px;}
    .family_box a{margin: 0 auto 5px;}
}
@media screen and (max-width:480px){ 
    .header_wrap{
        flex-wrap: wrap;
        justify-content: center;
    }
    .header_login{width:150px;text-align: center;}
#main_title .lead_text{top:50%;font-size:1.1em;}
    .top_lead{top:75%;font-size:1em;}
/*    .top_lead a{padding: 5px 8px;}*/
    .family_box p{font-size: 1.3em;line-height: 1.3em;}
    .family_box a{font-size: 1em;}
    .lead_text span{font-size: 0.8em;}
}
/*////// 体験・法人サイドバナー ///////*/
.side-bnr{
    position: fixed;
    right: 0;
    top: 400px;
    z-index: 9999;
}
/* Firefox */
@-moz-document url-prefix() {
    .side-bnr{
        width: 40px;
    }
}
.side-bnr a{
   writing-mode: vertical-rl;
   display: block;
    padding: 10px 5px;
    font-size: 1.2em;
    letter-spacing: 0.1em;
    margin-bottom: 2px;
    color: #fff;
}
.sidebnr-trial{
    background: #37B7C3;
}
.sidebnr-corp{
    background: #071952;
}
@media screen and (max-width:480px){ 
    .side-bnr{display: none;} 
}
body{position: relative;}
/*---------------------------------------------------
レッスンの流れ
----------------------------------------------------*/
.step div{
    position: relative;
    width:660px;
    margin: 0 auto;  
}
.step :nth-child(even){
    text-align: left;
}

.link_out a{
  position:absolute;
	top:300px;
	left:210px;  
} 

.skype_dlbtn {
	position:absolute;
	top:150px;
	left:220px;
}
.zoom_dlbtn {
	position:absolute;
	top:150px;
	left:435px;
}
.zoomuser{
    position:absolute;
    top:200px;
    left:220px;
}   
.zoomuser a{
    text-decoration: underline;
}
@media screen and (max-width:660px)
{
    .step div{width:100%;position:static;}
    .flowimg,.mt20{width: 100%;}
    .link_out a,.zoomuser{position:static;margin-top:20px;}
    .skype_dlbtn,.zoom_dlbtn{position:static;margin-top: 10px;}
    .app_dlbtn{margin: 0 auto;}
    #btn-section{margin: 20px 0;}
    }

/*---------------------------------------------------
初めての方へ
----------------------------------------------------*/
.charactors_box{
    margin: 20px auto 50px;
}
.charactors_box div img{
    width:100%;
}
.charactors_top div,.charactors_bottom div{
    display:inline-block;
    position: relative;
    margin-bottom: 5px;
}
.charactors_request p,.charactors_lesson p{
    position: absolute;
    margin:0;
    padding:0;
    top:15%;
    left:10%;
    font-size: 1.5em; 
    line-height: 1.2em;
}
.charactors_request span,.charactors_lesson span{
    position: absolute;
    margin:0;
    padding:0;
    top:35%;
    left:10%;
    font-size: 1.2em; 
    width:200px;
    text-align: left;
    line-height: 1.6em;
}
.charactors_textbook p,.charactors_family p{
    position: absolute;
    margin:0;
    padding:0;
    top:15%;
    right:10%;
    font-size: 1.5em; 
    line-height: 1.2em;
}
.charactors_textbook span,.charactors_family span{
    position: absolute;
    margin:0;
    padding:0;
    top:35%;
    right:10%;
    font-size: 1.2em; 
    width:200px;
    text-align: right;
    line-height: 1.6em;
}
.charactors_request span{
    color: #4cc0d1;
}
.charactors_textbook span{
    color: #bdd08d;
}
.charactors_lesson span{
    color: #8864c6;
}
.charactors_family span{
    color: #5367d2;
}
.intro_title{
    margin-top: 30px;
}
.intro_title p{
    margin: 30px 0 10px;
    position:  relative;    /* 位置調整 */
    font-size: 1.2em;
    color:#366092;
    text-align:  center;    /* 文字位置指定 */
}
.intro_title span{
    font-size:1.5em;
    font-weight: bold;
/*    border-bottom: dotted 5px #e3dcd5;*/
    color:#7293b0;
    margin: 20px auto;
    padding: 5px;
    line-height: 5em;
    
}
.intro_title sup {
    font-size: 0.8em;
    line-height: 1.5em;
}
.intro_time{
    margin: 0 auto;
}
.pop_text{
    font-size: 1.2em;
    font-weight: bold;
    color: #e0326d;
    margin:10px;
}
.sbtn,.ibtn{
  font-size: 0.9rem;
  color: #614f38;
  line-height: 1;
  position: relative;
  display: inline-block;
  padding: 0.8rem 0.9rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  
}
.ibtn{width: 170px;margin: 0 10px 10px 0;}

a.btn-radius-solid {
  border: 1px solid #614f38;
  background: #f1e767;
  background: -webkit-gradient(linear, left top, left bottom, from(#fdfbfb), to(#ebedee));
  background: -webkit-linear-gradient(top, #fdfbfb 0%, #ebedee 100%);
  background: linear-gradient(to bottom, #fdfbfb 0%, #ebedee 100%);
  -webkit-box-shadow: inset 1px 1px 1px #fff;
  box-shadow: inset 1px 1px 1px #fff;
}

a.btn-radius-solid:hover {
  text-decoration: none;
  background: -webkit-gradient(linear, left bottom, left top, from(#fdfbfb), to(#ebedee));
  background: -webkit-linear-gradient(bottom, #fdfbfb 0%, #ebedee 100%);
  background: linear-gradient(to top, #fdfbfb 0%, #ebedee 100%);
}
.fa-angle-right{margin-left: 10px;}
.lesson_mov{height: 450px;}

.yt_thum {
    margin:0px auto;
    text-align: center;
    width: 90%;
    }
.yt_title{border-bottom:solid 1px #557B83;margin: 10px auto;}
.yt_thum p{width: 560px;text-align: left;margin:  10px auto;}
.yt_thum a{color: #557B83;font-size: 0.9em;}
.yt_thum p span{color:#557B83;font-size: 1.1em;font-weight: bold;}
.yt_mov{margin: 10px auto 20px;}
.yt_mov p{margin-top: 8px;}
@media screen and (max-width:660px){
    .yt_thum iframe,.yt_thum p {width:100%;}
    
}

/*---レッスンの流れ---*/
.stepbox{display: flex;margin-bottom: 30px;}
.toolsbox{padding-left: 30px;}
.toolsbox img{padding: 10px 10px 0 0;}
@media screen and (max-width:660px)
{
    .intro_title p{
        font-size: 1em;
    }
    
}

/*---------------------------------------------------
お支払いの種類
----------------------------------------------------*/
.ticket_pay{
    font-size:0.8em;
    margin-left: 30px;
    line-height:50px;
    color:#ffffff;
    }
.inner .pay_intro,.inner .paypal_detail, .inner .bank_info{
    text-align:left;
    width:95%;
    margin:0 auto;
}
.cs_mail{
    font-weight: bold;
}
@media screen and (max-width:700px){
    
   .pay_intro p,.paypal_detail p{
        margin-bottom: 10px;
    }   
}
/*---------------------------------------------------
シェアスクリーンについて
----------------------------------------------------*/

.share_title,.kids_title{line-height: 45px;}

/*---------------------------------------------------
よくあるご質問
----------------------------------------------------*/
.categoryBox{width: 90%;margin: 15px auto;}
.fa-chevron-circle-right:before{color:#679B9B;margin-right: 5px;}
.categoryBox a{color:#605046;}
.qaCategory{font-size: 1.2em;margin:10px;width:}
.qaCategory span{font-weight: 100;}
.qaCategory:hover{color:#F1DDBF;}
/*---------------------------------------------------
コース・教材(オリジナル教材追加に伴うリニューアル案)2024.2
----------------------------------------------------*/
#textbook-section .course_list{
    padding: 10px;
    border-radius: 10px 10px 0 0;
    box-sizing: border-box;
    background-color: #95D2B3/*#419197*/;
    font-size: 1.3em;
    margin-top: 20px;
    color: #ffffff;
}
/*アイコン*/
#textbook-section .course_list .fa-list,
#textbook-section .course_list .fa-chalkboard{
    font-size: 1.3em;
    margin-right: 10px;
    line-height: 30px;
}
#textbook-section .category_list{
    margin: 0 auto 30px;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    }
#textbook-section .category_list .category_box{
    width:45%;
/*    border: solid 1px #8ADAB2;*/
    margin: 20px 15px;
    border-radius: 15px;
    position: relative;
    background:#F8FFD2;
    box-shadow: 0 3px 4px rgba(0, 0, 0, 0.32);/*影*/

}
/*ボックス右上のリボン*/
.category_list .box_ribbon{
    position: absolute;
  top: 0;
  right: 0;
  width: 85px;
  height: 85px;
  overflow: hidden;
}
.category_list .box_ribbon span{
    display: inline-block;
  position: absolute;
  padding: 5px 0;
  left: -24px;
  top: 20px;
  width: 160px;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
  line-height: 16px;
  background: #e0326d;
  color: #fff;
  letter-spacing: 0.05em;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  box-shadow: 0 0 0 2px rgb(209, 51, 104);
}
/*コースタイトル*/
#textbook-section .category_list h4{
    line-height: 1.5em;
    padding: 15px 0;
    font-weight: bold;
    text-align: center;
}
#textbook-section .category_list h4 span{
    display:block;
    font-size:0.8em;
    color: #78A083;
}
/*教材ページリンクbtn*/
.category_list .material_btn{
    display: block;
    width:150px;
    padding: 5px 10px;
    margin: 10px auto 20px;
    color: #fff;
    text-align: center;
    text-decoration: none;
    border-radius: 20px;
    letter-spacing: 0.1em;
    background: #82CD47;
}
.category_list .material_btn:hover{
    background:#65B741;
    transition: 0.5s;
}
.material_btn .fa-arrow-right{
    margin-left: 5px;
    line-height: 1.7em;
}
.material_btn:hover{
    right: 0.8rem;
}
#textbook-section .category_list p{
    padding: 0 20px;
    height: 150px;
    text-align: left;
}
#textbook-section .category_list img{
    margin: 10px auto;
}

/*シェアスクリーンについて*/
.sharescreen_info{
    margin: 2em auto; /* ボックスの余白 */
	padding:2.5em 2em; /* ボックス内側余白 */
	position:relative; /* 配置(ここを基準に)*/
    text-align: left;
    width:90%;
    box-sizing: border-box;
    background: #F8FAE5;
}
.sharescreen_info .share_boxtitle{
    background-color:#b2d5de; /* タイトル背景色 */
	font-size: 1.2em;/* タイトル文字の大きさ */
	color: #fff ; /* タイトル文字色 */
	padding: 0.5em;/*タイトルの余白*/
	line-height: 1;/*タイトルの行の高さ*/
	position:absolute;	/* 配置(ここを動かす) */
	top: 0; /*上から（0px）移動*/
	left: 0; /*左から(0px)移動*/
    font-weight: bold;
}
.share_inner{
    display:flex;
}
.share_inner .share_pic{
    display: block;
    width:40%;
    margin: 15px;
}
.share_inner .share_pic img{
    width:100%;
}
.share_inner .share_detail{
    width:60%;
    margin: 15px auto;
}
.share_detail a{
    line-height: 50px;
}
/*
.share_detail a{
    background: #fff;
    display:block;
    width: 80%;
    height: 50px;
    border-radius: 5px;
    text-align: center;
    line-height: 50px;
    margin: 10px auto;
    text-decoration: none;
    color: #314a71;
    border:solid 1px;
}
*/
.sharescreen_info p{
    font-size: 1.2em;
    font-weight: bold;
    margin-bottom: 15px;
}
.sharescreen_info .fa-display{
    line-height: 30px;
    margin-right: 10px;
}
.sharescreen_info .fa-chevron-right{
    margin-right: 10px;
    line-height: 25px;
}
.share_detail a:hover{
    background: #D2E0FB;
    transition: 0.5s;
    border: none;
}
@media screen and (max-width:960px){
    #textbook-section .category_list p{
        height: 200px
        
    }
}
@media screen and (max-width:660px){
    #textbook-section .category_list .category_box{
        width:100%;
    }
    #textbook-section .category_list p{
        height:auto;
    }
    .share_inner{
        display: block;
    }
    .share_inner .share_pic{
        width:80%;
        margin: 0 auto;
    }
    .share_inner .share_detail{
        width:100%;
    }
}
@media screen and (max-width:480px){
    #textbook-section .course_list{
        padding: 0;
    }
    .sharescreen_info a{
        font-size: 0.8em;
    }
}
/*---------------------------------------------------
オリジナル教材
----------------------------------------------------*/
/*===indexページstyle sheet===*/
#indexpage-section .text_area .link_request{
    margin-top: 10px;
}
#indexpage-section img{
    margin: 25px auto;
}
#indexpage-section .tabs label{
    width:33.33%;
    width:33.33%;
}
#indexpage-section .index_all{
    background-image: linear-gradient(0deg, transparent 19px, #ccc 20px),linear-gradient(90deg,  transparent 19px, #ccc 20px);
    background-size: 20px 20px;
}
#indexpage-section .index_box{
    width:100%;
    padding:0;
}
#indexpage-section .index_box h3{
    margin-top: 30px;
    letter-spacing: 0.2em;
}
#indexpage-section .index_list{
    max-width:600px;
    text-align: left;
    padding: 0;
}
#indexpage-section .index_list a{
    display: block;
    padding: 10px;
    background: #ffffff;
    color: #776B5D;
}
#indexpage-section .index_list a:hover{
    text-decoration: none;
    background: #F3EEEA;
}
#indexpage-section .index_list span{
    margin-right:5px;
    padding-right:5px;
    border-right:solid 2px #ddd;
}

/*===教材ページstyle sheet===*/
/***reset style.css***/
#main-contents{padding:0;}/*メインページに設定されているページ上部の余白消す*/
#edgmaterial .inner-block{width: 100%;}/*左右の余白消す*/

/***教材ページ共通***/
#edgmaterial .contents_frame{
/*    width: 80%;*/
    text-align: center;
    margin: 0 auto;
    background: #FFFDCB;
    padding-bottom: 30px;
 }
/***単語表***/
.word_list{
  width: 80%;
  border-collapse: collapse;
  border-spacing: 0;
  margin: 50px auto;
  border: solid 1px #ccc;
}
.kids_wordsbox .word_list{
    margin:0 auto;
    font-size: 1.3em;
/*    color: #B19470;*/
    border: none;
    letter-spacing: 0.2em;
}
.word_list th,
.word_list table td{
  padding: 10px 0;
  text-align: center;
}
.word_list tr:nth-child(odd){
  background-color: #eee;
}
.kids_wordsbox .word_list tr:nth-child(odd){
  background-color: #F3EEEA;
}
.word_list tr:nth-child(even){
  background-color:#fff;  
}
/***会話例***/
.scene_title{
     width:100%;
    font-size: 1.3em;
    padding: 3px 5px;
    color:#545B77;
    font-weight:bold;
    line-height:2.5em;
    margin-bottom:30px;
    border-top: solid 2px;
    border-bottom: solid 2px;
    
}
.scene{
    width: 80%;
    padding:15px;
    box-sizing: border-box;
    margin:50px auto;
}

/*会話吹き出し*/
.scene .chatting{
    width:80%;
}

.speaker{
    width:20%;
    text-align: left;
    font-weight: bold;
    }
.kids_exercisebox .speaker{
    text-align: center;
    font-size: 1.3em;
    }
.chatting_box{
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 10px auto;
}
.scene .chatting_box:nth-child(odd){
/*   color: #61A3BA;*/
}
.scene .chatting_box:nth-child(even){
/*    color: #A9907E;*/
}
.chatting_box .faceicon p{
    font-size: 0.7em;
    line-height: 1.2em;
    font-weight: bold;
    padding-top: 5px;
}
.chatting_box .faceicon img{
  width: 45%;
  height: auto;
  border: solid 3px #ddd;
  border-radius: 50%;
  opacity: 0.6;
  }
.chatting{width:70%;}
.chatting p:first-child{
    font-weight: bold;/*英語フォントのみBOLD*/
}
.kids_exercisebox .chatting p:first-child{
    font-size: 1.5em;
}
.chatting span{
 width:100%;
  display: inline-block;
  position: relative; 
  padding: 17px 0;
  border-radius: 12px;
/*  margin: 5px 10px 0 0; */
  text-align: left;
}
.chatting span:after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 18px; 
  left: -24px;
  border: 12px solid transparent; 
}
.chatting span p{
  padding: 0 10px;
}
.kids_exercisebox .chatting span p:last-child{
    color: #51829B;
}
.chatting .ball-a{
    background: #d7ebfe;
}
.chatting .ball-a:after{
    border-right: 12px solid #d7ebfe;
}
.chatting .ball-b{
    background: #FBECB2;
}
.chatting .ball-b:after{
    border-right: 12px solid #FBECB2;
}
/*===kidsページ===*/
/***共通スタイル***/
#edgmaterial .kids_material{
  background:#F1F7B5;  
}
#edgmaterial .kids_headertitle h2{
    padding:0;
    background: #A1C398;
    line-height: 35px;
    font-size: 1.2em;
    color: #ffffff;
}

/*タイトル画像,contents*/
#edgmaterial .kids_instruction,
#edgmaterial .kids_contents_link {
    position: relative;
    margin-bottom: 120px;
}
/*テキスト中央揃え*/
#edgmaterial .kids_instruction p,
#edgmaterial .kids_contents_link p,
#edgmaterial .kids_contents_link a{
  position: absolute;
  left: 50%;
  font-size: 1.3em;
  letter-spacing: 0.1em;
  -ms-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  margin:0;
  padding:0;
  }
.contents_frame .kids_instruction{
    margin: 30px auto;
}
.contents_frame .kids_instruction p{
    top: 75%; 
    margin: 20px auto;
   color:#FF7800;
   font-weight:bold;
   font-size:1.2em; 
    padding: 5px 10px;
    box-sizing: border-box;
}
.contents_frame .kids_instruction img{
   display: block;
    margin: 0 auto;
    max-width: 340px;
    margin-bottom: 80px;
}#edgmaterial .kids_contents_link a{
   color: #FFCD4B;
    width: 300px;
    border-radius: 25px;
    background: #ffff;
    font-weight: bold;
    font-size: 1.8em;
    text-decoration: none;
}
#edgmaterial .kids_contents_link a:hover{
    background: #FFEBB2;
}
#edgmaterial .kids_contents_link .link_words{
    top: 30%;
}
#edgmaterial .kids_contents_link .link_abcd{
    top: 40%;
}

#edgmaterial .kids_contents_link .link_phrase{
    top: 50%;
}
#edgmaterial .kids_contents_link .link_exalphabet{
    top: 60%;
}
#edgmaterial .kids_contents_link .link_ijkl,
#edgmaterial .kids_contents_link .link_exercise{
    top: 70%;
}
#edgmaterial .kids_contents_link p{
    top: 10%;
    color: #A3CB46;
    font-weight: bold;
    font-size: 1.5em;
}

.kids_contents_link img{
    max-width:500px;
    width: 100%;
}
/*キッズword*/

.words_frame{
    margin-bottom: 120px;
}

/*フレーズ*/
.kids_wordsbox,
.kids_phrasebox{
    max-width:600px;
    margin: 2em auto;
	padding:1em 2em 2em;
	background-color: #EFE3DF; /* 背景色 */
	border-radius:1px;/*ボックス角の丸み*/
    text-align: left;
    margin-bottom: 130px;
    letter-spacing: 0.2em;
    }
.kids_wordsbox .words_instruction,
.kids_phrasebox div{
    color: #987070; /* タイトル文字色 */
	font-size: 1.3em;
	font-weight: bold;
    margin: 20px auto;
}
.kids_wordsbox img{
    width:100%;
}
.kids_phrasebox p{
    font-size: 1.8em;
    text-align: center;
    background: #ffffff;
    border-radius: 15px;
    font-weight: bold;
    line-height: 1.2em;
    padding: 10px;
    margin-bottom: 20px;
}

.kids_phrasebox p span{
    display: block;
    font-size: 0.7em;
    color: #A7A297;
}
.kids_wordsbox .fa-pencil,
.kids_phrasebox .fa-pencil{
    line-height: 35px;
    margin-right: 10px;
}
/*キッズexercise*/
.kids_exercisebox .scene{
    font-size: 1.2em;
}
.exercise_qa .question_box p span,
.kids_extitle p{
    color: #CE7777;
/*    text-decoration: underline;*/
}
.kids_extitle{
    padding: 15px;
    font-size: 1.5em;
}
/***アルファベット***/
.alphabet_frame .pic_efgh,
.alphabet_frame .pic_ijkl{
    margin-bottom: 50px;

}
.lead_alphabet{
    margin-bottom:50px;
}

.lead_alphabet img{
    max-width: 600px;
    width:100%;
}
.kids_picture{
     display: flex;
    justify-content: center;
    flex-wrap: wrap
}
.contents_frame .kids_picture{
    margin-bottom:50px;
}
.contents_frame .kids_picture div{
    margin: 0 20px;
/*    width: 280px;*/
}
.contents_frame .kids_picture p{
    font-size: 2em;
    font-weight: bold;
    letter-spacing: 0.2em;
    color:#B19470;
    margin: 30px auto;
    }
.contents_frame .kids_picture img{
    margin: 0;
}
.contents_frame .kids_picture .fa-volume-high{
    line-height: 54px;
    margin-right: 20px;
}

/***いろのなまえ***/
#edgmaterial .content-title{
    margin-bottom:80px;
}
.kids_color{
    display: flex;
    justify-content: center;
}
/*風船の上に文字*/
#edgmaterial .contents_frame .kids_color div{
    position: relative;
}
#edgmaterial .contents_frame .kids_color p{
    position: absolute;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  margin:0;
  padding:0;
    color: #ffffff;
}

/*練習問題*/
.kids_exercisebox{
    margin-bottom: 130px;
    font-weight: bold;
    letter-spacing: 0.2em;
}
.kids_exercisebox .exercise_lead{
    font-size: 25px;
    margin-bottom: 35px;
    }
.kids_exercisebox .exercise_pic{
    max-width: 480px;
    width: 100%;
    }
.exercise_qa .question_box p{
    font-size: 1.5em;
    margin: 70px auto 0;
}
.question_box .ja_sub{
    font-size: 1.2em;
    color: #A7A297;
}

.exercise_qa .answer_box{
    margin: 2em auto; /* ボックスの余白 */
	background-color: #ffffff; /* ボックス背景色 */
	padding:3em 2em 2em; /* ボックス内側余白 */
	position:relative; /* 配置(ここを基準に)*/
    max-width:450px;
}

.exercise_qa .answer_box p{
    background-color:#EFE3DF; /* タイトル背景色 */
	font-size: 1em;/* タイトル文字の大きさ */
	color: #CE7777 ; /* タイトル文字色 */
	padding: 7px 15px;/*タイトルの余白*/
	line-height: 1;/*タイトルの行の高さ*/
	position:absolute;	/* 配置(ここを動かす) */
	top: -10px; /*上から（0px）移動*/
	left: 20px; /*左から(0px)移動*/
}
.exercise_qa .answer_box span{
    font-size: 1.8em;
}

/*メディアクエリ*/
@media screen and (max-width:768px){
    #edgmaterial .contents_frame .kids_picture{
        margin-bottom: 0;
    }
/*
    #edgmaterial .kids_picture{
        display: block;
    }
*/
    #edgmaterial .contents_frame .kids_picture div{
        width: auto;
        margin-bottom: 50px
    }
    #edgmaterial .contents_frame .kids_picture:last-child{
        margin-bottom: 0
    }
    .word_list th,
    .word_list td{
      display: block;
      padding:0;
    }
/*
   .word_list th,table td{
      display: block;
      padding:0;
    }
*/
    .kids_wordsbox .word_list{
        font-size: 1.5em;
    }
    .kids_wordsbox .word_list tr{
        display: block;
        padding: 15px;
    }
}
@media screen and (max-width:480px){
    #edgmaterial .kids_contents_link p{
       font-size: 1.2em;  
    }
    #edgmaterial .kids_contents_link a{
    width: 70%;
    font-size: 1.3em;
    }    
}
/*===旅行・ビジネスページ===*/
/***共通スタイル***/
/*トップカテゴリタイトル*/
#edgmaterial .contents_title h2{
    padding:0;
     background: #9BBEC8;
    line-height: 35px;
    font-size: 1.2em;
    color: #ffffff;
} 
#edgmaterial .contents_title img{
    margin: 25px 0;
    max-width: 300px;
    width: 90%;
}
/*サブタイトル*/
.contents_title p{
    display: block;
    max-width:300px;
    width:80%;
    margin: 0 auto;
    color: #637A9F;
    font-weight: bold;
    border:double 7px #CCCFD6;/*枠線*/
    font-size: 1.3em;
    letter-spacing: 0.2em;
}
/***タイトル***/
.ex_title {
  width:auto;
  font-size: 1.5em;
/*  font-weight: bold;*/
  background-color: #9BB0C1;
  color: #fff;
  padding: 0.5em 1em calc(0.5em - 6px);
  position: relative;
}
.ex_title span{
  display: block;
  text-align: left;
}
.ex_title::after {
  content: '';
  background-color: #9BB0C1;
  width: 100%;
  height: 3px;
  position: absolute;
  bottom: -6px;
  left: 0;
}
/***タイトルアイコン***/
.ex_title .fa-pen-to-square,
.ex_title .fa-comments,
.ex_title .fa-book{
   font-size: 1.2em;
    line-height: 1.3em;
    margin-right: 10px;
}
/***contents***/
.contents_frame .index_title{
    text-align:left;
    padding:2em;
    font-size:0.9em;
    color: #5F685A;
}
.contents_frame ol{
    width:300px;
    margin:0 auto 50px;
    text-align:left;
    background:#fff;
    padding:15px;
    background:#F7D695;
    box-shadow: 10px 10px #EE8972;
}
.contents_frame ol span{
    display:block;
    text-align:center;
    font-size:1.2em;
    font-weight:bold;
}
.contents_frame ol li{
    display:block;
}
.contents_frame ol li a{
    color:#AA7070;
    text-decoration: underline;
}
.contents_frame ol li a:hover{
    color: #ED9455;
}
.contents_frame ol li .fa-chevron-right{
    line-height: 1.5em;
    margin-right: 10px;
}
/***使えるフレーズ***/
.phrase_box{
    background: #fff;
    width:80%;
    margin:50px auto;
}
.contents_phrase{
    display: flex;
    flex-wrap: wrap;
    width:90%;
    margin: 0 auto;
    border-bottom: dashed 2px #9BB0C1;
}
.contents_phrase:last-child{
    border:none;
}
.contents_phrase div{
    margin: 0;
    width:50%;
    text-align: left;
 padding: 10px 0;
}

.phrase_en{
    font-weight: bold;
}

/***メディアクエリ***/
@media screen and (max-width:768px){
    .kids_instruction div{
        width:90%;
    }
    .contents_frame .kids_instruction img{
       width:80%;
    }

    .kids_frame .kids_picture{
        display: block;
    }
    .contents_phrase div{
        width:100%;
    }
    .contents_frame .phrase_en{
        padding: 10px 0 0 0;
    }
    .scene .chatting_box,
    .kids_exercise .chatting_box
    {
        display: block;
    }
    .scene .chatting{
        width:100%;
    }
    .kids_exercise .chatting{
        width:100%;
    }
    .quote .chatting{
        text-align: right;
    }
    }
@media screen and (max-width:480px){
    
   #edgmaterial .contents_frame{
        width:100%;
    }
    .contents_frame .kids_instruction p{
        font-size: 1em;
    }
    
}

/*---------------------------------------------------
料金プラン
----------------------------------------------------*/

/*2023キャンペーン*/
.campaign_price_bnr{
   border:solid 1px #2c2727;
    margin-bottom:30px; 
    width: 90%;
    max-width: 760px;
}
.price_box .campaign_tag{
   display: inline-block;
    margin:0;
    background:#FC4F00;
    color:#fff;
    letter-spacing:-1px;
    font-size:0.7em; 
    padding:3px 8px;
    border-radius: 13px;
}
.price_box .price_limited{
    font-size:1.1em;
    font-weight:bold;
    color:#FC4F00;
    line-height:1.6em;
}

/*---ヘッダータイトル用スタイル---*/
.campaign_title{
    position: relative;
    width: 100%; padding-top: 2px; margin: 5px auto 15px; text-align: left; border-radius:10px; height:50px;color: #010079;
  text-shadow: 0 0 5px white;
 background: -webkit-repeating-linear-gradient(-45deg, #fff5df, #fff5df 4px,#ffe4b1 3px, #ffe4b1 8px);
  background: repeating-linear-gradient(-45deg, #fff5df, #fff5df 4px,#ffe4b1 3px, #ffe4b1 8px);box-sizing:border-box;
}
.campaign_title span{
   padding-left: 20px; 
    margin:0 20px 0 30px; font-weight: bold; font-family: ‘游明朝’, YuMincho, ‘ヒラギノ明朝 ProN W3’ , ‘HiraMinProN-W3’ ,”メイリオ”, Meiryo, serif; text-shadow: 0 -1px 0 rgba(255,255,255,0.8); letter-spacing: 2px; color: #f47a20; line-height:50px; font-size: 22px;
}
.campaign_title img{vertical-align: text-top;margin:0 5px 0 20px;}/*王冠アイコン*/
.ribbonL{position: absolute;left:-23px;top:-3px;}/*見出し用リボン*/
.ribbonR{position: absolute;right:-8px;top:8px;}
.campaign_link{text-decoration: underline;}
.payment_box img{margin: 15px;}
.payment_link{
    margin: 0 auto;
/*    display:inline-block;*/
    width:300px;

    padding:5px 10px;
    border:solid 1px #ccc;
    background:#f1ebeb;
    box-shadow:0 1px 0 rgba(255, 255, 255, 0.8) inset;
/*    font-weight:bold;*/
    font-size: 1.2em;
    vertical-align:middle;
    text-align:center;
    border-radius:15px;
    cursor: pointer;
}
.payment_link a{
    display:block;
    color:#69655c;
    text-decoration: none;
}
.payment_link:hover{background:rgba(241,235,235,0.8);}

@media screen and (max-width:768px){
    .payment_link{font-size: 1em;}
    .price_box .campaign_tag{
        display: none;
    }
}
@media screen and (max-width:480px){
    .payment_box{padding-bottom: 15px !important;}
    .payment_link{width:250px;}
}

/******新規割引プラン追加（作業中)******/
/*
.price-lead h3{
    max-width: 350px;
    width: 100%;
    color:#55AD9B;
    font-size:2em;
    font-weight:bold;
    margin: 30px auto 15px;
    background: linear-gradient(transparent 60%, #f6ff5f 30%);
}
*/
.price-lead p{
    text-align: left;
    width: 80%;
    font-size: 1.2em;
    color: #69655c;
    margin: 30px auto;
}
.price-lead img{max-width: 80%;width: 100%;margin: 30px auto 0;}
/*プラン別ページ内リンク*/
.plan-link {
    margin: 20px auto 30px;
}
.plan-link a{
    border:3px solid #ffffff;
    background-color:#F6E9B2;
    box-shadow:0 0 0 6px #F6E9B2;
    padding:16px;
    margin:20px;
    display: block;
    font-size: 1.3em;
    font-weight: bold;
    width:250px;
    color: #69655c;
    letter-spacing: 0.2em;
}
.plan-link a:hover{
    background-color: #F3CA52;
    text-decoration: none;
}
.plan-name{
    font-size: 1.5em;
    margin: 50px auto 15px;
}
#price-section h2 .fa-tag,
#price-section h2 .fa-calendar-check{
   line-height: 45px;
   margin-right: 10px 
}
.plan-link .fa-tag,
.plan-link .fa-calendar-check{
    line-height: 35px;
    margin-right: 10px;
    color: #69655c;
}
.new-notice{/*新料金プランお知らせ*/
   text-align:center;
    font-size:1.2em;
    background:#FCF876;
    margin:10px 0;
    font-weight:bold;
    padding:5px; 
}
.ticket_detail h3{
    font-size: 1.3em;
    font-weight: bold;
    text-align: center;
    border-bottom: solid 1px #ccc;
    margin-bottom: 15px;
    padding: 5px;
    letter-spacing: 0.3em;
    color: #69655c;
}
/****料金表リニューアル****/
.ticket-box {
  overflow-x: auto;
  margin: 20px auto;
}
.price-table {
  border-collapse: collapse;
  table-layout: fixed;
  width: 100%;
  min-width: 700px;
  font-weight: bold;
  text-align: center;
}
.price-table thead th {
  padding: 1em .8em;
  border-right: 2px solid#fff;
}
.price-table thead th:not(:first-child) {
  background: #8EACCD;
  color: #fff;
  font-size: 1.5rem;
  border-radius: 15px 15px 0 0;
  padding: 1.2em 0 0.5em;
}
.lt-table thead th:nth-child(3)::before,
.st-table thead th:nth-child(2)::before,
.mo-table thead th:nth-child(3)::before{/***★人気★***/
   position: absolute;
    top: 10px;
    left: 50%;
    transform: translateX(-50%);
    padding: 0 1rem;
    border-radius: 0.3rem;
    background-color: #FF7800;
    color: #fff;
    font-size: 0.8rem;
    letter-spacing: 0.5em 
}
.lt-table thead th:nth-child(3)::before,
.st-table thead th:nth-child(2)::before{/***★人気★***/
    content: '★人気★'; 
}
.mo-table thead th:nth-child(3)::before{/*★お得★*/
    content: '★お得★'; 
}
.lt-table thead th:nth-child(3),
.st-table thead th:nth-child(2),
.mo-table thead th:nth-child(3){/*枠をピンクに*/
  background-color: #e0326d;
  position: relative;
}
.price-table tbody {
  border: 1px solid #ccc;
}
.price-table tbody th{
    padding: 1.5em;
    color: #69655c;
}
.price-table tbody tr {
  background-color: #ffffff;
  border-bottom: solid 1px #ccc;
}
.price-table td {
  border-left: 1px solid #ccc;
}
.price-table td {
  padding: .5em;
  font-size: 1.5em;
  line-height: 2em;
}
.lt-table td:nth-child(3),
.st-table td:nth-child(2),
.mo-table td:nth-child(3){
  color: #e0326d;
  border-right: 2px solid #e0326d;
  border-left: 2px solid #e0326d;
}
.lt-table tr:last-child td:nth-child(3),
.st-table tr:last-child td:nth-child(2),
.mo-table tr:last-child td:nth-child(3){
  border-bottom: 2px solid #e0326d;
}
.price-table .price-cell span {
  font-size: .8rem;
  line-height: 50px;
} 
.price-table .click-cell a{
    display: block;
    background: #e3dcd5;
    font-size: 0.8em;
    text-decoration: none;
    border-radius: 20px;
    color: #69655c;
}
.price-table .click-cell a:hover{
    color:#ffffff;
    transition: 0.5s;
}
@media screen and (max-width:960px){
   .lt-table thead th:nth-child(3)::before,
   .st-table thead th:nth-child(2)::before,
   .mo-table thead th:nth-child(3)::before{
   letter-spacing: 0; 
    }
}
/********料金表********/
@media screen and (max-width: 600px) {
  .wrap{
     overflow-x: scroll;
  }
}
@media screen and (max-width:480px){
    .price-lead{font-size: 1.8em;}
}

/*---------------------------------------------------
キッズ・小学生レッスン
----------------------------------------------------*/
.faq{text-align: left;}
.videogallery{
    margin:20px auto;
}
/*---------------------------------------------------
講師紹介
----------------------------------------------------*/
#teacher-section h3{}
.flex_container{display: flex;justify-content: center;flex-wrap: wrap;}
.about_teacher div{width:300px;text-align: center;margin:20px;}
.about_teacher p{width:250px;margin: 5px auto;border-bottom: solid 1px;font-size: 1.5em;font-weight: bold;}
.about_teacher i{font-size: 1.7em;padding:10px;}
.about_teacher span{display:block;width:250px;margin:0 auto;}
.fa-award:before,.fa-chalkboard-teacher:before,.fa-users:before{color:#676FA3;margin-right: 10px;font-size:2em;vertical-align: middle;}

@media screen and (max-width:768px){
.teacher h3 {margin:10px 0 !important;}
}


/*---------------------------------------------------
法人のお客様へ
----------------------------------------------------*/
.corp_box{
   position: relative;
   max-width:640px;
    margin: 0 auto;
    width: 100%;
}
.corp_box p{
    line-height: 1.3em;
}
.corp_box p{
    position:absolute;
    top:70%;
    left:10%;
    font-weight: bold;
    padding-left: 3px;
    border-left: solid 5px;
}
.corp_box span{
   position:absolute;
    font-size: 0.9em;
    top:74%;
    left:10%;
    width:300px;
    text-align:left;
    line-height: 1.5em;
}
.corp_box img{
    width: 100%;
    margin-bottom: 20px;
}
.corp_img_sp{
    display: none;
}
.under_highlight{ 
    color:#69655c;
    font-size: 1.2em;
    font-weight: bold; 
    background: linear-gradient(transparent 60%, #fff799 60%);}
.bz_cases{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.bz_cases div{
    position: relative;
    margin: 20px auto;
}
.bz_cases div img{
    width:100%;
}
.bz_cases div p{
    position: absolute;
    width:250px;
    font-weight: bold;
    letter-spacing: 0.1em;
    top: 83%;
    left: 50%;
    -ms-transform: translate(-50%,-50%);
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    margin-left:10px;
    padding:0;
}
.corp-message{
    margin:30px;
    border:solid 1px;
    padding:15px;
    color:#40534C;
    font-size:1.2em;
}
.corp-message span{
    font-weight:bold;
}
.corp-message p{
    width:80%;
    text-align:left;
    margin:10px auto;
}
/*------問い合わせボタン-------*/


/* 何もしていない時の背景 */
.contact_corp {
margin: 15px auto;
background-color: #e0326d;/*背景色*/
-webkit-transition: all 0.3s ease;/*ふわっとさせる間隔 Google Chrome、Safari*/
-moz-transition: all 0.3s ease;/*ふわっとさせる間隔 Firefox*/
-ms-transition: all 0.3s ease;/*ふわっとさせる間隔 IE*/
-o-transition: all 0.3s ease;/*ふわっとさせる間隔 Opera*/
transition: all  0.3s ease;/*ふわっとさせる間隔*/
padding:5px;/*文字と背景の余白*/
width: 250px;/*ボタン幅*/
color: #fff;/*文字の色*/
text-align: center;/*文字を揃える位置*/
border-radius: 3px;/*背景の角丸半径*/
}
.contact_corp a{
display: block;
padding: 5px 0;
color: #ffffff;
font-size: 1.2em;
text-decoration: none;
/*
font-family: Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;*/
}

/* マウスオーバーした際の背景 */
.contact_corp:hover {
background-color :rgba(224,50,109,0.8);/*背景色*/
}
/*メールアイコンレイアウト調整*/
.fa-envelope{
    padding-top: 3px;
    font-size: 1.3em;
    margin-right: 10px;
}

 @media screen and (max-width:600px){
    .corp_img_sp{
        display: block;
    } 
    .corp_img_pc{
        display: none;
    }
    .corp_box p{
        margin: 10px;
    }
   .corp_box p{
        left: 0;
        top:63%;
    }
    .corp_box span{
        left: 0;
        top:72%;
        width:auto;
        line-height: 1.5em;
        padding:5px;
}
     .corp-message{
         font-size: 1em;
     }
     .corp-message p{
         width: 100%;
     }
}
   @media screen and (max-width:480px){
        .corp_box p{
            font-size: 0.8em;
        }
        .corp_box span{
            font-size: 0.7em;
            line-height: 1.2em;
        }
        
    }
/*---------------------------------------------------
法人のお客様へ(リニューアル)
----------------------------------------------------*/
#corporate-section{
/*    font-family:'YuMincho','Yu Mincho','游明朝体',sans-serif;*/
    text-align: center;
    color:#111e2a;
    }
#corporate-section a{
    text-decoration: none;
    cursor: pointer;
}
#corporate-section .lead_box{
    background: url(../images/corporate/web_mainvisual.jpg) no-repeat center;
    height:530px;
    position:relative;
    }
#corporate-section .lead_box h2{
    position:absolute;
    top: 50%;
    font-size: 1.5em;
    font-weight: bold;
}
#corporate-section .lead_box h2 span{
    padding:10px;
    background-color: rgba(255,255,255,0.7);
    font-weight: bold;
    letter-spacing: 0.1em;
    font-family:'YuMincho','Yu Mincho','游明朝体',sans-serif;
}
#corporate-section .lead_box div{
    padding-top:150px;
    font-weight: bold;
    font-size: 2.3em !important;
    color:#ffffff;
    font-family:'YuMincho','Yu Mincho','游明朝体',sans-serif;
}
#corporate-section .lead_box div p{
    max-width:500px;
    width:100%;
    margin:0 auto;
}

.contents_service,.contents_examples,.contents_inquiry{
    background-color: #f8f9d7;
    padding: 50px 0;
}
.contents_price,.contents_flow{padding: 50px 0;}

.section_title h4{
    text-align: center;
    color:#111e2a;
    font-size: 2em;
}
.section_title p{
    padding:10px;
    text-align: left;
    font-size: 1.3em;
    font-weight: bold;
    color: #524C42;
    max-width:600px;
    margin: 20px auto;
}
/*----サービスの特徴----*/
.bg_box{
    position: relative;
    width:260px;
    height:300px;
    font-size: 1.6em;
    margin: 30px 40px;   
}
.contents_service .lesson{
    background: url(../images/corporate/point1.png) no-repeat;
}

.contents_service .contract{
    background: url(../images/corporate/point2.png) no-repeat; 
}
.contents_service .textbook{
    background: url(../images/corporate/point3.png) no-repeat; 
}
.bg_box div{margin: 65px auto 0;}
.bg_box p{font-size: 0.8em;font-weight: bold;text-align: center;margin: 5px 10px;color:#0e4476;}
.bg_box span{display: inline-block;font-size: 0.8em;text-align: left;padding: 0 20px;}

.infoBox {
    margin: 20px auto;
}
.infoBox p{
    font-size: 1.5em;
    font-weight: bold;
    margin:20px auto 0;
    text-align: center;
    line-height: 2em;
    color:#196bb8;
}
.corp_request{
    font-size: 1.1em;
    line-height: 2em;
    max-width: 650px;
    margin:0 auto;
    text-align: left;
    padding:20px 10px;
}
.infoBox img{max-width: 100%;}
/*リンクボタン*/
.corp_link{
    color: #B09B71;
    border:1px solid #B09B71;
    display:inline-block;
    padding:10px 14px;
    font-weight: bold;
	}
.corp_link:hover{
    color: #B09B71;
	}
.link_border{
    position:relative;
    letter-spacing: 0.2em;
	}
.link_border::after {
    content: '';
    position: absolute;
    bottom:-2px;
    left: 0;
    width: 0%;
    height: 1px;
    background: #B09B71;
    transition: all .3s;
	}
.corp_link:hover .link_border::after {
  		width: 100%;
	}

/*----コース・料金-----*/
/*チケットor月額コースが選べる*/
.contents_price .course_lead{
    display: flex;
    justify-content: center;
    flex-direction: column;
    max-width: 700px;
/*    height: 338px;*/
    padding: 0 6rem;
    box-sizing: border-box;
    background-color: #fefefe;
    margin: 0 auto 15px;
}
.contents_price .course_lead p{
    position: relative;
    padding: 1rem 1.5rem;
    font-size: 1.5rem;
    font-weight: bold;
    text-align: center;
    color: #948979;
}
/*ナナメ線*/
.contents_price .course_lead p::before,
.contents_price .course_lead p::after {
    position: absolute;
    top: 0.8rem;
    height: 1.8rem;
    content: '';
    color: #cde8e5;
}

.contents_price .course_lead p::before {
    border-left: solid 3px;
    left: 0;
    transform: rotate(-30deg);
}

.contents_price .course_lead p::after {
    border-right: solid 3px;
    right: 0;
    transform: rotate(30deg);
}
.contents_price .course_icon{margin-top: 30px;}
/*矢印*/
.arrow-down{
  width: 0;
  height: 0;
  margin: 0 auto;
  border-style: solid;
  border-right: 30px solid transparent;
  border-left: 30px solid transparent;
  border-top: 20px solid #cde8e5;
  border-bottom: 0;
}
.corp_price{margin: 30px auto 50px;}
.courses{
    margin:30px auto;
    padding-bottom: 10px;
}
.course_bn{
    width:270px;
    height:200px;
    position:relative;
    border:solid 1px #111e2a;
    margin: 20px;
}
.course_bn p{
    width: 200px;
    position:absolute;
    font-size: 1.5em;
    font-weight:bold;
    color: #ffffff;
    letter-spacing: 0.2em;
     text-shadow: 2px 2px #000;
    top: 50%;
  left: 50%;
  -ms-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  margin:0;
  padding:0;
}
.course_bn span{
    display: block;
    font-size:0.9em; 
    letter-spacing: 0.1em;
}
.course_bn a{
    width:170px;
    height:45px;
    background:#111e2a;
    position:absolute;
    color:#ffffff;
    line-height:45px;
    right:0; 
    bottom:0;
}
.course_bn a:hover{
    background-color: #ffffff;
    color: #111e2a;
    border-top: solid 1px;
    border-left:solid 1px;
    transition: 0.2s;
        
}
.course_bn .fa-angle-right{
    line-height:45px;
    margin-left:10px;
    font-size:1.2em;
}
.course_info{
    text-align:left;
    max-width:300px;
    margin:20px;
}
.course_info p{
    font-size:1.3em;
    padding-top:20px;
    display: block;
    text-align:center;
    font-weight: bold;
    border-bottom: solid 1px;
}
.course_info span{
    display:block;
    margin:20px;
    font-size:1.1em;
}
/*レッスンコース*/
.corp_price .course_lbox,
.corp_price .course_rbox
{
    width:450px;
    padding:15px;
    box-sizing: border-box;
}
.corp_price .course_lbox{
    border:solid 3px #196bb8;
}
.corp_price .course_lbox p{
    font-size:1.6em;
    font-weight:bold;
}
.corp_price .course_lbox span{
    display:block;
    text-align:left;
}
.corp_price .course_rbox{
    background:#196bb8;
    padding-top: 55px;
    font-size:2em;
    color:#ffffff;
}
@media screen and (max-width:899px){/*コース・料金ボックス上下表示に切り替え*/
    .corp_price .course_rbox{
        padding:0;
    }
}
.category-btn{
    max-width: 800px;
    margin: 0 auto;
}
.category-btn a{
  display: flex;
  justify-content: center;
  align-items: center;
  background: #ffffff;
  border: 1px solid #228bc8;
  box-sizing: border-box;
  width: 220px;
  height: 100px;
  padding: 0 25px;
  margin: 10px;
  color: #228bc8;
  font-size: 16px;
  text-align: left;
  text-decoration: none;
  position: relative;
  transition-duration: 0.2s;
}
.category-btn a:hover {
  background: #228bc8;
  border: 1px solid #05639a;
  color: #fff;
}
.category-btn a:before {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 40px 50px;
  border-color: transparent transparent #228bc8 transparent;
}

/*---- 活用例 ----*/
.corp_example{margin: 30px auto 50px;}
.corp_example img{margin: 0 10px;}
/*.corp_example div p{
    padding: 10px 5px;
    font-size: 1.1em;
    font-weight: bold;
}
.corp_example div span{
    top:50%;
    left:40px;
    width: 250px;
    text-align: left;
    padding: 15px 0 0 5px;
}*/
.cases{
    margin: 20px;
/*    box-shadow: 5px 10px 5px rgb(176,155,113,1);*/
}
.cases div{
    width:290px;
    height: 200px;
    margin:0 auto;
    text-align:left;
    background-color: #dfe4e7;
}
.cases p{
    padding:0 8px;
    font-weight: bold;
}
.cases p:first-child{
    font-size:1.3em;
    color:#ffffff;
    letter-spacing: 0.3em;
}
.cases span{
    display: block;
    padding: 8px;
}
/*----導入までの流れ----*/

/***矢印ラベル***/
/*基本の吹き出し*/
.stepflow{
  position: relative;
  background-color: #d4d925;
  background-repeat: no-repeat;
  background-position: 95% 50%;
  max-width: 500px;
  margin: 20px auto 30px;
}
.stepflow:after{
  content: "";
  position: absolute;
  right: 0;
  bottom: -20px;
  left: 0;
  width: 0px;
  height: 0px;
  margin: auto;
  border-style: solid;
  border-color: #d4d925 transparent transparent transparent;
  border-width: 20px 20px 0 20px;
}
.step_signup{
    background-image:url(../images/corporate/signup.png);
    
}
.step_pcsetting{
    background-image:url(../images/corporate/pcsetting.png);
}
.step_traial{
    background-image:url(../images/corporate/triallesson.png);
}
.step_selection{
    background-image:url(../images/corporate/selection.png);
}
.step_request{
    background-image:url(../images/corporate/lessonrequest.png);
}
.step_start{
    background-image:url(../images/corporate/start.png);
}
.stepflow p{
    display: block;
    color: #ffffff;
    font-family: 'YuMincho','Yu Mincho','游明朝体',sans-serif;
}
.stepflow p:first-child{
    font-style: italic;
    font-size: 1.8em;
    font-weight: bold;
    line-height: 1.3em;
}
.stepflow p:last-child{
    font-size: 1.5em;
}



/*----問い合わせ----*/
.corp_inquiry {
    width:500px;
    margin: 30px auto;
    padding:20px;
/*    background-color: #ffffff;*/
    border-radius:25px;
/*    border:1px solid #111e2a;*/
    font-size:1.2em;
}
.corp_inquiry  div{
    margin: 20px auto;
}
.corp_inquiry p{
/*    width:250px;*/
    display: block;
    text-align: left;
    font-size: 0.9em;
/*    font-weight: bold;*/
    padding: 15px 0;
}
.corp_inquiry img{margin-right: 20px;
padding:10px;}
.corp_inquiry div a{
    color:#607EAA;
    padding:8px 30px;
    font-family: sans-serif;
    border:solid 1px;
}
.corp_inquiry div a:hover{
    text-decoration: none;
    background-color: #607EAA;
    color: #ffffff;
}
/*
.corp_inquiry a:first-child{
    padding:10px 30px;
    margin-right: 15px;
}
*/
.corp_inquiry i{
    margin:10px;
    font-size: 3em;
}

/***矢印ラベル***/
.steps{
  list-style-type: none;
  display:table;
  width:100%;
  padding:0;
  margin:0;
  overflow:hidden;
}
.steps li{
  display:table-cell;
  position:relative;
  background: #504944;
  padding: 1em 0.5em 1em 2em;
  color: #fff;
}
.steps li:last-child{
  padding-right: 1em;
}
.steps li:last-child:before,
.steps li:last-child:after{
  display:none;
}
.steps li:before,
.steps li:after{
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  margin: auto;
}
.steps li:before{
  top:-15px;
  right:-1em;
  border-style: solid;
  border-color: transparent transparent transparent #fff;
  border-width: 40px 0 40px 1em;
  z-index: 10;
}
.steps li:after{
  top:-15px;
  right:-.8em;
  border-style: solid;
  border-color: transparent transparent transparent #504944;
  border-width: 40px 0 40px 1em;
  z-index: 10;
}
.steps li.is-current{
  background: #9bbb30;
  font-weight: bold;
}
.steps li.is-current:after{
  border-color: transparent transparent transparent #9bbb30;
}
/*----リンクボタン----*/
.lessonflow_link,.zoompdf_link {
  width: 300px;
  margin: 30px 20px;
    display: inline-block;
}
.lessonflow_link a,.zoompdf_link a {
  display: flex;
  justify-content: center;
  align-items: center;
  box-sizing: border-box;
  width: 100%;
  height: 73px;
  padding: 0 30px;
  font-size: 1.3em;
  color: #ffffff;
  font-weight: bold;
  font-family: 'YuGothic','Yu Gothic',sans-serif;
  text-align: left;
  text-decoration: none;
  transition-duration: 0.2s;
}
.lessonflow_link a {
    background: url(../images/corporate/lesson_bn.jpg) no-repeat;
}
.zoompdf_link a{
   background:url(../images/corporate/zoom_bn.jpg) no-repeat center;
}
.lessonflow_link a:hover,.zoompdf_link a:hover{text-decoration: underline;
    
}
.fa-file-pdf:before{padding-left: 10px;font-size: 1.2em;}

/*---メディアクエリ---*/
@media screen and (max-width:660px){
.lead_box h3{
    font-size: 5vw;
    }
.contents_price .course_lead p{font-size: 1.3em;}
.doc_dlbtn span {font-size: 1.2em;}
.corp_inquiry {width:80%;}
    .infoBox{width: 80%;}
    .infoBox p{font-size: 1.2em;}
    .stepflow{
        width: 80%;
    }
}

@media screen and (max-width:480px){
    #corporate-section .lead_box div{
        font-size: 1.8em !important;
    }
    #corporate-section .lead_box h2{
        font-size: 1.1em;
    }
    .bg_box{
        margin: 30px 0;
    }
    .lead_box h2{
        font-size: 1.2em;
        top:20%;
    }
    .lead_box div{
        font-size: 2em;
    }
    
    .corp_flow div{width:90%;}
    .corp_flow a,.corp_flow span{font-size: 1.2em;}
    .stepflow{background-image:none;}
    .step_guide{font-size: 0.9em;}
    }


/*---------------------------------------------------
キャンペーン
----------------------------------------------------*/
.campaign_bnr{
    text-align: center;
}
.campaign_bnr img{
    margin: 20px auto;
    border: solid 1px #000000;
    width: 90%;
    max-width:1000px;
    
}
.campaign_top img{
    width: 50%;
    margin:10px auto;
    border: solid 1px #ccc;
}
.campaign_top p{
    padding: 10px;
    text-align: left;
}
.campaign_top p span{
    font-weight:bold;
}
.campaign_info{
    text-align: left;
}
.campaign_info p{
    background:#f5f3e0;
    text-align:left;
    padding-left: 20px;
    font-size: 1.2em;
    font-weight:bold;
    margin: 30px 15px 5px;
    border-left: solid 5px;
    line-height: 2em;/*キャンペーンリボン調整*/
}
.campaign_info p span{
    display:inline-block;
    color:#e0326d;
    border:solid 1px;
    margin:3px 10px 3px 0;
    font-size:0.8em;
    line-height:1.5em;
    padding:2px 5px;
}
.campaign_info span{
    margin: 0 30px;
    font-size: 1.1em;
    display: block;
}

.ticket_link{
    margin:15px 30px;
    text-align: left;
    text-decoration: underline;
}

@media screen and (max-width:768px){
  .campaign_top img{width: 90%;}
}
@media screen and (max-width:480px){
    .campaign_bnr img{
        margin: 10px 0;
        width:100%;
    } 
    .campaign_info p{
        font-size: 1em;
    }
}
/*---------------------------------------------------
skypeについて
----------------------------------------------------*/
/*---------------------------------------------------
2023.1 "skype承認方法"と"skype名確認"を統合
----------------------------------------------------*/
.skype_top{
    margin:0 auto;
    padding-top: :30px;
}
.skype_top img{
    width:80%;
    max-width:650px;
    padding-top: 30px;
}
.innerflame{text-align: center;}
.outerflame{width: 80%; margin: 15px auto;padding: 15px;
background: -webkit-gradient(linear, left top, right bottom, from(#ddd), color-stop(0.25, #ddd), color-stop(0.25, white), color-stop(0.5, white), color-stop(0.5, #ddd), color-stop(0.75, #ddd), color-stop(0.75, white), to(white));
background: -moz-linear-gradient(-45deg, #ddd 25%, white 25%, white 50%, #ddd 50%, #ddd 75%, white 75%, white);
background: linear-gradient(-45deg, #ddd 25%, white 25%, white 50%, #ddd 50%, #ddd 75%, white 75%, white);
background-size: 4px 4px;}
.innerflame{background:#fff;
padding: 15px;
font-size: 14px;}
.innerflame img{width: 75%;}
.skypelesson_title{margin-top: 30px;}
.check_name,.add_contactlist{width:80%;margin: 20px auto;}

@media screen and (max-width:768px){
    .innerflame img{
        width:100%;
    }
}
@media screen and (max-width:480px){
    .outerflame{width: 90%;}
    .skype_flow img{display:block !important;}
    
}
/*---------------------------------------------------
問い合わせフローティングバナー
----------------------------------------------------*/

/*メニューをページ下部に固定*/
#fixed_menu{
   position: fixed;
   width: 100%;
   bottom: 0px;
   font-size: 0;
   opacity: 0.9;
   z-index: 99;
}

/*メニューを横並びにする*/
#fixed_menu ul{
/*   display: flex;*/
   list-style: none;
   padding:0;
   margin:0;
   width:100%;
}

#fixed_menu li{
/*   justify-content: center;*/
   align-items: center;
   max-width:350px;
   padding:0;
   margin:0;
   font-size: 14px;
   border-right: 1px solid #fff;
}

/*左側メニューを緑色に*/
#fixed_menu li:first-child{
   background: #38b435;
    padding:0;
}

/*左側メニューをオレンジ色に*/
#fixed_menu li:last-child{
   background: #243A73;
    border-radius: 15px 15px 0 0;
    margin-left: 10px;
}

/*ボタンを調整*/
#fixed_menu li a{
   font-size: 1.2em;
   color: #fff;
   text-align: center;
   display:block;
   width: 100%;
   padding:20px 0;
   margin:0;
    line-height: 120%;
}
.fa-building:before{margin-right: 5px;}
@media screen and (max-width:480px){#fixed_menu ul{display:none;}
#fixed_menu li:last-child{margin: 0;}
}
/*フッターまでスクロールしたら消す*/
.is-hidden {
  visibility: hidden;
  opacity: 0;
}
/*---------------------------------------------------
サイトマップリニューアル（2024.8)
----------------------------------------------------*/
.map-bg{background: #fbf9e6;padding: 30px 0;}
.sitemap_list{background:none;width: 33% ;margin:20px;}
.sitemap_list li:first-child{border-bottom: solid 1px #ccc;margin-bottom: 20px;font-size: 1.2em;}
.link-box{display: flex;}
@media screen and (max-width:768px){
.sitemap_list{width: 100%;margin: 0;}
.link-box{display: block;}
}
/*---------------------------------------------------
Footerリニューアル（2024.8)
----------------------------------------------------*/
#footer .link-box ul{width: 16%;font-size: 0.8em;}
/*---------------------------------------------------
ナビゲーションmenuカレント表示追加
----------------------------------------------------*/
#nav .is-current{
   color: #ffb026;
}
