@charset "utf-8";

/* CSS Document */


/*======================

基本の赤　#ae0024;
ホバー　#ca002a; / #e30031

=======================*/

html {
    font-size: 10px;
    font-size: 62.5%;
}

body {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    line-height: 1.6;
    webkit-text-size-adjust: 100%;
    ms-text-size-adjust: 100%;
}

html, css{
  touch-action: maniplation;
}

/*====================================================

	javascript による media query 判定用入力
	<div id="set_device"></div>
	
    var mq_device = $("#set_device").css('content').toString();
    
  //  console.log(( mq_device === 'smp' ));  // 単純比較がなぜかエラー。原因不明
  //  console.log(( mq_device.indexOf('smp') != -1 )); 

====================================================*/

body #set_device {
    display: block;
    float: left;
    width: 0;
    height: 0;
    overflow: hidden;
    margin: 0;
    padding: 0;
}

@media screen and (max-width: 768px) {
    body #set_device {
        content: 'smp';
    }
    /* mobile */
}


/* ////////// pc ////////// */

@media print,
screen and (min-width: 769px) {
    body #set_device {
        content: 'pc';
    }
    /* pc end */
}


/*====================================================

	reset

====================================================*/

a {
    text-decoration: none;
}

ul,
ol {
    list-style: none;
}

em {
    font-style: normal;
}

img {
    vertical-align: middle;
}


/* ////////// mobile ////////// */

@media screen and (max-width: 768px) {
    img {
        max-width: 100%;
        vertical-align: middle;
    }
    /* mobile end */
}


/*====================================================

	float and clearfix

====================================================*/

.left {
    float: left;
}

.right {
    float: right;
}

.clr {
    clear: both;
}

.cf:before,
.cf:after {
    content: "";
    display: table
}

.cf:after {
    clear: both
}

.cf {
    zoom: 1
}
.inb {
    display: inline-block;
}

/* For IE 6/7 */


/* ////////// pc ////////// */

@media print,
screen and (min-width: 769px) {
    .pc_cf:before,
    .pc_cf:after {
        content: "";
        display: table
    }
    .pc_cf:after {
        clear: both
    }
    .pc_cf {
        zoom: 1
    }
    /*////// left right //////  */
    .pc_left {
        float: left;
    }
    .pc_right {
        float: right;
    }
    /* pc */
}


/*====================================================

	anchor

====================================================*/

a {
    color: #000;
    text-decoration: none;
}

a:hover {
    /*color:#a40023;*/
    color: #e30031;
    text-decoration: underline;
}

a.line {
    text-decoration: underline;
}

a .arrow {
    margin-right: 0.5em;
    background: #ae0024;
    color: #fff;
    padding: 0 0.3em;
    font-weight: bold;
    -webkit-border-radius: 0.2em;
    /* Safari,Google Chrome用 */
    -moz-border-radius: 0.2em;
    /* Firefox用 */
    -ms-border-radius: 0.2em;
    /* Internet Explorer用 */
    border-radius: 0.2em;
    /* CSS3草案 */
}

a:hover .arrow {
    background: #e30031;
}

a.opacity:hover {
    filter: alpha(opacity=60);
    -moz-opacity: 0.6;
    opacity: 0.6;
}

a.bg_red {
    font-size: 1.4rem;
    color: #fff;
    background: #ae0024;
    -webkit-border-radius: 1.5em;
    /* Safari,Google Chrome用 */
    -moz-border-radius: 1.5em;
    /* Firefox用 */
    -ms-border-radius: 1.5em;
    /* Internet Explorer用 */
    border-radius: 1.5em;
    /* CSS3草案 */
}

a.bg_red:hover {
    text-decoration: underline;
    background: #ca002a;
    text-decoration: none;
}

@media screen and (max-width: 768px) {
    a .arrow {
        padding: 0 0.3em;
    }
    a.bg_red {
        padding: 0.3em 2em;
    }
    /* mobile */
}


/* ////////// pc ////////// */

@media print,
screen and (min-width: 769px) {
    a .arrow {
        padding: 0 0.3em;
    }
    a.bg_red {
        padding: 0 2em;
    }
    /* pc end */
}


/*====================================================

	linkbox

====================================================*/

@media screen and (max-width: 768px) {
    p.linkbox,
    ul.linkbox li {
        margin-bottom: 0.5em;
    }
    p.linkbox .arrow,
    ul.linkbox .arrow {
        float: left;
    }
    p.linkbox .txt,
    ul.linkbox .txt {
        line-height: 1.3;
        float: left;
    }
    /* mobile */
}


/* ////////// pc ////////// */

@media print,
screen and (min-width: 769px) {
    p.linkbox,
    ul.linkbox li {
        margin-bottom: 0.5em;
    }
    /* pc end */
}


