@import url(https://fonts.googleapis.com/css?family=Roboto:400,700,900);

/*============================
レイアウト・背景色・基本文字色
=============================   */
body {
    color: #000;
    font-family: "游ゴシック", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", sans-serif !important;
    letter-spacing: 0.1em;
    margin: 0 auto;
}

a {
    color: #000;
    text-decoration: underline;
}

a:hover {
    text-decoration: none;
    opacity: 0.7;
    color: #613682;
}


/*　全体を囲むボックス
-----------------------------------------*/
#container {
    border-top: 5px solid #613682;
}

/*　メインコンテンツを囲むボックス
-----------------------------------------*/
#content {
    width: 1200px;
    margin: 0 auto 135px;
    /*display:table;*/
}

/* メインエリア */
#main {
    width: 890px;
    float: right;
}

/* サイドエリア */
#side {
    width: 260px;
    display: table-cell;
    float: left;
}

/*============================
ヘッダー
=============================*/
header {
    margin: 0 auto;
    width: 1200px;
    display: table;
    table-layout: fixed;
    min-height: 105px;
    position: relative;
}

header .headNav li.profileNav a {
    background: url(../../images/218/ico-headNav_001.png) center 15px #613682 no-repeat;
}

header .headNav li.accessNav a {
    background: url(../../images/218/ico-headNav_002.png) center 13px #613682 no-repeat;
}

header .headNav li.contactNav a {
    background: url(../../images/218/ico-headNav_003.png) center 18px #613682 no-repeat;
}

/*　サイトタイトル
-----------------------------------------*/
header #siteTtl {
    display: table-cell;
    vertical-align: middle;
    font-size: 2.14em;
    width: 800px;
    padding: 50px 0;
}

header #siteTtl a {
    text-decoration: none;
    color: #613682;
    font-size: 30px;
    font-weight: bold;
}

.headerContent {
    width: 1200px;
    margin: 0 auto;
}

/*　ヘッダーリンク
-----------------------------------------*/
header .headNav {
    display: table-cell;
    vertical-align: top;
    letter-spacing: -0.40em;
    text-align: right;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;

}

header .headNav ul {}

header .headNav li {
    display: inline-block;
    letter-spacing: 0;
    font-size: 1.28em;
    line-height: 1;
    font-family: 'Roboto', sans-serif;
    margin-left: 2px;
}

header .headNav li a {
    padding: 40px 25px 10px;
    text-decoration: none;
    color: #fff;
    font-size: 18px;
    font-family: 'Roboto', sans-serif;

    text-align: center;
    display: block;
    padding: 52px 10px 15px;
    min-width: 120px;
    max-width: 200px;
    height: 100%;
    word-break: break-all;
}

/*============================
グローバルナビゲーション
=============================*/
#side:before {
    content: "MENU";
    display: block;
    width: 260px;
    height: 52px;
    background-color: #484848;
    color: #fff;
    margin: 4px 0 5px 0;
    font-size: 1.24em;
    font-weight: bold;
    padding: 16px 0 0 29px;
    font-family: 'Roboto Condensed';
}

nav {
    margin-bottom: 25px;
}

#container nav .inner {
    border: 2px solid #613682;
}

nav ul li.parent {
    text-align: left;
    font-size: 16px;
    background: #613682;
    line-height: 50px;
    border-bottom: 1px solid #fff;
    font-weight: bold;
    min-height: 50px;
}

nav ul li.parent:hover {
    cursor: pointer;
    background: #fff;
}

nav ul li.parent:hover a {
    color: #613682;
}

nav ul li.parent:hover .child li a {
    color: black;
}

nav ul li.parent:last-child {
    border-bottom: none;
}

nav ul li.parent.childIn {
    background: url(../../images/218/ico-globalmenu_001.png) left 215px top 13px no-repeat #613682;
}

nav ul li.parent.childIn:hover {
    background: url(../../images/218/ico-globalmenu_001.png) left 215px top 13px no-repeat #fff;
    opacity: 1;
}

nav ul li.parent.childIn.clicked {
    background: url(../../images/218/ico-globalmenu_002.png) left 215px top 13px no-repeat #613682;
}

