/*
20190218追記CSS
-----------------------------------------------------------------------*/

body {
    background-color:#eaedf2;
	font-family: -apple-system, BlinkMacSystemFont, "游ゴシック体", YuGothic, "Yu Gothic M", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "Helvetica Neue", HelveticaNeue, Helvetica, Arial, "Segoe UI", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}
nav.navbar-inverse {
    background-color: rgba(255,255,255,0.8);
}
.card-row .card {
	box-shadow: 2px 2px 4px #bbb;	
}
.portfolio-item .card .card-body {
    padding: .5rem 1.5rem 1.5rem;
}
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
    line-height: 1.5;
}
.pagination>.active>a, .pagination>.active>a:focus, .pagination>.active>a:hover, .pagination>.active>span, .pagination>.active>span:focus, .pagination>.active>span:hover {
    color: #fff;
    background-color: #82CCFD;	/*ナビゲーションホバー時のテキストカラー等メインカラーと同色*/
    border-color: #82CCFD;	/*ナビゲーションホバー時のテキストカラー等メインカラーと同色*/
}
footer.guideline-footer div {
    padding:5px;
}


.navbar-inverse .navbar-toggle {
     border: none; 
}
.row {
     margin-right:0; 
     margin-left: 0; 
}


@media screen and (min-width: 992px) {

/* -----ナビアニメーション----- */
.navbar-nav a {
  transition: color .3s;
}
#bs-example-navbar-collapse-1 a:hover {
  color:#82CCFD;	/*ホバー時のテキストカラー*/
  font-weight:bold;
}
.navbar-nav a {
  position: relative;
  display: inline-block;
  transition: .3s;
}
.navbar-nav a::after {
  position: absolute;
  bottom: 10px;
  left: 0;
  content: '';
  width: 0;
  height: 2px;	/*アンダーラインの太さ*/
  background-color: #82CCFD;	/*アンダーラインのカラー*/
  transition: .3s;	/*アンダーラインのスピード*/
}
.navbar-nav a:hover::after {
  width: 100%;
}
.navbar-nav .dropdown-menu a::after {
  bottom: 0px;
}

/* -----ホバーでimg拡大----- */
.card a {
	overflow: hidden;	/*拡大時にはみ出た部分を隠す*/
}
.card a img {
	display: block;
	transition-duration: 0.3s;	/*変化に掛かる時間*/
}
.card a img:hover {
	transform: scale(1.1);	/*画像の拡大率*/
	transition-duration: 0.3s;	/*変化に掛かる時間*/
	opacity: 0.6;	/* 小さくするほど暗く */
}


}


/*
20190218追記CSS 終わり
-----------------------------------------------------------------------*/


body {
    padding-top: 52px;
}
.navbar {
    margin-bottom: 0;
}
.navbar-brand {
    height: 50px;
    padding: 5px;
}
.navbar-brand img.logo {
    height: 42px;
}
.navbar-inverse {
    background-color: #ffffff;
    border: none;
}
.navbar-inverse .navbar-toggle .icon-bar {
    background-color: #000000;
}
.navbar-inverse .navbar-toggle:focus, .navbar-inverse .navbar-toggle:hover {
    background-color: #f8f8f8;
}
.navbar-inverse .navbar-nav > li > a {
    color: #717071;
}
.navbar-inverse .navbar-nav > li > a:hover {
    color: #000000;
}
.navbar-inverse .navbar-nav > .open > a,
.navbar-inverse .navbar-nav > .open > a:hover,
.navbar-inverse .navbar-nav > .open > a:focus {
    color: #fff;
    background-color: #717071;
}
.navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover,
.navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus {
    color: #000000;
    background-color: transparent;
}

#header {
    margin-bottom: 20px;
}

.content-header {
    min-height: 150px;
}

