@charset "utf-8";

/*--------------------------------------------------------
  共通レイアウトパーツ設定
--------------------------------------------------------*/
/* ヘッダー内パーツ */
#hpb-headerMain {
    margin-top: 0;
    margin-right: 0;
    margin-bottom: 0;
    margin-left: 0;
    width: 580px;
    float: left;
}

#hpb-headerMain h1 {
    margin-top: 0;
    margin-right: 0;
    margin-bottom: 0;
    margin-left: 0;
    padding-top: 12px;
    padding-right: 0;
    padding-bottom: 0;
    padding-left: 8px;
    text-align: left;
    font-weight: normal;
    line-height: 13px;
    font-size: 12px;
}

#hpb-headerLogo {
    width: 50%;
    max-width: 100%;
    height: auto;
    float: left;
}

#hpb-headerLogo a {
    display: block;
    margin-top: 0px;
    margin-right: 0;
    margin-bottom: 0;
    margin-left: 0;
    padding-top: 0;
    padding-right: 0;
    padding-bottom: 0;
    padding-left: 0;
    text-indent: -9999px;
    overflow: hidden;
    height: 130px;
    background-image: url('images/header/head_logomain.png');
    background-position: center left;
    background-repeat: no-repeat;
}

#hpb-headerLogo a:link {}

#hpb-headerLogo a:visited {}

#hpb-headerLogo a:hover {
    background-color: none;
}

#hpb-headerExtra1 {
    width: 400px;
    height: 150px;
    margin-top: 0px;
    margin-right: 0;
    margin-bottom: 0;
    margin-left: 0;
    padding-top: 15px;
    padding-right: 0;
    padding-bottom: 0;
    padding-left: 0;
    float: right;
    text-align: right;
    max-width: 100%;
    height: auto;
}

#header_reserve {
    display: block;
    width: 150px;
    height: 80px;
    margin-left: 100px;
    padding: 5px 20px 20px 0px;
}

#header_reserve a {
    /* 「ご予約はこちら」ボタン設定 */
    text-align: right;
    display: block;
    width: 250px;
    height: 75px;
    padding: 5px 20px 20px 0px;
    margin: 0;
    /*background: url(images/header/head_goyoyoaku.png) no-repeat right;*/
    line-height: 35px;
    overflow: hidden;
}

#header_reserve a:link {}

#header_reserve a:visited {}

#header_reserve a:hover {
    -webkit-transform: translateY(4px);
    transform: translateY(4px);
}


#header_reserve a:active {}

}

#header_reserve p.tel {
    /* 電話番号の文字設定 */
    margin-top: 0;
    margin-right: 0;
    margin-bottom: 0;
    margin-left: 0;
    padding-top: 0;
    padding-right: 5px;
    padding-bottom: 0;
    padding-left: 0;
    font-size: 18px;
    color: white;
    font-weight: bold;
    line-height: 16px;
    text-align: right;
}

#header_reserve p.tel span {
    /* 電話番号の「電話でのご予約・お問い合わせは」文字設定 */
    font-size: 14px;
    padding-right: 3px;
}

#hpb-headerExtra2 {}

/* フッター内パーツ */
#hpb-footerMain {}

#hpb-footerMain p {
    /* コピーライト文字設定 */
}

#hpb-footerLogo {}

#hpb-footerExtra1 {
    width: 300px;

}

#hpb-footerExtra1 ul {
    margin-top: 0;
    margin-right: 0;
    margin-bottom: 0;
    margin-left: 5px;
    padding-top: 0;
    padding-right: 0;
    padding-bottom: 0;
    padding-left: 0;
    list-style-type: none;
    text-align: center;
}

#hpb-footerExtra1 li {
    /* フッターナビ設定 */
    display: inline;
    line-height: 1.2;
    padding-right: 10px;
}

#hpb-footerExtra1 li a {
    border-top-width: 1px;
    border-top-style: solid;
    border-top-color: #999999;
    border-right-width: 1px;
    border-right-style: solid;
    border-right-color: #999999;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #999999;
    border-left-width: 1px;
    border-left-style: solid;
    border-left-color: #999999;
    padding-top: 2px;
    padding-right: 10px;
    padding-bottom: 2px;
    padding-left: 10px;
    font-size: 0.8em;
}

#hpb-footerExtra1 a:link {
    color: #666666;
    text-decoration: none;
}