nav ul li.parent>a {
    text-decoration: none;
    color: #fff;
    letter-spacing: 0.3px;
    padding: 0 0 0 25px;
    display: block;
    width: 256px;
    line-height: 1.5em;
    padding: 13px 10px 13px 25px;
}

nav ul li.parent.childIn a {
    width: 200px;
}

nav ul li.parent>a:hover {
    color: #613682;
    opacity: 1;
}

nav ul li.parent.childIn.clicked>a {
    color: #fff;
}

nav ul li.parent.childIn.clicked>a:hover {
    color: #fff;
}

/* 子メニュー */
nav .child {
    border: 2px solid #613682;
    width: 260px;
    margin-left: -2px;
    line-height: 20px;
}

nav .child {
    border-bottom: none;
}

nav .child li {
    background: #fff;
    padding: 20px 0 0 0;
}

nav .child li:last-child {
    padding-bottom: 20px;
}

nav .child li a {
    text-decoration: none;
    padding-left: 40px;
    background: url(../../images/218/ico-side_001.png) center left 23px no-repeat;
    display: inline-block;
}

nav .child li a:hover {
    color: #613682 !important;
    opacity: 1;
}

/* topのみ */
#top nav {
    width: 260px;
}

/*============================
メインスライド（ワイドスライドVer のみ）
=============================*/
.mainSlideIn {
    width: 1200px;
    /*height:500px;*/
    margin: 0 auto 120px;
}

#mainSlide li {
    height: 500px !important;
    position: relative;
    background: rgba(0, 0, 0, 0.2);
    overflow: hidden;
}

#mainSlide li img {
    position: absolute;
    /*top:50%;*/
    left: 0;
    /*transform:translateY(-50%);
    -webkit-transform:translateY(-50%);
    -moz-transform:translateY(-50%);*/
    width: 1200px;
    height: auto;
}

/* pager */
.bx-wrapper .bx-viewport {
    height: 500px !important;
}

.bx-wrapper .bx-pager.bx-default-pager .bx-pager-item {}

.bx-wrapper .bx-pager.bx-default-pager a {
    background: #cccccc;
    border-radius: 10px;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    display: block;
    margin-right: 15px;
    width: 10px;
    height: 10px;
}

.bx-wrapper .bx-pager.bx-default-pager a:hover,
.bx-wrapper .bx-pager.bx-default-pager a.active {
    background: #613682;
}

/* controlBtn */
.bx-wrapper .bx-controls-direction a {
    width: 50px;
    height: 50px;
    margin: 0;
    top: 225px;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    display: block;
}

.bx-wrapper .bx-prev {
    background: url(../../images/218/btn-slider_001.png) center center no-repeat #484848;
    left: -50px;
}

.bx-wrapper .bx-prev:hover {
    background: url(../../images/218/btn-slider_001.png) center center no-repeat #613682;
    opacity: 1;
}

.bx-wrapper .bx-next {
    background: url(../../images/218/btn-slider_002.png) center center no-repeat #484848;
    right: -50px;

}

.bx-wrapper .bx-next:hover {
    background: url(../../images/218/btn-slider_002.png) center center no-repeat #613682;
    opacity: 1;
}


/*============================
メインイメージ（旧メイン画像Ver のみ）
=============================*/
.mainImgIn {
    /*width:1200px;
    margin:0 auto;
    padding:50px 0 95px 0;*/
    margin-bottom: 95px;
}

.mainImgIn .inner {
    /*display:table;
    padding-bottom:45px;
    border-bottom:1px solid #dddddd;
    */
    width: 1200px;
    margin: 0 auto;

}

/* メイン画像 */
.mainImgIn .inner #mainImg {
    display: table-cell;
    vertical-align: middle;
    width: 365px;
    text-align: center;
}

.mainImgIn .inner #mainImg img {
    max-width: 100%;
    height: auto;
}

/* サイト説明文 */
.mainImgIn .inner h2#leadTxt {
    border: none;
    width: 800px;
    /**/
    display: table-cell;
    vertical-align: middle;
    padding: 0 0 0 40px;
    font-size: 18px;
    letter-spacing: -0.9px;
    line-height: 2;
}