/*====================================================

	commomn classes

====================================================*/

.d_none {
    display: none;
}

.d_block {
    display: block;
}

ul.disc li {
    list-style: disc;
    list-style-position: outside;
}

ul.number li {
    list-style: decimal;
    list-style-position: outside;
}

.under_line {
    text-decoration: underline;
}

.dot_line {
    padding-bottom: 1em;
    border-bottom: #999 1px dotted;
}

.shadow {
    box-shadow: 0 3px 5px 0 #999;
}


/* ////////// mobile ////////// */

@media screen and (max-width: 768px) {
    br.brPC {
        display: none;
    }
    img.imgPC {
        display: none;
    }
    .d_noneMOB {
        display: none;
    }
    /* mobile end */
}


/* ////////// pc ////////// */

@media print,
screen and (min-width: 769px) {
    br.brMOB {
        display: none;
    }
    .imgMOB {
        display: none;
    }
    .d_nonePC {
        display: none;
    }
    /* pc end */
}


/*====================================================

	font 

====================================================*/

.f_10 {
    font-size: 10px;
    font-size: 1.0rem;
}

.f_11 {
    font-size: 11px;
    font-size: 1.1rem;
}

.f_12 {
    font-size: 12px;
    font-size: 1.2rem;
}

.f_13 {
    font-size: 13px;
    font-size: 1.3rem;
}

.f_14 {
    font-size: 14px;
    font-size: 1.4rem;
}

.f_15 {
    font-size: 15px;
    font-size: 1.5rem;
}

.f_16 {
    font-size: 16px;
    font-size: 1.6rem;
}

.f_18 {
    font-size: 18px;
    font-size: 1.8rem;
}

.f_20 {
    font-size: 20px;
    font-size: 2.0rem;
}

.fw_normal {
    font-weight: normal;
}

.t_left {
    text-align: left;
}

.t_right {
    text-align: right;
}

.t_center {
    text-align: center;
}

.red {
    color: #f00;
}

.gray {
    color: #999;
}

.pink {
    color: #ff6699;
}

.key_red {
    color: #ae0024;
}

.key_red_hov_01 {
    color: #ca002a;
}

.key_red_hov_02 {
    color: #e30031;
}


/*====================================================

	margin

====================================================*/


/* margin bottom */

.mb_0 {
    margin-bottom: 0;
}

.mb_05em {
    margin-bottom: 0.5em;
}

.mb_1em {
    margin-bottom: 1em;
}

.mb_15em {
    margin-bottom: 1.5em;
}

.mb_2em {
    margin-bottom: 2em;
}

.mb_3em {
    margin-bottom: 3em;
}

.mb_4em {
    margin-bottom: 4em;
}

.mb_5em {
    margin-bottom: 5em;
}


/* margin right */

.mr_0 {
    margin-right: 0;
}

.mr_5px {
    margin-right: 5px;
}

.mr_10px {
    margin-right: 10px;
}


/* margin left */

.ml_1em {
    margin-left: 1em;
}


/* margin top */

.mt_05em {
    margin-top: 0.5em;
}

.mt_1em {
    margin-top: 1em;
}

.center {
    margin-left: auto;
    margin-right: auto;
}


/*====================================================

	padding

====================================================*/

.pad_0205em {
    padding: 0.2em 0.5em;
}

.pad_05em {
    padding: 0.5em;
}


/*====================================================

	vertical-align

====================================================*/

.v_bottom {
    vertical-align: bottom;
}

.v_middle {
    vertical-align: middle;
}

.v_baseline {
    vertical-align: baseline;
}

.v_t_bottom {
    vertical-align: text-bottom;
}


/*====================================================

	gradient

====================================================*/

