@charset "utf-8";
body {
    background-color: #FFFFFF;
    margin: 0;
    padding: 0;
    color: #000;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 100%;
    line-height: 1.4;
}
/* ~~ エレメント / タグセレクター ~~ */
ul, ol, dl { /* ブラウザー間の相違により、リストの余白とマージンをゼロにすることをお勧めします。一貫性を保つために、量をここで指定するか、リストに含まれるリスト項目 (LI、DT、DD) で指定できます。より詳細なセレクターを記述しない限り、ここで指定する内容が .nav リストにも適用されることに注意してください。 */
    padding: 0;
    margin: 0;
}
h1, h2, h3, h4, h5, h6, p {
    margin-top: 0; /* 上マージンを削除すると、マージンを含む div からマージンがはみ出す場合があるという問題を回避できます。残った下マージンにより、後続のエレメントからは離されます。 */
    padding-right: 15px;
    padding-left: 10px; /* div 自体ではなく div 内でエレメントの両側に余白を追加すると、ボックスモデル計算が不要になります。代わりに、両側に余白を指定した div をネストして使用することもできます。 */
}
img { /* このクラスを使用すると、ページ内でエレメントを右にフローティングさせることができます。フローティングさせるエレメントは、ページ内で横に並べて表示するエレメントの前に指定する必要があります。 */
    width: 100%;
    margin: 0px;
    padding: 0px;
}
a img { /* このセレクターは、一部のブラウザーでイメージをリンクで囲んだ場合にイメージの周囲に表示される初期設定の青いボーダーを削除します。 */
    border: none;
}
/* ~~ サイトのリンクのスタイル付けは、ホバー効果を作成するセレクターグループも含め、この順序にする必要があります。~~ */
a:link {
    color: #42413C;
    text-decoration: underline; /* 非常に特殊な表示方法でリンクをスタイル付けする場合を除き、一目で見分けられるように下線を指定することをお勧めします。 */
}
a:visited {
    color: #6E6C64;
    text-decoration: underline;
}
a:hover, a:active, a:focus { /* このセレクターグループは、キーボードを使用するユーザーに対し、マウスを使用するユーザーと同じホバー効果を提供します。 */
    text-decoration: none;
}
/* ~~ この固定幅コンテナが他の div を囲みます。~~ */
.container {
	width: 960px;  
    background-color: #FFF; /* 幅に加え、両側を自動値とすることで、レイアウトが中央に揃います。 */
    /*border: 1px solid rgba(204, 204, 204, 1);*/
    padding: 0px;
    /*margin-top: 10px;*/
    /*margin-bottom: 10px;*/
    margin-right: auto;
    margin-bottom: 0;
    margin-left: auto;
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: 220px 1fr;
    grid-template-areas:
        "header header"
        "sidebar content"
        "footer footer";
}
@media screen and (max-width:481px) {
    .container {
        width: 96%;
        /*margin-top: 5px;*/
        margin-bottom: 5px;
        grid-template-columns: 1fr;
        grid-template-areas:
            "header"
            "content"
            "footer";
    }
}
@media screen and (min-width:481px) and (max-width:768px) {
    .container {
        width: 96%;
        grid-template-columns: 1fr;
        grid-template-areas:
            "header"
            "content"
            "footer";
    }
}
@media screen and (min-width:769px) {}
section {
    margin-bottom: 35px;
}
.content {
    /*float: left;*/
    width: 730px;
    padding-right: 5px;
    padding-bottom: 0px;
    padding-left: 5px;
    margin-top: 10px;
    margin-bottom: 3px;
    padding-top: 0px;
    grid-area: content;
}
@media screen and (max-width:481px) {
    .container .content {
        float: none;
        width: 100%;
        padding: 0px;
        margin-top: 0px;
        margin-bottom: 0px;
        margin-left: 0px;
    }
    .container .content {
        margin-top: 10px;
    }
}
@media screen and (min-width:481px) and (max-width:768px) {
    .container .content {
        float: none;
        width: 100%;
        padding-top: 0px;
        padding-left: 0;
    }
}
@media screen and (min-width:769px) {}
@media screen and (max-width:481px) {
    .section {
        margin-bottom: 5em;
    }
}
@media screen and (min-width:481px) and (max-width:768px) {}
@media screen and (min-width:769px) {}
/* ヘッダー
---------------------------------*/
/* ~~ ヘッダーには幅は指定されません。ヘッダーはレイアウトの幅全体まで広がります。ヘッダーには、ユーザー独自のリンクされたロゴに置き換えられるイメージプレースホルダーが含まれます。~~ */
header {
    background-color: #FFFFFF;
    margin: 0px;
    padding: 0px;
}
.container .header {
    margin: 0px;
    padding: 0px;
    grid-area: header;
}
/* 共通: 768px以下ではPCヘッダー非表示 */
@media screen and (max-width:768px) {
    .container .header header .header_pc {
        display: none;
    }
}

@media screen and (min-width:481px) and (max-width:768px) {
    .container .header header .header_tablet {
        text-align: center;
    }
    .container .header header .header_tablet img {
        width: 100%;
    }
    .container .header header .header_sp {
        display: none;
    }
    .container .header nav {
        margin-bottom: 5px;
    }
}