.mainImgIn .inner {
    display: table;
    border-bottom: 1px solid #ddd;
    padding: 45px 0 50px;
}

/*============================
メインエリア
=============================*/
.articleBox {
    margin-bottom: 80px;
}

/*　新着情報
-----------------------------------------*/
#news {
    margin-bottom: 80px;
}

#news .contTtl {
    border-bottom: 5px solid #613682;
}

#news h3 {
    font-size: 28px;
    color: #613682;
    padding-bottom: 20px;
}

#news ul {
    /*max-height:260px;*/
    overflow: scroll;
    max-height: 255px;
    overflow: scroll;
    line-height: 1.3;
}

#news ul li {
    padding: 17px 0 13px 125px;
    border-bottom: 1px dotted #2b2b2b;
    position: relative;
}

#news ul li span {
    position: absolute;
    left: 21px;
    font-family: 'Roboto', sans-serif;
}

#news ul li a:hover {
    opacity: 1;
}

/*　記事
-----------------------------------------*/
.articleBox .contTtl {
    background: url(../../images/218/ico_border_001.png) repeat-x left bottom;
    padding-bottom: 25px !important;
    margin-bottom: 28px;
}

.articleBox h3 {
    font-size: 28px;
    font-weight: normal;
    padding-bottom: 25px;
}

/* テキストエリア */
.articleBox .clearfix .txtArea {
    width: 560px;
    padding-top: 25px;
    font-size: 16px;
    float: left;
    letter-spacing: 0.1em;
    line-height: 2em;
}

.articleBox.noImg .txtArea {
    /*padding-top: 25px;
    width:560px;*/
    font-size: 16px;
    /*float:left;*/
    line-height: 2em;
    margin-bottom: 75px;
    width: auto;
    float: none;
}

/* 写真ボックス */
.articleBox .imgArea figure {
    margin-bottom: 25px;
}

.articleBox .clearfix .imgArea {
    float: right;
    /*padding-top:25px;*/
    width: 300px;
}

.articleBox .clearfix .imgArea img {
    /*width:300px;*/
    max-width: 100%;
    height: auto;
}

.articleBox .clearfix .imgArea figcaption {
    display: block;
    font-size: 0.85em;
    padding-top: 12px;
    line-height: 1.5;
}

.articleBox.noImg .imgArea {
    width: 300px;
    height: auto;
    padding-top: 25px;
    margin: 0 0 75px 30px;
    float: right;
}

.articleBox.noImg .imgArea figure {
    padding-bottom: 30px;
}

.articleBox.noImg .imgArea figcaption {
    padding-top: 15px;
    font-size: 12px;
}

/* テーブル */
.articleBox table {
    width: auto;
    font-size: 1em;
}

.articleBox table,
.articleBox table td,
.articleBox table th {
    border: 1px solid #c6c6c6;
}

.articleBox table td,
.articleBox table th {
    text-align: left;
    padding: 10px 15px;
}


/*　お問い合わせボタン
-----------------------------------------*/
.contactBtn {
    clear: both;
    width: 505px;
    text-align: center;
    background: #613682;
    margin: auto;
}

.contactBtn:hover {
    opacity: 0.7;
}

.contactBtn a {
    font-size: 30px;
    font-weight: bold;
    color: #fff;
    text-decoration: none;
    font-family: 'Roboto', sans-serif;
    text-align: center;
    line-height: 90px;
    display: block;
}

#foot-area {
    padding-top: 70px;
    line-height: 1.5em;
    letter-spacing: 0.1em;
}


/*============================
サイドエリア
=============================*/
h2#leadTxt {
    font-weight: normal;
    width: 260px;
    border: 1px solid #b68eda;
    padding: 20px;
    line-height: 2em;
    margin-bottom: 55px;
}

/*　サイドエリアのサイト説明文（ワイドスライドVer のみ）*/


/* サブメニュー */
#sideCont {
    width: 260px;
    /*margin-top:60px;*/
    margin-bottom: 55px;
}

#sideCont h3 {
    color: #613682;
    font-size: 21px;
    font-family: 'Roboto', sans-serif;
    border-bottom: 1px solid #b68eda;
    padding: 0 0 20px 20px;
}

