@charset "utf-8";
/* --------------------------------------------------
common.css
-------------------------------------------------- */

/*	24 COLUMN : RESPONSIVE GRID SYSTEM
  DEVELOPER : DENIS LEBLANC
  URL : http://responsive.gs
  VERSION : 3.0
  LICENSE : GPL & MIT */

/* 	SET ALL ELEMENTS TO BOX-SIZING : BORDER-BOX */
* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    *behavior: url(/scripts/boxsizing.htc);
    /*	If you need support for IE7 and lower make
        sure the boxsizing.htc file is linked properly.
        More info here:  https://github.com/Schepp/box-sizing-polyfill */
}

/*	MAIN CONTAINER
  Set the width to whatever you want the width of your site to be. */
.container {
    width: 1200px;
    margin: 0 auto;
}

/*	SELF CLEARING FLOATS - CLEARFIX METHOD */
.container:after,
.row:after,
.col:after,
.clr:after,
.group:after {
    content: "";
    display: table;
    clear: both;
}

/* 	DEFAULT ROW STYLES
  Set bottom padding according to preference */
.row {
    padding-bottom: 0;
}

/* DEFAULT COLUMN STYLES */
.col {
    display: block;
    float: left;
    width: 100%;
}

@media only screen and (max-width: 1210px) {
    .container {
        width:100%;
        max-width: 96%;
    }
}

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

    .gutters .col {
        margin-left: 2%;
    }

    .gutters .col:first-child {
        margin-left: 0;
    }

    .gutters .col.flR {
        margin-left:0;
        margin-right:2%;
    }

    .gutters .col.flR:first-child {
        margin-right: 0;
    }
}

/*	COLUMN WIDTH ON DISPLAYS +768px
  You might need to play with media queries here to suite your design. */
@media only screen and ( min-width: 768px ) {
    .span_1 {
        width: 4.16666666667%;
    }

    .span_2 {
        width: 8.33333333333%;
    }

    .span_3 {
        width: 12.5%;
    }

    .span_4 {
        width: 16.6666666667%;
    }

    .span_5 {
        width: 20.8333333333%;
    }

    .span_6 {
        width: 25%;
    }

    .span_7 {
        width: 29.1666666667%;
    }

    .span_8 {
        width: 33.3333333333%;
    }

    .span_9 {
        width: 37.5%;
    }

    .span_10 {
        width: 41.6666666667%;
    }

    .span_11 {
        width: 45.8333333333%;
    }

    .span_12 {
        width: 50%;
    }

    .span_13 {
        width: 54.1666666667%;
    }

    .span_14 {
        width: 58.3333333333%;
    }

    .span_15 {
        width: 62.5%;
    }

    .span_16 {
        width: 66.6666666667%;
    }

    .span_17 {
        width: 70.8333333333%;
    }

    .span_18 {
        width: 75%;
    }

    .span_19 {
        width: 79.1666666667%;
    }

    .span_20 {
        width: 83.3333333333%;
    }

    .span_21 {
        width: 87.5%;
    }

    .span_22 {
        width: 91.6666666667%;
    }

    .span_23 {
        width: 95.8333333333%;
    }

    .span_24 {
        width: 100%;
    }

    .gutters .span_1 {
        width: 2.25%;
    }

    .gutters .span_2 {
        width: 6.5%;
    }

    .gutters .span_3 {
        width: 10.75%;
    }

    .gutters .span_4 {
        width: 15.0%;
    }

    .gutters .span_5 {
        width: 19.25%;
    }

    .gutters .span_6 {
        width: 23.5%;
    }

    .gutters .span_7 {
        width: 27.75%;
    }

    .gutters .span_8 {
        width: 32.0%;
    }

    .gutters .span_9 {
        width: 36.25%;
    }

    .gutters .span_10 {
        width: 40.5%;
    }

    .gutters .span_11 {
        width: 44.75%;
    }

    .gutters .span_12 {
        width: 49.0%;
    }

    .gutters .span_13 {
        width: 53.25%;
    }

    .gutters .span_14 {
        width: 57.5%;
    }

    .gutters .span_15 {
        width: 61.75%;
    }

    .gutters .span_16 {
        width: 66.0%;
    }

    .gutters .span_17 {
        width: 70.25%;
    }

    .gutters .span_18 {
        width: 74.5%;
    }

    .gutters .span_19 {
        width: 78.75%;
    }

    .gutters .span_20 {
        width: 83.0%;
    }

    .gutters .span_21 {
        width: 87.25%;
    }

    .gutters .span_22 {
        width: 91.5%;
    }

    .gutters .span_23 {
        width: 95.75%;
    }

    .gutters .span_24 {
        width: 100%;
    }
}