.page-header {
    background-image: url("../img/sub_img.png");
    background-position: left top;
    background-repeat: no-repeat;
    background-size: cover;
    color: #fff;
    font-size: 300%;
    margin-top: 0px;

    height: 150px;
    position: absolute;
    right: 50%;
    transform: translateX(50%);
    background-color: #ddd;

    display: flex;
    align-items: center;
}
.body-info-list .content-header {
  min-height: 450px;
}

@media screen and (max-width: 767px) {
    .body-info-list .content-header {
      min-height: 150px;
    }
    .body-info-list .page-header {
        height: 150px;
    }
}
@media screen and (min-width: 768px) and (max-width: 991px) {
    .body-info-list .content-header {
      min-height: 200px;
    }
    .body-info-list .page-header {
        height: 200px;
    }
}

@media screen and (max-width: 767px) {
    .page-header {
        width: 100vw;
        padding-left: 5%;
        font-size: 200%;
    }
}
@media screen and (min-width: 768px) and (max-width: 991px) {
    .page-header {
        width: calc(100vw - 18px);
        padding-left: 10%;
    }
}
@media screen and (min-width: 992px) {
    .page-header {
        width: calc(100vw - 18px);
        padding-left: 18%;
		color: #fff;
		text-shadow: 2px 2px 2px #000;
    }
}

@media screen and (max-width: 767px) {
    #header .header-img {
        background-image: url("../img/top_img.jpg");
        background-position: left top;
        background-repeat: no-repeat;
        background-size: cover;
        min-height: 400px;
    }
    #header .header-message {
        position: absolute;
        top: 100px;
        left: 10px;
    }
    #header .header-message p {
        font-size: 150%;
        color: #717071;
    }
    #header .header-message p.company {
        color: #00b2d9;
        font-size: 300%;
        font-weight: bold;
    }
}
@media screen and (min-width: 768px) {
    #header .header-img {
        background-image: url("../img/top_img.jpg");
        background-position: left top;
        background-repeat: no-repeat;
        background-size: cover;
        height: calc(100vh - 52px);
        min-height: 700px;
    }
    #header .header-message {
        position: absolute;
        top: 130px;
        left: 10%;
    }
    #header .header-message p {
        font-size: 250%;
        color: #717071;
    }
    #header .header-message p.company {
        color: #00b2d9;
        font-size: 500%;
        font-weight: bold;
    }
}
@media screen and (max-width: 767px) {
    #header .header-sub-message {
        position: absolute;
        top: 250px;
        left: 15px;
    }
    #header .header-sub-message p {
        font-size: 100%;
        color: #717071;
    }
    #header .header-sub-message .question-message .word {
        float: left;
        color: #fff;
        width: 50px;
        height: 50px;
        border-radius: 50px;
        text-align: center;
        line-height: 50px;
    }
    #header .header-sub-message .question-message .word1 {
        background-color: #ffc50c;
        font-size: 25px;
    }
    #header .header-sub-message .question-message .word2 {
        background-color:#b2d234;
        font-size: 12px;
    }
    #header .header-sub-message .question-message .word3 {
        background-color: #00b2d9;
        font-size: 18px;
    }
    #header .header-sub-message .question-message .message {
        float: left;
        line-height: 50px;
    }
    #header .header-sub-message .question-message .multiple {
        float: left;
        position: relative;
        left: -70px;
        top: 50px;
    }
    #header .header-sub-message .message-equals {
        clear: both;
        position: relative;
        left: 180px;
        top: -105px;
        width: 15px;
    }
    #header .header-sub-message .message-answer {
        position: relative;
        left: 200px;
        top: -160px;
        width: 150px;
    }
}
@media screen and (min-width: 768px) {
    #header .header-sub-message {
        margin-top: 80px;
        position: absolute;
        top: 280px;
        left: 10%;
    }
    #header .header-sub-message p {
        font-size: 250%;
        color: #717071;
    }
    #header .header-sub-message .question-message .word {
        float: left;
        color: #fff;
        width: 100px;
        height: 100px;
        border-radius: 100px;
        text-align: center;
        line-height: 100px;
    }
    #header .header-sub-message .question-message .word1 {
        background-color: #ffc50c;
        font-size: 50px;
    }
    #header .header-sub-message .question-message .word2 {
        background-color:#b2d234;
        font-size: 25px;
    }
    #header .header-sub-message .question-message .word3 {
        background-color: #00b2d9;
        font-size: 35px;
    }
    #header .header-sub-message .question-message .message {
        float: left;
        line-height: 100px;
    }
    #header .header-sub-message .question-message .multiple {
        float: left;
        position: relative;
        left: -180px;
        top: 80px;
    }
    #header .header-sub-message .message-equals {
        clear: both;
        position: relative;
        left: 450px;
        top: -200px;
        width: 350px;
    }
    #header .header-sub-message .message-answer {
        position: relative;
        left: 550px;
        top: -300px;
        width: 350px;
    }
}
 /*iPhone5用 */