#sideCont ul li {
    font-size: 18px;
    font-family: 'Roboto', sans-serif;
    border-bottom: 1px solid #b68eda;
    font-weight: bold;
}

#sideCont ul li a {
    text-decoration: none;
    display: block;
    text-decoration: none;
    font-weight: bold;
    position: relative;
    word-break: break-all;
    padding: 27px 30px 27px 20px;

}

#sideCont ul li a:before {
    content: "";
    display: block;
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 3.5px 0 3.5px 6px;
    border-color: transparent transparent transparent #613682;
    right: 18px;
    top: 50%;
    margin-top: -3px;
}



#sideCont ul li a:hover {
    background-color: #f1f1f1;
    color: #613682;
    opacity: 1;
}

/* ブログ */
#blog {
    /*margin-top:60px;*/
    width: 260px;
    margin-bottom: 60px;
}

#blog h3 {
    font-size: 18px;
    color: #613682;
    border-bottom: 1px solid #b68eda;
    padding: 0 0 20px 20px;
}

#blog dl dd a {
    text-decoration: none;
}

#blog dl dt {
    padding: 15px 0 0 20px;
    font-size: 14px;
}

#blog dl dd {
    font-size: 14px;
    color: #613682;
    border-bottom: 1px solid #b68eda;
    padding: 0 0 15px 20px;
}

#blog .btn {
    width: 130px;
    height: 38px;
    margin: 15px auto 0;
    background: url(../../images/218/ico-side_002.png) left 105px top 15px no-repeat #484848;
}

#blog .btn a {
    text-decoration: none;
    color: #fff;
    font-size: 14px;
    font-weight: bold;
    line-height: 38px;
    letter-spacing: 0.3px;
    padding: 12px 34px 12px 10px;
}

/* QRコード */
#mobile {
    /*width:260px;*/
    margin-bottom: 60px;
    /*margin-top: 57px;*/
    border-bottom: 1px solid #b68eda;
}

#mobile h3 {
    font-size: 18px;
    font-weight: bold;
    color: #613682;
    border-bottom: 1px solid #b68eda;
    padding: 0 0 15px 20px;
}

#mobile img {
    /*
    margin:40px auto;
    padding-left:80px;
    */
    width: 100px;
    height: 100px;
}

#side #mobile figure {
    padding: 28px 28px 24px;
    text-align: center;
}

#mobile figcaption {
    /*
    font-size:14px;
    line-height:20px;
    border-bottom:1px solid #b68eda;
    padding-bottom:20px;
    letter-spacing: 0.3em;
    */
    text-align: left;
    line-height: 2;
    padding-top: 20px;
}

/*============================
ページトップ
=============================*/
#pagetop {
    position: fixed;
    z-index: 1000;
    right: 20px;
    bottom: 20px;
    display: none;
}

#pageTop a {
    background: url(../../images/218/ico-pageTop_001.png) center 20px no-repeat #e2e2e2;
    display: block;
    white-space: nowrap;
    width: 60px;
    height: 60px;
    text-indent: 100%;
    border-radius: 30px;
    position: fixed;
    right: 20px;
    bottom: 20px;
    overflow: hidden;
}

#pageTop a:hover {
    background: url(../../images/218/ico-pageTop_002.png) center 20px no-repeat #4c236c;
    opacity: 1;
}

/*============================
フッター
=============================*/
footer {
    background: #613682;
    margin-top: 130px;
}

footer p {
    font-size: 14px;
    padding: 80px 0;
    text-align: center;
    color: #fff;
    margin: 0 auto;
    width: 1200px;
}

/*============================
フリーエリア
=============================*/
.freeArea {
    width: 260px;
    margin-top: 55px;
    line-height: 1.5em;
    font-size: 14px;
    letter-spacing: 0.1em;
}

/*============================
下層ページ共通
=============================*/

/*　下層ページタイトル
-----------------------------------------*/
.pageTtl {
    background: #f1f1f1;
    padding: 70px 0;
}

.pageTtl h2 {
    font-size: 36px;
    text-align: center;
    font-weight: bold;
    color: #613682;
}