#hpb-footerExtra1 a:visited {
    color: #666666;
    text-decoration: none;
}

#hpb-footerExtra1 a:hover {
    color: #2359C1;
    text-decoration: none;
}

#hpb-footerExtra1 a:active {
    color: #2359C1;
    text-decoration: none;
}

#hpb-footerExtra2 {}

/* サイドブロック内パーツ */
/*サイドナビゲーションメニュー*/
#side_shortcut{
    margin-top: -70px;
    width:210px;
}

/* バナー */
#banner {}

#banner ul {
    margin-top: -4px;
    margin-right: 0;
    margin-bottom: 0;
    margin-left: 0;
    padding-top: 0;
    padding-right: 0;
    padding-bottom: 0;
    padding-left: 0;
    list-style-type: none;
}

#banner li {
    display: block;
    background-color: #ffffff;
    width: 210px;
    margin-left: auto;
    margin-right: auto;
    ontouchstart
    ontouchmove
    ontouchend
}

#banner li a {
    display: block;
    height: 68px;
    text-indent: -9999px;
    overflow: hidden;
    text-align: left;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #d3d3d4;
}

/*サイドナビゲーションメニュー*/
/*画像ロールオーバー*/
#banner a#side_event {
    /* イベントバナー */
    background: url(images/side/side_event.png)no-repeat;
    display: block;
    text-indent: -9999px;
    background-position: center left;
}

#banner a#side_event:hover {
    background-image: url(images/side/side_event_o.png);
}

#banner a#side_reserve {
    /* 予約バナー */
    background-image: url(images/side/side_reserve.png);
    display: block;
    text-indent: -9999px;
    background-repeat: no-repeat;
}

#banner a#side_reserve:hover {
    background-image: url(images/side/side_reserve_o.png);
}

#banner a#side_toukii {
    /* 予約バナー */
    background-image: url(images/side/i-3.png);
    display: block;
    text-indent: -9999px;
    background-repeat: no-repeat;
}

#banner a#side_toukii:hover {
    background-image: url(images/side/i-4.png);
}

#banner a#side_information {
    /* 予約バナー */
    background-image: url(images/side/side_info.png);
    display: block;
    text-indent: -9999px;
    background-repeat: no-repeat;
}

#banner a#side_information:hover {
    background-image: url(images/side/side_info_o.png);
}

#banner a#side_access {
    /* アクセスバナー */
    background-image: url(images/side/side_access.png);
    display: block;
    text-indent: -9999px;
    background-repeat: no-repeat;
}

#banner a#side_access:hover {
    background-image: url(images/side/side_access_o.png);
}

#banner a#side_gallery {
    /* アクセスバナー */
    background-image: url(images/side/side_gallery.png);
    display: block;
    text-indent: -9999px;
    background-repeat: no-repeat;
}

#banner a#side_gallery:hover {
    background-image: url(images/side/side_gallery_o.png);
}

#touki1 a#side_toukiii {
    /* インスタの上のやつ */
    background-image: url(images/side/i-3.png);
    display: block;
    text-indent: -9999px;
    background-repeat: no-repeat;
    height: 62px;
    width: 210px;
    margin: auto;
}

#touki1 a#side_toukiii:hover {
    background-image: url(images/side/i-4.png);
}

/*フェースブック*/
#facebook {
    padding-top: 20px
}

/* 店舗情報 */
#shopinfo {
    padding-top: 20px;
}

#shopinfo h3 {
    margin-bottom: 5px;
    padding-top: 5px;
    border-bottom-width: 0px;
    border-bottom-style: none;
}

#shopinfo span.ja {
    display: none;
}

#shopinfo h4 {
    font-weight: normal;
    margin-bottom: 0;
    padding-bottom: 0;
    margin-top: 0;
    padding-top: 0;
    font-size: 1.1em;
    font-weight: bold;
}

#shopinfo p {
    font-size: 1.1em;
    margin-top: 0.1em;
}


/*--------------------------------------------------------
  ナビゲーションデザイン設定
--------------------------------------------------------*/

#hpb-nav li a {
    font-size: 14px;
    font-weight: ;
    color: #000000;
    /*text-shadow: 1px 1px 1px silver/* ナビゲーション文字設定 */
}

#hpb-nav li span.en {}

#hpb-nav li span.ja {}