/* BASIC
-------------------------------------------------- */
html {
    font-size: 62.5%;
}

body {
    background: #fff;
    color: #111;
    font-size: 1.5rem;
    font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Verdana, "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-weight: 500;
    line-height: 1.8em;
}

a {
    text-decoration: none;
    transition: 0.5s;
    color: #333;
}

li {
    list-style-type: none;
}

img {
    max-width:100%;
    height:auto;
}

figure {
    margin:0;
    text-align:center;
    font-size:1.3rem;
    line-height:1.5em;
}

.caption {
    font-size:1.3rem;
    text-align:center;
}

.cf {
    zoom: 1;
}

.cf:after {
    content: "";
    display: block;
    clear: both;
}

.thumb {
    line-height:0;
}

/* LAYOUT
-------------------------------------------------- */
.txtC {
    text-align:center;
}

.txtR {
    text-align:right;
}

.mb10 {
    margin-bottom:10px;
}

.mb15 {
    margin-bottom:15px;
}

.mb20 {
    margin-bottom:20px;
}

.mb25 {
    margin-bottom:25px;
}

.mb30 {
    margin-bottom:30px;
}

.mb40 {
    margin-bottom:40px;
}

.flL {
    float:left;
}

.flR {
    float:right;
}

.w20 {
    width:20%;
}

/* TITLE
-------------------------------------------------- */
h1 {
    display:inline-block;
}

h3 {
    font-size: 2rem;
    /*font-family: "游明朝", YuMincho,"ヒラギノ明朝 Pr6 W6","Hiragino Mincho Pro", "メイリオ", "HG明朝E","ＭＳ Ｐ明朝","MS PMincho",Meiryo, serif;*/
    font-family:"游明朝", YuMincho,"ヒラギノ明朝 Pr6 W6","Hiragino Mincho Pro", "メイリオ", "HG明朝E","ＭＳ Ｐ明朝","MS PMincho",Meiryo, serif;
    font-weight:500;
    background: url(../img/co_ic_01.png) no-repeat left center;
    padding-left: 42px;
    line-height: 36px;
}

.mainSec h4,
.ctgLinkArea h4 {
    padding-left:10px;
    border-left:5px solid #f39b85;
    /*font-family:"游明朝", YuMincho,"ヒラギノ明朝 Pr6 W6","Hiragino Mincho Pro", "メイリオ", "HG明朝E","ＭＳ Ｐ明朝","MS PMincho",Meiryo, serif;*/
    font-family:"游明朝", YuMincho,"ヒラギノ明朝 Pr6 W6","Hiragino Mincho Pro", "メイリオ", "HG明朝E","ＭＳ Ｐ明朝","MS PMincho",Meiryo, serif;
    margin-bottom:15px;
    font-size:1.7rem;
}

@media only screen and (max-width: 1270px) {
    h1 {
        display:block;
        float:none;
        text-align:center;
        width:230px;
        margin:0 auto;
        position:relative;
        z-index:1000;
    }
}

@media only screen and (max-width: 1100px) {
    h1 {
        text-align:center;
        margin-bottom:10px;
    }
}

@media only screen and (max-width: 768px) {
    h3 {
        font-size: 1.7rem;
        padding-left: 35px;
        line-height: 30px;
        background-size:30px 30px;
    }

    .mainSec h4,
    .ctgLinkArea h4 {
        font-size:1.6rem;
    }
}

@media only screen and (max-width: 500px) {
    h1 {
        text-align:left;
        display:inline-block;
        position:relative;
        z-index:1000;
    }
}

@media only screen and (max-width: 500px) {
    h1 {
        width:210px;
        margin:0;
    }
}

/* H1
------------------------------ */
h1 img {
    width:270px;
}

@media only screen and (max-width: 1200px) {
    h1 img {
        width:230px;
    }
}

@media only screen and (max-width: 450px) {
    h1 img {
        width:210px;
        padding-top:2px;
    }
}

/* HEADER
-------------------------------------------------- */
header {
    border-top: 5px solid #f39b85;
    padding-top:10px;
}

header .container {
    width:1300px;
}

@media only screen and (max-width: 1300px) {
    header .container {
        width:100%;
    }
}

header .navWrapper {
    float:right;
}

@media only screen and (max-width: 1270px) {
    header .navWrapper {
        float:none;
    }
}

@media only screen and (max-width: 1100px) {
    header {
        padding-top:5px;
        height:65px;
    }
}

/* SUBNAV
------------------------------ */
.userNav {
    text-align:right;
    margin-bottom:10px;
}