.gd_red {
    background: #b00025;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#a40023', endColorstr='#c6002a');
    /*INNER ELEMENTS MUST NOT BREAK THIS ELEMENTS BOUNDARIES*/
    /*Element must have a height (not auto)*/
    /*All filters must be placed together*/
    -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr = '#a40023', endColorstr = '#c6002a')";
    /*Element must have a height (not auto)*/
    /*All filters must be placed together*/
    background-image: -moz-linear-gradient(top, #a40023, #c6002a);
    background-image: -ms-linear-gradient(top, #a40023, #c6002a);
    background-image: -o-linear-gradient(top, #a40023, #c6002a);
    background-image: -webkit-gradient(linear, center top, center bottom, from(#a40023), to(#c6002a));
    background-image: -webkit-linear-gradient(top, #a40023, #c6002a);
    background-image: linear-gradient(top, #a40023, #c6002a);
    /*--IE9 DOES NOT SUPPORT CSS3 GRADIENT BACKGROUNDS--*/
}


/*====================================================

	a.gradient

====================================================*/

a.gradient {
    color: #fff;
    background: #af0024;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#a30022', endColorstr='#d60f38');
    /*INNER ELEMENTS MUST NOT BREAK THIS ELEMENTS BOUNDARIES*/
    /*Element must have a height (not auto)*/
    /*All filters must be placed together*/
    -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr = '#a30022', endColorstr = '#d60f38')";
    /*Element must have a height (not auto)*/
    /*All filters must be placed together*/
    background-image: -moz-linear-gradient(top, #a30022, #d60f38);
    background-image: -ms-linear-gradient(top, #a30022, #d60f38);
    background-image: -o-linear-gradient(top, #a30022, #d60f38);
    background-image: -webkit-gradient(linear, center top, center bottom, from(#a30022), to(#d60f38));
    background-image: -webkit-linear-gradient(top, #a30022, #d60f38);
    background-image: linear-gradient(top, #a30022, #d60f38);
    /*--IE9 DOES NOT SUPPORT CSS3 GRADIENT BACKGROUNDS--*/
    box-shadow: 0 3px 3px 0 #bbb;
}

a:hover.gradient {
    text-decoration: none;
    background: #d1012c;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#c40029', endColorstr='#fd1241');
    /*INNER ELEMENTS MUST NOT BREAK THIS ELEMENTS BOUNDARIES*/
    /*Element must have a height (not auto)*/
    /*All filters must be placed together*/
    -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr = '#c40029', endColorstr = '#fd1241')";
    /*Element must have a height (not auto)*/
    /*All filters must be placed together*/
    background-image: -moz-linear-gradient(top, #c40029, #fd1241);
    background-image: -ms-linear-gradient(top, #c40029, #fd1241);
    background-image: -o-linear-gradient(top, #c40029, #fd1241);
    background-image: -webkit-gradient(linear, center top, center bottom, from(#c40029), to(#fd1241));
    background-image: -webkit-linear-gradient(top, #c40029, #fd1241);
    background-image: linear-gradient(top, #c40029, #fd1241);
    /*--IE9 DOES NOT SUPPORT CSS3 GRADIENT BACKGROUNDS--*/
}


/*====================================================

	radius

====================================================*/

.rd_02 {
    webkit-border-radius: 0.2em;
    /* Safari,Google Chrome用 */
    -moz-border-radius: 0.2em;
    /* Firefox用 */
    -ms-border-radius: 0.2em;
    /* Internet Explorer用 */
    border-radius: 0.2em;
    /* CSS3草案 */
}

.rd_05 {
    webkit-border-radius: 0.5em;
    /* Safari,Google Chrome用 */
    -moz-border-radius: 0.5em;
    /* Firefox用 */
    -ms-border-radius: 0.5em;
    /* Internet Explorer用 */
    border-radius: 0.5em;
    /* CSS3草案 */
}

.rd_1 {
    webkit-border-radius: 1em;
    /* Safari,Google Chrome用 */
    -moz-border-radius: 1em;
    /* Firefox用 */
    -ms-border-radius: 1em;
    /* Internet Explorer用 */
    border-radius: 1em;
    /* CSS3草案 */
}

.rd_15 {
    webkit-border-radius: 1.5em;
    /* Safari,Google Chrome用 */
    -moz-border-radius: 1.5em;
    /* Firefox用 */
    -ms-border-radius: 1.5em;
    /* Internet Explorer用 */
    border-radius: 1.5em;
    /* CSS3草案 */
}

.rd_2 {
    webkit-border-radius: 2em;
    /* Safari,Google Chrome用 */
    -moz-border-radius: 2em;
    /* Firefox用 */
    -ms-border-radius: 2em;
    /* Internet Explorer用 */
    border-radius: 2em;
    /* CSS3草案 */
}


/*====================================================

	wrapper

====================================================*/

#wrapper {
    width: 100%;
    /*overflow: hidden;*/
}


/*====================================================

	header 

=====================================================*/

header {
    width: 100%;
    /*border-top: #ae0024 8px solid;*/
}

header #shop_logo #h1_box h1 {
    text-indent: 110%;
    white-space: nowrap;
    overflow: hidden;
    font-size: 1.0rem;
    line-height: 1;
}


/* //// SNS //// */

#social {
    list-style: none;
    display: block;
}

#social li {
    /*display: block;*/
    float: left;
    width: 2em;
    height: 2em;
    margin-left: 0.5em;
    /* border:1px solid #F00; */
}

#twitter_logo,
#twitter_logo a {
    display: block;
    width: 80%;
    height: auto;
    /* enable-background:new 0 0 2em 2em; */
    background-color: transparent;
    fill: #55acee;
    padding: 10%;
}

#facebook_logo,
#facebook_logo a {
    display: block;
    width: 80%;
    height: auto;
    background-color: transparent;
    fill: #3b5998;
    padding: 10%;
}

#social li a {
    cursor: pointer;
}

#social li a:hover {
    filter: alpha(opacity=60);
    -moz-opacity: 0.6;
    opacity: 0.6;
}
/* ////     //// */


/* ////////// mobile ////////// */

@media screen and (max-width: 768px) {
    header {
        margin-bottom: 1em;
        /*box-shadow: 0 3px 5px 0 #ccc;*/
        background: #fff;
    }
    header .inside {
        width: 96%;
        margin: 0.5em auto 0 auto;
    }
    header .inside #shop_logo {
        width: 85%;
        float: left;
    }
    header .inside #hamburger {
        width: 9%;
        float: right;
				margin-top: 1.2em;
    }
    header nav {
        width: 100%;
        font-size: 1.3rem;
        display: none;
    }
    header nav li {
        width: 100%;
        background: rgba(85,85,85,1.0);;
        font-weight: bold;
        letter-spacing: 0.2em;
        border-bottom: #999 1px solid;
    }
    header nav li .plus {
        margin-right: 0.5em;
        padding: 0.1em;
        font-size: 1.0rem;
        font-weight: normal;
        color: #fff;
        letter-spacing: 0.1em;
        background: #c4bcac;
    }
    header nav li a {
        padding: 1.2em 2em 1em 2em;
        /*font-size:1.5rem;*/
        color: #fff;
        display: block;
    }
    header nav li a:hover {
        color: #555;
        text-decoration: none;
    }
    header .sub {
        display: none;
    }
    header .sub li {
        /*background:#ccc;*/
        background: #ded4c1;
        padding-left: 1em;
        border-bottom: #d1c8b6 1px solid;
    }
    header .sub li:last-child {
        border: none;
    }
    header #hour_txt {
        display: inline-block;
        width: auto;
        margin-bottom: 0.2em;
        font-size: 1.2em;
    }
    header #social {
        display: inline-block;
        /*width: 30%;*/
        width: 26%;
        text-align: right;
        height: 2.2rem;
        margin-bottom: 0;
        font-size: 1.2em;
        position: absolute;
        top: 8px;
        right: 1%;
    }
    header #social li {
        float: left;
        width: 28%;
        height: auto;
        margin: 0;
        margin-right: 4%;
    }
    header #social li img {
        width: 100%;
        max-width: 2em;
        margin-top: 5px;
    }
    /* mobiel end */
}

@media screen and (width: 768px) {
		header .inside #shop_logo {
				width: 40%;
		}
}


/* ////////// pc ////////// */

@media print,
screen and (min-width: 769px) {
    header {
        height: 90px;
        margin-bottom: 0;
				border-bottom: solid 1px rgba(85,85,85,1.0);
        /*border: #f00 1px solid;*/
    }
    header .inside {
        width: 100%;
				margin-top: 15px;
        /*height: 81px;*/
        grid-column: 1;
        /* border: #f00 1px solid;*/
    }
		header .inside img {
				width: 100%;
		}
    header .inside #hamburger {
        display: none;
    }
    header .outside {
        max-width: 1000px;
				width: 100%;
        margin-left: auto;
        margin-right: auto;
        position: relative;
				display: grid;
				grid-template-columns: 35% 1fr;
        /*border:#f00 1px solid;*/
    }
    header .outside #shop_logo {
        margin-bottom: 3px;
    }
    header #hour_txt {
        text-align: right;
        font-size: 14px;
        font-size: 1.4rem;
        position: absolute;
        top: 10px;
        right: 8em;
    }
    header #social {
        text-align: right;
        font-size: 14px;
        font-size: 1.4rem;
        position: absolute;
        top: 8px;
        right: 0;
    }
    header nav {
        grid-column: 2;
        margin-top: 43px;
        /* border: #f00 1px solid;*/
    }
		header nav ul {
				display: flex;
				flex-wrap: wrap;
				justify-content: flex-end;
		}
    header nav li {
        margin-right: 9px;
        padding-right: 9px;
        font-size: 14px;
        font-size: 1.4rem;
        font-weight: bold;
        line-height: 1.4;
        border-right: #999 1px dotted;
        position: relative;
    }
    header nav li:first-child {
        border-left: #999 1px dotted;
        padding-left: 9px;
    }
    header nav li:last-child {
        margin-right: 0;
    }
    header nav li a {
        padding: 0 3px;
        display: block;
				color: #555;
    }
    header nav li a:hover {
        color: #ae0024;
        text-decoration: none;
    }
    header nav li a.no_subnav:hover {
        border-bottom: #ae0024 3px solid;
    }
    header nav ul.sub {
        background: #fff;
        border-top: #ae0024 3px solid;
        box-shadow: 5px 3px 15px 0 #333;
        position: absolute;
        top: 18px;
        left: 0;
        z-index: 1500;
        display: none;
    }
    header nav ul.sub li {
        padding: 0;
        border-left: none;
        border-right: none;
        border-bottom: #999 1px dotted;
        float: none;
    }
    header nav ul.sub li:last-child {
        border: none;
    }
    header nav ul.sub li a {
        padding: 0.5em 10px;
        /*border: #f00 1px solid;*/
        display: block;
    }
    header nav ul.sub li a:hover {
        color: #ae0024;
        border: none;
    }
    header nav ul#shop {
        width: 130px;
        left: 10px;
    }
    header nav ul#shop li {
        width: 130px;
    }
    header nav ul#score,
    header nav ul#inst {
        width: 230px;
    }
    header nav ul#score li,
    header nav ul#inst li {
        width: 230px;
    }
    header nav ul#goods,
    header nav ul#goods li {
        width: 230px;
    }
    header nav ul#repair,
    header nav ul#repair li {
        width: 225px;
    }
    header nav ul#members {
        width: 190px;
    }
    header nav ul#members li {
        width: 190px;
    }
    header nav ul.sub .subtxt {
        font-size: 13px;
        font-size: 1.3rem;
    }
    /* pc end */
}

