/**
 * PC用CSS
 */

@charset "UTF-8";

@import url(//fonts.googleapis.com/earlyaccess/notosansjapanese.css);

/* -------------------------------------------------------

 * レイアウト

------------------------------------------------------- */

body {
    min-width: 980px;
}

/*==================================
 * コンテンツ
==================================*/

.contents {
    width: 980px;
    margin: 0 auto;
    padding: 10px 0 30px 0;
    background-color: #FFFFFF;
}

.contents.layout_lmr {
    width: 1200px;
}

/* left-main
 ======================= */
.layout_lm .cont_main,
.layout_lmr .cont_main {
    width: 760px;
    padding: 0 0 0 20px;
    float: left;
}

.layout_lm .cont_left,
.layout_lmr .cont_left {
    width: 200px;
    float: left;
}


/* main
 ======================= */
.layout_m .cont_main {
    width: 980px;
    padding: 0;
}

/* right
 ======================= */
.layout_mr .cont_main {
    width: 760px;
    padding: 0 20px 0 0;
    float: left;
}

.layout_lmr .cont_right,
.layout_mr .cont_right {
    width: 200px;
    float: right;
}

/* メイン
 ======================= */
div.cont_main {
    padding: 0 0 15px 0;
}

/* レフト
 ======================= */
div.cont_left {
    padding: 0 0 15px 0;
}

/* ライト
 ======================= */
div.cont_right {
    padding: 0 0 15px 0;
}


/* -------------------------------------------------------

 * Components

------------------------------------------------------- */


/*==================================
 * 問合せボタン
==================================*/

.btn__inquiry-mail {
    color: #FFFFFF;
    padding: 10px 20px;
    font-size: 18px;
    font-weight: bold;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    -o-border-radius: 4px;
    border-radius: 4px;
    display: inline-block;
    text-decoration: none !important;
    text-align: center;
  
    background-color: #133b5c;
    color: #FFF;
}

.btn__inquiry-mail:link, 
.btn__inquiry-mail:visited {
    color: #FFFFFF;
}

.btn__inquiry-mail:hover {
    opacity: 0.5;
}


/*==================================
 * ボタン
==================================*/

.btn__gray,
.btn__orange,
.btn__red,
.btn__blue {
    color: #FFFFFF;
    padding: 10px 20px;
    font-size: 18px;
    font-weight: bold;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    -o-border-radius: 4px;
    border-radius: 4px;
    display: inline-block;
    text-decoration: none !important;
    text-align: center;
}


/* == グレー ================ */
.btn__gray {
    background: #f5f5f5;
    background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ffffff), color-stop(100%, #e6e6e6));
    background: -webkit-linear-gradient(#ffffff, #e6e6e6);
    background: -moz-linear-gradient(#ffffff, #e6e6e6);
    background: -o-linear-gradient(#ffffff, #e6e6e6);
    background: linear-gradient(#ffffff, #e6e6e6);
    border: 1px #b4b4b4 solid;
    color: #505050 !important;
    text-shadow: 1px 1px 1px #FFFFFF;
}

.btn__gray:hover {
    background: #efefef; 
}


/* == オレンジ ================ */
.btn__orange {
    background: #FF8800;
    background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ffaa33), color-stop(100%, #ff8800));
    background: -webkit-linear-gradient(#ffaa33, #ff8800);
    background: -moz-linear-gradient(#ffaa33, #ff8800);
    background: -o-linear-gradient(#ffaa33, #ff8800);
    background: linear-gradient(#ffaa33, #ff8800);
    border: 1px #F27300 solid;
    color: #FFF !important;
    -webkit-box-shadow: 0 1px 0 #f3f3f3 inset;
    -moz-box-shadow: 0 1px 0 #f3f3f3 inset;
    box-shadow: 0 1px 0 #f3f3f3 inset;
    text-shadow: 1px 2px 3px #C45C00;
}

.btn__orange:hover {
    background: #FF8800; 
}


/* == 赤 ================ */
.btn__red {
    background: #972024;
    background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #eb6452), color-stop(100%, #972024));
    background: -webkit-linear-gradient(#eb6452, #972024);
    background: -moz-linear-gradient(#eb6452, #972024);
    background: -o-linear-gradient(#eb6452, #972024);
    background: linear-gradient(#eb6452, #972024);
    border: 1px #972024 solid;
    color: #FFF !important;
    -webkit-box-shadow: 0 1px 0 #f3f3f3 inset;
    -moz-box-shadow: 0 1px 0 #f3f3f3 inset;
    box-shadow: 0 1px 0 #f3f3f3 inset;
    text-shadow: rgba(0, 0, 0, 0.4) 0px -1px 0px;
}

.btn__red:hover {
    background: #972024;
}


/* == 青 ================ */
.btn__blue {
    background: #4190D2;
    background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #4190d2), color-stop(100%, #207cca));
    background: -webkit-linear-gradient(#4190d2, #207cca);
    background: -moz-linear-gradient(#4190d2, #207cca);
    background: -o-linear-gradient(#4190d2, #207cca);
    background: linear-gradient(#4190d2, #207cca);
    border: 1px #207CCA solid;
    color: #FFF !important;
    -webkit-box-shadow: 0 1px 0 #b9c3e4 inset;
    -moz-box-shadow: 0 1px 0 #b9c3e4 inset;
    box-shadow: 0 1px 0 #b9c3e4 inset;
    text-shadow: rgba(0, 0, 0, 0.4) 0px -1px 0px;
}

.btn__blue:hover {
    background: #207CCA;
}


/* スモール
 ======================= */
._btn__sm {
    font-size: 14px;
    font-weight: normal;
    padding: 2px 10px;
}

/* ラージ
 ======================= */
._btn__lg {
    padding: 20px 40px;
    font-size: 20px;
    font-weight: bold;
}

/* ページの先頭へ
 ======================= */
.btn__page_top {
    display: none;
    padding: 15px 10px;
    position: fixed;
    right: 0;
    bottom: 100px;
    z-index: 9999;
    font-size: 12px;
    text-align: center;
    background-color: #fff;
    color: #1d2d50;
    border-radius: 4px 0 0 4px;
    border-top: solid 2px #1d2d50;
    border-left: solid 2px #1d2d50;
    border-bottom: solid 2px #1d2d50;
    cursor: pointer;
    box-sizing: border-box;
}

.btn__page_top:hover {
    opacity: 0.5;
}

.btn__page_top i {
    vertical-align: middle;
    font-size: 18px;
    opacity: 0.5;
    display: block;
    margin: 0 0 5px 0;
}

.btn__page_top span {
    -ms-writing-mode: tb-rl; /* for MS IE8+ */
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    vertical-align: middle;
    font-weight: bold;
}

/* -------------------------------------------------------

 * メイン領域

------------------------------------------------------- */

/*==================================
 * タイトル
==================================*/

.cont_main h2 {
    font-size: 20px;
    margin: 0 0 20px 0;
}

.cont_main h3 {
    font-size: 16px;
    margin: 0 0 15px 0;
}


/*==================================
 * パーツレイアウト
==================================*/

.main__layout {
    width: 100%;
    margin: 0 0 20px 0;
}

.main__layout img {
    max-width: 100%;
}

.main__layout ._col img {
    display: block;
    max-width: 100%;
    margin: 0 auto;
}

.main__layout ._col a:hover img {
    opacity: 0.5;
}

.main__layout._col-2 ._col,
.main__layout._col-3 ._col {
    float: left;
    display: block;
    padding: 0 2% 0 0;
}

.main__layout._col-1 ._col { width: 100%; }
.main__layout._col-2 ._col { width: 49%; }
.main__layout._col-3 ._col { width: 31.99%; }

.main__layout._col-2 ._col._last,
.main__layout._col-3 ._col._last {
    padding: 0;
    float: right;
}

.main__layout._col-2 ._col ._title,
.main__layout._col-3 ._col ._title {
    font-size: 18px;
    padding: 10px 0;
    text-align: center;
}

.main__layout._lt,
.main__layout._rt {
    width: 100%;
}

.main__layout._lt ._col,
.main__layout._rt ._col {
    width: 40%;
    display: block;
}

.main__layout._lt ._col {
    float: left;
    margin: 0 2% 0 0;
}

.main__layout._rt ._col {
    float: right;
    margin: 0 0 0 2%;
}


/* -------------------------------------------------------

 * メインパーツ

------------------------------------------------------- */

/*==================================
 * 箇条書き
==================================*/

.main__bullet-list {
    margin: 0 0 10px 0;
}

.main__bullet-list li {
    line-height: 25px;
}

.main__bullet-list i {
    font-size: 16px;
    color: #767171;
    vertical-align: top;
    margin-top: 4px;
}

.main__bullet-list span {
    display: inline-block;
    width: calc(100% - 30px);
}


/*==================================
 * スタッフ
==================================*/

.main__staffList {
    margin-bottom: 30px;
    background-color: #F8F8F8;
    padding: 10px;
    box-sizing: border-box;
}

.main__staffList li {
    float: left;
    margin-right: 16px;
}

.main__staffList li a {
    width: 225px;
    display: inline-block;
    color: #000000;
    text-decoration: none;
    padding: 10px;
    border-radius: 5px;
    border: solid 1px #CCCCCC;
    margin-bottom: 20px;
    box-sizing: border-box;
    background-color: #FFFFFF;
}

.main__staffList li a:hover {
    opacity: 0.6;
}

.contents.layout_lm .cont_main .main__staffList li a,
.contents.layout_mr .cont_main .main__staffList li a {
    width: 235px;
}

.main__staffList ._staffName {
    width: 100%;
    background-color: #F8F8F8;
    margin-bottom: 10px;
    padding: 3px;
    font-weight: bold;
    box-sizing: border-box;
    display: block;
}

.main__staffList ._staffImage {
    width: 50px;
    float: left;
    display: block;
    margin: 0 10px 10px 0;
}

.main__staffList ._staffImage img {
    max-width: 50px;
}

.main__staffList ._staffCmnt {
    display: block;
    font-size: 12px;
}

.main__staffList ._link--staffList {
    text-align: right;
}

.main__staffList ._link--staffList a {
    text-decoration: none;
    color: #009;
}

.contents.layout_lm .cont_main .main__staffList li:nth-child(3n),
.contents.layout_mr .cont_main .main__staffList li:nth-child(3n) {
    margin-right: 0px;
}

.contents.layout_m .cont_main .main__staffList li:nth-child(4n) {
    margin-right: 0px;
}

    
    
/*==================================
 * 新着情報
==================================*/

.main__newList {
    padding: 0 5px 0 5px;
    margin-bottom: 30px;
}

.main__newList dt {
    float: left;
    font-weight: bold;
    margin-right: 15px;
}

.main__newList dd {
    margin-bottom: 10px;
    padding: 0 0 3px 0;
    border-bottom: dotted 1px #999;
}

.main__newList ._link--newList {
    text-align: right;
}

.main__newList ._link--newList a {
    text-decoration: none;
    color: #009;
}

.main__newList ._link--newList {
    text-align: right;
}

.main__newList ._link--newList a {
    text-decoration: none;
    color: #009;
}

/*==================================
 * 物件一覧（テキスト）
==================================*/

.main__estTxtList {
    padding: 0 5px 0 5px;
    margin-bottom: 30px;
}

.main__estTxtList li {
    margin-bottom: 10px;
    padding: 0 0 3px 0;
    border-bottom: dotted 1px #999;
}

.main__estTxtList li a {
    width: 100%;
    box-sizing: border-box;
    padding: 3px 5px 3px 5px;
    text-decoration: none;
    display: inline-block;
    color: #000;
}

.main__estTxtList li a:hover {
    color: #000;
    background-color: #F8F8F8;
}

.main__estTxtList ._estTxtList-type {
    margin-right: 10px;
    padding: 2px 5px 1px 5px;
    border-radius: 4px;
    background-color: #767171;
    color: #FFFFFF;
}

.main__estTxtList ._estTxtList-price {
    margin-right: 10px;
    color: #E74C3C;
    font-weight: bold;
}

.main__estTxtList ._estTxtList-address {
    text-decoration: underline;
}

.main__estTxtList ._link--estateList {
    text-align: right;
}

.main__estTxtList ._link--estateList a {
    text-decoration: none;
    color: #009;
}


/*==================================
 * 物件一覧（ブロック）
==================================*/

.main__estList {
    margin-bottom: 30px;
}

.main__estList li {
    float: left;
}

.main__estList ._estImage {
    text-align: center;
    height: 200px;
}

.main__estList ._estImage img {
    display: block;
}

.main__estList li a {
    width: 200px;
    display: block;
    color: #000000;
    text-decoration: none;
    padding: 10px;
    border-radius: 5px;
    border: solid 1px #CCCCCC;
    margin-right: 20px;
    margin-bottom: 20px;
    background-color: #fff;
}

.main__estList li a:hover {
    opacity: 0.6;
}

.main__estList ._estType {
    color: #FFFFFF;
    float: left;
    font-size: 11px;
    font-weight: bold;
    letter-spacing: 1.3px;
    padding: 2px 15px 0;
    position: absolute;
    text-align: center;
    z-index: 1;
    background-color: #767171;
}

.main__estList ._estRoom {
    float: left;
    font-size: 17px;
    height: 27px;
}

.main__estList ._estPrice {
    color: #E74C3C;
    float: right;
    font-size: 17px;
    font-weight: bold;
    height: 27px;
}

.main__estList ._estAddress {
    height: 42px;
    margin-bottom: 3px; 
    font-size: 14px;
}

.main__estList ._estAccess {
    height: 42px;
    color: #E74C3C;
    font-size: 13px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}

.main__estList ._link--estateList {
    text-align: right;
}

.main__estList ._link--estateList a {
    text-decoration: none;
    color: #009;
}


/*==================================
 * 物件一覧（地図付き一覧）
==================================*/

.main__estMapList {
    margin-bottom: 30px;
}

.main__estMapList ._estBox {
    margin-bottom: 30px;
    display: table;
    width: 100%;
    background-color: #fff;
}

.main__estMapList ._estBox ._lt {
    display: table-cell;
    width: 200px;
}

.main__estMapList ._estBox ._ct {
    display: table-cell;
    vertical-align: top;
    padding: 0 10px;
}

.main__estMapList ._estBox ._rt {
    display: table-cell;
    vertical-align: top;
    width: 180px;
}

.main__estMapList ._estImage {
    text-align: center;
    margin: 0 0 10px 0;
}

.main__estMapList ._estImage img {
    display: block;
}

.main__estMapList ._estImage img:hover {
    opacity: 0.6;
}

.main__estMapList ._estImageSub li {
    float: left;
}

.main__estMapList ._estImageSub li:not(:first-child) {
    margin-left: 10px;
}

.main__estMapList ._estType {
    color: #FFFFFF;
    float: left;
    font-size: 11px;
    font-weight: bold;
    letter-spacing: 1.3px;
    padding: 2px 15px 0;
    position: absolute;
    text-align: center;
    z-index: 1;
    background-color: #767171;
}


.main__estMapList ._estPrice {
    color: #E74C3C;
    float: left;
    font-size: 18px;
    font-weight: bold;
    height: 27px;
}

.main__estMapList ._estRoom {
    float: left;
    font-size: 18px;
    height: 27px;
    margin-left: 20px;
}

.main__estMapList ._estAddress {
    font-size: 18px;
    color: #000;
    margin: 0 0 10px 0;
}

.main__estMapList ._estAccess {
    margin-bottom: 10px;
}

.main__estMapList ._estCommentBox {
    display: table;
    width: 100%;
}

.main__estMapList ._estStaff {
    width: 45px;
    display: table-cell;
    vertical-align: top;
}

.main__estMapList ._estComment {
    display: table-cell;
    vertical-align: top;
}

.main__estMapList ._estComment .box {
    font-size: 13px;
}

.main__estMapList ._link--estateList {
    text-align: right;
}

.main__estMapList ._link--estateList a {
    text-decoration: none;
    color: #009;
}

/*==================================
 * リンク
==================================*/

.main__link {
    margin-bottom: 30px;
}

.main__link a:not(:last-child) {
    margin: 0 10px 7px 0;
}

.main__link._box a {
    display: inline-block;
    padding: 7px 15px;
    border: 1px solid #6d6e71;
    font-size: 18px;
    color: #000;
    text-decoration: none;
}

.main__link._box a:hover {
    background: #6d6e71;
    color: #fff;
}

/*==================================
 * スライド
==================================*/

.main__slide {
    position: relative;
    margin-bottom: 30px;
}

.main__slide img {
    width: 100%;
}

.main__slide-text-box {
    position: absolute;
    display: table;
    width: 100%;
    height: 100%;
    padding: 20px;
    box-sizing: border-box;
}

.main__slide-text {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    font-size: 32px;
    color: #fff;
    line-height: 1;
    text-shadow: 1px 1px 6px #333;
    font-family: 'Noto Sans Japanese', sans-serif;
    font-weight: 500;
}

.main__slide-text._ta-lt {
    text-align: left;
}

.main__slide-text._ta-rt {
    text-align: right;
}

.main__slide-text._va-top {
    vertical-align: top;
}

.main__slide-text._va-bottom {
    vertical-align: bottom;
}


/*==================================
 * よくある質問
==================================*/

.main__quesList {
    padding: 0 5px 0 5px;
    margin-bottom: 30px;
}

.main__quesList li {
    margin-bottom: 5px;
}

.main__quesList li span {
    color: #E74C3C;
}

.main__quesList ._link--quesList {
    text-align: right;
}

.main__quesList ._link--quesList a {
    text-decoration: none;
    color: #009;
}


/*
　店舗情報
================================*/
.main__shopinfo {
    margin: 0 auto 30px auto;
}

.main__shopinfo__catchcopy {
    color: #B92A2C;
    margin-bottom: 20px;
}

.main__shopinfo__inner {
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px;
}

.main__shopinfo__content {
    width: 60%;
}

.main__shopinfo__content__detail {
    margin-bottom: 30px;
}

.main__shopinfo__content__detail dl > div {
    display: flex;
    justify-content: space-between;
    box-sizing: border-box;
    margin-top: 0;
    margin-bottom: 0;
    border-top: dotted 1px #908a6a;
}

.main__shopinfo__content__detail dl > div:last-child {
    border-bottom: dotted 1px #908a6a;
}

.main__shopinfo__content__detail dt {
    width: 22%;
    padding: 7px 5px;
    text-align: center;
}

.main__shopinfo__content__detail dd {
    width: 70%;
    margin-left: 0;
    padding: 7px 5px 7px 20px;
}

.main__shopinfo__content__image {
    display: flex;
    justify-content: start;
    text-align: center;
}

.main__shopinfo__content__image img {
    display: block;
    width: 32%;
    height: auto;
    margin-right: 15px;
    aspect-ratio: 3 / 2;
    object-fit: cover;
}

.main__shopinfo__content__image img:last-child {
    margin-right: 0;
}

.main__shopinfo__content__image > div {
    display: flex;
    justify-content: space-evenly;
}

.main__shopinfo__content__image > div img {
    width: 48%;
}

.main__shopinfo__map {
    width: 37%;
    height: auto;
}

.main__shopinfo__link {
    text-align: right;
}

.main__shopinfo__link a {
    text-decoration: none;
}

/* -------------------------------------------------------

 * サイドバー領域

------------------------------------------------------- */

/*==================================
 * サイドバー　会社概要
==================================*/

.side__shopinfo {
    margin: 0 0 30px 0;
    padding: 2px;
    border: solid 1px #CCCCCC;
    box-sizing: border-box;
    background-color: #fff;
}

.side__shopinfo--inner {
    padding: 3px;
}

.side__shopinfo h2 {
    margin: 0 0 10px 0;
    padding: 10px 15px 10px 15px;
    font-size: 17px;
    color: #fff;
    background: #133b5c;
    font-weight: bold;
    text-align: left;
}

.side__shopinfo h3 {
    margin: 0 0 10px 0;
    font-size: 14px;
    font-weight: bold;
}

.side__shopinfo-image {
    text-align: center;
}

.side__shopinfo p {
    font-size: 14px;
}

.side__shopinfo p.table {
    display: table;
}

.side__shopinfo p.table label {
    width: 70px;
    display: table-cell;
}

.side__shopinfo p.table span {
    width: 118px;
    display: table-cell;
}

.side__shopinfo-cmnt {
    color: #B92A2C;
    margin-bottom: 20px;
}

.side__shopinfo-map {
    text-align: center;
    margin-bottom: 20px;
}

.side__shopinfo a {
    font-size: 14px;
    text-decoration: none;
}


/*==================================
 * サイドバー　カテゴリー
==================================*/

.side__list {
    margin: 0 0 30px 0;
    background-color: #fff;
}

.side__list h2 {
    margin: 0;
    padding: 15px 15px 15px 15px;
    font-size: 17px;
    color: #fff;
    background: #133b5c;
    font-weight: bold;
    text-align: left;
}

/* 標準
======================= */
.side__list li {
    height: 40px;
    line-height: 40px;
    border: 1px solid #E9EAE0;
    border-top: none;
    padding-left: 10px;
    font-size: 13px;
}

.side__list li:first-child {
    border-top: 1px solid #E9EAE0;
}

.side__list li a {
    width: 100%;
    display: inline-block;
    text-decoration: none;
}

.side__list li a:hover {
    text-decoration: underline;
}

/* 矢印
======================= */
.side__list._arrow li {
    width: 100%;
    height: 40px;
    display: inline-block;
    box-sizing: border-box;
    line-height: 40px;
    border: 1px solid #E9EAE0;
    border-top: none;
    padding-left: 5px;
    font-size: 13px;
}

.side__list._arrow li:first-child {
    border-top: 1px solid #E9EAE0;
}

.side__list._arrow li a {
    width: 100%;
    color: #000000;
    display: inline-block;
    text-decoration: none;
}

.side__list._arrow li a:hover {
    color: #DC143C;
}

.side__list._arrow li a:before {
    display: inline-block; 
    content: ""; 
    width: 10px;
    height: 10px;
    margin-right: 10px;
    border-top: 3px solid #767171;
    border-right: 3px solid #767171;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

/* ボックス
======================= */
.side__list._box {
    margin: 0 0 30px 0;
    padding: 5px;
    border: solid 1px #CCCCCC;
    background-color: #F8F8F8;
}

.side__list._box h2 {
    margin: 0 0 5px 0;
    font-size: 14px;
}

.side__list._box li {
    width: 100%;
    height: 40px;
    display: inline-block;
    box-sizing: border-box;
    line-height: 40px;
    border: 1px solid #E9EAE0;
    border-top: none;
    padding-left: 5px;
    font-size: 13px;
    background-color: #FFFFFF;
}

.side__list._box li:first-child {
    border-top: 1px solid #E9EAE0;
}

.side__list._box li a {
    width: 100%;
    color: #000000;
    text-decoration: none;
    display: inline-block;
}

.side__list._box li a:hover {
    color: #DC143C;
}

.side__list._box li a:before {
    display: inline-block; 
    content: ""; 
    width: 10px;
    height: 10px;
    margin-right: 10px;
    border-top: 3px solid #767171;
    border-right: 3px solid #767171;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}


/*==================================
 * サイドバー　ボックス
==================================*/

.side__box {
    margin: 0 0 30px 0;
}

.side__box h2 {
    margin: 0;
    padding: 15px 15px 15px 15px;
    font-size: 17px;
    color: #fff;
    background: #133b5c;
    font-weight: bold;
    text-align: left;
}

.side__box ._box {
    border: 1px solid #E9EAE0;
    padding: 10px;
    font-size: 13px;
    background-color: #fff;
}

.side__box .fa-chevron-right {
    color: #767171;
}


/*==================================
 * サイドバー　バナー
==================================*/

.side__bnr {
    margin: 0 0 20px 0;
}

.side__bnr a:hover img {
    opacity: 0.5;
}

.side__bnr img {
    display: block;
}

/* -------------------------------------------------------

 * ヘッダー領域

------------------------------------------------------- */

/*==================================
* ヘッダー
==================================*/
.header {
    width: 980px;
    margin: 0 auto 10px auto;
    padding: 10px 0 0 0;
}

h1.header_tit {
    margin: 0 0 20px 0;
    display: block;
    font-size: 14px;
    font-weight: normal;
    text-align: right;
}

/* ロゴ
======================= */
.header__logo {
    max-width: 340px;
    float: left;
    padding: 0;
}

.header__logo img {
    max-width: 100%;
    max-height: 100px;
    -webkit-backface-visibility: hidden;
}

.header__logo-txt {
    text-decoration: none !important;
}

.header__logo-txt span {
    font-family: 'Noto Sans Japanese', sans-serif;
    font-weight: 900;
    font-size: 40px;
    color: #1d2d50;
}

.header__logo-txt._line2 {
    line-height: 45px;
}

/* 問合せ
======================= */
.header__inquiry {
    max-width: 600px;
    float: right;
}

.header__inquiry h1 {
    margin: 0 0 20px 0;
    display: block;
    font-size: 14px;
    font-weight: normal;
    text-align: right;
}

.header__inquiry-mail {
    float: right;
    padding: 0;
}

.header__inquiry-tel {
    float: right;
    margin: 0 50px 0 0;
}

.header__inquiry-tel h2 {
    margin: 0 0 5px 0;
    color: #333;
    font-size: 12px;
}

.header__inquiry-tel h3 {
    font-size: 30px;
    font-weight: bold;
    margin: 0;
    padding: 0;
    color: #767171;
}

.header__openClose {
    font-size: 15px;
}


/*==================================
* ナビゲーション
==================================*/
.header__gNav {
    width: 100%;
    background-color: #1d2d50;
}

.header__gNav._none {
    border-bottom: solid 1px #ccc;
    margin: 0 0 10px 0;
}

.gNav {
    width: 980px;
    margin: 0 auto 10px auto;
}

.gNav li {
    float: left;
    width: 16.666%;
    box-sizing: border-box;
    border-left: 1px solid #fff;
}

.gNav li a {
    display: block;
    line-height: 60px;
    font-size: 18px;
    text-align: center;
    color: #fff;
    background-color: #1d2d50;
    text-decoration: none;
}

.gNav li:last-child {
    border-right: 1px solid #fff;
}

.gNav li a:hover {
    background-color: #f0f0f0;
    color: #333;
}


/* -------------------------------------------------------

 * コンテンツトップ領域

------------------------------------------------------- */

/*==================================
 * コンテンツトップ
==================================*/

.contentsTop {
    width: 100%;
    margin: 0 auto 30px auto;
}

/*==================================
 * メイン画像
==================================*/

.contentsTop__main-img {
    width: 980px;
    margin: 0 auto;
}

.contentsTop__main-img img {
    width: 100%;
}

.contentsTop__main-img-text-box {
    position: absolute;
    display: table;
    width: 980px;
    height: 0;
    padding: 30px;
    box-sizing: border-box;
}

.contentsTop__main-img-text {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    font-size: 48px;
    color: #fff;
    line-height: 1;
    text-shadow: 1px 1px 6px #333;
    font-family: 'Noto Sans Japanese', sans-serif;
    font-weight: 500;
}

.contentsTop__main-img-text._ta-lt {
    text-align: left;
}

.contentsTop__main-img-text._ta-rt {
    text-align: right;
}

.contentsTop__main-img-text._va-top {
    vertical-align: top;
}

.contentsTop__main-img-text._va-bottom {
    vertical-align: bottom;
}

.contentsTop__main-img-text._color1,
.main__slide-text._color1 {
    color: #1B70BE;
    text-shadow: 1px 1px 6px #fff;
}

.contentsTop__main-img-text._color2,
.main__slide-text._color2 {
    color: #00204E;
    text-shadow: 1px 1px 6px #fff;
}

.contentsTop__main-img-text._color3,
.main__slide-text._color3 {
    color: #DC143C;
    text-shadow: 1px 1px 6px #fff;
}

.contentsTop__main-img-text._color4,
.main__slide-text._color4 {
    color: #A10800;
    text-shadow: 1px 1px 6px #fff;
}

.contentsTop__main-img-text._color5,
.main__slide-text._color5 {
    color: #FF7700;
    text-shadow: 1px 1px 6px #fff;
}

.contentsTop__main-img-text._color6,
.main__slide-text._color6 {
    color: #FF9900;
    text-shadow: 1px 1px 6px #fff;
}

.contentsTop__main-img-text._color7,
.main__slide-text._color7 {
    color: #008000;
    text-shadow: 1px 1px 6px #fff;
}

.contentsTop__main-img-text._color8,
.main__slide-text._color8 {
    color: #004F3C;
    text-shadow: 1px 1px 6px #fff;
}

.contentsTop__main-img-text._color9,
.main__slide-text._color9 {
    color: #040406;
    text-shadow: 1px 1px 6px #fff;
}

.contentsTop__main-img-text._color10,
.main__slide-text._color10 {
    color: #4D4D4D;
    text-shadow: 1px 1px 6px #fff;
}

/* -------------------------------------------------------

 * フッター領域

------------------------------------------------------- */

/*==================================
 * フッター
==================================*/

footer {
    width: 100%;
    background-color: #F8F8F8;
    border-top: solid 1px #CCCCCC;
}

.footer {
    width: 980px;
    margin: 0 auto;
    padding: 30px 0 0 0;
}


/* リスト
======================= */
.footer__list h2 {
    font-size: 18px;
    margin: 0 0 10px 0;
}

.footer__list {
    margin: 0 0 30px 0;
    padding: 0 0 20px 0;
    border-bottom: solid 1px #CCCCCC;
}

.footer__list li {
    float: left;
    margin: 0 30px 0 0;
}

.footer__list li a {
    text-decoration: none;
    color: #000000;
}

.footer__list li a:hover {
    text-decoration: underline;
}


/* 店舗情報
======================= */
.footer__shopinfo {
    margin: 0 0 30px 0;
}

.footer__shopinfo-logo {
    float: left;
    margin: 0 50px 0 0;
}

.footer__shopinfo-address {
    float: left;
    margin: 0 50px 0 0;
    font-size: 14px;
}

.footer__shopinfo-address h2 {
    font-size: 15px;
    font-weight: bold;
}

.footer__shopinfo-contact {
    float: left;
}

.footer__shopinfo-contact dl {
    float: left;
    margin: 0 20px 15px 0;
    display: table;
}

.footer__shopinfo-contact dt,
.ffooter__shopinfo-contact dd {
    display: table-cell;
}

.footer__shopinfo-contact dt {
    width: 60px;
    padding: 1px;
    background-color: #4d4d4d;
    color: #FFFFFF;
    text-align: center;
}

.footer__shopinfo-contact dd {
    padding: 1px 1px 1px 10px;
    min-width: 100px;
}


/* ナビゲーション
======================= */
.footer__nav {
    margin: 0;
    padding: 0;
    background-color: #1d2d50;
}

.footer__nav-inner {
    width: 980px;
    margin: 0 auto;
}
    
.footer__nav li, 
.footer__nav a {
    display: inline-block;
    color: #FFF;
    text-decoration: none;
    padding: 5px 0 5px 0;
}

.footer__nav a:after {
    margin-left: 20px;
    margin-right: 20px;
    content: "|";
}

.footer__nav li:last-child a:after {
    margin: 0;
    content: "";
}


/* copyright
======================= */
.copyright {
    background-color: #1d2d50;
    padding: 8px 0 8px 0;
    color: #FFFFFF;
    text-align: center;
}

/*==================================
* 見出し（タイトル）
==================================*/

h2.tit {
    font-weight: bold;
    color: #1d2d50;
}

h2.tit { font-size: 30px; }

h3.tit {
    position: relative;
    padding-bottom: .5em;
    border-bottom: 4px solid #ccc;
}

h3.tit:after {
    position: absolute;
    bottom: -4px;
    left: 0;
    z-index: 2;
    content: '';
    width: 20%;
    height: 4px;
    background-color: #1d2d50;
}
h2.tit._color1 {
    color: #1B70BE;
}

h3.tit._color1:after {
    background-color: #1B70BE;
}

h2.tit._color2 {
    color: #00204E;
}

h3.tit._color2:after {
    background-color: #00204E;
}

h2.tit._color3 {
    color: #DC143C;
}

h3.tit._color3:after {
    background-color: #DC143C;
}

h2.tit._color4 {
    color: #A10800;
}

h3.tit._color4:after {
    background-color: #A10800;
}

h2.tit._color5 {
    color: #FF7700;
}

h3.tit._color5:after {
    background-color: #FF7700;
}

h2.tit._color6 {
    color: #FF9900;
}

h3.tit._color6:after {
    background-color: #FF9900;
}

h2.tit._color7 {
    color: #008000;
}

h3.tit._color7:after {
    background-color: #008000;
}

h2.tit._color8 {
    color: #004F3C;
}

h3.tit._color8:after {
    background-color: #004F3C;
}

h2.tit._color9 {
    color: #040406;
}

h3.tit._color9:after {
    background-color: #040406;
}

h2.tit._color10 {
    color: #4D4D4D;
}

h3.tit._color10:after {
    background-color: #4D4D4D;
}

.tit__01 {
    padding: .5em .7em;
    border-left: 5px solid #1d2d50;
    text-shadow: 0px 1px 0px #FFF;
}

.tit__01._color1 {
    border-left: 5px solid #1B70BE;
}

.tit__01._color2 {
    border-left: 5px solid #00204E;
}

.tit__01._color3 {
    border-left: 5px solid #DC143C;
}

.tit__01._color4 {
    border-left: 5px solid #A10800;
}

.tit__01._color5 {
    border-left: 5px solid #FF7700;
}

.tit__01._color6 {
    border-left: 5px solid #FF9900;
}

.tit__01._color7 {
    border-left: 5px solid #008000;
}

.tit__01._color8 {
    border-left: 5px solid #004F3C;
}

.tit__01._color9 {
    border-left: 5px solid #040406;
}

.tit__01._color10 {
    border-left: 5px solid #4D4D4D;
}

.tit__02 {
    padding: .5em .75em;
    background-color: #f8f8f8;
    border-left: 6px solid #1d2d50;
}
.tit__02._color1 {
    border-left: 6px solid #1B70BE;
}

.tit__02._color2 {
    border-left: 6px solid #00204E;
}

.tit__02._color3 {
    border-left: 6px solid #DC143C;
}

.tit__02._color4 {
    border-left: 6px solid #A10800;
}

.tit__02._color5 {
    border-left: 6px solid #FF7700;
}

.tit__02._color6 {
    border-left: 6px solid #FF9900;
}

.tit__02._color7 {
    border-left: 6px solid #008000;
}

.tit__02._color8 {
    border-left: 6px solid #004F3C;
}

.tit__02._color9 {
    border-left: 6px solid #040406;
}

.tit__02._color10 {
    border-left: 6px solid #4D4D4D;
}

.tit__03 {
    position: relative;
    padding: .75em 1em .75em 1.5em;
    border: 1px solid #CCCCCC;
}

.tit__03:after {
    position: absolute;
    top: .5em;
    left: .5em;
    content: '';
    width: 6px;
    height: -webkit-calc(100% - 1em);
    height: calc(100% - 1em);
    background-color: #1d2d50;
    border-radius: 4px;
}
.tit__03._color1:after {
    background-color: #1B70BE;
}

.tit__03._color2:after {
    background-color: #00204E;
}

.tit__03._color3:after {
    background-color: #DC143C;
}

.tit__03._color4:after {
    background-color: #A10800;
}

.tit__03._color5:after {
    background-color: #FF7700;
}

.tit__03._color6:after {
    background-color: #FF9900;
}

.tit__03._color7:after {
    background-color: #008000;
}

.tit__03._color8:after {
    background-color: #004F3C;
}

.tit__03._color9:after {
    background-color: #040406;
}

.tit__03._color10:after {
    background-color: #4D4D4D;
}

.tit__04 {
    position: relative;
    padding: .25em 0 .5em .75em;
    border-left: 6px solid #1d2d50;
}

.tit__04:after {
    position: absolute;
    left: 0;
    bottom: 0;
    content: '';
    width: 100%;
    height: 0;
    border-bottom: 1px solid #ccc;
}

.tit__04._color1 {
    border-left: 6px solid #1B70BE;
}

.tit__04._color2 {
    border-left: 6px solid #00204E;
}

.tit__04._color3 {
    border-left: 6px solid #DC143C;
}

.tit__04._color4 {
    border-left: 6px solid #A10800;
}

.tit__04._color5 {
    border-left: 6px solid #FF7700;
}

.tit__04._color6 {
    border-left: 6px solid #FF9900;
}

.tit__04._color7 {
    border-left: 6px solid #008000;
}

.tit__04._color8 {
    border-left: 6px solid #004F3C;
}

.tit__04._color9 {
    border-left: 6px solid #040406;
}

.tit__04._color10 {
    border-left: 6px solid #4D4D4D;
}

.tit__05 {
    position: relative;
    padding-bottom: .5em;
    border-bottom: 4px solid #ccc;
}

.tit__05:after {
    position: absolute;
    bottom: -4px;
    left: 0;
    z-index: 2;
    content: '';
    width: 20%;
    height: 4px;
    background-color: #1d2d50;
}
.tit__05._color1:after {
    background-color: #1B70BE;
}

.tit__05._color2:after {
    background-color: #00204E;
}

.tit__05._color3:after {
    background-color: #DC143C;
}

.tit__05._color4:after {
    background-color: #A10800;
}

.tit__05._color5:after {
    background-color: #FF7700;
}

.tit__05._color6:after {
    background-color: #FF9900;
}

.tit__05._color7:after {
    background-color: #008000;
}

.tit__05._color8:after {
    background-color: #004F3C;
}

.tit__05._color9:after {
    background-color: #040406;
}

.tit__05._color10:after {
    background-color: #4D4D4D;
}

.tit__06 {
    padding: .6em .70em;
    border-top: solid 4px #1d2d50;
    border-bottom: solid 1px #1d2d50;
}


.tit__06._color1 {
    border-top: solid 4px #1B70BE;
    border-bottom: solid 1px #1B70BE;
}

.tit__06._color2 {
    border-top: solid 4px #00204E;
    border-bottom: solid 1px #00204E;
}

.tit__06._color3 {
    border-top: solid 4px #DC143C;
    border-bottom: solid 1px #DC143C;
}

.tit__06._color4 {
    border-top: solid 4px #A10800;
    border-bottom: solid 1px #A10800;
}

.tit__06._color5 {
    border-top: solid 4px #FF7700;
    border-bottom: solid 1px #FF7700;
}

.tit__06._color6 {
    border-top: solid 4px #FF9900;
    border-bottom: solid 1px #FF9900;
}

.tit__06._color7 {
    border-top: solid 4px #008000;
    border-bottom: solid 1px #008000;
}

.tit__06._color8 {
    border-top: solid 4px #004F3C;
    border-bottom: solid 1px #004F3C;
}

.tit__06._color9 {
    border-top: solid 4px #040406;
    border-bottom: solid 1px #040406;
}

.tit__06._color10 {
    border-top: solid 4px #4D4D4D;
    border-bottom: solid 1px #4D4D4D;
}

.tit__07 {
    padding: .75em 1em;
    border: 1px solid #ccc;
    border-top: 3px solid #1d2d50;
    background: -webkit-linear-gradient(top, #fff 0%, #f0f0f0 100%);
    background: linear-gradient(to bottom, #fff 0%, #f0f0f0 100%);
    box-shadow: 0 -1px 0 rgba(255, 255, 255, 1) inset;
}

.tit__07._color1 {
    border-top: 3px solid #1B70BE;
}

.tit__07._color2 {
    border-top: 3px solid #00204E;
}

.tit__07._color3 {
    border-top: 3px solid #DC143C;
}

.tit__07._color4 {
    border-top: 3px solid #A10800;
}

.tit__07._color5 {
    border-top: 3px solid #FF7700;
}

.tit__07._color6 {
    border-top: 3px solid #FF9900;
}

.tit__07._color7 {
    border-top: 3px solid #008000;
}

.tit__07._color8 {
    border-top: 3px solid #004F3C;
}

.tit__07._color9 {
    border-top: 3px solid #040406;
}

.tit__07._color10 {
    border-top: 3px solid #4D4D4D;
}

.tit__08 {
    position: relative;
    padding: .70em 1em .70em 2em;
    border: 1px solid #ccc;
    border-bottom: 3px solid #1d2d50;
    background: -webkit-linear-gradient(top, #fff 0%, #f0f0f0 100%);
    background: linear-gradient(to bottom, #fff 0%, #f0f0f0 100%);
    box-shadow: 0 -1px 0 rgba(255, 255, 255, 1) inset;
    font-size: 20px;
}

.tit__08:after {
    position: absolute;
    top: .5em;
    left: .5em;
    content: '';
    width: 6px;
    height: -webkit-calc(100% - 1em);
    height: calc(100% - 1em);
    background-color: #1d2d50;
    border-radius: 4px;
}
.tit__08._color1 {
    border-bottom: 3px solid #1B70BE;
}

.tit__08._color1:after {
    background-color: #1B70BE;
}
.tit__08._color2 {
    border-bottom: 3px solid #00204E;
}

.tit__08._color2:after {
    background-color: #00204E;
}
.tit__08._color3 {
    border-bottom: 3px solid #DC143C;
}

.tit__08._color3:after {
    background-color: #DC143C;
}
.tit__08._color4 {
    border-bottom: 3px solid #A10800;
}

.tit__08._color4:after {
    background-color: #A10800;
}
.tit__08._color5 {
    border-bottom: 3px solid #FF7700;
}

.tit__08._color5:after {
    background-color: #FF7700;
}
.tit__08._color6 {
    border-bottom: 3px solid #FF9900;
}

.tit__08._color6:after {
    background-color: #FF9900;
}
.tit__08._color7 {
    border-bottom: 3px solid #008000;
}

.tit__08._color7:after {
    background-color: #008000;
}
.tit__08._color8 {
    border-bottom: 3px solid #004F3C;
}

.tit__08._color8:after {
    background-color: #004F3C;
}
.tit__08._color9 {
    border-bottom: 3px solid #040406;
}

.tit__08._color9:after {
    background-color: #040406;
}
.tit__08._color10 {
    border-bottom: 3px solid #4D4D4D;
}

.tit__08._color10:after {
    background-color: #4D4D4D;
}
.tit__09 {
    font-weight: bold;
    color: #1d2d50;
}

h2.tit__09 { font-size: 30px; }

h3.tit__09 { font-size: 25px; }

.tit__09._color1 {
    color: #1B70BE;
}

.tit__09._color2 {
    color: #00204E;
}

.tit__09._color3 {
    color: #DC143C;
}

.tit__09._color4 {
    color: #A10800;
}

.tit__09._color5 {
    color: #FF7700;
}

.tit__09._color6 {
    color: #FF9900;
}

.tit__09._color7 {
    color: #008000;
}

.tit__09._color8 {
    color: #004F3C;
}

.tit__09._color9 {
    color: #040406;
}

.tit__09._color10 {
    color: #4D4D4D;
}

.tit__10 {
    padding: .2em .75em .2em 1.8em;
    position: relative;
    font-weight: bold;
    border-bottom: 2px solid #1d2d50;
    box-sizing: border-box;
}
 
.tit__10:before {
    content: "□";
    font-size: 16px;
    position: absolute;
    color: #1d2d50;
    top: 0;
    left: .4em;
    height: 12px;
    width: 12px;
}
 
.tit__10:after {
    content: "□";
    font-size: 16px;
    position: absolute;
    color: #1d2d50;
    top: .4em ;
    left: 0;
    height: 12px;
    width: 12px;
}
.tit__10._color1 {
    border-bottom: 2px solid #1B70BE;
}

.tit__10._color1:before {
    color: #1B70BE;
}

.tit__10._color1:after {
    color: #1B70BE;
}

.tit__10._color2 {
    border-bottom: 2px solid #00204E;
}

.tit__10._color2:before {
    color: #00204E;
}

.tit__10._color2:after {
    color: #00204E;
}

.tit__10._color3 {
    border-bottom: 2px solid #DC143C;
}

.tit__10._color3:before {
    color: #DC143C;
}

.tit__10._color3:after {
    color: #DC143C;
}

.tit__10._color4 {
    border-bottom: 2px solid #A10800;
}

.tit__10._color4:before {
    color: #A10800;
}

.tit__10._color4:after {
    color: #A10800;
}

.tit__10._color5 {
    border-bottom: 2px solid #FF7700;
}

.tit__10._color5:before {
    color: #FF7700;
}

.tit__10._color5:after {
    color: #FF7700;
}

.tit__10._color6 {
    border-bottom: 2px solid #FF9900;
}

.tit__10._color6:before {
    color: #FF9900;
}

.tit__10._color6:after {
    color: #FF9900;
}

.tit__10._color7 {
    border-bottom: 2px solid #008000;
}

.tit__10._color7:before {
    color: #008000;
}

.tit__10._color7:after {
    color: #008000;
}

.tit__10._color8 {
    border-bottom: 2px solid #004F3C;
}

.tit__10._color8:before {
    color: #004F3C;
}

.tit__10._color8:after {
    color: #004F3C;
}

.tit__10._color9 {
    border-bottom: 2px solid #040406;
}

.tit__10._color9:before {
    color: #040406;
}

.tit__10._color9:after {
    color: #040406;
}

.tit__10._color10 {
    border-bottom: 2px solid #4D4D4D;
}

.tit__10._color10:before {
    color: #4D4D4D;
}

.tit__10._color10:after {
    color: #4D4D4D;
}