.userNav li {
    display: inline-block;
    margin-right: 15px;
}

.userNav li i {
    color:#e9967a;
    margin-right: 5px;
}

@media only screen and (min-width: 1100px) {
    .userNav li a {
        transition:0.5s;
    }
    .userNav li a:hover {
        color:#e9967a;
    }
}

@media only screen and (max-width: 1270px) {
    .userNav {
        text-align:center;
    }
}

@media only screen and (max-width: 1100px) {
    header .navWrapper {
        display:none;
    }
}

/* GNAV
------------------------------ */
#gNav {
    text-align: right;
    line-height: 1.7rem;
}

#gNav li {
    display: inline-block;
}

#gNav li .navCategory {
    display: block;
    text-align: center;
    padding: 5px 13px;
    border-right: 1px solid #f0f0eb;
    cursor:pointer;
    transition:0.5s;
}

#gNav li .navCategory:after {
    content:'\f107';
    font-family: FontAwesome;
    color:#ccc;
    display:block;
}

#gNav li.open .navCategory:after {
    content:'\f106';
    font-family: FontAwesome;
    color:#ccc;
    display:block;
}

#gNav li:first-child .navCategory {
    border-left: 1px solid #f0f0eb;
}

#gNav li span i {
    color:#ccc;
}


#gNav .catBox {
    display:none;
    position:absolute;
    width:100%;
    text-align:center;
    left:0;
    background:#fff;
    transition:0.5s;
    border-top:1px solid #f0f0eb;
}

#gNav li.open .navCategory {
    color:#e9967a;
}

#gNav li.open .catBox {
    display:block;
    z-index:100;
    -webkit-box-shadow: 0px 2px 5px 0px rgba(51,51,51,0.2);
    -moz-box-shadow: 0px 2px 5px 0px rgba(51,51,51,0.2);
    box-shadow: 0px 2px 5px 0px rgba(51,51,51,0.2);
}

#gNav li.open .bannerList {
    display:table;
    z-index:100;
}

#gNav .catList {
    border-bottom:1px solid #f0f0eb;
    padding:15px;
}

#gNav .catList li {
    margin:0 10px;
}

#gNav .catList li i {
    font-size:1.5rem;
    margin-right:7px;
}

#gNav .catList li a {
    border:none;
    padding:10px;
    display:inline-block;
}

#gNav .catList li a:hover {
    color:#e9967a;
}

#gNav .bannerList {
    text-align:center;
    display:table;
}

#gNav .bannerList li {
    display:table-cell;
    margin:0 20px;
    vertical-align:middle;
    border:15px solid #fff;
    background:#000;
}

#gNav .bannerList li i {
    color:#fff;
    margin-left:5px;
}

#gNav .bannerList li a {
     line-height: 1.2em;
     display: block;
    font-family: "游明朝", YuMincho,"ヒラギノ明朝 Pr6 W6","Hiragino Mincho Pro", "メイリオ", "HG明朝E","ＭＳ Ｐ明朝","MS PMincho",Meiryo, serif;
    font-weight:500;
    color:#fff;
    padding:10px 5px;
    transition:0.5s;
 }

#gNav .bannerList li a:hover {
    color:#ccc;
}

#gNav .bannerList li a:hover i {
    color:#ccc;
}

#gNav .bannerList li.event {
    background:url(../img/hd_bg_01.jpg) no-repeat center center;
    background-size:cover;
}

#gNav .bannerList li.movie {
    background:url(../img/hd_bg_02.jpg) no-repeat center center;
    background-size:cover;
}


#gNav .bannerList li.pdf {
    background:url(../img/hd_bg_03.jpg) no-repeat center center;
    background-size:cover;
}

.closeBtn {
    padding:5px;
    background:#bbb;
    color:#fff;
    cursor:pointer;
    margin-top:10px;
    transition:0.5s;
    font-size:1.3rem;
}

#gNav .closeBtn:hover {
    background:#ddd;
}

#gNav .closeBtn i {
    color:#fff;
    font-size:2.3rem;
}

@media only screen and (min-width: 1100px) {
    #gNav li .navCategory:hover {
        color:#e9967a;
    }
}

@media only screen and (max-width: 1270px) {
    #gNav {
        text-align:center;
    }
}

@media only screen and (max-width: 950px) {
    #gNav li .navCategory {
        padding:5px 10px;
    }
}



/* SLICKNAV
-------------------------------------------------- */
.slicknav_menu {
    display:none;
}