@media screen and (min-width: 769px) and (max-width: 959px) {
		header nav ul {
				margin-right: 10px;
		}
		header nav li {
				font-size: 1.2rem;
				padding: 0 5px;
				margin-right: 0;
		}
}


/*----------------------------------------------------
    .line-friend
----------------------------------------------------*/
.line-friend img {
    width: 100%;
    margin-bottom: 1.5em;
}
/* ////////// mobile ////////// */
@media screen and (max-width: 768px) {
    .line-friend figure {
        display: none;
    }
}

/* ////////// PC ////////// */
@media print,
screen and (min-width: 769px) {
    .line-friend a {
        pointer-events: none;
    }
    .line-friend figure {
        width: 60%;
        margin: auto;
    }
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:959px) {
}



/*====================================================

	#lv_01

=====================================================*/


/* ////////// pc ////////// */

@media print,
screen and (min-width: 769px) {
    /*#lv_01{ max-width:960px; margin-left:auto; margin-right:auto; padding-left:6.8%; padding-right:6.8%; }*/
    /* pc */
}


/*====================================================

	#contents

=====================================================*/

#contents {
    /*border: #f00 1px solid;*/
}


/* ////////// pc ////////// */

@media print,
screen and (min-width: 769px) {
    /*#contents{ margin-bottom:3em; border:#f00 1px solid; }  */
    /*#contents{ max-width:960px; margin-left:auto; margin-right:auto; padding-left:6.8%; padding-right:6.8%; }*/
    #contents {
        /*max-width:960px;*/
        width: 960px;
        margin-left: auto;
        margin-right: auto;
        padding-left: 2%;
        padding-right: 2%;
    }
    /* pc */
}