@media screen and (max-width: 374px) {
    #header .header-img {
        min-height: 350px;
    }
    #header .header-sub-message {
        left: 5px;
    }
    #header .header-sub-message .question-message .word {
        width: 40px;
        height: 40px;
        border-radius: 40px;
        line-height: 40px;
    }
    #header .header-sub-message .question-message .word1 {
        font-size: 20px;
    }
    #header .header-sub-message .question-message .word2 {
        font-size: 9px;
    }
    #header .header-sub-message .question-message .word3 {
        font-size: 15px;
    }
    #header .header-sub-message .question-message .message {
        line-height: 40px;
    }
    #header .header-sub-message .question-message .multiple {
        left: -60px;
        top: 35px;
    }
    #header .header-sub-message .message-equals {
        left: 165px;
        top: -90px;
        width: 15px;
    }
    #header .header-sub-message .message-answer {
        position: relative;
        left: 180px;
        top: -145px;
        width: 130px;
    }
}

.card-text {
    word-break: break-all;
}

table > tbody > tr > th {
    background-color: #f5f5f5;
}
table > tbody > tr > td {
    background-color: #ffffff;
}

.complete-page .content,
.pay-page .content,
.body-teacher-detail .content,
.body-school-detail .content,
.cart-page .content,
.shop-login-page .content,
.shop-order-page .content,
.shop-page .row,
.order-contact .content,
.timeline,
#shelf_list .row {
    background-color: #ffffff;
    padding: 15px;
    border-radius: 3px;
}

.timeline:before {
    top: 15px;
    left: 46px;
}

.cart-page .content {
    padding-bottom: 160px;
}



 /* 2020.8追記 */