@media only screen and (max-width: 1100px) {
    .slicknav_menu {
        background: none !important;
        position: absolute;
        top: 5px;
        right: 0px;
        padding: 0 !important;
    }

    .slicknav_nav {
        border-top:1px solid #f39b85;
        -webkit-box-shadow: 0px 2px 5px 0px rgba(51,51,51,0.2);
        -moz-box-shadow: 0px 2px 5px 0px rgba(51,51,51,0.2);
        box-shadow: 0px 2px 5px 0px rgba(51,51,51,0.2);
    }

    .slicknav_btn {
        background: #f39b85 !important;
        width: 60px;
        height: 60px;
        margin: 0 !important;
        box-sizing: border-box;
        text-align: center;
        padding: 10px !important;
        border-radius:0;
    }

    .slicknav_menu .slicknav_menutxt {
        float: none !important;
        font-size: 13px;
        text-shadow: none !important;
        font-weight:normal;
    }

    .slicknav_menu .slicknav_icon {
        float: none !important;
        display: block;
        margin: 7px auto 0 !important;
        width: 80% !important;
    }

    .slicknav_menu .slicknav_icon-bar {
        box-shadow: none !important;
        height: 3px !important;
        width:100%;
    }

    .slicknav_btn .slicknav_icon-bar + .slicknav_icon-bar {
        margin-top: 5px !important;
    }

    .slicknav_menu {
        display: block;
        width: 100%;
        z-index: 1000 !important;
    }
    .slicknav_menu .bannerList {
        display:none;
    }

    .slicknav_menu .externalLink {
        display:none;
    }

    .slicknav_menu .navCategory {
        display:block;
        padding:3px 10px;
        background:#f39b85;
        color:#fff;
    }

    .slicknav_nav ul {
        margin: 0 !important;
        background: #fff;
    }

    .userNav {
        background:#f0f0eb;
    }

    .slicknav_menu .userNav > li {
        width:50%;
        float:left;
        border-bottom:1px dotted #f0f0eb;
        margin:0;
    }

    .slicknav_menu .userNav > li:nth-child(odd) {
        border-right:1px dotted #f0f0eb;
    }


    .slicknav_menu .userNav > li a {
        text-align:center;
    }


    .slicknav_nav a {
        padding: 3px 10px !important;
        color:#333;
    }

    .slicknav_nav .catList a i {
        margin-right:7px;
        color:#ccc;
    }

    .slicknav_nav a:hover {
        background:#fff;
        color:#333;
    }

    .slicknav_nav .catList {
        display:flex;
        flex-wrap: wrap;
    }

    .slicknav_nav .catList li {
        width:50%;
        /*float:left;*/
        border-bottom:1px dotted #f0f0eb;
    }

    .slicknav_nav .catList li a {
        margin:0;
        line-height:1.7em
    }

    .slicknav_nav .catList li:nth-child(odd) {
        border-right:1px dotted #f0f0eb;
    }

    .slicknav_nav .catList li span.navCategory:after {
        content:'\f107';
        font-family: FontAwesome;
        color:#ccc;
    }

    .slicknav_menu .closeBtn {
        display:none;
        border-bottom:1px solid #ccc;
    }

    .slicknav_menu nav > ul > li:last-child .closeBtn {
        display:block;
        text-align:center;
        font-size:2rem;
        margin-top:0;
    }

    .slicknav_open span.slicknav_icon-bar:nth-of-type(1) {
        -webkit-transform: translateY(8px) rotate(-45deg);
        transform: translateY(8px) rotate(-45deg);
    }
    .slicknav_open span.slicknav_icon-bar:nth-of-type(2) {
        opacity: 0;
    }
    .slicknav_open span.slicknav_icon-bar:nth-of-type(3) {
        -webkit-transform: translateY(-8px) rotate(45deg);
        transform: translateY(-8px) rotate(45deg);
    }

}


/* BREADCRUMB
-------------------------------------------------- */
.breadcrumb {
    padding:15px 0;
}

.breadcrumb li {
    display:inline-block;
    font-size:1.4rem;
    margin-right:10px;
}

.breadcrumb li:after {
    content: '\f105';
    font-family: FontAwesome;
    margin-left:10px;
}

.breadcrumb li:last-child::after {
    content:none;
}

.breadcrumb li a {
    color:#e9967a;
    text-decoration:underline;
}

@media only screen and (max-width: 1100px) {
    .breadcrumb {
        padding:10px 0;
    }
}

@media only screen and (max-width: 500px) {
    .breadcrumb {
        padding:8px 0;
    }
    .breadcrumb li {
        font-size:1.3rem;
        margin-right:7px;
    }
    .breadcrumb li:after {
        margin-left:7px;
    }
}

