@charset "utf-8";

/* 基本フォント */
body{
    font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Meiryo UI", "メイリオ", sans-serif;
    font-weight:500;
    font-style:normal;
    font-size:18px;
    color:#333;
    line-height:1.5;
    font-feature-settings:"palt" 1;
    background-color:#f7f6f5;
}
h1,h2,h3,h4,h5,h6{
    font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Meiryo UI", "メイリオ", sans-serif;
}
a{
    color:#333;
}
a:hover{
    color:#5D5D5D;
    text-decoration:none;
}
.clearfix::after{
  content:"";
  display:block;
  clear:both;
}
.pc-display{
}
.sp-display{
    display:none;
}
.pc-br::after{
    content:"\A";
    white-space:pre;
}
.sp-br::after{
}
input[type=submit]{
    -webkit-appearance:none;
    border-radius:0;
}
input[type=button],
input[type=reset]{
    background-color:#fff;
}
.contents, 
.container{
    margin:0 auto;
}
header{
    position:relative;
    display:block;
    min-width:970px;
}
.header-space{
    margin:30px auto 0 auto;
}
.header-title{
    position:relative;
    margin:0 auto;
    padding:10px 0;
    text-align:center;
    background-color:#f2f2f2;
}
.header-company-logo:before{
    content:url('../image/logo-name.png');
}
.header-company-logo{
    position:absolute;
    top:30px;
    left:calc( (100vw / 2) - 470px);
    font-size:14px;
}
 
.header-title-sub{
    font-size:14px;
}
.header-title-main{
    font-size:48px;
    font-family:"BIZ UDPゴシック", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Meiryo UI", "メイリオ", sans-serif;
    line-height:0.8;
}

.hamburger{
    display:none;
}
.sp-navi{
    display:none;
}

.pc-navi{
    position:relative;
    display:block;
    text-align:center;
    height:50px;
    background-color:#f2f2f2;
    border-width:1px 0;
    border-color:#e2e2e2;
    border-style:solid;
    z-index:100;
}
.pc-navi ul{
    margin:0;
    padding:0;
}
.pc-navi ul li{
    display:inline-block;
    list-style-type:none;
}
.pc-navi > ul > li{
    margin:0 0;
    list-style:none;
    display:inline-block;
    width:113px;
    height:50px;
    font-size:15px;
    min-width:90px;
}
.pc-navi > ul > li:last-child{
    width:150px;
}
.pc-navi > ul > li > a > .navi-caret{
    border-top:4px solid #333;
    border-right:4px solid transparent;
    border-left:4px solid transparent;
    content:'';
    display:inline-block;
    height:0;
    width:0;
    vertical-align:middle;
    -webkit-transition:color 0.1s linear;
    transition:color 0.1s linear;
}
.pc-navi > ul > li > a{
    display:block;
    padding:15px 10px;
    text-decoration:none;
}
.pc-navi > ul > li:hover{
    background-color:#87cefa;
}
.pc-navi > ul > li:hover > a{
    color:#333;
}
.pc-navi > ul > li:hover > a > .navi-caret{
    border-top-color:#333;
}
.pc-navi > ul > li > div{
    background-color:#87cefa;
    display:none;
    margin:0;
    opacity:0;
    position:absolute;
    width:200px;
    text-align:left;
    visibility:hidden;
}
.pc-navi > ul > li:hover > div{
    display:block;
    opacity:1;
    visibility:visible;
}
.pc-navi > ul > li > div ul > li{
    display:block;
}
.pc-navi > ul > li > div ul > li > a{
    color:#333;
    display:block;
    padding:12px 24px;
    text-decoration:none;
}
.pc-navi > ul > li > div ul > li:hover > a{
    background-color:rgba( 255, 255, 255, 0.1);
}

main{
    width:970px;
    margin:0 auto;
    overflow:hidden;
    background-color:#fffafa;
}
.sticky{
    position:fixed;
    right:20px;
    top:300px;
    width:150px;
    height:150px; 
    content:url('../image/btn-sticky.png');
    z-index:50;
    font-size:17px;
    text-align:center;
}

.com-page-title{
    margin-top:40px;
    font-size:36px;
    text-align:center;
}
.com-separate-top{
    margin:0 auto;
    height:20px;
}
.com-separate{
    margin:0 auto;
    height:40px;
}
.com-ul-circle{
    list-style-type:disc;
}

/* トップページ */
.topimage{
    position:relative;
    display:block;
    width:100%;
    margin:20px auto;
}
.topimage img{
    width:100%;
}
.topimage-text1-main{
    margin:0 0;
    position:absolute;
    width:57%;
    top:12%;
    left:3%;
    bottom:22%;
    background-color:rgba(247,246,245,0.75);
    text-align:left;
}
.topimage-text1-main p{
    position:absolute;
    color:#000;
    font-size:4.5vw;
    font-weight:bold;
    line-height:1.7;
    top:7%;
    left:7%;
}
.topimage-text1-sub-bg{
    margin:0 0;
    position:absolute;
    width:6%;
    top:79%;
    left:92.5%;
    bottom:7%;
    background-color:rgba(247,246,245,0.75);
}
.topimage-text1-sub{
    margin:0 0;
    position:absolute;
    width:35%;
    top:82%;
    left:62%;
    bottom:6%;
    text-align:right;
}
.topimage-text1-sub p{
    margin:0 auto;
    color:#000;
    font-size:1.6vw;
    line-height:0.4;
}
.topimage-text1-sub h4{
    margin:0 auto;
    color:#000;
    font-size:3.2vw;
    font-weight:lighter;
}
.topimage-text2-main{
    margin:0 0;
    position:absolute;
    width:53%;
    top:10%;
    left:0%;
    bottom:47%;
    background-color:rgba(247,246,245,0.75);
    text-align:left;
}