/* ////////// tablet ////////// */
@media screen and (min-width: 751px) and (max-width: 959px) {
		#contents {
				width: 96%;
		}
}



/*====================================================

	#new_info

=====================================================*/

#new_info {}

#new_info,
#bnr_area li {
    margin-bottom: 0.5em;
}

#urgent,
#new_info .txt_area {
    font-size: 13px;
    font-size: 1.3rem;
}

#urgent {
    border: #ffdada 1px solid;
    margin-bottom: 1em;
}

#urgent dt {
    color: #f00;
    font-weight: bold;
}

#urgent dd {
    margin-bottom: 0.5em;
    padding-bottom: 0.5em;
    border-bottom: #999 1px dotted;
		word-break: break-word;
}

#urgent dd:last-child {
    padding-bottom: 0;
    border: none;
}


/* theme: "my-theme" */

.mCS-my-theme.mCSB_scrollTools .mCSB_draggerRail {
    -webkit-border-radius: 1px;
    -moz-border-radius: 1px;
    border-radius: 1px;
}

.mCS-my-theme.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
    -webkit-border-radius: 1px;
    -moz-border-radius: 1px;
    border-radius: 1px;
}


/* ////////// mobile ////////// */

@media screen and (max-width: 768px) {
    #new_info {
        width: 95%;
        margin: 0 auto;
    }
    #new_info .txt_area {
        width: 97%;
        margin-left: 3%;
        /*margin-right:auto;*/
        margin-bottom: 1.5em;
        height: 150px;
        /* height: 60px;*/
        overflow: hidden;
    }
    #new_info .txt_area li {
        margin-bottom: 0.3em;
        padding-bottom: 0.3em;
        border-bottom: #ccc 1px dotted;
    }
    #new_info .txt_area .date {
        display: block;
        margin-right: 1em;
    }
    #new_info .txt_area .txt {
        /*display:block;*/
    }
    #new_info #bnr_area {
        margin-bottom: 1em;
    }
    #urgent {
        width: 88%;
        margin-left: auto;
        margin-right: auto;
        padding: 0.5em 1em 0 1em;
    }
    /* theme: "my-theme" */
    .mCS-my-theme.mCSB_scrollTools .mCSB_draggerRail {
        width: 10px;
    }
    .mCS-my-theme.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
        width: 10px;
    }
    /* mobile */
}