/* BUTTON
-------------------------------------------------- */

/* EMPHASIS BUTTON
------------------------------ */
.emBtn a {
    background: #f39b85;
    color: #fff;
    display: block;
    text-align: center;
    font-family: "游明朝", YuMincho,"ヒラギノ明朝 Pr6 W6","Hiragino Mincho Pro", "メイリオ", "HG明朝E","ＭＳ Ｐ明朝","MS PMincho",Meiryo, serif;
    font-weight:500;
    font-size: 1.7rem;
    padding: 15px 10px;
    line-height: 2.2rem;
    border:1px solid #fff;
}

.emBtn a:hover {
    background:#fff;
    color:#e9967a;
    border:1px solid #f39b85;
}

@media only screen and (max-width: 900px) {
    .emBtn a {
        padding:10px;
    }
}

/* BORDER BUTTON
------------------------------ */
.bdBtn {
    text-align:center;
}

.bdBtn a {
    display:inline-block;
    color:#e9967a;
    border:1px solid #f39b85;
    padding:7px 25px;
    line-height:1.5em;
    transition:0.5s;
}

.bdBtn a:hover {
    background:#f39b85;
    color:#fff;
}

.bdBtn a i {
    font-size:1.7rem;
    margin-left:5px;
}

@media only screen and (max-width: 768px) {
    .bdBtn a {
        font-size:1.4rem;
    }
}


/* LINK
-------------------------------------------------- */
.externalLink i {
    margin-left:5px;
}

.externalLink .largeF {
    font-size:1.6rem;
    font-weight:bold;
}

.borderP {
    border:1px solid #e9967a;
    margin:20px 0;
}

.borderP a {
    padding:10px;
    display:block;
    background:#fff;
    transition:0.5s;
}

.borderP a:hover {
    background:#e9967a;
    color:#fff;
}

/* BACKGROUND
-------------------------------------------------- */
.bgBrArea {
    background: #f0f0eb;
    padding: 50px 0 60px;
}

.bgBkArea {
    background:#333;
    color:#fff;
}

.bgBgArea {
    background:#f4f4f0;
}

@media only screen and (max-width: 768px) {
    .bgBrArea {
        padding: 30px 0 40px;
    }
}

/* SECTION
-------------------------------------------------- */
.emSec {
    background: #fff;
    border-top: 3px solid #f39b85;
    padding: 15px;
}


/* FOOTER LINK
-------------------------------------------------- */
.ftPageLink li {
    background:#fff;
    padding:10px;
    display:table;
    position:relative;
    margin-bottom:10px;
}

.ftPageLink li a {
    display:block;
    font-family: "游明朝", YuMincho,"ヒラギノ明朝 Pr6 W6","Hiragino Mincho Pro", "メイリオ", "HG明朝E","ＭＳ Ｐ明朝","MS PMincho",Meiryo, serif;
    font-weight:500;
}

.ftPageLink li a i {
    position:absolute;
    right:10px;
    top:50%;
    margin-top:-7px;
    padding-left:10px;
    color:#e9967a;
}

.ftPageLink li .thumb {
    width:70px;
    height:70px;
    display:table-cell;
    vertical-align:middle;

}

.ftPageLink li .thumb img {
    width:100%;
    height:auto;
}

.ftPageLink li .txt {
    display:table-cell;
    vertical-align:middle;
    padding:0 25px 0 10px;
    transition:0.5s;
}

.ftPageLink.ftTxtLink {
    margin-left:-10px;
}

.ftPageLink.ftTxtLink li {
    padding-left:0;
    display:inline-block;
    margin-left:10px;
}

.ftPageLink li a:hover .txt {
    color:#e9967a;
}

@media only screen and (max-width: 1200px) {
    .ftPageLink li .thumb {
        width:60px;
        height:60px;
    }
}

@media only screen and (max-width: 950px) {
    .ftPageLink li .thumb {
        width:40px;
        height:40px;
    }
}

@media only screen and (max-width: 768px) {
    .ftPageLink li {
        width:49.5%;
        margin-bottom:5px;
    }

    .ftPageLink li:nth-child(odd) {
        margin-right:1%;
    }

    .ftPageLink li .txt {
        font-size:1.3rem;
    }

    .ftPageLink.ftTxtLink li {
        width:auto;
    }
}

@media only screen and (max-width: 374px) {
    .ftPageLink li {
        width:100%;
        margin-right:0 !important;
    }

    .ftPageLink.ftTxtLink {
        margin:0;
    }

    .ftPageLink.ftTxtLink li {
        width:100%;
        margin:0;
    }
}