@media screen and (min-width:769px) {
    .container .header header .header_pc {
        background-color: #FFFFFF;
        display: flex;
    }
    .container .header header .header_pc .header_pc_left {
        width: 500px;
        margin: 0;
        padding: 0;
    }
    .header_number {
        display: flex;
        color: #012DB2;
    }
    .container .header header .header_tablet {
        display: none;
    }
    .container .header header .header_sp {
        display: none;
    }
    .header nav #menu-box {
        margin: 0;
        padding: 0;
    }
}

@media screen and (max-width:481px) {
    .container .header header .header_tablet {
        display: none!important;
    }
    .container .header header .header_sp img {
        width: 100%;
    }
    .container .header header .head01 ul li {
        float: left;
        list-style-type: none;
        text-align: center;
        margin-left: 20px;
    }
    /*.container .header nav #menu-box {
        margin-right: 2px;
    }*/
}


/* グローバルメニュー
---------------------------------*/
/*　メニューバー　*/
.menu {
    margin-top: 5px;
    margin-right: 1px;
    margin-bottom: 10px;
    margin-left: 0px;
}
.container .sidebar1 .menu h2 {
    background-color: #012DB2;
    font-size: 16px;
    color: #FFF;
    padding-top: 10px;
    padding-bottom: 10px;
    margin-bottom: 0px;
}
.menu_p {
    border-bottom-width: 1px;
    border-bottom-style: dashed;
    border-bottom-color: #999;
    font-size: 16px;
    margin-top: 6px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    padding-top: 8px;
    padding-right: 0px;
    padding-bottom: 8px;
    padding-left: 10px;
}
.menu_p_end {
    font-size: 16px;
    margin-top: 6px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    padding-top: 8px;
    padding-right: 0px;
    padding-bottom: 8px;
    padding-left: 10px;
}
.menu2 {
    border: 1px solid #999999;
    margin-top: 5px;
    margin-right: 1px;
    margin-bottom: 10px;
    margin-left: 2px;
}
.menu2_p {
    border-bottom-width: 1px;
    border-bottom-style: dashed;
    border-bottom-color: #999;
    font-size: 12px;
    margin-top: 6px;
    margin-right: 5px;
    margin-bottom: 0px;
    margin-left: 0px;
    padding-top: 4px;
    padding-right: 0px;
    padding-bottom: 4px;
    padding-left: 10px;
}
.menu2_p_end {
    font-size: 12px;
    margin-top: 6px;
    margin-right: 5px;
    margin-bottom: 0px;
    margin-left: 0px;
    padding-top: 4px;
    padding-right: 0px;
    padding-bottom: 4px;
    padding-left: 10px;
}
/*　トグルボタン用　*/
#menu > li {
    display: block;
    /*float: left;*/
    margin: 0;
    padding: 0;
    /*border-left-width: 1px;
    border-left-style: solid;
    border-left-color: rgba(255, 255, 255, 0.6);
    background-color: #012DB2;*/
}