/* ////////// pc ////////// */

@media print,
screen and (min-width: 769px) {
    #urgent {
        padding: 10px 15px 5px 15px;
        /*border: #000 1px solid;*/
    }
    #urgent dl {
        margin: 5px 15px 0 15px;
    }
    #new_info {
        width: 720px;
    }
    #new_info .txt_area {
        width: auto;
        height: 120px;
        /*height: 80px;*/
        /*height: 40px;*/
        margin-top: 0;
        margin-bottom: 1em;
        padding-left: 5px;
        overflow: hidden;
        /* border: #f00 1px solid;*/
    }
    #new_info .txt_area li {
        margin-bottom: 3px;
        padding-bottom: 3px;
        border-bottom: #ccc 1px dotted;
    }
    #new_info .txt_area li:last-child {
        border: none;
    }
    #new_info .txt_area .date {
        width: 90px;
        float: left;
        margin-right: 15px;
        /*border: #f00 1px solid;*/
    }
    #new_info .txt_area .txt {
        width: 550px;
        float: left;
        /*border: #f00 1px solid;*/
    }
    #new_info .txt_area li {
        margin-bottom: 0.5em;
    }
    /* theme: "my-theme" */
    .mCS-my-theme.mCSB_scrollTools .mCSB_draggerRail {
        width: 8px;
    }
    .mCS-my-theme.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
        width: 8px;
    }
    /* pc */
}

/* ////////// tablet ////////// */
@media screen and (min-width: 751px) and (max-width: 959px) {
		#new_info {
				width: 100%;
		}
}



/* ブログニュースリスト */

#new_info h4.list_title {
    background: #ae0024;
    color: #FFF;
    padding: 0 0.5rem;
    border-radius: 0.2rem;
}

#new_info .list_main {
    max-height: 120px;
    height: auto;
    margin: 0;
    margin-bottom: 1em;
    padding-left: 5px;
    overflow: hidden;
    border-bottom: #999 1px solid;
}

#new_info .list_morelink {
    text-align: right;
}

#new_info .list_morelink a {
    color: #FFF;
    /* #ae0024 */
    /* border: #ae0024 1px solid; */
    border-radius: 2rem;
    padding: 0 0.6em;
}

#new_info .list_morelink a:hover {
    color: #FFF;
    /* #e30031; */
}

.mCS-my-theme.mCSB_scrollTools .mCSB_draggerRail {
    background-color: #000;
    background-color: rgba(0, 0, 0, 0.15);
}

.mCS-my-theme.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
    background-color: #ae0024;
    background-color: rgba(174, 0, 36, 1);
}

.mCS-my-theme.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
    background-color: rgba(238, 29, 72, 1);
}

.mCS-my-theme.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-my-theme.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
    background-color: rgba(238, 29, 72, 1);
}

.mCS-my-theme.mCSB_scrollTools .mCSB_buttonUp {
    background-position: -80px 0;
}

.mCS-my-theme.mCSB_scrollTools .mCSB_buttonDown {
    background-position: -80px -20px;
}

.mCS-my-theme.mCSB_scrollTools .mCSB_buttonLeft {
    background-position: -80px -40px;
}

.mCS-my-theme.mCSB_scrollTools .mCSB_buttonRight {
    background-position: -80px -56px;
}


/* ---------------------------------------- */


/*====================================================

	aside #bnr

=====================================================*/

aside#bnr ul#red_link li a {
    padding: 1.2em 1em 1em 1em;
    color: #fff;
    font-size: 1.6rem;
    letter-spacing: 0.1rem;
    display: block;
    -webkit-border-radius: 0.2em;
    /* Safari,Google Chrome用 */
    -moz-border-radius: 0.2em;
    /* Firefox用 */
    -ms-border-radius: 0.2em;
    /* Internet Explorer用 */
    border-radius: 0.2em;
    /* CSS3草案 */
}

aside#bnr ul#red_link li a:hover {
    text-decoration: none;
}


/* 埋め込み　デフォルト */

body aside #facebook,
body aside #facebook-inside,
body aside #twitter,
body aside #twitter-inside {
    height: 600px;
    overflow: hidden;
    margin: 0 0 10% 0;
}