/* PAGE TOP
-------------------------------------------------- */
#pageTop {
    text-align:center;
    line-height:1.2em;
    cursor:pointer;
}

#pageTop a {
    padding:10px 10px 15px;
    display:block;
    line-height:1.1em;
}

#pageTop a:hover {
    color:#e9967a;
}

@media only screen and (max-width: 768px) {
    #pageTop a {
        padding:5px 10px 10px;
        font-size:1.4rem;
    }
}


/* FOOTER
-------------------------------------------------- */
footer .footerNav {
    padding:40px 0;
    position:relative;
}

footer .footerNav a {
    color:#fff;
    font-size:1.3rem;
    transition:0.5s;
    line-height:1.7em;
    display:block;
    padding:3px 0;
}

footer .footerNav a:hover {
    color:#aaa;
}

footer .footerNav .cat > li {
    margin-bottom:15px;
}

footer .footerNav .cat > li .navCategory {
    border-bottom:2px solid #fff;
    display:inline-block;
    font-size:1.4rem;
    margin-bottom:7px;
}

@media only screen and (max-width: 950px) {
    footer .footerNav .cat > li .navCategory a {
        font-size:1.3rem;
    }

    footer .footerNav .catList li a {
        font-size:1.2rem;
        display:block;
        padding:5px 0;
    }
}


@media only screen and (max-width: 767px) {
    footer .footerNav {
        padding:25px 0;
    }

    footer .footerNav .cat > li .navCategory {
        border-bottom:1px solid #fff;
        display:block;
        font-size:1.3rem;
    }


    footer .catList {
        display: flex;
        flex-wrap: wrap;
        justify-content:space-between;
    }

    footer .catList li {
        width:49%;
        border-bottom:1px dotted #666;
    }

    footer .catList li:nth-child(odd){
        margin-right:1%;
    }
    footer .catList li.externalLink {
        display:none;
    }


}


/* FOOTER SUBNAVI
------------------------------ */
footer .ftSubNav .container {
    padding:10px 0;
    position:relative;
}

@media only screen and (max-width: 550px) {
    footer .ftSubNav .container {
        padding-bottom:70px;
    }
}

footer .ftSubNav li {
    display:inline-block;
    margin-right:15px;
}

footer .ftSubNav a {
    font-size:1.4rem;
    transition:0.5s;
}

footer .ftSubNav a:hover {
    color:#e9967a;
}

footer .ftSubNav a i {
    margin-right:5px;
}

@media only screen and (max-width: 767px) {
    footer .ftSubNav a {
        font-size:1.3rem;
    }
    footer .ftSubNav li {
        margin-right:10px;
    }
}

/* COPYRIGHT
------------------------------ */
.copyright {
    position:absolute;
    right:0;
    top:10px;
}

.copyright small {
    font-size:1.2rem;
}


@media only screen and (max-width: 950px) {
    .copyright {
        position:relative;
        text-align:center;
        line-height:1.1em;
        padding: 10px 0 10px;
        border-top: 1px dotted #ccc;
    }
    .copyright small {
        font-size:1.1rem;
    }
    .copyright span {
        display:inline-block;
        line-height:1.2em;
    }
}


/* MAIN SECTION
-------------------------------------------------- */
.mainSec {
    padding-bottom:50px;
}

.mainSec section {
    margin-bottom:50px;
}

.mainSec h3 {
    margin-bottom:27px;
}

.mainSec p a,
.mainSec li a {
    color:#e9967a;
    text-decoration:underline;
}

.mainSec .emTxt {
    color:#e9967a;
}

.mainSec p.caption {
    font-size:1.3rem;
    line-height:1.3em;
}

.mainSec p a.externalLink i {
    margin:0 1px 0 2px;
}

.mainSec .iconList i {
    font-size:1.3rem;
    margin-right:5px;
    top:-2px;
    position:relative;
}

.mainSec .iconList a {
    color:#e9967a;
}

.mainSec strong {
    font-weight:bold;
}

@media only screen and (max-width: 768px) {
    .mainSec .iconList li {
        display:inline-block;
        margin-right:15px;
    }
}

@media only screen and (max-width: 600px) {
    .mainSec {
        padding-bottom:35px;
        line-height:1.8em;
    }
}

/* TITLE BOX
------------------------------ */
.mainSec .titleBox {
    border-bottom:1px solid #f0f0eb;
    display:table;
    width:100%;
    margin-bottom:45px;
}

.mainSec .titleBox h2,
.mainSec .titleBox .thumb {
    width:50%;
    display:table-cell;
    vertical-align: middle;
}