/*--------------------------------------------------------
  基本パーツデザイン設定
--------------------------------------------------------*/

/* リンク文字色 */
a:link {
    color: #666666;
    text-decoration: none;
}

a:visited {
    color: #666666;
    text-decoration: none;
}

a:hover {
    color: #ffffff;
    text-decoration: none;
}

a:active {
    color: #2359C1;
    text-decoration: none;
}

#hpb-skip {
    /* ヘッダースキップの非表示 */
    height: 1px;
    margin: 0;
    padding: 0;
    overflow: hidden;
    text-indent: -9999px;
}

p {
    margin-top: 1.0em;
    margin-bottom: 1.0em;
    padding-right: 0.1em;
    padding-left: 0.1em;
    line-height: 1.8;
    text-align: left;
    overflow: visible;
    font-size: 15px;
}

p.large {
    font-size: 1.2em;
    padding-top: 0.5em;
    margin-bottom: 1em;
}

p.indent {
    padding-left: 15px;
}

.left {
    float: left;
}

.right {
    float: right;
}

.center {
    margin-right: auto;
    margin-left: auto;
}

hr {
    width: 100%;
    height: 1px;
    margin-top: 10px;
    margin-right: auto;
    margin-bottom: 20px;
    margin-left: auto;
    padding-top: 0;
    padding-right: 0;
    padding-bottom: 0;
    padding-left: 0;
    clear: both;
    border-top-width: 1px;
    border-top-style: none;
    border-right-width: 1px;
    border-right-style: none;
    border-left-width: 1px;
    border-left-style: none;
    border-bottom-width: 1px;
    border-bottom-style: none;
}

.hpb-layoutset-02 h2 {
    margin-top: 0;
    margin-right: auto;
    margin-bottom: 0;
    margin-left: 0;
    height: 55px;
    text-align: left;
    overflow: hidden;
    line-height: 60px;
    background-image: url(titleBg_7Da.png);
    background-position: center right;
    background-repeat: no-repeat;
}

.hpb-layoutset-02 h2 span.ja {
    font-size: 1.1em;
    padding-right: 15px;
    padding-left: 45px;
    font-weight: normal;
    color: #ffffff;
}

.hpb-layoutset-02 h2 span.en {
    font-size: 0.9em;
    color: #d4d4d4;
    font-weight: normal;
    text-transform: lowercase;
}

h1 {
    color: #666666;
    text-align: center;
    margin-top: 10px;
    margin-bottom: 10px;
    padding-top: 15px;
    padding-bottom: 0;
    padding-left: 2px;
    font-weight: bold;
    font-size: 2.4em;
}

h2 {
    color: #666666;
    text-align: center;
    margin-top: 0;
    margin-bottom: 5px;
    padding-top: 15px;
    padding-bottom: 0;
    padding-left: 2px;
    font-weight: bold;
    font-size: 1.8em;
    border-bottom-width: 2px;
    border-bottom-style: solid;
    border-bottom-color: #2359C1;
}

h3 {
    color: #2359C1;
    text-align: left;
    margin-top: 0;
    margin-bottom: 20px;
    padding-top: 15px;
    padding-bottom: 0;
    padding-left: 2px;
    font-weight: normal;
    font-size: 1.8em;
    border-bottom-width: 2px;
    border-bottom-style: solid;
    border-bottom-color: #d3d3d4;
}

h3 span.en {
    text-transform: capitalize;
    font-family: century, HeiseiMincho, 'Hiragino Mincho Pro', "ＭＳ 明朝", 'MS Mincho', serif;
    letter-spacing: 1px;
}

h3 span {
    padding-right: 10px;
}

h3.hpb-c-index {
    height: 1px;
    margin: 0;
    padding: 0;
    overflow: hidden;
    text-indent: -9999px;
    background: none;
    border-bottom-style: none;
    color: #FF0000;
}

h4 {
    margin-top: 0;
    margin-right: 0;
    margin-bottom: 0;
    margin-left: 0;
    padding-top: 5px;
    padding-right: 0px;
    padding-bottom: 3px;
    padding-left: 0px;
    text-align: left;
    font-size: 1.6em;
    line-height: 1.6;
    color: #666666;
    border-bottom: solid;
}