/* 埋め込み長くする場合は bodyに lpttSNSlong classを加える */

body.lpttSNSlong aside #facebook,
body.lpttSNSlong aside #facebook-inside,
body.lpttSNSlong aside #twitter,
body.lpttSNSlong aside #twitter-inside {
    height: 600px;
    width: 100%;
}


/* 埋め込み短くする場合は bodyに lpttSNSshort classを加える */

body.lpttSNSshort aside #facebook,
body.lpttSNSshort aside #facebook-inside,
body.lpttSNSshort aside #twitter,
body.lpttSNSshort aside #twitter-inside {
    height: 300px;
    width: 100%;
}

body aside #twitter {
    border: 1px solid #e9eaed;
    background: #F6FEFF;
}


/* ////////// mobile ////////// */

@media screen and (max-width: 768px) {
    aside#bnr {
        width: 85%;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 1em;
        padding-top: 1em;
        border-top: #999 1px dotted;
        border-bottom: #999 1px dotted;
    }
    aside#bnr li {
        margin-bottom: 1.5em;
    }
    #facebook {
        /*margin-bottom:2em;*/
        /*display: none;*/
    }
    /* スマホでは基本的に表示しない */
    #facebook,
    #twitter {
        display: none;
    }
    #fb_mob_bnr {
        margin-bottom: 1em;
    }
    /*  .lpttTop == トップページ  */
    body.lpttTop aside #facebook,
    body.lpttTop aside #facebook-inside,
    body.lpttTop aside #twitter,
    body.lpttTop aside #twitter-inside {
        max-width: 500px;
        width: 100%;
        height: 300px;
        display: block;
        margin: 10% auto;
    }
    body.lpttTop aside #facebook-inside,
    body.lpttTop aside #twitter-inside {
        margin: 0;
    }
    body.lpttTop #facebook .fb-page {
        width: 100% !important;
    }
    /* mobiel end */
}


/* ////////// pc ////////// */

@media print,
screen and (min-width: 769px) {
    aside#bnr {
        width: 220px;
        /*width:23%;*/
        float: left;
    }
    aside#bnr li {
        margin-bottom: 1em;
    }
    #facebook {
        width: 100%;
        height: 600px;
        margin-bottom: 5em;
        /*height:250px;*/
        /*background:#e8eaed; */
        /*border-bottom: #f00 1px solid;*/
        /*border-bottom: #ccc 1px solid;*/
        overflow: hidden;
    }
    #facebook img {
        max-width: 100%;
    }
    /*
#facebook a{ font-size: 13px; font-size: 1.3rem; }   
    */
    #facebook-inside {
        overflow: hidden;
    }
    #facebook-inside iframe {
        /*position: absolute;
        top:-68px;
        left: 0;*/
        /* margin-top: -69px;  */
    }
    #fb_mob_bnr {
        display: none;
    }
    /* pc */
}


/*====================================================

	footer

=====================================================*/

#footMenu {
        padding: 1em 0;
        background: rgba(85,85,85,1.0);
        /* border: #f00 1px solid;*/
}
footer #footMenu .inside .corpTop {
	width: 30%;
	margin: 0 auto;
}
footer #footMenu .inside .corpTop img {
	width: 100%;
}
footer #footMenu .inside li p {
	line-height: 1.2em;
	padding-top: 1.4em;
}
footer #footMenu a {
	color: #fff;
}
footer #footMenu a:hover {
	color: #fff;
}
footer #footMenu h4 {
	font-size: 1.6rem;
	color: #fff;
	border-bottom: solid 1px #fff;
	text-align: center;
	margin-top: 1.0em;
}
footer #foot_utility {
	background: rgba(85,85,85,1.0);
}
#copyright {
        color: #fff;
        background: rgba(85,85,85,1.0);
        padding: 1em 0;
}

/* ////////// mobile ////////// */

@media screen and (max-width: 768px) {
    footer {
        width: 100%;
    }
    footer #footMenu {
        width: 100%;
    }
    /*footer #footMenu li {
        background: #eae2d3;
        border-bottom: #dfd4c0 1px solid;
    }*/
		footer #footMenu .inside {
				width: 90%;
				margin: 0 auto;
		}
		footer #footMenu .inside li p {
				padding: 1.6em 2em 1em;
				line-height: 1.4em;
		}
    footer #footMenu li a {
        color: #fff;
        font-size: 1.3rem;
        display: block;
    }
    footer #footMenu li a:hover {
        color: #fff;
        text-decoration: none;
    }
    footer #footMenu li dt {
        padding: 1.3em 2em 1em 2em;
        font-size: 1.3rem;
        color: #555;
        display: block;
    }
    footer #footMenu li dd {
        background: #ded4c1;
        display: none;
    }
    footer #footMenu ul.subfoot li {
        border-bottom: #d1c8b6 1px solid;
    }
    footer #footMenu li dd a {
        background: #ded4c1;
        padding-left: 5em;
    }
    footer #footMenu li dd a:hover {
        background: #bbb;
    }
    footer #foot_utility {
        padding: 2em 1em;
        background: rgba(85,85,85,1.0);;
        font-size: 12px;
        font-size: 1.2rem;
				border-top: dotted 1px #fff;
				border-bottom: dotted 1px #fff;
    }
    footer #foot_utility a {
        color: #fff;
        margin-right: 3em;
    }
    footer #foot_utility a:hover {
        color: #ddd;
        text-decoration: none;
    }
    footer #copyright {
        padding: 2em 1em 0 1em;
        color: #fff;
        text-align: right;
    }
    /* mobile end */
}