/* .container { position: relative;height: auto !important;min-height: 100%;width: 100%;padding: 0;} */
section { padding: 4rem 0;}
#top-plt { padding: 0 0 4rem;}
.col-lg-12 { padding: 0;}
.content-banner { padding: 0;}
.content-header { padding: 0;margin: 0;}
.body-page-detail-top .page-header { background-image: url("../img/head_bg.jpg");height: 450px;background-position: center;position: relative; margin: 0;}
.body-page-detail-top .page-header::before { content: "";display: inline-block;top: 50%;left: 50%;transform: translate(-50%, -50%);position: absolute;background: url(../img/head.png)no-repeat center center;width: 450px;height: 100%;background-size: contain;}
.page-header { background-image: url(https://plt-college.jp/sukumane/resource/img/promotion-bg.jpg);}
.video { text-align: center;}

.inner { width: 960px;margin: 0 auto;}
.inner + h2 { margin-top: 6rem;}
.flex-plt { display: flex;flex-wrap: wrap;justify-content: space-between;}
.flex-plt > p { width: 25%;margin: 0;}
.flex-plt > .name { width: 72%;font-size: 2.5rem;}
.flex-plt > .name p { margin: 0 !important;line-height: 1.4;}
.flex-plt .txt { padding: 1.5rem 0 0;}
.flex-plt + .flex-plt {margin-top: 4rem;border-top: 1px solid #337ab7;padding-top: 4rem;}

.box1-plt { padding: 4rem;}
.box2-plt { padding: 4rem;background: #fff;margin:0 auto 2rem;box-shadow: 4px 4px 4px #ddd;}
.box2-plt .naiyo-plt { display: table;margin: 3rem auto 1rem;font-size: 100%;}
.box2-plt > .h4-plt { padding-top: 0;}
.naiyo-plt { background: #000;padding: .5rem;color: #fff;font-weight: bold;font-size: 80%;margin: 0 0 1rem;display: inline-block;}
.list_c-plt { max-width: 400px;margin: 0 auto;text-align: center;}
.list_c-plt p { display: inline-block;text-align: left;}

.btn-plt { background: #fd9535;border: 2px solid #fd9535;color: #fff !important;-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;-webkit-transition: all .3s;transition: all .3s;text-decoration: none;padding: 1rem;width: 90%;margin: 4rem auto 0;display: block;font-size: 3rem;text-align: center;font-weight: bold;border-radius: 10px;}
.btn-plt:hover { background-color: transparent;border: 2px solid #fd9535;color: #fd9535 !important;text-decoration: none;}
.btn2-plt { background: #00af40;border: 2px solid #00af40;color: #fff !important;-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;-webkit-transition: all .3s;transition: all .3s;text-decoration: none;padding: 1rem;width: 90%;margin: 4rem auto 0;display: block;font-size: 3rem;text-align: center;font-weight: bold;border-radius: 10px;}
.btn2-plt:hover { background-color: transparent;border: 2px solid #00af40;color: #00af40 !important;text-decoration: none;}

.pc-plt {display: block;}
.sp-plt {display: none}
.xsmall-plt { font-size: 60%;display: inline-block;}
.small-plt { font-size: 80%;}
.large-plt { font-size: 120%;}
.xlarge-plt { font-size: 130%;}
.b-plt { font-weight: bold;}
.txt_c-plt { text-align: center;}
.bg_wh-plt {background: #fff;}
.bg_g-plt {background: #eee;}
.bg_lg-plt {background: #f9f9f9;}
.mt0-plt { margin-top: 0;}
.serif-plt { font-family: 游明朝, "Yu serif", Yuserif, "Hiragino serif ProN", "Hiragino serif Pro", HGS明朝E, メイリオ, Meiryo, serif;}
/* .page-detail-blog > .content { width: 900px;margin: 0 auto;} */

#basic-plt { background: #ffffff;padding: 2rem 0 4rem;}
#advance-plt { background: #eaedf2;padding: 2rem 0 4rem;}
#master-plt { background: #d6dce4;padding: 2rem 0 4rem;}
#basic-plt .box1-plt { border: 2px solid #337ab7;}
#advance-plt .box1-plt { border: 2px solid #337ab7;}
#master-plt .box1-plt { border: 2px solid #337ab7;}

.h2-plt { font-weight: bold;margin: 4rem auto;font-size: 3rem;padding: 0.4em 0;border-bottom: 5px solid #337ab7;display: table;}
.h3-plt { font-weight: bold;margin: 4rem auto 2rem;font-size: 2.5rem;padding: 0.4em 0;border-bottom: 5px solid #337ab7;display: table;color: #337ab7;text-align: center;}
.h3-plt span { font-size: 120%; }
.h4-plt { font-size: 2.5rem;text-align: center;font-weight: bold;padding: 2rem 0 0;margin: 0 auto 4rem;}
/* #formInview .col-lg-12 { width: 960px;margin: 0 auto;} */
/* .h-adr .login-required p {text-align: center;} */
/* #entryAnchor {width: 380px;margin: 0 auto;} */

.body-page-detail-top .container:nth-child(3),
.body-page-detail-basic .container:nth-child(3),
.body-page-detail-advance .container:nth-child(3),
.body-page-detail-master .container:nth-child(3),
.body-page-detail-member .container:nth-child(3),
.body-page-detail-course .container:nth-child(3)
{
    position: relative;
    height: auto !important;
    min-height: 100%;
    width: 100%;
    padding: 0;
}

.body-page-detail-basic2 .container:nth-child(3) {
    position: relative;
    height: auto !important;
    min-height: 100%;
    width: 100%;
    padding: 0;
}

.card-row,
.body-shelf-list .content
{
    padding-top: 30px;
}

.page-detail-top .txt_c-plt {
    font-size: 2.5rem;
}

.page-detail-top .txt_c-plt > p {
    font-size: 80%;
}

/* SP */
@media screen and (max-width:768px) {
    body{ width:100%; font-size:3vw; line-height:1.7; }
	section { padding: 2rem 0;}
    .xsmall-plt { font-size: 80%;display: inline-block;}
    .small-plt { font-size: 90%;}
    .large-plt { font-size: 110%;}
    .xlarge-plt { font-size: 120%;}
	.content {padding: 0;}
	.body-page-detail-top .page-header { height: 150px;background-size: 200%;width: 100%;}
	.body-page-detail-top .page-header::before { width: 50%;}
	.navbar-inverse .navbar-nav > .open > a,
	.navbar-inverse .navbar-nav > .open > a:hover,
	.navbar-inverse .navbar-nav > .open > a:focus { color: #337ab7;background-color: #717071;}
	.container .navbar-header { margin: 0;}
	.navbar-header .navbar-toggle {margin-right:0;}
	/* .page-detail-blog > .content { width: 90%;margin: 0 auto;} */
	
	.pc-plt {display: none;}
	.sp-plt {display: block}
	.flex-plt > p { width: 100%;}
	.flex-plt > .name { width: 100%;text-align: center;}
    .flex-plt > .name p {font-size: 4vw;}
	.inner { width: 90%;}
	
	.h2-plt { font-size: 6vw;text-align: center;margin: 2rem auto 4rem;}
	.h3-plt { font-size: 4.5vw;}
	.h4-plt { font-size: 5vw;}
	.box1-plt { padding: 2rem;}
	.box1-plt .flex-plt img { display: block !important;margin: 0 auto !important;width: 60%;}
	.btn-plt,.btn2-plt {font-size: 5vw;width: 100%;margin: 2rem auto 0;}
	.box2-plt {padding: 2rem;}
	footer.guideline-footer .container li {display: inline-block;}
	.navbar-nav>li {text-align: center;border-bottom: 1px solid #efefef;width: 100%;}
	ul .dropdown-menu li { text-align: center;}
	/* #formInview .col-lg-12 { width: 90%;margin: 0 auto;} */
	/* #entryAnchor {width: 100%;} */
	
	.body-shelf-list .col-md-3,
	.body-shelf-list .col-md-9 {
	    padding-right: 0px;
	    padding-left: 0px;
	}
	
	
	.page-detail-top .txt_c-plt {
	    font-size: 4vw;
	}
	.page-detail-top .txt_c-plt > p {
	    font-size: 90%;
	}
}

.sns-detail {
	    margin-top: 30px;
}

@media (max-width: 991px) {
	.sns-detail {
	    margin-top: 30px !important;
	}
	
	.shop-page .sns-detail {
	    margin-top: 40px !important;
	    margin-bottom: 10px; !important;
	}
}

/* ===== PLT MEMBERS 追記（2026-05-27 マチ）=====
   トップページ（body-page-detail-top）の標準ヘッダーバナーを非表示にし、
   貼り付けたMEMBERSヒーローを主役にする。トップページのみに限定＝他ページ影響なし。 */
body.body-page-detail-top .content-banner,
body.body-page-detail-top .content-header,
body.body-page-detail-top .page-banner,
body.body-page-detail-top .page-header { display: none !important; }