h5 {
    display: inline;
    margin-top: 0;
    margin-bottom: 0;
    padding-left: 18px;
    text-align: left;
    background-image: url(point_7Da.png);
    background-position: 5px 7px;
    background-repeat: no-repeat;
    font-size: 1em;
    line-height: 1.5;
    font-weight: normal;
    color: #153775;
}

table {
    margin-top: 10px;
    margin-right: auto;
    margin-bottom: 10px;
    margin-left: 0;
    border-collapse: collapse;
    border-top-width: 1px;
    border-top-style: solid;
    border-top-color: #d3d3d4;
    border-left-width: 1px;
    border-left-style: solid;
    border-left-color: #d3d3d4;
    font-size: 14px
}

table th {
    padding-top: 8px;
    padding-right: 15px;
    padding-bottom: 8px;
    padding-left: 8px;
    text-align: left;
    color: #ffffff;
    background-color: #2359C1;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #d3d3d4;
    border-right-width: 1px;
    border-right-style: solid;
    border-right-color: #d3d3d4;
}

table td {
    padding-top: 8px;
    padding-right: 15px;
    padding-bottom: 8px;
    padding-left: 8px;
    text-align: left;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #d3d3d4;
    border-right-width: 1px;
    border-right-style: solid;
    border-right-color: #d3d3d4;
}


    /* オリジナルtable */
table td {
    padding-top: 8px;
    padding-right: 15px;
    padding-bottom: 8px;
    padding-left: 8px;
    text-align: left;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #d3d3d4;
    border-right-width: 1px;
    border-right-style: solid;
    border-right-color: #d3d3d4;
    border-left-width: 1px;
    border-left-style: solid;
    border-left-color: #d3d3d4;
}

#aarii th {
    background-color: #6df73b;
    text-align: center;
    line-height:12.5px;
    color: black;
}

#aarii tr {
    height:5px;
}

/* フォームパーツ設定 */
input.button {
    margin-top: 10px;
    margin-bottom: 15px;
}

textarea {
    width: 450px;
    height: 200px;
}

input.l {
    width: 450px;
}

input.m {
    width: 350px;
}

input.s {
    width: 50px;
}


/* メインコンテンツ内基本パーツ */

#hpb-main ul {
    margin-top: 0;
    margin-right: 0;
    margin-bottom: 0;
    margin-left: 0;
    padding-top: 0;
    padding-right: 0;
    padding-bottom: 0;
    padding-left: 0;
    list-style-type: none;
}

#hpb-main ul li {
    text-align: left;
    line-height: 1.4;
    padding-top: 3px;
    padding-right: 15px;
    padding-bottom: 3px;
    padding-left: 18px;
    font-size: 14px;
    background-image: url(point_7Da.png);
    background-position: 5px 8px;
    background-repeat: no-repeat;
}

#hpb-main dl {
    margin-top: 0;
    margin-right: 0;
    margin-bottom: 20px;
    margin-left: 0;
    padding-top: 0;
    padding-right: 0;
    padding-bottom: 0;
    padding-left: 0;
}

#hpb-main dt {
    float: left;
    margin-top: 0;
    margin-right: 0;
    margin-bottom: 0;
    margin-left: 0;
    font-size: 16px;
    text-align: left;
    line-height: 1.4;
    font-weight: bold;
    width: 9em !important;
    padding-top: 5px;
    padding-right: 0;
    padding-bottom: 0;
    padding-left: 3px;
    color: #2359C1;
}

#hpb-main dd {
    margin-top: 0;
    margin-right: 0;
    margin-bottom: 0;
    margin-left: 0;
    padding-top: 5px;
    padding-right: 0;
    padding-bottom: 2px;
    text-align: left;
    line-height: 1.4;
    padding-left: 12em;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #d3d3d4;
    overflow: visible;
}

* html #hpb-main dd {
    height: 1%;
    /* for IE6 */
}

#hpb-main dl::after {
    content: ".";
    clear: both;
    height: 0;
    display: block;
    visibility: hidden;
}

#hpb-main img.left {
    margin-top: 5px;
    margin-right: 10px;
    margin-bottom: 10px;
    float: left;
}

#hpb-main img.right {
    margin-top: 5px;
    margin-bottom: 10px;
    margin-left: 10px;
    float: right;
}

#hpb-main img.center {
    margin-top: 5px;
    margin-bottom: 10px;
    margin-left: auto;
    margin-right: auto;
}