.mainSec .titleBox h2 {
    text-align:center;
    font-size:2.7rem;
    font-family:"游明朝", YuMincho,"ヒラギノ明朝 Pr6 W6","Hiragino Mincho Pro", "メイリオ", "HG明朝E","ＭＳ Ｐ明朝","MS PMincho",Meiryo, serif;
    font-weight:500;
}

.mainSec .titleBox h2 small {
    font-size:1.7rem;
}

@media only screen and (max-width: 1200px) {
    .mainSec .titleBox .container {
        width:100%;
        max-width:100%;
    }
}

@media only screen and (max-width: 600px) {
    .mainSec .titleBox {
        margin-bottom:35px;
    }
    .mainSec .titleBox .container{
        padding:0;
        max-width:100%;
    }
    .mainSec .titleBox h2,
    .mainSec .titleBox .thumb {
        width:100%;
        display:block;
    }

    .mainSec .titleBox h2 {
        margin:15px 0 20px;
        font-size:2.5rem;
        box-sizing:border-box;
        padding:0 10px;
        line-height:1.3em;
    }
}

@media only screen and (max-width: 375px) {
    .mainSec .titleBox h2 {
        font-size:2rem;
    }
}

@media only screen and (max-width: 350px) {
    .mainSec .titleBox h2 {
        font-size:1.8rem;
    }
}

/* CONTENT BOX
------------------------------ */
@media only screen and (max-width: 768px) {
    .contentBox .col {
        margin-bottom:25px;
    }
}

/* TEXT BOX
------------------------------ */
.mainSec p {
    font-size:1.45rem;
}

.mainSec .txtBox p + p {
    margin-top:12px;
}

@media only screen and (max-width: 768px) {
    .mainSec p {
        font-size:1.4rem;
    }
}


/* TABLE
------------------------------ */
.bgTable {
    width:100%;
}

.tableBox {
    overflow-x:scroll;
}

.tableBox .bgTable {
    min-width:550px;
}

.bgTable table , .bgTable td, .bgTable th {
    border: 1px solid #ddd;
    border-collapse: collapse;
}

.bgTable td, .bgTable th {
    padding: 5px 7px;
    font-size:1.4rem;
}

.bgTable td span, .bgTable th span {
    display:inline-block;
}

.bgTable th {
    background: #f4f4f0;
}

.bgTable a {
    color:#e9967a;
    text-decoration:underline;
}

.bgTable .subject {
    width:25%;
}

.bgTable .module,
.bgTable .total {
    width:10%;
}

#mapBox {
    position: relative;
    height: 280px;
    padding-top: 30px;
    /*height: 0;*/
    overflow: hidden;
    margin-bottom:15px;
}

#mapBox iframe,
#mapBox object,
#mapBox embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 280px;
}

@media only screen and (max-width: 768px) {
    .bgTable td, .bgTable th {
        font-size:1.4rem;
    }
}

@media only screen and (max-width: 500px) {
    #mapBox {
        margin-bottom:0;
        height:200px;
    }
}


@media only screen and (max-width: 768px) {
    .bgTable.tbBlock {
        border-bottom:1px solid #ddd;
    }
    .bgTable.tbBlock td, .bgTable.tbBlock th {
        display:block;
        width:100% !important;
        border-bottom:none;
    }
}


/* LIST
------------------------------ */
.numList {
    counter-reset: li;
    list-style: none;
}

.numList > li {
    position:relative;
    padding-left:20px;
    margin-bottom:3px;
}

.numList > li:before {
    content: counter(li) ".";
    counter-increment: li;
    position: absolute;
    left: 0;
}

.dotList > li {
    position:relative;
    padding-left:20px;
    margin-bottom:3px;
}

.dotList > li:before  {
    content:"・";
    position: absolute;
    left: 0;
}


/* CATEGORY LINK AREA
-------------------------------------------------- */
.ctgLinkArea {
    padding:30px 0;
}

/* NEWS AREA
-------------------------------------------------- */
.newsArea .emSec {
    padding: 5px 15px 40px;
    position:relative;
}

.newsArea h3 {
    border-bottom: 1px solid #f0f0eb;
    margin-bottom: 10px;
    padding-top:10px;
    padding-bottom:10px;
}

.newsArea .list-article li {
    border-bottom: 1px dotted #f0f0eb;
    display:flex;
    align-items: center;
}

