/* mobile.css */
@media screen and (max-width: 768px) {
    html { width: 100%; }
    body { font-size: 15px; }
    /*Layout*/
    .l-header,
    .l-wrap,
    .l-top,
    .l-other,
    .l-footer,
    .col-8,
    .col-4 { width: 100% }
    /* header */
    .l-header {
        height: 55px;
        position: relative;
    }
    .logo {
        position: absolute;
        left: 0px;
        top: 8px;
        width: 250px;
        float: left;
        z-index: 5;
    }
    .logo > img {
        margin: 0 0 8px 5px;
        width: 30px;
    }
    .logo > h1 {
        vertical-align: text-bottom;
        font-size: 11px;
        color: #fff;
    }
    .h-menu { display: none }
    .slicknav_nav a { font-size: 16px }
    .slicknav_nav a:hover {
        background-color: #002b5e;
        color: #fff;
    }
    .slicknav_btn{
    	height:44px;
    	line-height:44px;
    }
	
    .slicknav_menutxt,
    .slicknav_menu .slicknav_icon {
    	margin:10px 2px;
    }

    .top-img {
        height: 150px;
        background: url(../img/common/top_mb.jpg) no-repeat center;
    }
    .l-wrap { padding-bottom: 40px }
    .banner {
        padding: 20px 0;
        margin: 0 auto 20px;
        width: 100%;
        text-align: center;
        border-radius: 0;
    }

.banner > ul {padding: 17px 7px 13px 6px; }

    .banner div {
        margin: 0px;
        padding: 0;
    }
    .banner > div > a {
        float: none;
        margin-right: 0;
    }

    /* footer */
    body { margin-bottom: 155px }
    footer { height: 150px }
    .l-footer { height: 130px }
    .footer-block { display: none }
    .mb-f-menu {
        display: block;
        margin: 20px auto;
        width: 312px;
    }
    .mb-f-menu ul {
        overflow: hidden;
        zoom: 1;
        width: 100%;
        margin: 0 auto;
    }
    .mb-f-menu li {
        float: left;
        width: 156px;
        height: 22px;
    }
    .mb-f-menu a {
        color: #fff;
        text-decoration: none;
    }
    .pageup {
        display: block;
        margin: 0 10px -10px;
        text-align: right;
    }
    .pageup a { color: #666 }
    .slicknav_menu { display: block }
    /* ----------- top.css ----------- */
    /*新着情報*/
    .news-box {
        width: 96%;
        height: auto;
    }
    .news-head {
        float: none;
        height: 150%;
        width: 100%;
    }
    .news-head > h2 {
        height: 44px;
        line-height: 44px;
    }
    .news-con {
        float: none;
        width: 100%;
    }
    .news-con li {
        overflow: hidden;
        zoom: 1;
        margin-bottom: 8px;
    }
    .date {
        margin-right: 5px;
        float: left;
        width: 30%;
    }
    .date + div {
        float: left;
        width: 68%;
    }
    .news-log { margin-bottom: 10px }
    /*top button*/
    .btn-con {
        width: 570px;
        height: auto;
        margin: 0 auto 20px;
    }
    .btn-base {
        margin: 5px;
        padding: 10px 15px;
        width: 150px;
        height: 150px;
    }
    .btn-base:first-child { margin-left: 5px; }
    .btn-base:nth-child(5){margin-left: 5px; }

    .btn-grp{
    overflow: hidden;
    zoom: 1;
    margin-bottom:15px;
}

    /*report newsletter*/
/*    .rep-box {
        width: 96%;
        height: auto;
        margin: 0 auto 20px;
    }
*/
    .rep-box {
        display: none;
    }
    .rep-box-sp {
        display: block;
        margin-bottom:20px;
    }
    .rep-box-sp img{
        width:100%;
    }

    .rep-box:last-child { margin-bottom: 20px }
    .rep-con01,
    .rep-con02 {
        float: none;
        padding: 0;
        width: 100%;
    }
    .rep-con01 img { display: none }
    .rep h2 {
        margin-bottom: 15px;
        padding-left: 70px;
        height: 48px;
        line-height: 45px;
        background: url(../img/icon/mb_rep.jpg) 10px 0 no-repeat;
    }
    .enl h2 {
        margin-bottom: 15px;
        padding-left: 70px;
        height: 48px;
        line-height: 45px;
        background: url(../img/icon/mb_rep.jpg) 10px 0 no-repeat;
    }
    .rep-con01 h2 { text-align: left }
    .rep-con02 {
        width: 96%;
        margin: 10px;
    }
    .rep-con02 > p { height: 70px }
    .nl-link01 {
        padding-left: 0;
        margin-bottom: 10px;
    }
    .nl-link02 { padding-left: 40px }
    /*Facebook*/
    .fb-base { display: none }
    .btn-fb {
        display: block;
        position: relative;
        margin: 0 auto 4px;
        width: 96%;
        height: 44px;
        background: #3b5998;
        box-shadow: 0px 4px 0px 0px rgba(31,56,109,1);
        border-radius: 5px;
    }
    .btn-fb a {
        display: block;
        text-decoration: none;
        color: #fff;
    }
    .btn-fb p {
        font-size: 1em;
        font-weight: bold;
        vertical-align: middle;
        text-align: center;
        padding-left: 20px;
        line-height: 46px;
        background: url(../img/icon/fb-icon.png) 10% 9px no-repeat;
    }
    /* ----- style.css ----- */
    .l-page {
        padding: 20px 4px;
        border-radius: 0;
    }
    .l-page h2 {
        margin-bottom: 15px;
        padding-bottom: 5px;
        font-size: 1.5em;
    }
    .l-page h3 {
        margin-bottom: 15px;
        padding-left: 10px;
        font-size: 1.2em;
    }
    .l-page h4 {
        margin-bottom: 10px;
        font-size: 1.3em;
    }
    .l-title {
        margin: 10px auto 20px;
        width: 94%;
    }
    .title-block01 {
        float: none;
        width: 100%;
        display: none;
    }
    .title-block01 .title-icon { margin: 0 }
    .title-block02,
    .title-block03 {
        float: none;
        margin: auto;
        padding-top: 10px;
        width: 94%;
        margin: 10px auto -10px auto;
    }
    .title-block03 { margin: 10px auto -10px auto }
    .title-block02 .index { width: 300px }
    .title-block02 h2,
    .title-block03 h2 {
        padding-bottom: 5px;
        width: 100%;
        font-size: 1.6em;
    }
    .page-link {
        width: 100%;
        margin: 10px 0 0 0;
    }
    .page-link li { width: 43% }
    .page-link .list01 { width: 43% }
    .page-link li:nth-child(3) { width: 43% }
    .area { margin: 0 0 40px 0 }
    .area2 { width: 100% }
    .area3 a { word-wrap: break-word }
    .area3 img {
        width: 100%;
        height: auto;
    }
    .br-none { display: none }
    /* ----- Module ----- */
    /*--- table ---*/
    .table-p {
        font-size: 0.9em;
        border-spacing: 5px 10px;
        letter-spacing: -0.5px;
    }
    .title-w{
    width: 100px;
    }
    .title-w2{
    width: 128px;
    }
    .table-p td .none { display: none }
    .table01,
    .table02,
    .table03,
    .table04,
    .table05,
    .table06,
    #table2 { width: 100% }
    .table02 th,
    .table02 td { padding: 10px }
    .table02 img { width: 100% }
    .table01 th,
    .table01 td {
        display: block;
        border-bottom: 0;
        padding: 10px;
    }
    .table01 .border,
    .table05 .border,
    .table06 .border { border-bottom: 1px solid #1e86fe }
    .table03 th {
        padding: 4px;
        font-size: 1em;
    }
    .table03 td {
        padding: 5px;
        font-size: 15px;
    }
    .t3-name { width: 300px }
    .table04 td {
        display: block;
        padding: 10px;
    }
    .table04 tr td:first-child { border-bottom: 1px dotted #ccc }
    .table04 tr td:last-child {
        padding-left: 70px;
        background: url(../img/other/mb_icon_n.png) 30px 50% no-repeat;
    }
    .table05 th,
    .table05 td {
        display: block;
        width: auto;
        padding: 10px;
        border-bottom: 0;
    }
    .table06 th,
    .table06 td {
        display: block;
        width: auto;
        padding: 10px;
        border-bottom: none;
    }

    .table07{
        width:98%;
    }
	
    .table07 th,
    .table07 td{
        width: auto;
        padding: 10px;
        border-bottom: 0;
    }


    #table2 td {
        display: block;
        padding: 10px;
        width: auto;
    }
    #table2 td:nth-of-type(2) {
        padding-left: 70px;
        background: url(../img/other/mb_icon_n.png) 30px 50% no-repeat;
    }
    #table2 td  a { border-left: 1px bottom #ccc }
    /*tab*/
    .tab {
        padding: 0;
        width: 100%;
    }
    .tab-con li { padding: 10px 4px }
    /*report*/
    .entry {
        margin: 0 10px;
        padding: 30px 0 30px 0;
        border-bottom: 1px dotted #222;
    }

.movie{
width:100%;
}

} /*(max-width: 768px)*/


@media screen and (max-width: 640px) {
/*アコーディオンメニュー*/

.accordion .news-con{ 
	display:none;
}  
.accordion .news-head{
	cursor:pointer;
      /*border-bottom:1px dotted #cccccc;*/
    }

.accordion .news-head h2:after{ content:" ▼"; }
.accordion .news-head h2 .active:after{ content:" ▲"; }
}

@media screen and (max-width: 600px) {
    .embed-container { padding-bottom: 100% }

  .l-page img {width:100%;}
}

@media screen and (max-width: 500px) {
    .tab li {
        width: 29.3%;
        padding: 8px 5px;
        line-height: 1.2em;
        vertical-align: middle;
    }
    /*map*/
    .map-click {
        width: 100%;
        height: auto;
    }
}

@media screen and (max-width: 480px) {
    /*top button-sp*/
    .btn-con {
        width: 310px;
        height: auto;
        margin: 0 auto 20px;
    }
    .btn-base {
        margin: 5px;
        padding: 10px 15px;
        width: 115px;
        height: 150px;
    }
    .btn-base:first-child { margin-left: 5px }

/* バナー広告 */
.banner > ul {padding: 17px 7px 13px 6px; }
.banner > ul > li{ margin: 3px 4px;}
.banner img { height:47px; }

    .banner  a {
        margin: 0;
        padding: 0;
    }
    .large { width: 100% }
    .medium { width: 80% }
    .small { height: 47px }
}

@media screen and (max-width: 468px) {
    .b_l { width: 100% }
}

@media screen and (max-width: 370px) {
    footer { height: 180px }

/*--- 会員一覧ページ ボタン ---*/
.kaiin-btn .btn-b{
	margin-right: 6px;
}
.btn-b{
	width: 92px;
	height: 32px;
	font-size: 0.97em;
}
}