#pagetop {
    margin-top: 0px;
    margin-right: auto;
    margin-bottom: 0;
    margin-left: auto;
    text-align: center;
    clear: both;
}

#pagetop a {
    /* ページの先頭へのリンク設定 */
    display: block;
    margin-left: auto;
    margin-right: auto;
    width: 108px;
    height: 16px;
    overflow: hidden;
    background-image: url(returnTop_7Da.png);
    background-position: center left;
    background-repeat: no-repeat;
    text-align: left;
    text-indent: -9999px;
}



/* トップページ デザイン定義 */
.hpb-layoutset-01 #hpb-title h2 {
    margin-top: 0;
    margin-right: 0;
    margin-bottom: 0;
    margin-left: 0;
    overflow: hidden;
    text-indent: -9999px;
    background-image: url(mainimg_7Da.png);
    background-position: top center;
    background-repeat: no-repeat;
}

.hpb-layoutset-01 h3 {
    margin-bottom: 0;
}

#toppage-news h3 span.ja {
    display: none;
}

#toppage-news dt {
    width: 77px !important;
    padding-left: 0;
    padding-bottom: 0;
    padding-top: 5px;
    padding-right: 0;
    text-align: center;
}

#toppage-news dt img {
    border-top-width: 1px;
    border-top-style: solid;
    border-top-color: #d3d3d4;
    border-right-width: 1px;
    border-right-style: solid;
    border-right-color: #C4C28A;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #C4C28A;
    border-left-width: 1px;
    border-left-style: solid;
    border-left-color: #C4C28A;
}

#toppage-news dd {
    padding-left: 83px;
    min-height: 64px;
    padding-bottom: 5px;
    padding-top: 5px;
}

* html #toppage-news dd {
    height: 68px;
    /* for ie6 */
}

*:first-child + html #toppage-news dd {
    height: 68px;
    /* for ie7 */
}

#toppage-news span.date {
    color: #2359C1;
    line-height: 1.5;
    font-size: 1em;
}

.news-photo {
    float: left;
    padding-right: 10px;
    padding-left: 5px;
    padding-bottom: 2px;
}

.news-comment {
    margin-top: 0px;
}

.news-comment h1 {
    text-align: center;
    color: black;
    font-size: 12px;

}

#toppage-news hr {
    padding-top: 10px;
    margin-top: 0;
    margin-bottom: 5px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #d3d3d4;
    clear: both;
}

.news-photo img {
    border-top-width: 1px;
    border-top-style: solid;
    border-top-color: #C4C28A;
    border-right-width: 1px;
    border-right-style: solid;
    border-right-color: #C4C28A;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #C4C28A;
    border-left-width: 1px;
    border-left-style: solid;
    border-left-color: #C4C28A;
}