.newsArea .list-article li a {
    padding: 10px 0;
    display: inline-block;
    line-height:1.5em;
    text-decoration:none;
    color:#333;
    width:calc(100% - 90px);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.newsArea .list-article li a:hover {
    color:#e9967a;
}

.newsArea .list-article li span {
    display: inline-block;
    color: #999;
    line-height:1em;
    width:90px;
}

.newsArea .list-article li br {
    display:none;
}

.newsArea .rss {
    position:absolute;
    bottom:10px;
    right:10px;
}

.newsArea .rss a {
    color:#e9967a;
    font-size:1.3rem;
}

.newsArea .rss a i {
    margin-right:5px;
}

@media only screen and (max-width: 768px) {
    .newsArea .list-article li {
        font-size:1.4rem;
    }

    .newsArea .list-article li a {
        padding:5px 0;
    }
    .newsArea .emSec {
        padding:5px 15px 35px;
    }
    .newsArea .emSec + .emSec {
        margin-top:20px;
    }
    .newsArea .rss {
        bottom:0;
    }
}

@media only screen and (max-width: 500px) {
    .newsArea h3 {
        margin-bottom: 5px;
        padding-top: 5px;
        padding-bottom: 5px;
    }
    .newsArea .list-article li a {
        line-height:1.3em;
    }
}


.newsBox {
    width:900px;
    max-width:100%;
    margin:0 auto;
    padding:0 20px;
}

.newsInfo .date {
    color:#999;
}

.newsContent {
    padding:30px 0 50px;
    border-bottom:1px solid #f0f0eb;
}

.newsContent > * {
    margin-bottom:15px;
}

.newsContent ul {
    padding-left: 20px;
    text-indent: -20px;
}

.newsContent li {
    margin-bottom:5px;
    list-style-type: disc;
    list-style-position: inside;
}

.newsNav {
    position:relative;
    padding-top:100px;
}

.newsNav a {
    position:absolute;
    top:30px;
    padding:7px 0;
}

.newsNav a:first-child {
    left:0;
}

.newsNav .topBtn {
    left:50% !important;
    display: inline-block;
    border: 1px solid #f39b85;
    color:#f39b85;
    width:150px;
    margin-left:-75px;
    text-align:center;
    padding:7px 25px;
}

@media only screen and (max-width: 500px) {
    .newsNav .topBtn {
        width:110px;
        margin-left:-55px;
        padding:7px 5px;
    }
}

@media only screen and (max-width: 500px) {
    .newsNav a {
        font-size:13px;
    }
    .newsNav .topBtn {
        width:90px;
        margin-left:-45px;
    }
}

.newsNav .topBtn + a {
    right:0;
}

.newsPagenation {
    position:relative;
    padding-top:30px;
    text-align:center;
}

.newsPagenation a {
    display:inline-block;
    margin:0 3px;
    padding:1px 7px;
    border: 1px solid #f39b85;
    color:#f39b85;
}

.newsPagenation .current {
    border: 1px solid #f39b85;
    color:#fff;
    display:inline-block;
    background:#f39b85;
    padding:1px 7px;
}

.btn_doc {
    position: fixed;
    background: #10ba98;
    color:#fff;
    text-align: center;
    line-height: 1.2em;
    z-index: 100;
    box-shadow: rgba(149, 157, 165, 0.4) 0px 8px 24px;
}

@media only screen and (min-width: 551px) {
    .btn_doc {
        width: 120px;
        height: 120px;
        border-radius: 60px;
        padding-top: 29px;
        font-size: 14px;
        right: 10px;
        bottom: 30px;
    }
    .btn_doc img {
        width: 30px;
        display: block;
        margin: 0 auto 10px;
    }
}

@media only screen and (max-width: 550px) {
    .btn_doc {
        width:100%;
        border-radius:0;
        padding:21px 10px 13px;
        font-size: 13px;
        bottom:0;
        left:0;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .btn_doc:before {
        position: absolute;
        top: 50%;
        right: 25px;
        width: 6px;
        height: 6px;
        margin-top: -3px;
        content: '';
        transition: .3s;
        transform: rotate(45deg);
        border-top: 2px solid #fff;
        border-right: 2px solid #fff;
    }
    .btn_doc br {
        display:none;
    }
    .btn_doc img {
        width: 30px;
        margin: 0 10px 0 0;
        position:relative;
        top:-1px;
    }
}

.page-id-43 .titleBox .container {
    display:table;
    vertical-align:middle;
}

.page-id-43 .titleBox .container:after {
    display:none;
}

.page-id-43 h2 {
    text-align:center;
}

@media only screen and (min-width: 601px) {
    .page-id-43 h2 {
        padding:70px 0 !important;
    }
}

@media only screen and (max-width: 600px) {
    .page-id-43 h2 {
        padding:50px 0 !important;
    }
}