.topimage-text2-main p{
    color:#000;
    font-size:4.5vw;
    font-weight:bold;
    position:absolute;
    line-height:1.7;
    top:9%;
    left:7%;
}
.topimage-text2-sub{
    margin:0 0;
    position:absolute;
    width:41%;
    top:75%;
    left:59%;
    bottom:1%;
    background-color:rgba(247,246,245,0.75);
    text-align:right;
}
.topimage-text2-sub p{
    margin:0 1vw;
    color:#000;
    font-size:1.6vw;
    line-height:3.2;
}
.topimage-text2-sub h4{
    margin:0 1vw;
    color:#000;
    font-size:3.1vw;
    line-height:1.0;
    font-weight:lighter;
}
.topimage-text3-main{
    margin:0 0;
    position:absolute;
    width:64%;
    top:10%;
    left:0%;
    bottom:52%;
    background-color:rgba(15,16,17,0.4);
    text-align:left;
}

.topimage-text3-main p{
    color:#fff;
    font-size:3.7vw;
    font-weight:bold;
    position:absolute;
    line-height:1.7;
    top:10%;
    left:15%;
}
.topimage-text3-sub{
    margin:0 0;
    position:absolute;
    width:35%;
    top:73%;
    left:65%;
    bottom:5%;
    background-color:rgba(15,16,17,0.4);
    text-align:right;
}
.topimage-text3-sub p{
    margin:0 1vw;
    color:#fff;
    font-size:1.6vw;
    line-height:2.6;
}
.topimage-text3-sub h4{
    margin:0 1vw;
    color:#fff;
    font-size:3.1vw;
    line-height:1.0;
    font-weight:lighter;
}
.topimage-text4-main{
    margin:0 0;
    position:absolute;
    width:53%;
    top:26%;
    left:0%;
    bottom:32%;
    background-color:rgba(247,246,245,0.7);
    text-align:left;
}

.topimage-text4-main p{
    color:#000;
    font-size:3.2vw;
    font-weight:bold;
    position:absolute;
    line-height:1.7;
    top:5%;
    left:12%;
}
.topimage-text4-sub{
    margin:0 0;
    position:absolute;
    width:42%;
    top:73%;
    left:58%;
    bottom:2%;
    background-color:rgba(247,246,245,0.75);
    text-align:left;
}
.topimage-text4-sub p{
    margin:0 0;
    position:absolute;
    top:17%;
    left:7%;
    color:#000;
    font-size:1.7vw;
}
.topimage-text4-sub h4{
    margin:0 0;
    position:absolute;
    top:42%;
    left:9%;
    color:#000;
    font-size:3.2vw;
    font-weight:lighter;
}
.topimage-text5-main{
    margin:0 0;
    position:absolute;
    width:70%;
    top:16%;
    bottom:29%;
    text-align:left;
}

.topimage-text5-main p{
    color:#fff;
    font-size:3.7vw;
    font-weight:bold;
    position:absolute;
    line-height:1.8;
    top:5%;
    left:8%;
}
.topimage-text5-sub{
    margin:0 0;
    position:absolute;
    width:39%;
    top:68%;
    left:4%;
    bottom:11%;
    background-color:rgba(247,246,245,0.7);
    text-align:left;
}
.topimage-text5-sub p{
    margin:0 0 0 2vw;
    color:#000;
    font-size:1.6vw;
    line-height:3.1;
}
.topimage-text5-sub h4{
    margin:0 0 0 2vw;
    color:#000;
    font-size:2.3vw;
    line-height:1.0;
    font-weight:lighter;
}
.topimage-text6-main{
    margin:0 0;
    position:absolute;
    width:61%;
    top:17%;
    left:0%;
    bottom:41%;
    background-color:rgba(247,246,245,0.75);
    text-align:left;
}

.topimage-text6-main p{
    color:#000;
    font-size:3.7vw;
    font-weight:bold;
    position:absolute;
    line-height:1.8;
    top:15%;
    left:14%;
}
.topimage-text6-sub{
    margin:0 0;
    position:absolute;
    width:42%;
    top:74%;
    left:58%;
    bottom:1%;
    background-color:rgba(247,246,245,0.75);
    text-align:right;
}
.topimage-text6-sub p{
    margin:0 3vw;
    color:#000;
    font-size:1.6vw;
    line-height:4.9;
}
.topimage-text6-sub h4{
    margin:0 3vw;
    color:#000;
    font-size:2.4vw;
    line-height:0;
    font-weight:lighter;
}