#menu > li a {
    display: block;
    /*padding: 12px 0 10px;*/
    color: #FFF;
    text-align: center;
    text-decoration: none;
    font-weight: bold;
}
#menu li a:hover {}
#toggle {
    display: none;
    color: #FFFFFF;
}
/*@media screen and (max-width:481px) {
    #menu {
        display: none;
    }
    #menu li {
        display: block;
        float: left;
        width: 49.6%;
        margin: 0;
        padding: 0;
    }
    #menu li a {
        display: block;
        text-align: center;
        text-decoration: none;
        border-bottom-width: 1px;
        border-bottom-style: solid;
        border-bottom-color: rgba(255, 255, 255, 1);
        padding-top: 12px;
        padding-right: 0;
        padding-bottom: 10px;
        padding-left: 0;
    }
    #menu li a:hover {}
    #toggle {
        display: block;
        position: relative;
        width: 100%;
        background-color: #1039B5;
        margin-right: 2px;
        margin-bottom: 5px;
        margin-left: 1px;
    }
    #toggle a {
        display: block;
        position: relative;
        padding: 12px 0 10px;
        border-bottom: 1px solid #fff;
        text-align: center;
        text-decoration: none;
        color: #FFFFFF;
    }
    #toggle:before {
        display: block;
        content: "";
        position: absolute;
        top: 50%;
        left: 10px;
        width: 20px;
        height: 20px;
        margin-top: -10px;
        background: #fff;
    }
    #toggle a:before, #toggle a:after {
        display: block;
        content: "";
        position: absolute;
        top: 50%;
        left: 10px;
        width: 20px;
        height: 4px;
        background-color: #1039B5;
    }
    #toggle a:before {
        margin-top: -6px;
    }
    #toggle a:after {
        margin-top: 2px;
    }
}*/
@media screen and (min-width:481px) and (max-width:768px) {
    #menu {
        width: 100%;
        max-width: 960px;
        padding: 0;
        margin-top: 0;
        margin-right: 2px;
        margin-bottom: 10px;
        margin-left: 3px;
        color: #FFFFFF;
    }
    #menu li {
        display: block;
        float: left;
        /*width: 24.6%;
        margin: 0;
        padding: 0;
        border-left-width: 0.1em;
        border-left-style: solid;
        border-left-color: rgba(255, 255, 255, 0.6);
        border-bottom-width: 0.1em;
        border-bottom-style: solid;
        border-bottom-color: rgba(255, 255, 255, 0.6);*/
    }
    #menu li a {
        display: block;
        text-align: center;
        text-decoration: none;
        padding-top: 15px;
        padding-right: 0;
        padding-bottom: 13px;
        padding-left: 0;
    }
    #menu li a:hover {}
    #toggle {
        display: none;
    }
}
@media screen and (min-width:769px) {
    #menu {
        width: 100%;
        max-width: 960px;
        padding: 0;
        margin-top: 0;
        margin-bottom: 0;
        margin-left: 0px;
        display: flex;
    }
    #menu li {
        display: block;
        /*float: left;*/
        /*width: 119px;*/
        margin: 0;
        padding: 0;
        /*border-left-width: 1px;
        border-left-style: solid;
        border-left-color: rgba(255, 255, 255, 0.6);*/
    }
    #menu li a {
        display: block;
        padding: 12px 0 10px;
        text-align: center;
        text-decoration: none;
    }
    #menu li a:hover {}
    #toggle {
        display: none;
    }
}
/* フッター
---------------------------------*/
.footer {
    font-size: 14px;
    text-align: center;
    clear: both;
    grid-area: footer;
}
footer {
    font-size: 14px;
    text-align: center;
    clear: both;
    grid-area: footer;
}
.footer footer p {
    font-size: 14px;
    text-align: center;
    clear: both;
    background-color: #555555;
    color: #FFFFFF;
    padding-top: 10px;
    padding-bottom: 10px;
}
.footer footer p a {
    font-size: 14px;
    color: #FFFFFF;
    text-decoration: none;
}
@media screen and (max-width:481px) {
    .footer footer .footer1 {
        display: none;
    }
    .container .content article section .center .foot_tel {
        font-size: 16px;
    }
    .container .content article section .footer_logo {
        width: 50%;
        margin-left: 25%;
    }
}
@media screen and (min-width:481px) and (max-width:768px) {
    .container .footer footer .footer1 dt {
        font-weight: bold;
        color: #656565;
        float: left;
    }
    .container .footer footer .footer1 dd {
        margin-left: 80px;
        margin-bottom: 10px;
    }
    .container .content article section .center .foot_tel {
        font-size: 18px;
    }
    .container .content article section .footer_logo {
        width: 30%;
        margin-left: 35%;
    }
    .center .foot_tel a {
        font-size: 1.8em;
    }
}
@media screen and (min-width:769px) {
    .container .content article section .center .foot_tel {
        font-size: 24px;
    }
    .container .content article section .footer_logo {
        width: 243px;
        margin-left: 250px;
    }
    .center .foot_tel a {
        font-size: 32px;
    }
}
/* サイドバー
---------------------------------*/
/* ~~ レイアウトに使用するカラムです。~~ 

1) 余白は、div の上部または下部にのみ配置されます。これらの div 内のエレメントには、それ自体に余白があるので、ボックスモデル計算を行う必要がありません。ただし、div 自体に両側の余白やボーダーを指定した場合、その値が加算されたものが合計幅になることに注意してください。div 内のエレメントの余白を削除し、さらにその div 内に、全体のデザインに必要な幅や余白を指定していない 2 つ目の div を追加することもできます。

2) カラムはすべてフロートしているため、マージンは指定されていません。マージンを追加する必要がある場合は、フロート方向には指定しないでください (例えば、右フロートに設定した div の右マージン)。多くの場合、代わりに余白を使用できます。このルールに従わない場合は、div のルールに「display:inline」宣言を追加し、一部のバージョンの Internet Explorer でマージンが 2 倍になるバグを回避する必要があります。

3) クラスはドキュメント内で複数回使用できるので (またエレメントには複数のクラスを適用できます)、カラムには ID ではなくクラス名が割り当てられます。例えば、必要に応じて 2 つのサイドバー div をスタックできます。クラスを各ドキュメントで一度しか使用しないのであれば、ユーザーの好みに応じて、クラス名を ID に変更することができます。

4) ナビゲーションを左ではなく右に配置したい場合、これらのカラムを反対方向にフロートさせると (すべて左方向にする代わりに、すべて右方向に設定)、反転してレンダリングされます。HTML ソース内で div を移動する必要はありません。

*/
.sidebar1 {
    /*float: left;*/
    width: 220px;
    background-color: #FFFFFF;
    padding-bottom: 10px;
    padding-top: 8px;
    grid-area: sidebar;
}
.container .sidebar1 aside .toiawase p {
    line-height: 31px;
}
.container .sidebar1 .menu2 h2 {
    background-color: #999999;
    font-size: 16px;
    color: #FFF;
    padding-top: 10px;
    padding-bottom: 10px;
    margin-bottom: 0px;
}
.container .sidebar1 .menu a {
    text-decoration: none;
}
/* 問い合わせ
---------------------------------*/
.toiawase {
    margin-top: 1px;
    margin-right: 1px;
    margin-bottom: 10px;
    margin-left: 0px;
    padding-bottom: 10px;
}
.container .sidebar1 .toiawase h2 {
    background-color: #797979;
    font-size: 16px;
    color: #FFF;
    padding-top: 10px;
    padding-bottom: 10px;
    margin-bottom: 15px;
}
.container .sidebar1 .toiawase a {
    text-decoration: none;
}
@media screen and (max-width:481px) {
    .container .sidebar1 {
        display: none;
    }
}
@media screen and (min-width:481px) and (max-width:768px) {
    .container .sidebar1 {
        display: none;
    }
}
@media screen and (min-width:769px) {
    .container .sidebar1 aside .side_banner {
        padding: 0px;
        width: 201px;
        margin-top: 3px;
        margin-right: 0px;
        margin-bottom: 1px;
        margin-left: 10px;
    }
    .sidebar1 aside .toiawase p .tel_sidebar {
        font-weight: bold;
        color: rgba(255, 0, 0, 1.00);
        font-size: 18px;
    }
    .sidebar1 aside .toiawase p .mobile_sidebar {
        font-weight: bold;
        color: rgba(255, 0, 0, 1.00);
        font-size: 16px;
    }
}
/*文書装飾*/
.tel {
    font-size: 16px;
    font-weight: bold;
}
.img {
    margin: 0px;
    padding: 0px;
    text-align: center;
}
strong {
    font-weight: bold;
}
.right {}
.center {
    text-align: center;
}
.container .content h1 {
    font-size: 18px;
    border-top-width: 1px;
    border-right-width: 1px;
    border-bottom-width: 1px;
    border-left: 3px solid #8D8D8D;
    border-top-style: solid;
    border-right-style: solid;
    border-bottom-style: solid;
    border-top-color: #B2B2B2;
    border-right-color: #B2B2B2;
    border-bottom-color: #B2B2B2;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 10px;
    /*margin-left: 16px;*/
    padding-top: 10px;
    padding-right: 0px;
    padding-bottom: 10px;
    padding-left: 15px;
    background-color: #F6F6F6;
    font-weight: bold;
}
.container .content h2 {
    font-size: 16px;
    border-top-width: 1px;
    border-right-width: 1px;
    border-bottom-width: 1px;
    border-left: 3px solid #012DB2;
    border-top-style: solid;
    border-right-style: solid;
    border-bottom-style: solid;
    border-top-color: #B2B2B2;
    border-right-color: #B2B2B2;
    border-bottom-color: #B2B2B2;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 10px;
    /*margin-left: 16px;*/
    padding-top: 8px;
    padding-right: 0px;
    padding-bottom: 6px;
    padding-left: 15px;
    font-weight: bold;
}
.container .content h3 {
    font-size: 16px;
    border-bottom-width: 1px;
    border-bottom-style: dashed;
    border-bottom-color: #999;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 10px;
    /*margin-left: 16px;*/
    padding-top: 8px;
    padding-right: 0px;
    padding-bottom: 6px;
    /*padding-left: 15px;*/
    font-weight: bold;
}
.container .content h4 {
    font-size: 16px;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 10px;
    /*margin-left: 16px;*/
    padding-top: 8px;
    padding-right: 0px;
    padding-bottom: 6px;
    padding-left: 15px;
    color: #EF0101;
    font-weight: bold;
}
.container .content h5 {
    font-size: 16px;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 10px;
    /*margin-left: 16px;*/
    padding-top: 8px;
    padding-right: 0px;
    padding-bottom: 6px;
    padding-left: 15px;
    color: #06F;
}
.container .content p {
    font-size: 16px;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    line-height: 32px;
    margin-bottom: 20px;
}
.container .content ul {
    font-size: 16px;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.red_bold18 {
    font-size: 18px;
    font-weight: bold;
    color: #D50000;
}
.orange_bold18 {
    font-size: 18px;
    font-weight: bold;
    color: #FF6600;
}
.green_bold {
    font-weight: bold;
    color: #12BF01;
}
.green_bold18 {
    font-size: 18px;
    font-weight: bold;
    color: #1039B5;
}
.red_bold {
    font-weight: bold;
    color: #FF0000;
}
.point12 {
    font-size: 12px;
}
@media screen and (max-width:481px) {
    .container .content h1 {
        font-size: 16px;
        margin-top: 0px;
        margin-right: 1px;
        margin-bottom: 10px;
        margin-left: 1px;
        padding-top: 8px;
        padding-right: 6px;
        padding-bottom: 6px;
        padding-left: 10px;
    }
    .container .content h2 {
        font-size: 14px;
        margin-top: 0px;
        margin-right: 1px;
        margin-bottom: 10px;
        margin-left: 1px;
        padding-top: 8px;
        padding-right: 0px;
        padding-bottom: 6px;
        padding-left: 15px;
    }
    .container .content h3 {
        margin-top: 0px;
        margin-right: 1px;
        margin-bottom: 10px;
        margin-left: 1px;
        padding-top: 8px;
        padding-right: 0px;
        padding-bottom: 6px;
        /*padding-left: 15px;*/
        font-size: 14px;
    }
}
@media screen and (min-width:481px) and (max-width:768px) {
    .container .content h1 {
        font-size: 16px;
        margin-top: 10px;
        margin-bottom: 10px;
        padding-top: 8px;
        padding-bottom: 6px;
        padding-left: 15px;
        width: auto;
        margin-left: 0px;
        /*margin-right: 6px;*/
    }
    .container .content h2 {
        font-size: 16px;
        margin-top: 0px;
        /*margin-right: 6px;*/
        margin-bottom: 10px;
        margin-left: 0px;
        padding-top: 8px;
        padding-right: 0px;
        padding-bottom: 6px;
        padding-left: 15px;
    }
    .container .content h3 {
        margin-top: 0px;
        /*margin-right: 6px;*/
        margin-bottom: 10px;
        margin-left: 0px;
        padding-top: 8px;
        padding-right: 0px;
        padding-bottom: 6px;
        padding-left: 15px;
        font-size: 16px;
    }
}
@media screen and (min-width:769px) {
    .container .content h3 {
        border-bottom-width: 1px;
        border-bottom-style: solid;
        border-bottom-color: #B2B2B2;
        margin-top: 0px;
        margin-right: 10px;
        margin-bottom: 10px;
        margin-left: 10px;
        padding-top: 8px;
        padding-right: 0px;
        padding-bottom: 6px;
        /*padding-left: 15px;*/
        font-size: 16px;
    }
}
.img_main {
    text-align: right;
    padding: 0px;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 15px;
    margin-left: 0px;
}
.img_top_menu_first {
    padding: 0px;
    float: left;
    margin-top: 0px;
    margin-right: 20px;
    margin-bottom: 0px;
    margin-left: 16px;
}
.img_top_menu {
    padding: 0px;
    float: left;
    margin-top: 0px;
    margin-right: 18px;
    margin-bottom: 0px;
}
.img_top_menu_end {
    padding: 0px;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
}
@media screen and (min-width:769px) {
    /*テーブル*/
    table.table01 {
        border-top: 1px solid #999999;
        border-left: 1px solid #999999;
        border-collapse: collapse;
        border-spacing: 0;
        background-color: #ffffff;
        empty-cells: show;
        margin-top: 3px;
        margin-bottom: 30px;
        width: 90%;
        margin-left: 5%;
    }
    .table01 th {
        border-right: 1px solid #999999;
        border-bottom: 1px solid #999999;
        color: #330000;
        background-color: #FFFFCC;
        text-align: center;
        padding: 0.3em 1em;
        font-size: 16px;
    }
    .table01 td {
        border-right: 1px solid #999999;
        border-bottom: 1px solid #999999;
        line-height: 20px;
        margin-left: 0px;
        font-size: 16px;
        padding-top: 5px;
        padding-right: 1px;
        padding-bottom: 5px;
        padding-left: 5px;
    }
}
/* ~~ このセレクターグループは、.content 内のリストに領域間隔を指定します。~~ */
.content ul, .content ol {
    padding: 0 15px 15px 40px; /* この余白は、上述の見出しと段落ルールの右の余白を表します。下の余白はリスト内の他のエレメントとの間隔用に配置され、左の余白はインデント作成用に配置されています。これは必要に応じて調整できます。 */
}
nav {
    /*height: 40px;*/
    margin: 0px;
    padding: 0px;
}
/* ~~ ナビゲーションリストのスタイル付け (Spry などの事前作成済みのフライアウトメニューを使用する場合は削除できます) ~~ */
ul.nav {
    list-style: none; /* リンク用の上部のボーダーを作成します。他のすべてのものは LI 上で下部のボーダーを使用して配置されます。 */
    margin-bottom: 15px;
}
ul.nav li {
    float: left;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: rgba(255, 255, 255, 1);
}
ul.nav a, ul.nav a:visited { /* これらのセレクターをグループ化することで、リンクのボタン表示が訪問後も確実に保持されます。 */
    display: block; /* リンクにブロックプロパティを指定し、リンクが含まれる LI 全体がリンクになるようにします。これにより、領域全体がマウスのクリックに反応するようになります。 */
    width: 159px; /*この幅により、IE6 でボタン全体をクリックできるようになります。IE6 をサポートする必要がない場合は削除できます。適切な幅を計算するには、サイドバーコンテナの幅からそのリンクの余白を減算します。 */
    text-decoration: none;
    background-color: #B0AFCC;
    margin: 0px;
    font-weight: bold;
    color: #FFF;
    text-align: center;
    padding-top: 10px;
    padding-right: 0px;
    padding-bottom: 10px;
    padding-left: 0px;
    border-left-width: 1px;
    border-left-style: solid;
    border-left-color: #FFF;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: rgba(255, 255, 255, 1);
}
ul.nav a:hover, ul.nav a:active, ul.nav a:focus { /* マウスを使用する場合もキーボードを使用する場合も、背景色とテキストカラーを変更します。 */
    background-color: #45B177;
    color: #FFF;
}
/* ~~ その他の float/clear クラス ~~ */
@media screen and (max-width:481px) {
    .fltrt {
        width: 25%;
        margin-left: 20px;
        float: right;
        margin-right: 20px;
        margin-bottom: 20px;
    }
    .fltlft { /* このクラスを使用すると、ページ内でエレメントを左にフローティングさせることができます。フローティングさせるエレメントは、ページ内で横に並べて表示するエレメントの前に指定する必要があります。 */
        width: 20%;
        margin-left: 15px;
        text-align: center;
        float: left;
        margin-right: 15px;
    }
}
@media screen and (min-width:481px) and (max-width:768px) {
    .fltlft { /* このクラスを使用すると、ページ内でエレメントを左にフローティングさせることができます。フローティングさせるエレメントは、ページ内で横に並べて表示するエレメントの前に指定する必要があります。 */
        width: 30%;
        margin-left: 20px;
        float: left;
        margin-bottom: 15px;
    }
    /* ~~ その他の float/clear クラス ~~ */
    .fltrt { /* このクラスを使用すると、ページ内でエレメントを右にフローティングさせることができます。フローティングさせるエレメントは、ページ内で横に並べて表示するエレメントの前に指定する必要があります。 */
        width: 25%;
        margin-right: 20px;
        float: right;
        margin-bottom: 20px;
        margin-left: 20px;
    }
}
@media screen and (min-width:769px) {
    .fltlft { /* このクラスを使用すると、ページ内でエレメントを左にフローティングさせることができます。フローティングさせるエレメントは、ページ内で横に並べて表示するエレメントの前に指定する必要があります。 */
        width: 30%;
        margin-left: 20px;
        float: left;
        margin-bottom: 15px;
    }
    /* ~~ その他の float/clear クラス ~~ */
    .fltrt { /* このクラスを使用すると、ページ内でエレメントを右にフローティングさせることができます。フローティングさせるエレメントは、ページ内で横に並べて表示するエレメントの前に指定する必要があります。 */
        width: 180px;
        margin-right: 20px;
        float: right;
        margin-bottom: 20px;
        margin-left: 20px;
    }
}
.clearfloat { /* このクラスは、#footer が #container から削除されているか取り出されている場合に、<br /> または空の div で、フローティングさせる最後の div に続く最後のエレメントとして (#container 内に) 配置できます。 */
    clear: both;
    height: 0;
    font-size: 1px;
    line-height: 0px;
}
/* セクション内のみ */
.container .content section {
    margin-bottom: 2.0em;
	margin-left: 16px;
	padding-right: 6px;
}
.container .content section p {
    /*margin-left: 10px;*/
}
@media screen and (max-width:767px) {
.container .content section {
	margin: 2.0em 0.5em;
}
.container .content section {
	padding-right: 0;
}
}
@media screen and (max-width:481px) {
    section .center .green_bold18 {
        font-size: 16px;
    }
}
/* 装飾
---------------------------------*/
.faq_q {
    font-size: 18px;
    font-weight: bold;
    color: #333;
    background-image: url(../templatere_res/smile-clean.info/res/pict/bk_q.fw.png);
    background-repeat: no-repeat;
    padding-left: 40px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #CCC;
    padding-bottom: 15px;
    padding-top: 8px;
}
.faq_a {
    font-size: 16px;
    background-image: url(../templatere_res/smile-clean.info/res/pict/bk_a.fw.png);
    padding-left: 40px;
    background-repeat: no-repeat;
    margin-left: 40px;
    margin-bottom: 30px;
}
/*　googleマップ、youtube埋め込み用*/
.embed {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    margin-bottom: 15px;
}
.embed iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 95%;
    height: 100%;
    margin-left: 2.5%;
    margin-bottom: 20px;
}
/* コンテンツ
---------------------------------*/
/* セクション内のみ */
.container article .content section {
    margin-bottom: 40px;
}
.container article .content section ul {
    font-size: 16px;
}
.container .content article section ul li {
    line-height: 28px;
    list-style-type: disc;
}
.container article .content section ol li {
    margin-bottom: 20px;
    line-height: 27px;
}
.container .content article section ol li {
    line-height: 28px;
    list-style-type: decimal;
    margin-left: 20px;
}
@media screen and (max-width:481px) {
    .container .content article p {
        font-size: 0.875em;
        line-height: 1.7em;
    }
    .content article ul li {
        font-size: 0.875em;
        line-height: 1.7em;
        margin-top: 0px;
        margin-right: 0px;
        margin-bottom: 6px;
        padding-left: 0px;
    }
    .container .content article section ol li {
        line-height: 28px;
        margin-bottom: 20px;
    }
    .container .content article section .center .purple_bold18 {
        font-size: 14px;
    }
}
@media screen and (min-width:481px) and (max-width:768px) {
    .container .content article section ol li {
        font-size: 14px;
    }
    .container .content article section .center .purple_bold18 {
        font-size: 18px;
    }
}
@media screen and (min-width:769px) {
    .container .content article section p {
        /*padding-left: 020px;*/
    }
    .container .content article section ol li {
        line-height: 30px;
        margin-bottom: 20px;
    }
}
@media screen and (max-width:481px) {
    /*.container .content article section .panel1 {
        width: 92%;
        margin-left: 3%;
        margin-bottom: 10px;
        text-align: center;
        padding: 0px;
        margin-top: 0px;
        margin-right: 0px;
    }
    .container .content article section .panel2 {
        width: 80%;
        margin-left: 10%;
        margin-bottom: 10px;
        text-align: center;
    }
    .container .content article section .panel3 {
        width: 45%;
        margin-left: 10px;
        margin-bottom: 20px;
        float: left;
    }*/
}
@media screen and (min-width:481px) and (max-width:768px) {
    .container .content article section .panel1 {
        /*width: 96%;*/
        text-align: center;
        margin-bottom: 15px;
        clear: both;
        /*margin-left: 2%;*/
        padding: 0px;
        margin-top: 0px;
    }
    .container .content article section .panel2 {
        float: left;
        width: 45%;
        margin-left: 18px;
        text-align: center;
    }
    .container .content article section .panel3 {
        float: left;
        width: 30%;
        margin-left: 10px;
        margin-right: 1%;
        margin-bottom: 15px;
    }
}
@media screen and (min-width:769px) {
    .container .content article section .panel1 {
        width: 700px;
        text-align: center;
        clear: none;
        padding: 0px;
        /*margin-top: 0px;
        margin-right: 0px;
        margin-bottom: 15px;
        margin-left: 20px;*/
    }
    .container .content article section .panel2 {
        float: left;
        width: 47%;
        /*margin-left: 18px;
        text-align: center;
        margin-bottom: 15px;*/
    }
    .container .content article section .panel3 {
        /*float: left;
        width: 220px;
        margin-left: 18px;
        /*margin-top: 20px;
        text-align: center;
        margin-bottom: 15px;*/
    }
}
.container .content article section .price_table {}
.container .content article section .price_table dt {
    font-weight: bold;
    color: #012DB2;
}
.container .content article section .price_table dd {}
.container .content article section .price_table02 {}
.container .content article section .price_table02 dt {
    font-weight: bold;
    color: #012DB2;
    border-bottom-width: 1px;
    border-bottom-color: #CCC;
}
.container .content article section .price_table02 dt sup {
    font-size: 9px;
    padding-bottom: 10px;
    vertical-align: top;
}
.container .content article section .price_table02 dd {
    border-bottom-width: 1px;
    border-bottom-style: dashed;
    border-bottom-color: #999;
    font-size: 16px;
    font-weight: bold;
    color: #FF0000;
}
.container .content article section .price_table03 {}
.container .content article section .price_table03 dt {
    font-weight: bold;
    color: #05B700;
    margin-left: 20px;
    float: left;
    border-bottom-width: 1px;
    border-bottom-color: #CCC;
}
.container .content article section .price_table03 dd {
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #CCC;
}
.container .content article section .return_top {
    font-size: 14px;
    text-align: right;
}
.container .content article section .center .foot_tel {
    font-weight: bold;
    color: #555555;
    margin-top: 20px;
}
.container .content article section .center .foot_tel a {
    text-decoration: none;
    color: #FF0000;
}
.container .content article section .center img {
    margin-bottom: 15px;
}
.container .content article section .pankuzu a {
    color: #333333;
    text-decoration: none;
}
@media screen and (max-width:481px) {
    /*料金表スマホ用*/
    .container .content article section .price_table {
        margin-left: 20px;
    }
    .container .content article section .price_table dt {
        font-weight: bold;
        margin-left: 20px;
        font-size: 14px;
    }
    .container .content article section .price_table dd {
        margin-left: 20px;
        margin-bottom: 15px;
        font-size: 14px;
    }
    .container .content article section .price_table02 {
        /*margin-left: 10px;
        margin-top: 20px;*/
        margin-bottom: 20px;
		margin-left: 0.5em;
    }
    .container .content article section .price_table02 dt {
        font-weight: bold;
        margin-left: 20px;
        border-bottom-width: 1px;
        border-bottom-color: #CCC;
        font-size: 16px;
    }
    .container .content article section .price_table02 dd {
        margin-left: 5%;
        margin-bottom: 10px;
        border-bottom-width: 1px;
        border-bottom-style: dashed;
        border-bottom-color: #999;
        margin-right: 20px;
        font-size: 16px;
        font-weight: bold;
    }
    .container .content article section .price_table03 {
        margin-left: 20px;
    }
    .container .content article section .price_table03 dt {
        font-weight: bold;
        margin-left: 20px;
        border-bottom-width: 1px;
        border-bottom-color: #CCC;
        font-size: 16px;
    }
    .container .content article section .price_table03 dd {
        margin-left: 5%;
        margin-bottom: 10px;
        border-bottom-width: 1px;
        border-bottom-style: solid;
        border-bottom-color: #CCC;
        margin-right: 20px;
        font-size: 14px;
    }
    .container .content article section .pankuzu {
        margin-top: 0px;
        margin-right: 0px;
        margin-bottom: 10px;
        margin-left: 0px;
        padding-left: 5px;
        display: none;
    }
    .container .content article section .img_sp_tab {
        padding: 0px;
    }
    .container .content article section .img_sp_tab p {
        width: 50%;
        margin-left: 25%;
    }
    .center .foot_tel a {
        font-size: 1.4em;
    }
    .container .content article .address {
        text-align: center;
        width: 100%;
        margin: 0px;
        padding: 0px;
    }
}
@media screen and (min-width:481px) and (max-width:768px) {
    .container .content article section .price_table {
        margin-left: 20px;
    }
    .container .content article section .price_table dt {
        font-weight: bold;
        margin-left: 20px;
        float: left;
    }
    .container .content article section .price_table dd {
        margin-left: 150px;
        margin-bottom: 15px;
    }
    .container .content article section .price_table02 {
        /*margin-left: 20px;
        margin-bottom: 30px;
        margin-top: 30px;*/
		margin: 30px 16px;
    }
    .container .content article section .price_table02 dt {
        font-weight: bold;
        /*margin-left: 20px;*/
        float: left;
        border-bottom-width: 1px;
        border-bottom-color: #CCC;
    }
    .container .content article section .price_table02 dd {
        margin-left: 50%;
        margin-bottom: 20px;
        border-bottom-width: 1px;
        border-bottom-style: dashed;
        border-bottom-color: #999;
        /*margin-right: 20px;*/
        padding-top: 3px;
        padding-bottom: 3px;
        font-size: 16px;
        font-weight: bold;
        padding-left: 15px;
    }
    .container .content article section .price_table03 {
        margin-left: 20px;
    }
    .container .content article section .price_table03 dt {
        font-weight: bold;
        margin-left: 20px;
        float: left;
        border-bottom-width: 1px;
        border-bottom-color: #CCC;
    }
    .container .content article section .price_table03 dd {
        margin-left: 55%;
        margin-bottom: 20px;
        border-bottom-width: 1px;
        border-bottom-style: solid;
        border-bottom-color: #CCC;
        margin-right: 20px;
    }
    .container .content article section .pankuzu {
        margin-top: 0px;
        margin-right: 0px;
        margin-bottom: 10px;
        margin-left: 0px;
        padding-left: 5px;
        font-size: 13px;
    }
    .container .content article section .img_sp_tab {
        padding: 0px;
    }
    .container .content article section .img_sp_tab p {
        width: 20%;
        margin-left: 1%;
        float: left;
    }
    .center .foot_tel a {
        font-size: 1.8em;
    }
    .container .content article .address li {
        list-style-type: none;
        margin: 0px;
        padding: 0px;
    }
    .container .content article .address {
        text-align: center;
        width: 60%;
        padding: 0px;
        margin-top: 0px;
        margin-right: 0px;
        margin-bottom: 0px;
        margin-left: 20%;
    }
}
@media screen and (min-width:769px) {
    .container .content article section .price_table {
        margin-left: 20px;
    }
    .container .content article section .price_table dt {
        font-weight: bold;
        margin-left: 20px;
        float: left;
    }
    .container .content article section .price_table dd {
        margin-left: 200px;
        margin-bottom: 15px;
    }
    .container .content article section .price_table02 {
        margin-left: 20px;
        margin-bottom: 30px;
        margin-top: 30px;
    }
    .container .content article section .price_table02 dt {
        font-weight: bold;
        /*margin-left: 20px;*/
        float: left;
        border-bottom-width: 1px;
        border-bottom-color: #CCC;
    }
    .container .content article section .price_table02 dd {
        margin-left: 52%;
        margin-bottom: 20px;
        border-bottom-width: 1px;
        border-bottom-style: dashed;
        border-bottom-color: #999;
        margin-right: 20px;
        padding-top: 3px;
        padding-bottom: 3px;
        font-size: 16px;
        font-weight: bold;
        padding-left: 15px;
    }
    .container .content article section .price_table03 {
        margin-left: 20px;
    }
    .container .content article section .price_table03 dt {
        font-weight: bold;
        margin-left: 20px;
        border-bottom-width: 1px;
        border-bottom-color: #CCC;
    }
    .container .content article section .price_table03 dd {
        margin-left: 50%;
        margin-bottom: 20px;
        border-bottom-width: 1px;
        border-bottom-style: solid;
        border-bottom-color: #CCC;
        margin-right: 20px;
        padding-top: 3px;
        padding-bottom: 3px;
    }
    .container .content article section .pankuzu {
        margin-top: 0px;
        margin-right: 0px;
        margin-bottom: 10px;
        margin-left: 0px;
        /*padding-left: 5px;*/
        font-size: 13px;
    }
    .container .content article section .img_sp_tab {
        padding: 0px;
        display: none;
    }
}
@media screen and (max-width: 768px) {
    .container .content article section .price_table dt,
    .container .content article section .price_table02 dt,
    .container .content article section .price_table03 dt,
    .container .content article section .price_table dd,
    .container .content article section .price_table02 dd,
    .container .content article section .price_table03 dd {
        float: none;      
        margin-left: 0;   
        width: auto;       
        display: block;   
		padding: 0 10px;
    }
}