/* ////////// pc ////////// */

@media print,
screen and (min-width: 769px) {
    footer {
        font-size: 11px;
        font-size: 1.1rem;
        line-height: 1.8;
				background: rgba(85, 85, 85, 1.0);
    }
    #footMenu {
        padding: 2em 0;
        /* border: #f00 1px solid;*/
    }
    #footMenu .inside {
        max-width: 1000px;
        margin: 0 auto;
				padding-right: 20px;
				padding-left: 20px;
    }
		footer #footMenu .inside .corpTop {
				width: 20%;
		}
	#footMenu ul {
				display: flex;
				justify-content: space-between;
	}
    #footMenu li {
        width: calc(25%);
        padding-left: 20px
        /*margin-right: 15px;*/
        /*float: left;*/
        /*border: #f00 1px solid;*/
        /*border-left: #fff 3px solid;*/
    }
    #footMenu li:last-child {
        margin-right: 0;
    }
    #footMenu li.division {
        margin-bottom: 0.3em;
        border: none;
    }
		footer #footMenu h4 {
				text-align: left;
		}
    #footMenu li#footer_link_school {
        margin-bottom: 2em;
    }
    #footMenu dt {
        margin-bottom: 0.5em;
    }
    #foot_utility {
        background: rgba(85,85,85,1.0);
        padding: 1em 0 0 0;
				width: 96%;
				margin: 0 auto;
    }
    #foot_utility .inside {
        max-width: 1000px;
        margin-left: auto;
        margin-right: auto;
        padding: 1em 0;
        border-bottom: #ddd 1px dotted;
    }
    #foot_utility a {
        color: #eee;
        margin-right: 20px;
        cursor: pointer;
    }
		#copyright {
				width: 96%;
				margin: 0 auto;
		}
    #copyright .inside {
        max-width: 1000px;
        margin-left: auto;
        margin-right: auto;
    }
    /* pc end */
}


/*====================================================

	.tothetop

=====================================================*/

div.tothetop a {
    display: block;
    font-weight: bold;
    color: #fff;
    text-decoration: none;
    filter: alpha(opacity=85);
    moz-opacity: 0.85;
    opacity: 0.85;
}


/* ////////// mobile ////////// */

@media screen and (max-width: 768px) {
    div.tothetop {
        position: fixed;
        right: 1.8em;
        bottom: 2.5em;
        z-index: 1500;
    }
    div.tothetop a {
        padding: 1.8em 1em;
        font-size: 1.1rem;
    }
    div.tothetop a {
        -webkit-border-radius: 2.5em;
        /* Safari,Google Chrome用 */
        -moz-border-radius: 2.5em;
        /* Firefox用 */
        -ms-border-radius: 2.5em;
        /* Internet Explorer用 */
        border-radius: 2.5em;
        /* CSS3草案 */
    }
    /* mobile end */
}


/* ////////// pc ////////// */

@media print,
screen and (min-width: 769px) {
    div.tothetop {
        position: fixed;
        right: 5px;
        bottom: 10px;
        z-index: 1500;
    }
    div.tothetop {
        right: 30px;
    }
    div.tothetop a {
        font-size: 13px;
        font-size: 1.3rem;
        padding: 19px 9px;
        display: block;
    }
    div.tothetop a {
        display: block;
        font-weight: bold;
        color: #fff;
        text-decoration: none;
        -webkit-border-radius: 2.5em;
        /* Safari,Google Chrome用 */
        -moz-border-radius: 2.5em;
        /* Firefox用 */
        -ms-border-radius: 2.5em;
        /* Internet Explorer用 */
        border-radius: 2.5em;
        /* CSS3草案 */
        filter: alpha(opacity=85);
        moz-opacity: 0.85;
        opacity: 0.85;
    }
    /* pc end */
}


/*====================================================

	utility

====================================================*/

.red_b {
    border: #f00 1px solid;
}