.topmenu{
    width:100%;
    margin:30px auto;
    text-align:center;
}
.topmenu img{
    width:310px;
    width:calc(100vw / 5.5);
    margin:4px 2px;
}
.news{
    margin:10px 50px;
    font-size:14px;
}
.news dt{
    margin:0 0 10px 0;
}
.news dt span{
    margin-left:20px;
}
.top-header{
    display:none;
    margin:30px auto;
    padding:20px 0;
    text-align:center;
    background-color:#f2f2f2;
}

/* Schoolleaderとは */
.sl-title-sub{
    margin:0 300px;
    text-align:left;
    font-size:18px;
}
.sl-title{
    font-size:48px;
    font-family:"BIZ UDPゴシック", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Meiryo UI", "メイリオ", sans-serif;
    line-height:0.4;
    font-weight:bold;
    
}
.sl-top{
    display:inline-block;
    margin:20px auto;
    text-align:center;
}
.sl-top img{
    width:890px;
}
.sl-about{
    margin:5px 100px;
    text-align:left;
}
.sl-head-text{
    margin:30px auto;
    text-align:center;
    font-size:36px;
}
.sl-list{
    display:inline-block;
}
.sl-card{
    display:inline-block;
    margin:15px 50px 15px 40px;
    padding:20px 15px;
    width:390px;
    vertical-align:middle;
}
.sl-card img{
    display:inline-block;
    margin:0 40px 0 0;
    width:60px;
    vertical-align:middle;
}
.sl-card p{
    display:inline-block;
    margin:0 auto;
    text-align:center;
    vertical-align:middle;
    font-size:24px;
}
.sl-card-color1{
    background-color:#d6dce5;
}
.sl-card-color2{
    background-color:#fff2cc;
}
.sl-card-color3{
    background-color:#e2f0d9;
}
.sl-card-color4{
    background-color:#deebf7;
}
.sl-card-desc{
    display:inline-block;
    margin:15px 40px;
    padding:10px 10px;
    width:350px;
    vertical-align:middle;
}

/* 製品情報 */
.product-top{
    margin:0 auto;
    text-align:center;
}
.product-top h1{
    font-size:38px;
    font-family:"BIZ UDPゴシック", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Meiryo UI", "メイリオ", sans-serif;
    font-weight:bold;
}
.product-top img{
    width:890px;
    margin:10px auto;
}
.product-pickup{
    margin:40px auto;
    text-align:center;
}
.product-pickup h2{
    font-size:32px;
}
.product-pickup h3{
    margin:10px auto;
    height:60px;
    font-size:22px;
    display:flex;
    justify-content:center;
    align-items:center;
    vertical-align:middle;
    min-height:60px;
}
.product-pickup hr{
    border:solid 1px #bebebe;
    margin:0 auto;
    width:100%;
}
.product-pickup img{
    display:inline-block;
    margin:0 auto;
    width:100%;
}
.product-pickup p{
    display:inline-block;
    margin:0 auto;
    text-align:left;
    vertical-align:middle;
    font-size:16px;
}
.product-pickup-card2{
    display:inline-block;
    margin:5px 50px;
    padding:5px 0;
    width:360px;
    vertical-align:middle;
}
.product-pickup-card3{
    display:inline-block;
    margin:5px 20px;
    padding:5px 0;
    width:270px;
}
.product-img-nihongo{
    display:flex;
    align-items:center;
    min-height:210px;
}
.product-img-daigaku,
.product-img-chuukou{
    display:flex;
    align-items:center;
    min-height:160px;
}
.product-img-senmon1{
    display:flex;
    align-items:center;
    min-height:170px;
}
.product-img-senmon2{
    display:flex;
    align-items:center;
    min-height:220px;
}
.product-img-kango{
    display:flex;
    align-items:center;
    min-height:280px;
}

/* Schoolleader機能情報 */
.slfunc-title{
    margin:40px auto;
    text-align:center;
    width:94%;
}
.slfunc-title img{
    margin-right:25px;
    display:inline-block;
    width:90px;
    vertical-align:middle;
}
.slfunc-title h1{
    display:inline-block;
    margin:60px auto;
    font-size:34px;
    font-weight:bold;
    vertical-align:middle;
}
.slfunc-title p{
    margin:10px auto;
    font-size:16px;
    text-align:center;
}
.slfunc-title hr{
    margin:10px auto;
    width:100%;
}
.slfunc-main{
    margin:20px 30px;
}
.slfunc-image,
.slfunc-image2{
    margin:30px auto 50px auto;
    float:left;
    width:50%;
}
.slfunc-contents,
.slfunc-contents2{
    margin:30px auto 50px auto;
    width:46%;
    padding:0 0 0 30px;
    float:left;
}
.slfunc-image2{
    width:65%;
}
.slfunc-contents2{
    padding:0 0 0 20px;
    width:31%;
}
.slfunc-item{
    margin:0 0 10px;
    width:100px;
    font-size:15px;
    text-align:center;
    border-bottom:solid 2px #7f7f7f;
    padding-bottom:5px;
    display:block;
}
.slfunc-contents h4,
.slfunc-contents2 h4{
    margin:50px auto 30px auto;
    font-size:22px;
    font-weight:bold;
}
.slfunc-contents p,
.slfunc-contents2 p{
    margin:10px auto;
    font-size:18px;
    line-height:1.8;
}
.slfunc-caution{
    font-size:15px;
}
.slfunc-strength{
    margin:30px auto;
    text-align:center;
    width:70%;
    border:solid 5px #d9d9d9;
    border-radius:10px;
    background-color:#fff;
}
.slfunc-strength p{
    margin:5px auto;
    font-size:28px;
}