/* =======================================================
  レスポンシブル設定
======================================================= */
@media screen and (max-width: 568px) {

    /*--------------------------------------------------------
	  共通レイアウトパーツ設定
	--------------------------------------------------------*/
    /* ヘッダー内パーツ */
    #hpb-headerMain {
        width: 100%;
        float: none;
    }

    #hpb-headerMain h1 {
        padding-top: 5px;
        padding-right: 5px;
        padding-bottom: 5px;
        padding-left: 5px;
        line-height: 1.4;
    }

    #hpb-headerLogo {
        width: 100%;
        float: none;
        margin-top: 10px;
        margin-left: auto;
        margin-bottom: 10px;
        margin-right: auto;
    }

    #hpb-headerLogo a {
        height: 100px;
        background-position: center top;
        background-size: contain;
        max-width: 100%;
    }

    #hpb-headerExtra1 {
        display: none;
        width: 40%;
        height: 20%;
        float:inherit;
        margin-top: 10px;
    }

    #hpb-headerExtra1 a {
        height: 80px;
        background-position: center top;
        background-size: contain;
        max-width: 100%;
    }

    #hpb-headerExtra1 p.tel {
        padding-right: 0;
    }

    #hpb-headerExtra1 p.tel span {
        padding-right: 0;
        display: block;
    }

    #hpb-headerExtra1 a {
        max-width: 100%;
        height: auto;
        background-image: none;
        background-color: #3666C4;
        border-radius: 10px;
        -webkit-border-radius: 5px;
    }

    /* フッター内パーツ */
    #hpb-footerMain {
        padding-top: 5px;
        padding-left: 5px;
        padding-bottom: 5px;
        padding-right: 5px;
    }

    #hpb-footerExtra1 {
        width: 100%;
        float: none;
    }

    #hpb-footerExtra1 ul {
        margin-top: 10px;
        margin-right: 10px;
        margin-bottom: 10px;
        margin-left: 10px;
    }

    #hpb-footerExtra1 li {
        display: inline-block;
        line-height: 1.4;
        padding-right: 0;
        margin-right: 10px;
        margin-bottom: 10px;
        border-top-width: 1px;
        border-top-style: solid;
        border-top-color: #999999;
        border-right-width: 1px;
        border-right-style: solid;
        border-right-color: #999999;
        border-bottom-width: 1px;
        border-bottom-style: solid;
        border-bottom-color: #999999;
        border-left-width: 1px;
        border-left-style: solid;
        border-left-color: #999999;
    }

    #hpb-footerExtra1 li a {
        border: none;
        padding-top: 5px;
        padding-bottom: 5px;
        display: block;
    }

    /* サイドブロック内パーツ */
    /* バナー */
    #banner ul {
        margin-top: 0;
    }

    #banner li {
        max-width: 100%;
    }

    #banner li a {
        max-width: 100%;
        margin-bottom: 5px;
    }

    #banner a#banner-special {
        background-position: center top;
        background-size: contain;
    }

    #banner a#banner-spa {
        background-position: center top;
        background-size: contain;
    }

    #banner a#banner-reserve {
        background-position: center top;
        background-size: contain;
    }

    #banner a#banner-access {
        background-position: center top;
        background-size: contain;
    }

    /* 店舗情報 */
    #shopinfo img {
        max-width: 100%;
        box-sizing: border-box;
    }

    #shopinfo h3 span.en {
        padding-right: 0px;
    }

    /*--------------------------------------------------------
	  ナビゲーションデザイン設定
	--------------------------------------------------------*/
    #hpb-nav h3.hpb-c-index {
        width: 27px;
        height: 20px;
        background-image: url(btn_menu.png);
        background-position: top left;
        background-repeat: no-repeat;
        margin-left: 5px;
        margin-top: 10px;
        margin-bottom: 10px;
        overflow: hidden;
        text-indent: -9999px;
        cursor: pointer;
    }

    #hpb-nav li {
        border-top-color: #000000;
        border-top-style: solid;
        border-top-width: 10px;
    }

    /*--------------------------------------------------------
	  基本パーツデザイン設定
	--------------------------------------------------------*/
    p {
        padding-right: 0;
        padding-left: 0;
    }

    .hpb-layoutset-02 h2 {
        margin-top: 10px;
        margin-right: auto;
        margin-left: auto;
        height: auto;
        line-height: 1.4;
        background-image: none;
        background-color: #3666C4;
        border-radius: 8px;
        -webkit-border-radius: 8px;
        width: 96%;
        padding-top: 10px;
        padding-bottom: 10px;
        word-break: break-all;
    }

    .hpb-layoutset-02 h2 span.ja {
        padding-left: 15px;
        display: block;
    }

    .hpb-layoutset-02 h2 span.en {
        display: block;
        padding-left: 15px;
        padding-right: 15px;
    }

    h3 {
        padding-left: 0;
    }

    h3 span {
        display: inline-block;
    }

    table {
        margin-right: auto;
        margin-left: auto;
        width: 100%;
        box-sizing: border-box;
    }

    /* フォームパーツ設定 */
    textarea {
        width: 96%;
    }

    input.l {
        width: 96%;
    }

    input.m {
        width: 60%;
    }

    input.s {
        width: 30%;
    }

    /* メインコンテンツ内基本パーツ */
    #hpb-main ul li {
        padding-right: 0;
    }

    #hpb-main dt {
        float: none;
        padding-left: 0;
        max-width: 100%;
    }

    #hpb-main dd {
        padding-left: 0;
    }

    #hpb-main img.left {
        margin-right: 0;
        float: none;
    }

    #hpb-main img.right {
        margin-left: 0;
        float: none;
    }

    /* トップページ デザイン定義 */
    .hpb-layoutset-01 #hpb-title h2 {
        background-size: contain;
    }

    #toppage-news dt {
        max-width: 100%;
    }

    #toppage-news dd {
        padding-left: 0;
        min-height: 0;
    }

    .news-photo {
        padding-left: 0;
    }