/*　パンくず
-----------------------------------------*/
#pnkz {
    letter-spacing: -0.40em;
    text-align: right;
    width: 1200px;
    margin: 20px auto 65px;
    font-size: 0.85em;
}

#pnkz li {
    letter-spacing: 0;
    display: inline-block;
}

#pnkz li:after {
    content: ">";
    margin: 0 10px;
}

#pnkz li:last-child:after {
    display: none;
}


/*============================
お問い合わせフォーム、プロフィール、地図
=============================*/

/*　共通
-----------------------------------------*/
#main.profile table,
#main.map table {
    border-bottom: 1px solid #613682;
    width: 100%;
    font-size: 1.14em;
    margin-bottom: 70px;
}

#main.form table {
    border-bottom: 1px solid #613682;
    width: 100%;
    font-size: 1.14em;
}

#main.form table th,
#main.form table td,
#main.profile table th,
#main.profile table td,
#main.map table th,
#main.map table td {
    vertical-align: middle;
    text-align: left;
    border-top: 1px solid #613682;
    padding: 25px 20px;
}

#main.form table th,
#main.profile table th,
#main.map table th {
    font-weight: bold;
    padding-right: 0;
}

#main.form .txtBox,
#main.map .txtBox {
    font-size: 1.14em;
    line-height: 1.87;
    margin-bottom: 70px;
}

#main.profile .txtBox {
    font-size: 1.14em;
    line-height: 1.87;
    margin-bottom: 70px;
    /*text-align:center;*/
}

#main.form .txtBox p,
#main.profile .txtBox p,
#main.map .txtBox p {
    margin-bottom: 30px;
}

/*　お問い合わせフォーム
-----------------------------------------*/
#main.form .requiredMark {
    color: #ce0000;
}

#main.form table th {
    width: 270px;
}

#main.form table td {
    height: 80px;
}

#main.form .inputArea {
    background: #f1f1f1;
    line-height: 1;
    padding: 8px 15px;
    border-radius: 2px;
    width: 520px;
    border: 1px solid #ddd;
}

#main.form .inputArea.short {
    width: 200px;
    display: inline-block;
}

#main.form .inputArea input {
    width: 100%;
}

#main.form .inputArea input:focus,
#main.form .inputArea textarea:focus,
#main.form .inputArea button:focus {
    outline: none;
}

#main.form .inputArea textarea {
    width: 100%;
    height: 190px;
    padding: 10px 0;
    line-height: 1.5;
}

#main.form table {
    border-bottom: none;
}

#main.form #submit td {
    text-align: center;
    letter-spacing: -0.40em;
    padding-top: 40px;
}

#main.form #submit input {
    display: inline-block;
    width: 240px;
    text-align: center;
    color: #fff;
    font-weight: bold;
    border-radius: 5px;
    line-height: 1;
    padding: 18px 0;
    cursor: pointer;
    letter-spacing: 0.1em;
    margin: 0 10px;
    font-size: 1.12em;
}

#main.form #submit input.submitBtn {
    background: #613682;
}

#main.form #submit input.resetBtn {
    background: #bbb;
}

#main.form #submit input:hover {
    opacity: 0.7;
}

/*　地図
-----------------------------------------*/
#main.map #frame {
    margin-bottom: 70px;
}

#main.map #frame iframe {
    width: 890px;
    height: 478px;
}

/* 20190416 ADD */
.box ul,
.box1 ul,
.box2 ul,
.box3 ul,
.articleBox ul,
.entry_box ul,
.entryBox ul,
.article-box ul,
.article ul,
.article_box ul {
    list-style-type: disc;
}

.box ol,
.box1 ol,
.box2 ol,
.box3 ol,
.articleBox ol,
.entry_box ol,
.entryBox ol,
.article-box ol,
.article ol,
.article_box ol {
    list-style-type: decimal;
}

.box ul,
.box1 ul,
.box2 ul,
.box3 ul,
.articleBox ul,
.entry_box ul,
.entryBox ul,
.article-box ul,
.article ul,
.article_box ul,
.box ol,
.box1 ol,
.box2 ol,
.box3 ol,
.articleBox ol,
.entry_box ol,
.entryBox ol,
.article-box ol,
.article ol,
.article_box ol {
    margin-left: 18px;
}