/* 導入実績 */
.dounyuu-head{
    margin-top:40px;
    text-align:center;
    font-size:26px;
}
.dounyuu-operation-pc{
    color:#1503bd;
}
.dounyuu-operation-sp{
    color:#1503bd;
    display:none;
}
.dounyuu-school{
    margin:0 auto;
    text-align:center;
}
.dounyuu-school p{
    font-size:26px;
}
.dounyuu-school1{
    display:inline-block;
    margin:20px 30px;
    width:300px;
    vertical-align:top;
}
.dounyuu-school2{
    display:inline-block;
    margin:20px 30px;
    width:200px;
    vertical-align:top;
}
.dounyuu-list{
    width:80%;
    margin:30px 100px;
}
.dounyuu-list table{
    width:100%;
    border-collapse:collapse;
    border:1px #c4c4c4 solid;
    margin:15px 0 5px 0;
    font-size:12px;
}
.dounyuu-list table th{
    width:250px;
    padding:10px 0;
    text-align:center;
    vertical-align:top;
    background-color:#cfdbf4;
    border:1px #c4c4c4 solid;
}
.dounyuu-list table td{
    padding:10px 30px 10px 20px;
    vertical-align:middle;
    background-color:#fff;
    border:1px #c4c4c4 solid;
}
.dounyuu-list table td.yotei{
    background-color:#f3f3f3;
    font-weight:normal;
    padding:3px 30px 3px 20px;
    color:#666;
}
.dounyuu-list .extra{
    text-align:right;
}
/* 保守サービス・会社概要・理念 */
.top-title{
    position:relative;
}
.top-title img{
    width:100%;
}
.top-title-cover,
.top-title-support{
    text-align:center;
    font-weight:bold;
    width:40%;
    margin:0 0;
    position:absolute;
    top:0;
    left:60%;
    bottom:0;
    background-color:rgba(217,217,217,0.5);
}
.top-title-cover h1{
    color:#fff;
    font-size:2rem;
    font-weight:bold;
    position:absolute;
    top:44%;
    left:50%;
    transform:translate(-50%,-50%);
}
.top-title-cover p{
    color:#fff;
    font-size:14px;
    position:absolute;
    top:46%;
    left:50%;
    transform:translate(-50%,-50%);
}
.top-title-support .uk-icon{
    color:#fff;
    position:absolute;
    top:42%;
    left:10%;
}
.top-title-support h1{
    color:#fff;
    font-size:2rem;
    font-weight:bold;
    position:absolute;
    top:38%;
    left:50%;
    transform:translate(-50%,-50%);
}
.top-title-support p{
    color:#fff;
    font-size:14px;
    position:absolute;
    top:46%;
    left:50%;
    transform:translate(-50%,-50%);
}
/* 会社概要 */
.company-contents{
    margin-top:20px;
    border:solid 3px #d9d9d9;
}
.company h2{
    margin:60px auto;
    text-align:center;
    font-weight:bold;
}
.company table{
    margin:50px auto;
    text-align:center;
    width:92%;
    border-collapse:collapse;
}
.company th, .company td{
    padding:30px 30px;
    line-height:2.0;
    font-size:15px;
    text-align:left;
    vertical-align:top;
    border:solid 1px#d9d9d9;
    color:#585858;
    background-color:#fff;
}
.company th{
    width:25%;
    border-right:none;
}
.company td{
    border-left:none;
}
.company ul{
    padding-left:0;
    margin-bottom:0;
}
.company ul li{
    list-style:none;
}
/* 理念 */
.mission{
    text-align:center;
    color:#3f3f3f;
}
.mission-contents{
    margin-top:20px;
    border:solid 3px #d9d9d9;
}
.mission-main{
    margin:0 auto;
    width:95%;
}
.mission h2{
    margin:60px auto;
    color:#7e7e7e;
    text-align:center;
    font-weight:bold;
}
.mission h3{
    margin:40px auto;
    font-size:2rem;
    font-weight:bold;
}
.mission h4{
    margin:15px auto 10px;
    font-size:1.5rem;
    font-weight:bold;
}
.mission h5{
    margin:10px auto;
    font-size:1.5rem;
}
.mission p{
    margin:10px auto;
}
.mission-item{
    margin:60px auto 10px auto;
    width:20px;
    font-size:18px;
    border-bottom:solid 2px #7f7f7f;
    display:block;
}
.mission-end-margin,
.support-end-margin{
    margin:180px auto 0 auto;
    display:block;
}
/* 保守サービス */
.support{
    text-align:center;
    color:#3f3f3f;
}
.support-main{
    margin:0 auto;
    width:90%;
    text-align:left;
}
.support-contents{
    width:50%;
    padding:0 30px 0 50px;
    float:left;
}
.support h2{
    margin:60px auto 30px auto;
    font-weight:bold;
    line-height:1.8;
    text-align:center;
}
.support h4{
    margin:50px auto 70px auto;
    font-size:1.2rem;
    font-weight:bold;
}
.support p{
    margin:10px auto;
    font-size:14px;
    line-height:1.8;
}
.support-main img{
    margin:30px auto;
    width:350px;
}
.support-item{
    margin:30px 0 10px;
    width:80px;
    font-size:12px;
    text-align:center;
    border-bottom:solid 2px #7f7f7f;
    display:block;
}

/* よくあるQA */
.faq-list{
    margin:50px 50px;
    text-align:center;
}
.faq-qa-set{
    margin:10px auto;
}
.faq-question{
    display:block;
    padding:20px 70px 20px 20px;
    background-color:#f3f3f3;
    text-align:left;
}
.faq-hr{
    display:none;
}
.faq-answer{
    display:none;
    padding:20px 70px 20px 20px;
    text-align:left;
    background-color:#fff;
}
.faq-head{
    display:inline-block;
    font-size:26px;
    vertical-align:top;
    width:50px;
    text-align:center;
}
.faq-contents{
    display:inline-block;
    width:730px;
}
.faq-check{
    display:none;
}
.faq-check:checked + .faq-answer{
    display:block;
}
/* お問合せ */
.contact-form{
    margin:20px auto;
    text-align:center;
}
.contact-table{
    width:800px;
    margin:0 auto;
    border-collapse:collapse;
}
.contact-table td{
    padding:10px;
    text-align:left;
}
.contact-table th{
    width:30%;
    font-weight:normal;
    text-align:center;
}
.contact-regist{
    display:inline-block;
    margin:20px auto;
    text-align:center;
    width:100%;
}
.contact-table input,
.contact-table textarea,
.contact-table select{
    background-color:#f2f2f2;
}
.contact-table .uk-checkbox:checked,
.contact-table .uk-radio:checked{
    background-color:#000;
}
.contact-regist a{
    color: #4169e1;
    text-decoration: underline;
}
.contact-regist .uk-button-primary{
    width:300px;
    margin-left:160px;
    font-size:20px;
    color:#000;
    background-color:#deebf7;
}
.contact-regist .uk-button-default{
    font-size:20px;
}
/* 個人情報保護方針 */
.privacy{
    margin:50px 50px 150px;
    font-size:15px;
}
.privacy h1{
    margin:70px auto;
    font-size:30px;
    font-weight:bold;
    text-align:center;
}
.privacy h3{
    margin:30px auto 20px;
    font-size:16px;
    font-weight:bold;
}
.privacy h4{
    margin:30px auto 5px;
    font-size:16px;
    font-weight:bold;
}
.privacy p{
    margin:5px auto;
    line-height:1.8;
}
.privacy-top{
    width:100%;
    height:110px;
}
.privacy-top p{
    margin:0 50px 0 0;
    width:720px;
    font-size:13px;
    line-height:1.8;
}
.privacy-top img{
    float:left;
    float:right;
    margin:20px 0;
}
.privacy hr{
    margin:30px auto;
}
.privacy .right{
    text-align:right;
}
.privacy table{
    margin:20px auto;
    border-collapse:collapse;
    border:1px solid #c4c4c4;
}
.privacy table tr th{
    padding:10px 0;
    background:#cfdbf4;
    border:1px solid #c4c4c4;
}
.privacy table tr th:first-child{
    width:35%;
}
.privacy table tr td{
    padding:10px 10px;
    border:1px solid #c4c4c4;
}
.privacy aside{
    margin:30px auto;
    padding:30px 50px;
    background-color:#f2f2f2;
}
.privacy aside img{
    width:105px;
}
/* サイトマップ */
.sitemap{
    margin:50px 150px 150px;
    font-size:15px;
    text-align:left;
}
.sitemap h1{
    text-align:center;
}
.sitemap div{
    margin:40px auto;
}
.sitemap ul{
    list-style:none;
    float:left;
    margin:0;
    padding:0 10px 0 50px;
    width:250px;
}
/* footer */
footer{
    width:970px;
    margin:0 auto;
    background-color:#f2f2f2;
    font-size:12px;
}
.footer_box{
    width:970px;
    text-align:left;
    margin:0 auto;
    overflow:hidden;
    padding-bottom:35px;
    border-bottom:3px #20397b solid;
}
.footer_box ul{
    list-style:none;
    float:left;
    margin:0;
    padding:0 85px 0 15px;
}
.footer_box ul.last{
    padding-right:0;
}
.footer_box ul.noTitle{
    padding-top:55px;
}
.footer_box ul li{
    padding-left:30px;
    line-height:2em;
}
.footer_box ul li.arrow{
    background:url(../image/arrow02.png) no-repeat left 35px;
    padding:30px 0 0 20px;
}
.footer2{
    font-size:12px;
    padding:10px 0;
    background-color:#8a8a8a;
}
.footerAdd{
    width:970px;
    text-align:left;
    margin:0 auto;
    overflow:hidden;
    color:#fff;
}
.footerLinks{
    width:485px;
    float:left;
}
.footerLinks ul{
    list-style:none;
    width:485px;
    overflow:hidden;
}
.footerLinks ul li{
    width:100px;
    float:left;
    background:url(../image/arrow03.png) no-repeat left top;
    padding-left:15px;
}
.footerLinks ul li a{
    color:#fff;
}
.footerAdd address{
    position:relative;
    width:485px;
    float:right;
    text-align:center;
    font-style:normal;
    margin:0;
    padding-right:15px;
}

@media (min-width:640px){
    a[href*="tel:"]{
    pointer-events:none;
    cursor:default;
    text-decoration:none;
    }
}
/* For SmartPhone */
@media screen and (max-width:640px){
    .sp-clearfix{
        transform-origin:0 0;
        transform:scale(1.0);
    }
    .sp-clearfix:after{/*for modern browser*/
        content:".";
        display:block;
        height:0px;
        clear:both;
        visibility:hidden;
    }
    * html .sp-clearfix{
        display:inline-table;
    }
    body{
        font-size:24px;
    }
    img{
        width:100vw;
    }
    .pc-display{
        display:none;
    }
    .sp-display{
        display:block;
    }
    .pc-br::after{
        display:none;
    }
    .sp-br::after{
        content:"\A";
        white-space:pre;
    }
    .container{
        width:100vw;
    }
    header{
    }
    .header-title{
        position:fixed;
        height:72px;
        width:100vw;
        z-index:10;
        margin:0 auto 30px auto;
        padding:10px 0;
    }
    .header-company-logo:before{
        content:url('../image/logo-only.png');
    }
    .header-company-logo{
        position:absolute;
        top:30px;
        left:5px;
        font-size:6px;
    }
    .header-title-sub{
        font-size:8px;
    }
    .header-title-main{
        font-size:30px;
        line-height:0.8;
    }

    .pc-navi{
        display:none;
    }
    .com-page-title{
        margin-top:0;
    }

    .contents{
        position:relative;
    }
    main{
        width:100vw;
        position:relative;
        display:block;
        padding-top:70px;
    }
    .sticky{
        right:15px;
        top:30vh;
        width:80px;
        height:80px; 
        font-size:14px;
    }
    .top-header{
        display:block;
        margin:30px auto;
        padding:20px 0;
    }

    .topmenu{
        margin:10px auto;
        text-align:center;
    }
    .topmenu img{
        width:calc(100vw / 2.1);
        margin:2px 1px;
    }
    .topimage{
        width:100vw;
        padding-top:100px;
    }
    .topimage-text1-sub h4{
        font-size:3.1vw;
    }
    .topimage-text2-sub h4{
        font-size:3.0vw;
    }
    .topimage-text3-sub h4{
        font-size:3.0vw;
    }
    .topimage-text4-sub h4{
        font-size:3.1vw;
    }
    .topimage-text5-sub h4{
        font-size:2.2vw;
    }
    .topimage-text6-sub h4{
        font-size:2.2vw;
    }
    .main-top{
        padding-top:0;
    }
    .news{
        width:90vw;
        margin:10px 20px;
        font-size:14px;
    }
    .news dt img{
        max-width:55px;
    }
    .news dd img{
        max-width:calc(100vw / 3);
    }
    .top{
        margin:30px auto;
    }

    /* Schoolleaderとは*/
    .sl-title-sub{
        margin:0 auto;
        text-align:center;
        font-size:14px;
    }
    .sl-title{
        font-size:28px;
        line-height:0.4;
    }
    .sl-top{
        margin:0 auto;
        text-align:center;
    }
    .sl-top img{
        width:90vw;
    }
    .sl-about{
        margin:5px 40px;
        text-align:left;
        font-size:14px;
    }
    .sl-head-text{
        margin:30px auto;
        text-align:center;
        font-size:28px;
    }
    .sl-card{
        margin:10px 20px;
        width:80vw;
    }
    .sl-card img{
        width:60px;
        padding:5px 0;
    }
    .sl-card p{
        margin:10px auto 0 auto;
        font-size:18px;
    }
    .sl-card-desc{
        display:none;
        margin:5px 40px;
        padding:10px 10px;
        width:90vw;
        font-size:16px;
    }

    /* 製品情報 */
    .product-top{
        margin:0 auto 30px auto;
    }
    .product-top h1{
        font-size:24px;
        margin:20px auto;
    }
    .product-top img{
        width:100%;
    }
    .product-pickup-card2{
        margin:5px auto;
        width:90%;
    }
    .product-pickup-card3{
        margin:5px auto;
        width:90%;
    }

    /* Schoolleader機能情報 */
    .slfunc-title{
        margin:30px auto 20px auto;
    }
    .slfunc-title img{
        margin-right:5px;
        width:50px;
    }
    .slfunc-title h1{
        margin:20px auto;
        font-size:24px;
    }
    .slfunc-title p{
        font-size:14px;
        text-align:left;
    }
    .slfunc-main{
        margin:10px 10px;
    }
    .slfunc-image,
    .slfunc-image2{
        margin:0 auto;
        text-align:center;
        width:100%;
    }
    .slfunc-contents,
    .slfunc-contents2{
        margin:20px auto 80px auto;
        padding:0 0;
        width:100%;
    }
    .slfunc-contents h4,
    .slfunc-contents2 h4{
        margin:10px auto;
    }
    .slfunc-contents p,
    .slfunc-contents2 p{
        line-height:1.6;
    }
    .slfunc-strength{
        margin:10px auto 50px;
        width:90%;
    }
    .slfunc-strength p{
        font-size:20px;
    }

    /* 導入実績 */
    .dounyuu-head{
        margin-top:30px;
        text-align:left;
        font-size:18px;
    }
    .dounyuu-head p{
        margin:0 0 5px 20px;;
    }
    .dounyuu-operation-pc{
        color:#1503bd;
        display:none;
    }
    .dounyuu-operation-sp{
        color:#1503bd;
        display:block;
    }
    .dounyuu-school{
        margin:0 auto;
        text-align:center;
    }
    .dounyuu-school p{
        font-size:12px;
        margin-bottom:5px;
    }
    .dounyuu-school1{
        display:inline-block;
        margin:10px 4px;
        width:calc(100vw / 3);
        vertical-align:top;
    }
    .dounyuu-school2{
        display:inline-block;
        margin:10px 4px;
        width:calc(100vw / 4);
        vertical-align:top;
    }

    .dounyuu-list{
        margin:0 auto;
        text-align:center;
    }
    .dounyuu-list p{
        margin:10px 30px;
        text-align:left;
        font-size:18px;
    }
    .dounyuu-list table{
        width:100%;
        border-collapse:collapse;
        border:1px #c4c4c4 solid;
        margin:15px 0 5px 0;
        margin:0 auto;
        font-size:12px;
    }
    .dounyuu-list table th{
        display:block;
        width:100%;
        padding:10px 0;
        text-align:center;
        vertical-align:top;
        background-color:#cfdbf4;
        border:1px #c4c4c4 solid;
    }
    .dounyuu-list table td{
        display:block;
        padding:10px 30px 10px 20px;
        text-align:left;
        border:1px #c4c4c4 solid;
        vertical-align:middle;
    }
    .dounyuu-list table td.yotei{
        background-color:#f3f3f3;
        font-weight:normal;
        padding:3px 30px 3px 20px;
        color:#666;
    }
    .dounyuu-list .extra{
        text-align:right;
    }

    /* 保守サービス・会社概要・理念 */
    .top-title-support .uk-icon{
        top:30%;
        left:30%;
        ratio:1;
    }
    .top-title-support h1{
        font-size:18px;
        width:100%;
        top:38%;
    }
    .top-title-support p{
        color:#fff;
        font-size:10px;
        top:55%;
    }
    .support-contents{
        width:100%;
        padding:0;
    }
    .support h4{
        margin:30px auto;
        font-size:1.0rem;
    }
    .company h2{
        font-size:22px;
    }
    .top-title-cover h1{
        font-size:18px;
    }
    .top-title-cover p{
        font-size:10px;
    }
    .company iframe{
        width:100%;
    }
    .company th, .company td{
        padding:10px 20px;
        display:block;
    }
    .company th{
        width:auto;
        border:solid 1px #d9d9d9;
        border-bottom:none;
    }
    .company td{
        border:solid 1px #d9d9d9;
        border-top:none;
    }
    .mission h3{
        font-size:1.8rem;
    }
    .mission h4{
        font-size:1.4rem;
    }
    .mission h5{
        font-size:1.3rem;
    }

    /* よくあるご質問 */
    .faq-list{
        margin:50px 10px;
    }
    .faq-qa-set{
        /* margin:10px auto;*/
    }
    .faq-question{
        padding:10px 15px;
    }
    .faq-hr{
        display:block;
        margin:0 auto;
        text-align:center;
        width:90%;
        border-bottom:solid 1px #00f;
    }
    .faq-answer{
        display:block;
        padding:10px 15px;
        background-color:#f3f3f3;
    }
    .faq-head{
        display:inline-block;
        font-size:24px;
        vertical-align:top;
        width:30px;
        text-align:center;
    }
    .faq-contents{
        font-size:16px;
        display:inline-block;
        padding-left:15px;
        width:calc(100% - 50px);
    }
    .faq-check{
        /* display:none;*/
    }
    .faq-check:checked + .faq-answer{
        /* display:block;*/
    }
    /* お問合せ */
    .contact-table{
        width:90%;
        margin:0 auto;
        font-size:18px;
    }
    .contact-table tr{
    }
    .contact-table th{
        width:auto;
        display:block;
        margin-top:5px;
        border-bottom:0;
        text-align:left;
    }
    .contact-table td{
        width:auto;
        display:block;
        padding:0 10px 10px 10px;;
    }
    .contact-regist{
        display:inline-block;
        margin:20px auto;
        text-align:center;
        width:100%;
        font-size:18px;
    }
    .contact-regist p{
        margin:0 auto;
    }
    .contact-regist .uk-button-default{
        width:70%;
        margin-top:30px;
    }
    .contact-table td input[type="text"]{
        /* width:90%;*/
    }
    .contact-regist .uk-button-primary{
        width:70%;
        margin:0 auto;
    }
    .uk-form-width-large, .uk-form-width-medium, .uk-form-width-small{
        width:90%;
    }

    .datepicker{
        width:120px;
    }
    .error_messe{
        margin:5px auto;
        font-size:16px;
    }
    /* 個人情報保護方針 */
    .privacy{
        width:90%;
        margin:30px auto;
        font-size:15px;
    }
    .privacy h1{
        font-size:28px;
    }
    .privacy h3{
        margin:70px auto 20px;
    }
    .privacy-top{
        height:auto;
    }
    .privacy-top p{
        float:none;
        margin:0 10px 0 0;
        width:100%;
    }
    .privacy-top img{
        float:right;
        margin:5px 0 5px;
        max-width:50px;
    }
    .privacy hr{
        margin:30px auto;
    }
    .privacy table tr th:first-child{
        width:40%;
    }
    .privacy table tr td{
        padding:5px 5px;
    }
    .privacy aside{
        margin:10px auto;
        padding:10px 10px;
    }
    .privacy aside img{
        width:35%;
    }
    /* サイトマップ */
    .sitemap{
        margin:50px auto;
        width:80%;
    }
    .sitemap ul{
        float:none;
        margin:0;
        width:100%;
    }
    /* footer */
    footer{
        width:100vw;
        position:relative;
        display:block;
    }
    .footer_box{
        width:100vw;
        margin:0 0;
    }
    .footer_box ul{
        padding:0 10px 0 10px;
        min-width:167px;
    }
    .footerAdd{
        width:100vw;
        margin:0 0;
    }
    .footerLinks{
        width:100vw;
    }
    .footerLinks ul{
        width:90vw;
    }
    .footerAdd address{
        width:90vw;
        text-align:center;
    }

    /*　ハンバーガーボタン　*/
    .hamburger{
        display:block;
        position:absolute;
        z-index:65;
        right:13px;
        top  :25px;
        width:42px;
        height:42px;
        cursor:pointer;
        text-align:center;
    }
    .hamburger span{
        display:block;
        position:absolute;
        width  :30px;
        height :4px ;
        left   :6px;
        background-color:#333;
        -webkit-transition:0.3s ease-in-out;
        -moz-transition  :0.3s ease-in-out;
        transition       :0.3s ease-in-out;
    }
    .hamburger span:nth-child(1){
        top:10px;
    }
    .hamburger span:nth-child(2){
        top:20px;
    }
    .hamburger span:nth-child(3){
        top:30px;
    }
    nav.sp-navi{
        position:fixed;
        z-index:60;
        top :80px;
        left:0;
        color:#000;
        background-color:#fff;
        text-align:left;
        transform:translateY(-100%);
        transition:all 0.6s;
        width:100%;
    }
    nav.sp-navi ul{
        color:#333;
        font-size:18px;
        background-color:#87cefa;
        margin:0 auto;
        padding:20px 10px;
        width:100%;
    }

    nav.sp-navi ul li{
        list-style-type:none;
        padding:0;
        width:100%;
    }
    nav.sp-navi ul li:last-child{
        padding-bottom:0;
        border-bottom:none;
    }
    nav.sp-navi ul li:hover{
        background-color:#f2f2f2;
    }
    nav.sp-navi ul li a{
        display:block;
        color:#333;
        padding:0.1em 0;
        text-decoration:none;
        font-size:15px;
    }
    nav.sp-navi ul li a:before{
        position:relative;
        top:5px;
        left:5px;
        margin-right:15px;
    }
    .sub-sp-navi{
        text-align:left;
        margin:0 5px 0 20px;
        font-size:16px;
    }
    .sub-sp-navi td{
        min-width:120px;
    }
    .sub-sp-navi-item{
        float:left;
        font-size:16px;
        margin-bottom:5px;
    }
    /* このクラスを、jQueryで付与・削除する */
    nav.sp-navi.active{
        display:block;
        transform:translateY(0%);
    }
    .sp-nav-close{
        display:block;
        width:30px;
        margin-left:85vw;
        margin-bottom:10px;
    }
    .sp-nav-font-bold{
        font-weight:600;
    }
    /* 表示された時用のCSS */
    .nav-open .navi-sp{
        right:0;
    }
    .nav-open .black-bg{
        opacity:.8;
        visibility:visible;
    }
    .nav-open .hamburger__line{
        background-color:#111;
    }
    .active span:nth-child(1){
        transform:rotate(45deg);
        top:20px;
    }
    .active span:nth-child(2){
        width:0;
        left:50%;
    }
    .active span:nth-child(3){
        transform:rotate(-45deg);
        top:20px;
    }
}
