@charset "UTF-8";

/* ───────────────── base.css ───────────────── */

/*
フォントサイズ早見表
回り込み
カラム
左右ボックス
リスト型メニュー
リスト各種
記述リスト
表組み
よくある質問
動画埋め込み
Googleマップ埋め込み
SNSシェアボタン
罫線
個別調整
リセット
ClearFix
*/


/* ■ フォントサイズ早見表 ==================================================================================== */

/*
※将来的にはremに移行

font-size percent/px (100% = 15px)
10px = 67%
11px = 74%
12px = 80%
13px = 87%
14px = 94%
15px = 100%
16px = 107%
17px = 114%
18px = 120%
19px = 127%
20px = 134%
21px = 140%
22px = 147%
23px = 154%
24px = 160%
25px = 167%
26px = 174%
27px = 180%
28px = 187%
29px = 193%
30px = 200%

font-size percent/px (100% = 14px)
10px = 72%
11px = 79%
12px = 86%
13px = 93%
14px = 100%
15px = 108%
16px = 115%
17px = 122%
18px = 129%
19px = 136%
20px = 143%
21px = 150%
22px = 158%
23px = 165%
24px = 172%
25px = 179%
26px = 186%
27px = 193%
28px = 200%
29px = 207%
30px = 214%

font-size percent/px (100% = 16px)
10px = 63%
11px = 69%
12px = 75%
13px = 82%
14px = 88%
15px = 94%
16px = 100%
17px = 107%
18px = 113%
19px = 119%
20px = 125%
21px = 132%
22px = 138%
23px = 144%
24px = 150%
25px = 157%
26px = 163%
27px = 169%
28px = 175%
29px = 181%
30px = 188%

*/



/* ■ 回り込み ==================================================================================== */

/* 左 */
.FloatL {
    float: left;
    margin-top: 5px;
    margin-right: 15px;
    margin-bottom: 10px;
}

/* 右 */
.FloatR {
    float: right;
    margin-top: 5px;
    margin-left: 15px;
    margin-bottom: 10px;
}



/* ■ カラム（Col） ==================================================================================== */

/* ※将来的にflexboxに移行予定 */

.Col {
    /*
display: -webkit-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-webkit-flex-wrap: wrap;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
*/
}

.Col>li {
    float: left;
}

.Col>li a {
    display: block;
}

/* 2カラム */
.Col2>li {
    width: 49%;
    margin-right: 2%;
    margin-bottom: 2%;
}

.Col2>li:nth-child(2n) {
    margin-right: 0;
}

.Col2>li:nth-child(2n+1):nth-last-child(-n+2),
.Col2>li:nth-child(2n+1):nth-last-child(-n+2)~li {
    margin-bottom: 0;
}

/* 3カラム */
.Col3>li {
    width: 32%;
    margin-right: 2%;
    margin-bottom: 2%;
}

.Col3>li:nth-child(3n) {
    margin-right: 0;
}

.Col3>li:nth-child(3n+1):nth-last-child(-n+3),
.Col3>li:nth-child(3n+1):nth-last-child(-n+3)~li {
    margin-bottom: 0;
}

/* 4カラム */
.Col4>li {
    width: 23.5%;
    margin-right: 2%;
    margin-bottom: 2%;
}

.Col4>li:nth-child(4n) {
    margin-right: 0;
}

.Col4>li:nth-child(4n+1):nth-last-child(-n+4),
.Col4>li:nth-child(4n+1):nth-last-child(-n+4)~li {
    margin-bottom: 0;
}

/* 5カラム */
.Col5>li {
    width: 18.4%;
    margin-right: 2%;
    margin-bottom: 2%;
}

.Col5>li:nth-child(5n) {
    margin-right: 0;
}

.Col5>li:nth-child(5n+1):nth-last-child(-n+5),
.Col5>li:nth-child(5n+1):nth-last-child(-n+5)~li {
    margin-bottom: 0;
}



/* ■ 左右ボックス ==================================================================================== */

/* ※将来的にflexboxに移行予定 */

.LRBox {
    /*
display: -webkit-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
*/
}

.LRBox .LBox {
    float: left;
}

.LRBox .RBox {
    float: right;
}



/* ■ リスト型メニュー ==================================================================================== */

/* IndexMenu1 */
.IndexMenu li,
.IndexMenu1 li {
    float: left;
}

.IndexMenu li.EndSide,
.IndexMenu1 li.EndSide {
    margin-right: 0 !important;
}

/* IndexMenu2 */
.IndexMenu2 li {
    float: left;
}

.IndexMenu2 li a {
    display: block;
}

.IndexMenu2 li.EndSide {
    margin-right: 0 !important;
}



/* ■ リスト各種 ==================================================================================== */

/*
ディスク（ListDisc）
ディスク：小（ListDiscS）
米印（ListKome）
米印：小（ListKomeS）
連番（ListNum）
連番：小（ListNumS）
米印連番：小（ListKomeNumS）
*/

.ListDisc li,
.ListDiscS li,
.ListKome li,
.ListKomeS li,
.ListNum li,
.ListNumS li,
.ListKomeNumS li {
    position: relative;
}

.ListDisc li:before,
.ListDiscS li:before,
.ListKome li:before,
.ListKomeS li:before,
.ListNum li:before,
.ListNumS li:before,
.ListKomeNumS li:before {
    display: inline-block;
    position: absolute;
}

.ListDisc.InlineB li,
.ListDiscS.InlineB li,
.ListKome.InlineB li,
.ListKomeS.InlineB li,
.ListNum.InlineB li,
.ListNumS.InlineB li,
.ListKomeNumS.InlineB li {
    display: inline-block;
}

/* ディスク（ListDisc） */
.ListDisc li:before {
    content: '';
}

/* ディスク：小（ListDiscS） */
.ListDiscS li:before {
    content: '';
}

/* 米印（ListKome） */
.ListKome li:before {
    content: '※';
}

/* 米印：小（ListKomeS） */
.ListKomeS li:before {
    content: '※';
}

/* 連番（ListNum） */
.ListNum li:before {
    content: counter(ListNum)".";
}

/* 連番：小（ListNumS） */
.ListNumS li:before {
    content: counter(ListNum)".";
}

/* 米印連番：小（ListKomeNumS） */
.ListKomeNumS li:before {
    content: "※" counter(ListNum);
}



/* ■ 記述リスト ==================================================================================== */

/* 左右 */
.DLHori {
    margin-bottom: 15px;
}

.DLHori dl {
    display: table;
    width: 100%;
}

.DLHori dt,
.DLHori dd {
    display: table-cell;
    line-height: 1.8em;
    vertical-align: top;
}

.DLHori dt {
    font-weight: bold;
}

/* 上下 */
.DLVert {
    margin-bottom: 15px;
}

.DLVert dt,
.DLVert dd {
    margin: 0;
    line-height: 1.8em;
}

.DLVert dt {
    font-weight: bold;
}

/* テーブルスタイル */
.DLTable {
    margin-bottom: 15px;
    border-top: 1px solid #b8b8b8;
}

.DLTable dl {
    display: table;
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    border-left: 1px solid #b8b8b8;
}

.DLTable dt,
.DLTable dd {
    display: table-cell;
    padding: 10px 15px;
    border-right: 1px solid #b8b8b8;
    border-bottom: 1px solid #b8b8b8;
    line-height: 1.8em;
    vertical-align: middle;
}

.DLTable dt {
    width: 25%;
    font-weight: bold;
    background: #f2f2f2;
}

.DLTable dd {
    width: 75%;
}



/* ■ 表組み ==================================================================================== */

.Table1,
.Table2 {
    width: 100%;
    margin-bottom: 15px;
}

.Table1 th,
.Table2 th,
.Table1 td,
.Table2 td {
    border: 1px solid #b8b8b8;
    line-height: 1.8em;
}

.Table1 th,
.Table2 th {
    font-weight: bold;
    background: #f2f2f2;
}

.Table1 td,
.Table2 td {
    background: #fff;
}

/* Table1（項目：左） */
.Table1 th {
    text-align: left;
}

.Table1 th {
    width: 25%;
}

/* Table2（項目：上） */
.Table2 th {
    text-align: center;
}







/* ■ 動画埋め込み ==================================================================================== */

.MovieWrap {
    position: relative;
    margin-bottom: 20px;
    padding-bottom: 56.25%;
    overflow: hidden;
}

.MovieWrap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

@media only screen and (max-width: 767px) {

    .MovieWrap {
        margin-bottom: 15px;
    }

}



/* ■ Googleマップ埋め込み ==================================================================================== */

.GoogleMapWrap {
    position: relative;
    padding-top: 50%;
}

.GoogleMap {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
}



/* ■ SNSシェアボタン ==================================================================================== */

/*
.SnsShare {
text-align: center;
}
*/

.SnsShare li {
    display: inline;
    margin-right: 5px;
}

/* 調整  */

/* Twitter */
/*
.twitter-share-button {
}
*/

/* Facebook */
.fb_iframe_widget {
    display: inline-block !important;
}

.fb_iframe_widget>span {
    vertical-align: baseline !important;
}

/* LINE */
.SnsShare li.Line img {
    vertical-align: top;
}

/* Google＋ */
/*
.SnsShare #___plusone_0 {
width: 70px !important;
}
*/



/* ■ 罫線 ==================================================================================== */

hr {
    margin: 30px 0;
    padding: 0;
    border-style: solid;
    border-width: 1px 0 0 0;
    border-color: #ccc;
}



/* ■ 個別調整 ==================================================================================== */

/* 左・右・中央 寄せ */
.AlignL {
    text-align: left !important;
}

.AlignC {
    text-align: center !important;
}

.AlignR {
    text-align: right !important;
}

/* ボーダー無し */
.NoBorder {
    border: none !important;
}

/* 太字にしない */
.FWN {
    font-weight: normal !important;
}

/* 写真サイズ */
.PhotoM {
    width: 60%;
    margin-left: auto;
    margin-right: auto;
}

.Photo img,
.PhotoM img {
    width: 100%;
    height: auto;
}



/* マージントップ --------------------------------------------------- */

.MT0 {
    margin-top: 0 !important;
}

.MT5 {
    margin-top: 5px !important;
}

.MT10 {
    margin-top: 10px !important;
}

.MT15 {
    margin-top: 15px !important;
}

.MT20 {
    margin-top: 20px !important;
}

.MT25 {
    margin-top: 25px !important;
}

.MT30 {
    margin-top: 30px !important;
}

.MT35 {
    margin-top: 35px !important;
}

.MT40 {
    margin-top: 40px !important;
}

.MT45 {
    margin-top: 45px !important;
}

.MT50 {
    margin-top: 50px !important;
}

@media only screen and (max-width: 767px) {

    .MT0_SP {
        margin-top: 0 !important;
    }

    .MT5_SP {
        margin-top: 5px !important;
    }

    .MT10_SP {
        margin-top: 10px !important;
    }

    .MT15_SP {
        margin-top: 15px !important;
    }

    .MT20_SP {
        margin-top: 20px !important;
    }

    .MT25_SP {
        margin-top: 25px !important;
    }

    .MT30_SP {
        margin-top: 30px !important;
    }

    .MT35_SP {
        margin-top: 35px !important;
    }

    .MT40_SP {
        margin-top: 40px !important;
    }

    .MT45_SP {
        margin-top: 45px !important;
    }

    .MT50_SP {
        margin-top: 50px !important;
    }

}

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

    .MT0_PC {
        margin-top: 0px !important;
    }

    .MT5_PC {
        margin-top: 5px !important;
    }

    .MT10_PC {
        margin-top: 10px !important;
    }

    .MT15_PC {
        margin-top: 15px !important;
    }

    .MT20_PC {
        margin-top: 20px !important;
    }

    .MT25_PC {
        margin-top: 25px !important;
    }

    .MT30_PC {
        margin-top: 30px !important;
    }

    .MT35_PC {
        margin-top: 35px !important;
    }

    .MT40_PC {
        margin-top: 40px !important;
    }

    .MT45_PC {
        margin-top: 45px !important;
    }

    .MT50_PC {
        margin-top: 50px !important;
    }

}

/* マージンボトム --------------------------------------------------- */

.MB0 {
    margin-bottom: 0 !important;
}

.MB5 {
    margin-bottom: 5px !important;
}

.MB10 {
    margin-bottom: 10px !important;
}

.MB15 {
    margin-bottom: 15px !important;
}

.MB20 {
    margin-bottom: 20px !important;
}

.MB25 {
    margin-bottom: 25px !important;
}

.MB30 {
    margin-bottom: 30px !important;
}

.MB35 {
    margin-bottom: 35px !important;
}

.MB40 {
    margin-bottom: 40px !important;
}

.MB45 {
    margin-bottom: 45px !important;
}

.MB50 {
    margin-bottom: 50px !important;
}

@media only screen and (max-width: 767px) {

    .MB0_SP {
        margin-bottom: 0 !important;
    }

    .MB5_SP {
        margin-bottom: 5px !important;
    }

    .MB10_SP {
        margin-bottom: 10px !important;
    }

    .MB15_SP {
        margin-bottom: 15px !important;
    }

    .MB20_SP {
        margin-bottom: 20px !important;
    }

    .MB25_SP {
        margin-bottom: 25px !important;
    }

    .MB30_SP {
        margin-bottom: 30px !important;
    }

    .MB35_SP {
        margin-bottom: 35px !important;
    }

    .MB40_SP {
        margin-bottom: 40px !important;
    }

    .MB45_SP {
        margin-bottom: 45px !important;
    }

    .MB50_SP {
        margin-bottom: 50px !important;
    }

}

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

    .MB0_PC {
        margin-bottom: 0px !important;
    }

    .MB5_PC {
        margin-bottom: 5px !important;
    }

    .MB10_PC {
        margin-bottom: 10px !important;
    }

    .MB15_PC {
        margin-bottom: 15px !important;
    }

    .MB20_PC {
        margin-bottom: 20px !important;
    }

    .MB25_PC {
        margin-bottom: 25px !important;
    }

    .MB30_PC {
        margin-bottom: 30px !important;
    }

    .MB35_PC {
        margin-bottom: 35px !important;
    }

    .MB40_PC {
        margin-bottom: 40px !important;
    }

    .MB45_PC {
        margin-bottom: 45px !important;
    }

    .MB50_PC {
        margin-bottom: 50px !important;
    }

}


/* 横幅「%」指定 --------------------------------------------------- */

.W5 {
    width: 5% !important;
}

.W10 {
    width: 10% !important;
}

.W15 {
    width: 15% !important;
}

.W20 {
    width: 20% !important;
}

.W25 {
    width: 25% !important;
}

.W30 {
    width: 30% !important;
}

.W35 {
    width: 35% !important;
}

.W40 {
    width: 40% !important;
}

.W45 {
    width: 45% !important;
}

.W50 {
    width: 50% !important;
}

.W55 {
    width: 55% !important;
}

.W60 {
    width: 60% !important;
}

.W65 {
    width: 65% !important;
}

.W70 {
    width: 70% !important;
}

.W75 {
    width: 75% !important;
}

.W80 {
    width: 80% !important;
}

.W85 {
    width: 85% !important;
}

.W90 {
    width: 90% !important;
}

.W95 {
    width: 95% !important;
}

.W100 {
    width: 100% !important;
}

@media only screen and (max-width: 767px) {

    .W5_SP {
        width: 5% !important;
    }

    .W10_SP {
        width: 10% !important;
    }

    .W15_SP {
        width: 15% !important;
    }

    .W20_SP {
        width: 20% !important;
    }

    .W25_SP {
        width: 25% !important;
    }

    .W30_SP {
        width: 30% !important;
    }

    .W35_SP {
        width: 35% !important;
    }

    .W40_SP {
        width: 40% !important;
    }

    .W45_SP {
        width: 45% !important;
    }

    .W50_SP {
        width: 50% !important;
    }

    .W55_SP {
        width: 55% !important;
    }

    .W60_SP {
        width: 60% !important;
    }

    .W65_SP {
        width: 65% !important;
    }

    .W70_SP {
        width: 70% !important;
    }

    .W75_SP {
        width: 75% !important;
    }

    .W80_SP {
        width: 80% !important;
    }

    .W85_SP {
        width: 85% !important;
    }

    .W90_SP {
        width: 90% !important;
    }

    .W95_SP {
        width: 95% !important;
    }

    .W100_SP {
        width: 100% !important;
    }

}

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

    .W5_PC {
        width: 5% !important;
    }

    .W10_PC {
        width: 10% !important;
    }

    .W15_PC {
        width: 15% !important;
    }

    .W20_PC {
        width: 20% !important;
    }

    .W25_PC {
        width: 25% !important;
    }

    .W30_PC {
        width: 30% !important;
    }

    .W35_PC {
        width: 35% !important;
    }

    .W40_PC {
        width: 40% !important;
    }

    .W45_PC {
        width: 45% !important;
    }

    .W50_PC {
        width: 50% !important;
    }

    .W55_PC {
        width: 55% !important;
    }

    .W60_PC {
        width: 60% !important;
    }

    .W65_PC {
        width: 65% !important;
    }

    .W70_PC {
        width: 70% !important;
    }

    .W75_PC {
        width: 75% !important;
    }

    .W80_PC {
        width: 80% !important;
    }

    .W85_PC {
        width: 85% !important;
    }

    .W90_PC {
        width: 90% !important;
    }

    .W95_PC {
        width: 95% !important;
    }

    .W100_PC {
        width: 100% !important;
    }

}



/* ■ リセット ==================================================================================== */

body {
    margin: 0;
    padding: 0;
    line-height: 1.0em;
    -webkit-text-size-adjust: none;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
th,
td,
dl,
dd,
ul,
ol,
caption,
blockquote,
input,
select,
textarea,
div {
    margin: 0;
    padding: 0;
    font-size: 100%;
}

article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
    display: block;
    margin: 0;
    padding: 0;
}

a {
    text-decoration: none;
}

*,
*:before,
*:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

input,
select,
textarea {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

*:focus {
    outline: none;
}

img {
    width: 100%;
    height: auto;
    border: none;
    vertical-align: bottom;
}

form {
    margin: 0;
    padding: 0;
}

li {
    list-style-type: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

small {
    font-size: 86%;
    line-height: 1.5em;
}

strong,
em {
    font-style: normal;
    font-weight: bold;
}



/* ■ ClearFix ==================================================================================== */

.CF:after,
.ClearFix:after {
    content: "";
    display: block;
    clear: both;
}

#Header:after,
#HeaderUnit:after,
#Footer:after,
#GlobalNav:after,
#GlobalNavSP:after,
#GlobalNavUnit:after,
#MainMenu:after,
#News:after,
#Stage:after,
#PageTop:after,
#FooterNav:after,
#FooterNavUnit:after,
.SubNavWrap:after,
.SectionMain:after,
.SectionSub:after,
.IndexMenu:after,
.IndexMenu1:after,
.IndexMenu2:after,
.TabMenu:after,
.Col:after,
.LRBox:after,
.PageNation:after,
.FormAction:after {
    content: "";
    display: block;
    clear: both;
}



/* ───────────────── page.css ───────────────── */
@charset "UTF-8";


/* ■ 汎用パーツ ==================================================================================== */


/* モーダルウインドウ --------------------------------------------------- */

@media only screen and (max-width: 767px) {}

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

    .ModalWindow {
        position: relative;
        max-width: 800px;
        margin: 0 auto;
        padding: 50px;
        background: #fff;
    }

}


/* 左右ボックス --------------------------------------------------- */

.Page_Parts .Photo {
    width: 40%;
    margin-right: 4%;
    padding: 15px;
    border: 1px solid #b8b8b8;
}

.Page_Parts .Info {
    width: 56%;
    padding: 15px;
    border: 1px solid #b8b8b8;
}


/* カラム --------------------------------------------------- */

.Page_Parts .Col li {
    border: 1px solid #b8b8b8;
}


/* リスト各種 --------------------------------------------------- */

.Page_Parts #list .SectionSub {
    padding-bottom: 20px;
    border-bottom: 1px solid #e7e7e7;
}


/* ボタン --------------------------------------------------- */

.Page_Parts #btn li {
    margin-bottom: 15px;
}


/* ボーダー色 --------------------------------------------------- */

.Page_Parts #cbo .Bo {
    margin-bottom: 20px;
    padding-bottom: 3px;
    border-bottom: 1px solid;
}


/* 背景色 --------------------------------------------------- */

.Page_Parts #cbg div {
    margin-bottom: 20px;
    color: #fff;
}


/* AutoHeightUnit --------------------------------------------------- */

#AutoHeightUnit .Col li {
    padding: 10px;
    border: 1px solid #ccc;
}


/* アコーディオンメニュー（AccoMenu） --------------------------------------------------- */

#AccoMenu .Level1 {
    display: block;
    padding: 5px 10px;
    border-bottom: solid 1px #ffffff;
    background: #c1c1c1;
}

#AccoMenu .Level2 {
    display: none;
}

#AccoMenu .Level2 li {
    padding: 5px 10px;
    border-bottom: solid 1px #ffffff;
    background: #ebebeb;
}

#AccoMenu .Level2 a {
    display: block;
}


/* タブメニュー --------------------------------------------------- */

.TabMenu {
    margin-bottom: 10px;
    border-bottom: 2px solid #666;
}

.TabMenu li {
    float: left;
    width: 32.5%;
    margin-right: 1.25%;
}

.TabMenu li:last-child {
    margin-right: 0;
}

.TabMenu a {
    display: block;
    float: left;
    width: 100%;
    padding: 12px 0 10px 0;
    border-radius: 6px 6px 0 0;
    line-height: 1.5em;
    font-weight: bold;
    text-align: center;
    background: #ccc;
}

.TabMenu a.Current {
    border-radius: 6px 6px 0 0;
    color: #fff;
    background: #666;
}

.TabContent {
    display: none;
    text-align: center;
}

.TabContent.Current {
    display: block;
}



/* ■ TOP（Page_Home） ==================================================================================== */


/* 全画面キービジュアル --------------------------------------------------- */

#PageHome #KeyVisual {
    width: 100%;
    height: 100vh;
    box-shadow: 0 20px 60px -60px #000 inset;
}

#PageHome #KeyVisual .LeadTitleSub {
    color: #b9335f;
}

#PageHome #KeyVisual .IndexMenu1 .Num {
    font-weight: 500;
    color: #b9335f;
}

@media only screen and (max-width: 767px) {

    #PageHome #KeyVisual {
        position: relative;
        max-height: 360px;
        padding: 35px 15px 0 15px;
        box-sizing: border-box;
        background: url(/img/home/keyvisual/Texture_KeyVisual_Sp.jpg) no-repeat right top;
        background-size: cover;
    }

    #PageHome #KeyVisual .Director {
        font-size: 67%;
        line-height: 1.0em;
    }

    #PageHome #KeyVisual .LeadTitleMain {
        margin-bottom: 20px;
        font-size: 200%;
        line-height: 1.5em;
    }

    #PageHome #KeyVisual .LeadTitleSub {
        margin-bottom: 15px;
        line-height: 1.6em;
    }

    #PageHome #KeyVisual .IndexMenu1 li {
        float: none;
    }

    #PageHome #KeyVisual .IndexMenu1 span {
        display: inline-block;
        vertical-align: middle;
    }

    #PageHome #KeyVisual .IndexMenu1 .Num {
        font-size: 134%;
        font-style: oblique;
        letter-spacing: -0.05em;
    }

    #PageHome #KeyVisual .IndexMenu1 .Cap {
        margin-top: -3px;
        margin-left: 6px;
        font-size: 80%;
        line-height: 1.5em;
    }

    .MinorsMds {
        margin: 20px 0 5px 0;
        font-size: 129%;
        text-decoration: underline;
        color: #ba335f;
        text-align: center;
    }

    .MinorsTxt {
        font-size: 100%;
        color: #ba335f;
    }

}

@media only screen and (max-width: 372px) {

    #PageHome #KeyVisual {
        max-height: 330px;
        padding: 40px 15px 0 15px;
    }

    #PageHome #KeyVisual .LeadTitleMain {
        margin-bottom: 18px;
        font-size: 174%;
        line-height: 1.5em;
    }

    #PageHome #KeyVisual .LeadTitleSub {
        margin-bottom: 10px;
        font-size: 94%;
        line-height: 1.6em;
    }

}

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

    #PageHome #KeyVisual {
        max-height: 290px;
        background: url(/img/home/keyvisual/Texture_KeyVisual_Pc.jpg) no-repeat center top;
        background-size: cover;
    }

    #PageHome #KeyVisual .KeyVisualUnit {
        max-width: 1050px;
        margin: 0 auto;
        padding: 6% 30px 0 30px;
    }

    #PageHome #KeyVisual .Director {
        font-size: 94%;
        line-height: 1.0em;
    }

    #PageHome #KeyVisual .LeadTitleMain {
        margin-bottom: 10px;
        font-size: 210%;
        line-height: 1.6em;
    }

    #PageHome #KeyVisual .LeadTitleSub {
        margin-bottom: 25px;
        font-size: 147%;
    }

    #PageHome #KeyVisual .IndexMenu1 {
        width: 65%;
        margin-left: -1.5%;
    }

    #PageHome #KeyVisual .IndexMenu1 li {
        width: 33%;
        margin-right: 0.5%;
    }

    #PageHome #KeyVisual .IndexMenu1 li:nth-child(3n) {
        margin-right: 0;
    }

    #PageHome #KeyVisual .IndexMenu1 span {
        display: inline-block;
        vertical-align: middle;
    }

    #PageHome #KeyVisual .IndexMenu1 .Num {
        font-size: 540%;
        font-style: oblique;
        letter-spacing: -0.05em;
    }

    #PageHome #KeyVisual .IndexMenu1 .Cap {
        margin-top: -10px;
        margin-left: 15px;
        font-size: 120%;
        line-height: 1.5em;
    }

    .MinorsMds {
        margin: 20px 0 5px 0;
        font-size: 129%;
        text-decoration: underline;
        color: #ba335f;
        text-align: center;
    }

    .MinorsTxt {
        font-size: 100%;
        color: #ba335f;
        text-align: center;
    }

}

@media print,
screen and (min-width: 1090px) {

    #PageHome #KeyVisual {
        max-height: 420px;
        background-size: cover;
    }

    #PageHome #KeyVisual .LeadTitleMain {
        margin-bottom: 16px;
        font-size: 230%;
        line-height: 1.6em;
    }

    #PageHome #KeyVisual .IndexMenu1 {
        width: 58%;
    }

}


/* お問い合わせ（Contact） --------------------------------------------------- */

@media only screen and (max-width: 767px) {

    #PageHome #Contact {
        padding: 0 15px;
    }

}

@media only screen and (max-width: 372px) {}

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

    #PageHome #Contact {
        max-width: 1090px;
        margin: 0 auto;
        padding: 0 20px;
    }

}


/* 各セクション 共通 --------------------------------------------------- */

@media only screen and (max-width: 767px) {

    #PageHome .SectionMenu {
        padding-top: 40px;
        padding-bottom: 40px;

    }

}


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

    #PageHome .SectionMenu {
        padding-top: 75px;
        padding-bottom: 75px;
    }


}

@media print,
screen and (min-width: 1090px) {

    #PageHome .SectionMenu {
        padding-bottom: 100px;
    }

}

/* 見出し（カテゴリ名）*/
#PageHome .SectionMenu h2.Mds {
    font-weight: normal;
    text-align: center;
}

#PageHome .SectionMenu h2.Mds span {
    display: block;
    line-height: 1.0em;
}

@media only screen and (max-width: 767px) {

    #PageHome .SectionMenu h2.Mds {
        margin-bottom: 20px;
    }

    #PageHome .SectionMenu h2.Mds .Jp {
        margin-bottom: 12px;
        font-size: 150%;
        letter-spacing: 0.15em;
    }

    #PageHome .SectionMenu h2.Mds .En {
        font-size: 93%;
        letter-spacing: 0.15em;
    }

}

@media only screen and (max-width: 372px) {

    #PageHome .SectionMenu h2.Mds .Jp {
        margin-bottom: 10px;
        font-size: 136%;
        letter-spacing: 0.15em;
    }

    #PageHome .SectionMenu h2.Mds .En {
        font-size: 86%;
        letter-spacing: 0.15em;
    }

}

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

    #PageHome .SectionMenu h2.Mds {
        margin-bottom: 40px;
    }

    #PageHome .SectionMenu h2.Mds .Jp {
        margin-bottom: 30px;
        font-size: 210%;
        letter-spacing: 0.15em;
    }

    #PageHome .SectionMenu h2.Mds .En {
        font-size: 120%;
        letter-spacing: 0.15em;
    }

}

@media print,
screen and (min-width: 1090px) {}


/* 豊胸３カラム --------------------------------------------------- */

.Page_Pufillis .IndexNav {
    text-align: center;
}

@media only screen and (max-width: 767px) {

    .Page_Pufillis .IndexNav {
        width: 100%;
    }

    .Page_Pufillis .IndexNav img {
        width: 90%;
    }

    .Page_Pufillis .IndexNav .Mds {
        color: #91294b;
        margin-bottom: 15px;
        font-size: 107%;
        line-height: 1.7em;
    }

    .Page_Pufillis .Col>li {
        width: 49%;
        margin-right: 2%;
        margin-bottom: 2%;
    }

    .Page_Pufillis .Col>li:nth-child(2n) {
        margin-right: 0;
    }

    .Page_Pufillis .Col>li:nth-child(2n+1):nth-last-child(-n+2),
    .Page_Pufillis .Col>li:nth-child(2n+1):nth-last-child(-n+2)~li {
        margin-bottom: 0;
    }

}


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

    .Page_Pufillis .IndexNav {
        width: 100%;
        padding-bottom: 30px;
    }

    .Page_Pufillis .IndexNav img {
        width: 90%;
    }

    .Page_Pufillis .IndexNav .Mds {
        color: #91294b;
        margin-bottom: 15px;
        font-size: 120%;
        line-height: 1.7em;
    }

    .Page_Pufillis .Col>li {
        width: 32%;
        margin-right: 2%;
        margin-bottom: 2%;
    }

    .Page_Pufillis .Col>li:nth-child(3n) {
        margin-right: 0;
    }

    .Page_Pufillis .Col>li:nth-child(3n+1):nth-last-child(-n+3),
    .Page_Pufillis .Col>li:nth-child(3n+1):nth-last-child(-n+3)~li {
        margin-bottom: 0;
    }

}

@media print,
screen and (min-width: 1090px) {}




/* 当院がはじめての⽅へ（SectionBeginners） --------------------------------------------------- */

#PageHome .SectionBeginners .IndexNav .IndexMenu1>li a {
    display: block;
    font-family: 'Noto Serif JP', serif;
    font-weight: normal;
    letter-spacing: 0.08em;
    color: #000;
}

@media only screen and (max-width: 767px) {

    #PageHome .SectionBeginners .IndexNav {
        width: 100%;
        border: 1px solid #e3adbf;
    }

    #PageHome .SectionBeginners .IndexNav .IndexMenu1>li {
        display: table;
        width: 100%;
        border-bottom: 1px solid #e3adbf;
    }

    #PageHome .SectionBeginners .IndexNav .IndexMenu1>li:last-child {
        border-bottom: none;
    }

    #PageHome .SectionBeginners .IndexNav .IndexMenu1>li a {
        position: relative;
        padding: 15px 40px 15px 20px;
    }

    #PageHome .SectionBeginners .IndexNav .IndexMenu1>li a:before {
        display: inline-block;
        position: absolute;
        top: 50%;
        right: 15px;
        width: 19.5px;
        height: 7px;
        background: url(/img/common/icon/Icon_LinkAllow1.png) no-repeat center top;
        background-size: contain;
        content: '';
    }

    #PageHome .SectionBeginners .IndexNav .IndexMenu1>li span {
        display: table-cell;
        line-height: 1.0em;
        vertical-align: middle;
    }

    #PageHome .SectionBeginners .IndexNav .Icon {
        width: 20%;
    }

    #PageHome .SectionBeginners .IndexNav .Cap {
        width: 80%;
        padding-left: 15px;
        font-size: 129%;
    }


}


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

    #PageHome .SectionBeginners .IndexNav {
        width: 100%;
        border: 1px solid #e3adbf;
    }

    #PageHome .SectionBeginners .IndexNav .IndexMenu1>li {
        width: 20%;
        box-sizing: border-box;
        border-right: 1px solid #e3adbf;
    }

    #PageHome .SectionBeginners .IndexNav .IndexMenu1>li:last-child {
        border-right: none;
    }

    #PageHome .SectionBeginners .IndexNav .IndexMenu1>li a {
        width: 100%;
        padding: 45px 0 35px 0;
        font-size: 129%;
        text-align: center;
    }

    #PageHome .SectionBeginners .IndexNav .IndexMenu1>li a span {
        display: block;
        margin: 0 auto;
    }

    #PageHome .SectionBeginners .IndexNav .IndexMenu1 .Icon {
        margin-bottom: 30px;
    }

    #PageHome .SectionBeginners .IndexNav .IndexMenu1 .Icon img {
        width: 55px;
        height: auto;
    }

    #PageHome .SectionBeginners .IndexNav .IndexMenu1 .Menu2 .Icon {
        margin-left: 5px;
    }

    #PageHome .SectionBeginners .IndexNav .IndexMenu1 .Menu5 .Icon {
        margin-left: 5px;
    }


}

@media print,
screen and (min-width: 1090px) {

    #PageHome .SectionBeginners .IndexNav .IndexMenu1>li a {
        font-size: 143%;
    }

}


/* ⼈気の美容整形メニュー（SectionPopular） --------------------------------------------------- */

#PageHome .SectionPopular .IndexNav .IndexList>li {
    display: table;
    box-sizing: border-box;
    border: 1px solid #e3adbf;
}

#PageHome .SectionPopular .IndexNav .IndexList>li a {
    display: table-cell;
    width: 100%;
    box-sizing: border-box;
    color: #000;
    vertical-align: middle;
}

#PageHome .SectionPopular .IndexNav h3.Mds {
    letter-spacing: -0.05em;
    text-shadow: 1px 1px 0 #fff, -1px 1px 0 #fff, 1px -1px 0 #fff, -1px -1px 0 #fff;
}

#PageHome .SectionPopular .IndexNav h4.Mds {
    font-weight: normal;
}

#PageHome .SectionPopular .IndexNav .Details .Lead1,
#PageHome .SectionPopular .IndexNav .Details .Lead2 {
    display: inline-block;
    line-height: 1.0em;
    vertical-align: middle;
}

#PageHome .SectionPopular .IndexNav .Details .Lead2 em,
#PageHome .SectionPopular .IndexNav .Details .Lead2 span {
    display: inline-block;
}

#PageHome .SectionPopular .IndexNav .Details .Lead2 {
    color: #b9335f;
    font-weight: bold;
}

#PageHome .SectionPopular .IndexNav .Details .Lead2 em {
    font-family: 'Amiri', serif;
    font-weight: 400;
    letter-spacing: -0.01em;
}

#PageHome .SectionPopular .IndexNav .Details .Lead2 span {
    font-family: 'Noto Serif JP', serif;
    font-size: 72%;
}

#PageHome .SectionPopular .IndexNav .Bg1 {
    background: url(/img/home/popular/Texture_IndexBg1.jpg) no-repeat right top;
    background-size: cover;
}

#PageHome .SectionPopular .IndexNav .Bg2 {
    background: url(/img/home/popular/Texture_IndexBg2.jpg) no-repeat right top;
    background-size: cover;
}

#PageHome .SectionPopular .IndexNav .Bg3 {
    background: url(/img/home/popular/Texture_IndexBg3.jpg) no-repeat right top;
    background-size: cover;
}

#PageHome .SectionPopular .IndexNav .Bg4 {
    background: url(/img/home/popular/Texture_IndexBg4.jpg) no-repeat right top;
    background-size: cover;
}

#PageHome .SectionPopular .IndexNav .Bg5 {
    background: url(/img/home/popular/Texture_IndexBg5.jpg) no-repeat right top;
    background-size: cover;
}

#PageHome .SectionPopular .IndexNav .Bg6 {
    background: url(/img/home/popular/Texture_IndexBg6.jpg) no-repeat right top;
    background-size: cover;
}

#PageHome .SectionPopular .IndexNav .Bg7 {
    background: url(/img/home/popular/Texture_IndexBg7.jpg) no-repeat right top;
    background-size: cover;
}

#PageHome .SectionPopular .IndexNav .Bg8 {
    background: url(/img/home/popular/Texture_IndexBg8.jpg) no-repeat right top;
    background-size: cover;
}

#PageHome .SectionPopular .IndexNav .Bg9 {
    background: url(/img/home/popular/Texture_IndexBg9.jpg) no-repeat right top;
    background-size: cover;
}

@media only screen and (max-width: 767px) {

    #PageHome .SectionPopular .IndexNav .IndexList>li {
        float: none;
        width: 100%;
        margin-bottom: 10px;
    }

    #PageHome .SectionPopular .IndexNav .IndexList>li:last-child {
        margin-bottom: 0;
    }

    #PageHome .SectionPopular .IndexNav .SE {
        display: none;
    }

    #PageHome .SectionPopular .IndexNav a {
        height: 140px;
        padding: 0 15px;
    }

    #PageHome .SectionPopular .IndexNav h3.Mds {
        margin-bottom: 6px;
        font-size: 127%;
        line-height: 1.3em;
    }

    #PageHome .SectionPopular .IndexNav h4.Mds {
        margin-bottom: 8px;
        font-size: 67%;
        line-height: 1.7em;
    }

    #PageHome .SectionPopular .IndexNav .Details .Lead1 {
        font-size: 67%;
        margin-right: 1px;
    }

    #PageHome .SectionPopular .IndexNav .Details .Lead2 {
        font-size: 100%;
    }

    #PageHome .SectionPopular .IndexNav .Details .Lead2 em {
        font-size: 193%;
    }

    #PageHome .SectionPopular .IndexNav .Details .Lead2 span {
        font-size: 67%;
    }


}

@media only screen and (max-width: 372px) {

    #PageHome .SectionPopular .IndexNav .SE {
        display: block;
    }

    #PageHome .SectionPopular .IndexNav h4.Mds {
        margin-bottom: 2px;
    }

}

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

    #PageHome .SectionPopular .IndexNav .IndexList>li {
        margin-bottom: 2%;
    }

    #PageHome .SectionPopular .IndexNav .IndexList>li a {
        height: 180px;
        padding: 0 30px;
    }

    #PageHome .SectionPopular .IndexNav .SE {
        display: block;
    }

    #PageHome .SectionPopular .IndexNav h3.Mds {
        margin-bottom: 6px;
        font-size: 172%;
        line-height: 1.4em;
    }

    #PageHome .SectionPopular .IndexNav h4.Mds {
        margin-bottom: 20px;
        font-size: 93%;
        line-height: 1.7em;
    }

    #PageHome .SectionPopular .IndexNav .Details .Lead1 {
        font-size: 93%;
        margin-right: 5px;
    }

    #PageHome .SectionPopular .IndexNav .Details .Lead2 {
        font-size: 115%;
    }

    #PageHome .SectionPopular .IndexNav .Details .Lead2 em {
        font-size: 230%;
    }

    #PageHome .SectionPopular .IndexNav .Details .Lead2 span {
        font-size: 72%;
    }


}

@media print,
screen and (min-width: 1090px) {

    #PageHome .SectionPopular .IndexNav .SE {
        display: none;
    }

    #PageHome .SectionPopular .IndexNav .IndexList>li a {
        height: 190px;
    }

    #PageHome .SectionPopular .IndexNav h3.Mds {
        font-size: 179%;
        line-height: 1.4em;
    }

    #PageHome .SectionPopular .IndexNav .Details .Lead2 em {
        font-size: 250%;
    }

}


/* 浅⾒ドクター厳選メニュー（SectionSelection） --------------------------------------------------- */

#PageHome .SectionSelection .IndexNav .IndexList>li {
    display: table;
    box-sizing: border-box;
    border: 1px solid;
    overflow: hidden;
}

#PageHome .SectionSelection .IndexNav .IndexList>li a {
    display: table-cell;
    width: 100%;
    box-sizing: border-box;
    text-align: center;
    color: #000;
    vertical-align: bottom;
}

#PageHome .SectionSelection .IndexNav .IndexList>li.Menu1 {
    border-color: #f07799;
    background: #fff url(/img/home/selection/Texture_IndexBg1.jpg) no-repeat center top;
    background-size: cover;
}

#PageHome .SectionSelection .IndexNav .IndexList>li.Menu2 {
    border-color: #88d0ee;
    background: #fff url(/img/home/selection/Texture_IndexBg2.jpg) no-repeat center top;
    background-size: cover;
}

#PageHome .SectionSelection .IndexNav .IndexList>li.Menu3 {
    border-color: #bf8df0;
    background: #fff url(/img/home/selection/Texture_IndexBg3.jpg) no-repeat center top;
    background-size: cover;
}

#PageHome .SectionSelection .IndexNav .Menu1 h3.Mds {
    color: #f07799;
}

#PageHome .SectionSelection .IndexNav .Menu2 h3.Mds {
    color: #487dd5;
}

#PageHome .SectionSelection .IndexNav .Menu3 h3.Mds {
    color: #a974de;
}

@media only screen and (max-width: 767px) {

    #PageHome .SectionSelection .IndexNav .IndexList>li {
        float: none;
        width: 100%;
        margin-bottom: 15px;
    }

    #PageHome .SectionSelection .IndexNav .IndexList>li:last-child {
        margin-bottom: 0;
    }

    #PageHome .SectionSelection .IndexNav .IndexList>li a {
        height: 295px;
        padding-bottom: 30px;
    }

    #PageHome .SectionSelection .IndexNav h3.Mds {
        margin-bottom: 2px;
        font-size: 150%;
        line-height: 1.5em;
    }

    #PageHome .SectionSelection .IndexNav .Lead1 {
        font-size: 86%;
    }

}

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

    #PageHome .SectionSelection .IndexNav .IndexList>li a {
        height: 270px;
        padding-bottom: 30px;
    }

    #PageHome .SectionSelection .IndexNav h3.Mds {
        margin-bottom: 2px;
        font-size: 167%;
        line-height: 1.5em;
    }

    #PageHome .SectionSelection .IndexNav .Lead1 {
        font-size: 93%;
    }

}

@media print,
screen and (min-width: 1090px) {

    #PageHome .SectionSelection .IndexNav .IndexList>li a {
        height: 340px;
        padding-bottom: 40px;
    }

}


/* お悩み別施術メニュー（SectionProblem） --------------------------------------------------- */

#PageHome .SectionProblem .IndexNav a {
    display: block;
    color: #000;
}

#PageHome .SectionProblem .IndexNav .InBox {
    position: relative;
    background: #fff;
}

#PageHome .SectionProblem .IndexNav h3.Mds {
    position: absolute;
    background: #ad9e84;
    text-align: center;
    line-height: 1.0em;
    color: #fff;
}

#PageHome .SectionProblem .IndexNav .MenuList li {
    float: none;
    border-bottom: 1px solid #e9e9e9;
}

#PageHome .SectionProblem .IndexNav .MenuList>li a {
    position: relative;
}

#PageHome .SectionProblem .IndexNav .MenuList>li a:before {
    display: inline-block;
    position: absolute;
    background: url(/img/common/icon/Icon_LinkAllow1.png) no-repeat center top;
    background-size: contain;
    content: '';
}

@media only screen and (max-width: 767px) {

    #PageHome .SectionProblem .IndexNav .IndexList>li {
        width: 100%;
        margin-bottom: 20px;
    }

    #PageHome .SectionProblem .IndexNav .InBox {
        padding: 25px 20px 30px 20px;
    }

    #PageHome .SectionProblem .IndexNav h3.Mds {
        top: -25px;
        left: 0;
        right: 0;
        margin: 0 20px;
        padding: 15px 0;
        font-size: 143%;
    }

    #PageHome .SectionProblem .IndexNav .MenuList>li a {
        padding: 15px 40px 15px 20px;
        font-size: 115%;
        line-height: 1.7em;
    }

    #PageHome .SectionProblem .IndexNav .MenuList>li a:before {
        top: 50%;
        right: 10px;
        width: 19.5px;
        height: 7px;
    }

}

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

    #PageHome .SectionProblem .IndexNav .IndexList>li {
        margin-bottom: 2%;
    }

    #PageHome .SectionProblem .IndexNav .InBox {
        padding: 30px 30px 45px 30px;
    }

    #PageHome .SectionProblem .IndexNav h3.Mds {
        top: -30px;
        left: 0;
        right: 0;
        margin: 0 30px;
        padding: 15px 0;
        font-size: 165%;
    }

    #PageHome .SectionProblem .IndexNav .MenuList li {
        float: none;
        border-bottom: 1px solid #e9e9e9;
    }

    #PageHome .SectionProblem .IndexNav .MenuList>li a {
        position: relative;
        width: 100%;
        padding: 15px 40px 15px 20px;
        font-size: 115%;
        line-height: 1.7em;
    }

    #PageHome .SectionProblem .IndexNav .MenuList>li a:before {
        display: inline-block;
        position: absolute;
        top: 50%;
        right: 0;
        width: 19.5px;
        height: 7px;
        background: url(/img/common/icon/Icon_LinkAllow1.png) no-repeat center top;
        background-size: contain;
        content: '';
    }

}


/* お悩み別施術メニュー（SectionClinic） --------------------------------------------------- */

#PageHome .SectionClinic a {
    color: #000;
}

#PageHome .SectionClinic .Lead1 a {
    color: #b9335f;
}

#PageHome .SectionClinic .Lead1 span {
    display: inline-block;
    line-height: 1.0em;
    vertical-align: middle;
}

#PageHome .SectionClinic .Lead1 .Num {
    letter-spacing: -0.01em;
}


#PageHome .SectionClinic .BtnDetails {
    position: relative;
    box-sizing: border-box;
    border: 1px solid #e3adbf;
    line-height: 1.0em;
    color: #b9335f;
}

#PageHome .SectionClinic .BtnDetails:before {
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 10px;
    width: 19.5px;
    height: 7px;
    margin-top: -3.5px;
    background: url(/img/common/icon/Icon_LinkAllow1.png) no-repeat center top;
    background-size: contain;
    content: '';
}

/* 見出し（カテゴリ名）*/
#PageHome .SectionClinic h2.Mds {
    font-weight: normal;
    text-align: center;
}

#PageHome .SectionClinic h2.Mds span {
    display: block;
    line-height: 1.0em;
}

#PageHome .SectionClinic h3.Mds {
    line-height: 1.0em;
}

@media only screen and (max-width: 767px) {

    #PageHome .SectionClinic h2.Mds {
        margin-bottom: 20px;
    }

    #PageHome .SectionClinic h2.Mds .Name {
        margin-bottom: 10px;
        font-size: 115%;
    }

    #PageHome .SectionClinic h2.Mds .Place {
        font-size: 165%;
    }

    #PageHome .SectionClinic h3.Mds {
        margin-bottom: 15px;
        font-size: 150%;
    }

    #PageHome .SectionClinic .IndexNav .IndexList>li {
        float: none;
        width: 100%;
        margin-bottom: 30px;
    }

    #PageHome .SectionClinic .IndexNav .IndexList>li:last-child {
        margin-bottom: 0;
    }

    #PageHome .SectionClinic .Thumb {
        margin-bottom: 15px;
    }

    #PageHome .SectionClinic .Lead1 {
        margin-bottom: 10px;
    }

    #PageHome .SectionClinic .Lead1 .Symbol {
        margin-top: 5px;
        margin-right: 5px;
        font-size: 143%;
    }

    #PageHome .SectionClinic .Lead1 .Num {
        font-size: 220%;
    }

    #PageHome .SectionClinic .Lead2 {
        font-size: 100%;
        line-height: 1.8em;
    }

    #PageHome .SectionClinic .BtnDetails {
        width: 100%;
        margin-top: 15px;
        padding: 15px;
        font-size: 115%;
    }

}

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

    #PageHome .SectionClinic h2.Mds {
        margin-bottom: 40px;
    }

    #PageHome .SectionClinic h2.Mds .Name {
        margin-bottom: 25px;
        font-size: 172%;
    }

    #PageHome .SectionClinic h2.Mds .Place {
        font-size: 220%;
    }

    #PageHome .SectionClinic h3.Mds {
        margin-bottom: 15px;
        font-size: 172%;
        line-height: 1.0em;
    }

    #PageHome .SectionClinic .Thumb {
        margin-bottom: 25px;
    }

    #PageHome .SectionClinic .Lead1 {
        margin-bottom: 8px;
    }

    #PageHome .SectionClinic .Lead1 a {
        pointer-events: none;
    }

    #PageHome .SectionClinic .Lead1 .Symbol {
        margin-top: 5px;
        margin-right: 5px;
    }

    #PageHome .SectionClinic .Lead1 .Num {
        font-size: 214%;
    }

    #PageHome .SectionClinic .Lead2 {
        font-size: 108%;
        line-height: 1.8em;
    }

    #PageHome .SectionClinic .BtnDetails {
        width: 75%;
        margin-top: 20px;
        padding: 15px 30px 15px 15px;
        font-size: 108%;
    }

    #PageHome .SectionClinic .BtnDetails:before {}

}

@media print,
screen and (min-width: 1090px) {

    #PageHome .SectionClinic .BtnDetails {
        width: 55%;
    }

}



/* ■ 下層ページ（PageSubPage） ==================================================================================== */

/* 各セクション 共通 --------------------------------------------------- */

/* 見出し（カテゴリ名）*/
#PageSubPage #PageTitle {
    box-sizing: border-box;
    background: #f6f4f1;
}

@media only screen and (max-width: 767px) {

    #PageSubPage #PageTitle {
        /* margin-bottom: 30px; */
        padding: 15px 15px 30px 15px;
        box-shadow: 0 10px 20px -25px #000 inset;
    }

}

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

    #PageSubPage #PageTitle {
        /* margin-bottom: 40px; */
        padding: 12px 0 30px 0;
        box-shadow: 0 15px 25px -30px #000 inset;
    }

}

@media print,
screen and (min-width: 1090px) {

    #PageSubPage #PageTitle {
        margin-bottom: 50px;
        padding: 12px 0 40px 0;
    }

    #PageSubPage #PageTitle .MdsH1 {
        max-width: 1090px;
        margin: 0 auto;
        padding: 0 40px;
    }

}



/* ■ はじめての⽅へ ==================================================================================== */



/* ■ 施術案内（PageSurgery） ==================================================================================== */

/* 目次ページ（Page_SurgeryTop）--------------------------------------------------- */

/* ページ内リンク */
#PageSubPage.PageSurgery.Page_SurgeryTop .InPageLink {
    border-color: #ba345e;
}

#PageSubPage.PageSurgery.Page_SurgeryTop .InPageLink a {
    color: #000;
}

#PageSubPage.PageSurgery.Page_SurgeryTop .InPageLink li:last-child {
    margin-bottom: 0;
}

#PageSubPage.PageSurgery.Page_SurgeryTop .InPageLink .LinkDown:after {
    border-color: #ba345e;
}

/* 施術メニュー */
#PageSubPage.PageSurgery.Page_SurgeryTop .MenuList li {
    border-bottom: 1px solid #e9e8e5;
}

/*
#PageSubPage.PageSurgery.Page_SurgeryTop .MenuList li:last-child {
border-bottom: none;
}
*/

#PageSubPage.PageSurgery.Page_SurgeryTop .MenuList a {
    display: block;
    position: relative;
    box-sizing: border-box;
    /* background-color: #f6f4f1; */
    font-weight: normal;
    color: #000;
    text-decoration: none;
}

#PageSubPage.PageSurgery.Page_SurgeryTop .MenuList a:after {
    display: inline-block;
    /*忘れずに！*/
    position: absolute;
    top: 50%;
    right: 15px;
    width: 19.5px;
    height: 7px;
    margin-top: -3.5px;
    background: url(/img/common/icon/Icon_LinkAllow1.png) no-repeat right center;
    background-size: contain;
    vertical-align: middle;
    content: '';
}

#PageSubPage.PageSurgery.Page_SurgeryTop .MenuList .Main {
    border-bottom: none;
}

#PageSubPage.PageSurgery.Page_SurgeryTop .MenuList .Main a {
    /* background-color: #ebe7e1; */
    background-color: #b9335f;
    /* background-color: #8a7453; */
    color: #fff;
}

#PageSubPage.PageSurgery.Page_SurgeryTop .MenuList .Main a:after {
    top: 50%;
    right: 15px;
    width: 19.5px;
    height: 7px;
    margin-top: -3.5px;
    background: url(/img/common/icon/Icon_LinkAllow2.png) no-repeat right center;
    background-size: contain;
    vertical-align: middle;
    content: '';
}

@media only screen and (max-width: 767px) {

    #PageSubPage.PageSurgery.Page_SurgeryTop .MenuListWrap .LBox,
    #PageSubPage.PageSurgery.Page_SurgeryTop .MenuListWrap .RBox {
        float: none;
    }

    /* ページ内リンク */
    #PageSubPage.PageSurgery.Page_SurgeryTop .InPageLink {
        margin-bottom: 40px;
    }

    #PageSubPage.PageSurgery.Page_SurgeryTop .InPageLink li {
        float: none;
        width: 100%;
        margin-bottom: 10px;
        line-height: 1.7em;
    }

    #PageSubPage.PageSurgery.Page_SurgeryTop .InPageLink .LinkDown:after {
        top: 10px;
        margin-top: -3px;
    }

    /* 施術メニュー */
    #PageSubPage.PageSurgery.Page_SurgeryTop .MenuList a {
        padding: 15px 40px 15px 15px;
    }

}

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

    #PageSubPage.PageSurgery.Page_SurgeryTop .MenuListWrap {}

    #PageSubPage.PageSurgery.Page_SurgeryTop .MenuListWrap .LBox,
    #PageSubPage.PageSurgery.Page_SurgeryTop .MenuListWrap .RBox {
        width: 48%;
    }

    /* ページ内リンク */
    #PageSubPage.PageSurgery.Page_SurgeryTop .InPageLink {
        margin-bottom: 70px;
    }

    #PageSubPage.PageSurgery.Page_SurgeryTop .InPageLink li {
        margin-right: 3%;
        line-height: 2.5em;
    }

    /* 施術メニュー */
    #PageSubPage.PageSurgery.Page_SurgeryTop .MenuList a {
        padding: 15px 40px 15px 15px;
        line-height: 1.6em;
    }

    #PageSubPage.PageSurgery.Page_SurgeryTop .MenuList .Main a {
        font-size: 114%;
        font-weight: bold;
    }

}

@media print,
screen and (min-width: 1090px) {}



/* ■ 料金一覧（PagePrice） ==================================================================================== */

/* ページ内リンク */
#PageSubPage.PagePrice .InPageLink {
    border-color: #ba345e;
}

#PageSubPage.PagePrice .InPageLink a {
    color: #000;
}

#PageSubPage.PagePrice .InPageLink .LinkDown:after {
    border-color: #ba345e;
}

/* Table2 */
#PageSubPage.PagePrice .Table2 th {
    width: 50%;
}

@media only screen and (max-width: 767px) {

    #PageSubPage.PagePrice .InPageLink {
        margin-bottom: 40px;
    }

    #PageSubPage.PagePrice .InPageLink li {
        float: none;
        width: 100%;
        margin-bottom: 10px;
        line-height: 1.7em;
    }

    #PageSubPage.PagePrice .InPageLink .LinkDown:after {
        top: 10px;
        margin-top: -3px;
    }

}

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

    #PageSubPage.PagePrice .InPageLink {
        margin-bottom: 70px;
    }

    #PageSubPage.PagePrice .InPageLink li {
        margin-right: 3%;
        line-height: 2.5em;
    }

}

@media print,
screen and (min-width: 1090px) {}



/* ■ クリニック案内（PageHospital） ==================================================================================== */

/* 医師紹介（Page_Intro）--------------------------------------------------- */

#PageSubPage.PageHospital.Page_Intro .SectionMain {
    margin-bottom: 0;
}

#PageSubPage.PageHospital.Page_Intro .SectionSub .Lead1 {
    margin-bottom: 0;
}

#PageSubPage.PageHospital.Page_Intro .SectionSub .Info .Lead2 {
    margin-bottom: 0;
}

@media only screen and (max-width: 767px) {

    #PageSubPage.PageHospital.Page_Intro .SectionSub .LBox,
    #PageSubPage.PageHospital.Page_Intro .SectionSub .RBox {
        float: none;
        width: 100%;
    }

    #PageSubPage.PageHospital.Page_Intro .SectionSub .Thumb {
        margin-bottom: 15px;
    }

    #PageSubPage.PageHospital.Page_Intro .SectionSub .Info {
        margin-top: 20px;
    }


}

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

    #PageSubPage.PageHospital.Page_Intro .SectionSub .LBox {
        width: 25%;
    }

    #PageSubPage.PageHospital.Page_Intro .SectionSub .RBox {
        width: 70%;
    }

    #PageSubPage.PageHospital.Page_Intro .SectionSub .Info {
        margin-top: 20px;
    }

}

@media print,
screen and (min-width: 1090px) {}



/* 出版物の紹介（Page_Book）--------------------------------------------------- */

#PageSubPage.PageHospital.Page_Book .Info dl:first-child {
    padding-top: 0;
}

#PageSubPage.PageHospital.Page_Book .Info dl:last-child {
    padding-bottom: 0;
    border-bottom: none;
}

#PageSubPage.PageHospital.Page_Book .Info a {
    display: inline-block;
}

#PageSubPage.PageHospital.Page_Book .SectionSub {
    border-bottom: 1px solid #e7e7e7;
}

#PageSubPage.PageHospital.Page_Book .SectionSub:last-of-type {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}

#PageSubPage.PageHospital.Page_Book .SectionSub .Lead2 {
    margin-bottom: 0;
}

@media only screen and (max-width: 767px) {

    #PageSubPage.PageHospital.Page_Book .SectionMain .Lead1 {
        margin-bottom: 25px;
    }

    #PageSubPage.PageHospital.Page_Book .Info {
        margin-bottom: 40px;
    }

    #PageSubPage.PageHospital.Page_Book .LBox {
        width: 26%;
    }

    #PageSubPage.PageHospital.Page_Book .RBox {
        width: 70%;
    }

    #PageSubPage.PageHospital.Page_Book .SectionSub {
        margin-bottom: 20px;
        padding-bottom: 20px;
    }

    #PageSubPage.PageHospital.Page_Book .SectionSub h3.MdsH3 {
        margin-bottom: 8px !important;
    }
}

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

    #PageSubPage.PageHospital.Page_Book .Info {
        margin-bottom: 60px;
    }

    #PageSubPage.PageHospital.Page_Book .Info a {
        pointer-events: none;
        color: #000;
    }

    #PageSubPage.PageHospital.Page_Book .LBox {
        width: 22%;
    }

    #PageSubPage.PageHospital.Page_Book .RBox {
        width: 74%;
    }

    #PageSubPage.PageHospital.Page_Book .SectionSub {
        margin-bottom: 30px;
        padding-bottom: 30px;
    }

}

@media print,
screen and (min-width: 1090px) {}



/* ■ 診療までの流れ（PageProcess） ==================================================================================== */

#PageSubPage.PageProcess h2.MdsH2 span {
    display: inline-block;
}

#PageSubPage.PageProcess h2.MdsH2 .IconStep {
    color: #b9335f;
}

#PageSubPage.PageProcess .SectionSub:last-of-type {
    margin-bottom: 0;
}

#PageSubPage.PageProcess .SectionSub .Lead1 {
    margin-bottom: 0;
}

@media only screen and (max-width: 767px) {

    #PageSubPage.PageProcess .SectionMain {
        margin-bottom: 35px;
    }

    #PageSubPage.PageProcess h2.MdsH2 .IconStep {
        display: block;
        font-size: 105%;
        font-weight: 500;
        letter-spacing: 0.1em;
        line-height: 1em;
    }

    #PageSubPage.PageProcess h2.MdsH2 .IconStep .Num {
        font-size: 120%;
    }

    #PageSubPage.PageProcess .SectionSub .BtnM {
        margin-top: 20px;
    }

}

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

    #PageSubPage.PageProcess h2.MdsH2 .IconStep {
        margin-right: 8px;
        font-size: 110%;
        font-weight: 500;
        letter-spacing: 0.1em;
    }

    #PageSubPage.PageProcess h2.MdsH2 .IconStep .Num {
        font-size: 150%;
    }

    #PageSubPage.PageProcess .SectionSub .LBox {
        width: 76%;
    }

    #PageSubPage.PageProcess .SectionSub .RBox {
        width: 20%;
    }

    #PageSubPage.PageProcess .SectionSub .Lead1 {
        line-height: 2.1em;
    }

    #PageSubPage.PageProcess .SectionSub .BtnM {
        margin-top: 20px;
    }

}

@media print,
screen and (min-width: 1090px) {}



/* ■ よくある質問（PageFaq） ==================================================================================== */

h3.MdsH3 {
    color: #ba345e;
}

/* ページ内リンク --------------------------------------------------- */
.InPageLink {
    border-color: #ba345e;
}

.InPageLink a {
    color: #000;
}

.InPageLink li:last-child {
    margin-bottom: 0;
}

.InPageLink .LinkDown:after {
    border-color: #ba345e;
}


/* 目次ページ（Page_FaqTop）--------------------------------------------------- */
.Page_FaqTop .FaqMenu li:first-child {
    margin-top: 0;
}

.Page_FaqTop .FaqMenu a {
    display: block;
    position: relative;
    border: 1px solid #e9e8e5;
    background: #fff;
    font-weight: bold;
    color: #000;
}

.Page_FaqTop .FaqMenu a:after {
    display: inline-block;
    /*忘れずに！*/
    position: absolute;
    top: 50%;
    right: 15px;
    width: 19.5px;
    height: 7px;
    margin-top: -3.5px;
    background: url(/img/common/icon/Icon_LinkAllow1.png) no-repeat right center;
    background-size: contain;
    vertical-align: middle;
    content: '';
}

@media only screen and (max-width: 767px) {


    .Page_FaqTop .FaqMenu a {
        padding: 15px 40px 15px 15px;
    }

    .Page_FaqTop .FaqMenu li {
        margin-top: 10px;
    }

}

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

    .SectionSub {
        margin-bottom: 30px;
    }

    .Page_FaqTop .FaqMenu a {
        padding: 15px 40px 15px 15px;
        font-size: 114%;
    }

    .Page_FaqTop .FaqMenu li {
        margin-top: 10px;
    }

}

@media print,
screen and (min-width: 1090px) {}


@media only screen and (max-width: 767px) {

    .InPageLink {
        margin-bottom: 40px;
    }

    .InPageLink li {
        float: none;
        width: 100%;
        margin-bottom: 10px;
        line-height: 1.7em;
    }

    .InPageLink .LinkDown:after {
        top: 10px;
        margin-top: -3px;
    }

    .faq-wrap a {
        padding: 15px 40px 15px 15px;
    }
}

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

    .InPageLink {
        margin-bottom: 50px;
    }

    .InPageLink li {
        margin-right: 3%;
        line-height: 2.5em;
    }

    .SectionSub {
        margin-bottom: 30px;
    }

}

@media print,
screen and (min-width: 1090px) {}



/* ■ フォーム ==================================================================================== */

@media only screen and (max-width: 767px) {

    #PageSubPage.PageForm #Contents {
        margin-bottom: 0;
        padding-bottom: 0;
        border-bottom: none;
    }

    #PageSubPage.PageForm.PageFormStep1 .KomeS {
        margin-bottom: 10px;
    }

    #PageSubPage.PageForm.PageFormStep3 .BtnNext {
        display: block;
        width: 100%;
        margin-top: 15px;
        padding: 15px;
        font-size: 115%;
        box-sizing: border-box;
        border: 1px solid #e3adbf;
        background: #fff url(/img/common/icon/Icon_LinkAllow1.png) no-repeat;
        background-size: 19.5px auto;
        background-position: 97% 50%;
        line-height: 1.0em;
        text-align: center;
        color: #b9335f;
    }

}

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

    #PageSubPage.PageForm #Contents {
        float: none;
        width: 100%;
    }


}

@media print,
screen and (min-width: 1090px) {}



/* ■ 浅見ドクター厳選メニュー ==================================================================================== */

/* お悩み別施術メニュー（SectionMenu） --------------------------------------------------- */

#PageSubPage.PageCourse .SectionMenu .IndexNav a {
    display: block;
    color: #000;
}

#PageSubPage.PageCourse .SectionMenu .IndexList>li {
    border: 1px solid #e9e9e9;
}

#PageSubPage.PageCourse .SectionMenu .IndexNav h3.Mds {
    background: #ad9e84;
    text-align: center;
    line-height: 1.0em;
    color: #fff;
}

#PageSubPage.PageCourse .SectionMenu .IndexNav .LinkDetail {
    position: relative;
    width: 100%;
}

#PageSubPage.PageCourse .SectionMenu .IndexNav .LinkDown:after {
    left: auto !important;
    right: 0 !important;
    border-color: #ba345e;
}

#PageSubPage.PageCourse .SectionMenu .PointBox h3.MdsH3 span {
    display: block;
    ;
}

#PageSubPage.PageCourse .SectionMenu .PointBox h3.MdsH3 .Main {
    color: #ba345e;
}

#PageSubPage.PageCourse .SectionMenu .PointBox .ListNum li:last-child {
    margin-bottom: 0;
}

@media only screen and (max-width: 767px) {

    #PageSubPage.PageCourse .SectionMenu {
        margin-bottom: 40px;
    }

    #PageSubPage.PageCourse .SectionMenu .IndexNav .IndexList>li {
        width: 49%;
        margin-right: 2%;
        margin-bottom: 2%;
        padding: 10px 10px 0 10px;
    }

    #PageSubPage.PageCourse .SectionMenu .IndexNav .IndexList>li:nth-child(2n) {
        margin-right: 0;
    }

    #PageSubPage.PageCourse .SectionMenu .IndexNav .IndexList>li:nth-child(2n+1):nth-last-child(-n+2),
    #PageSubPage.PageCourse .SectionMenu .IndexNav .IndexList>li:nth-child(2n+1):nth-last-child(-n+2)~li {
        margin-bottom: 0;
    }

    #PageSubPage.PageCourse .SectionMenu .IndexNav .IndexList .Thumb {
        margin-bottom: 10px;
    }

    #PageSubPage.PageCourse .SectionMenu .IndexNav h3.Mds {
        padding: 8px 0;
        font-size: 108%;
    }

    #PageSubPage.PageCourse .SectionMenu .IndexNav .LinkDetail {
        padding: 10px 0;
        font-size: 93%;
        line-height: 1.7em;
    }

    #PageSubPage.PageCourse .SectionMenu .PointBox {
        margin-top: 25px;
    }

    #PageSubPage.PageCourse .SectionMenu .PointBox h3.MdsH3 {
        margin-bottom: 8px;
    }

    #PageSubPage.PageCourse .SectionMenu .PointBox h3.MdsH3 .Sub {
        font-size: 93%;
    }

    #PageSubPage.PageCourse .SectionMenu .PointBox h3.MdsH3 .Main {
        font-size: 115%;
    }

    #PageSubPage.PageCourse .SectionMenu .PointBox .ListNum li {
        margin-bottom: 4px;
    }

}

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

    #PageSubPage.PageCourse .SectionMenu {
        margin-bottom: 70px;
    }

    #PageSubPage.PageCourse .SectionMenu .IndexNav .IndexList>li {
        width: 32%;
        margin-right: 2%;
        margin-bottom: 2%;
        padding: 15px 15px 0 15px;
    }

    #PageSubPage.PageCourse .SectionMenu .IndexNav .IndexList>li:nth-child(3n) {
        margin-right: 0;
    }

    #PageSubPage.PageCourse .SectionMenu .IndexNav .IndexList>li:nth-child(3n+1):nth-last-child(-n+3),
    #PageSubPage.PageCourse .SectionMenu .IndexNav .IndexList>li:nth-child(3n+1):nth-last-child(-n+3)~li {
        margin-bottom: 0;
    }

    #PageSubPage.PageCourse .SectionMenu .IndexNav .IndexList .Thumb {
        margin-bottom: 15px;
    }

    #PageSubPage.PageCourse .SectionMenu .IndexNav h3.Mds {
        padding: 10px 0;
        font-size: 100%;
    }

    #PageSubPage.PageCourse .SectionMenu .IndexNav .LinkDetail {
        padding: 15px 0;
        font-size: 108%;
        text-align: center;
        line-height: 1.7em;
    }

    #PageSubPage.PageCourse .SectionMenu .IndexNav .LinkDown {
        margin-left: -5px;
    }

    #PageSubPage.PageCourse .SectionMenu .IndexNav .LinkDown:after {
        margin-right: 15px;
    }

    #PageSubPage.PageCourse .SectionMenu .PointBox {
        margin-top: 40px;
    }

    #PageSubPage.PageCourse .SectionMenu .PointBox h3.MdsH3 .Sub {
        font-size: 108%;
    }

    #PageSubPage.PageCourse .SectionMenu .PointBox h3.MdsH3 .Main {
        font-size: 129%;
    }

    #PageSubPage.PageCourse .SectionMenu .PointBox .ListNum li {
        margin-bottom: 5px;
    }
}


/* 悩み別！プチ整形メニューをご紹介（SectionIntro） --------------------------------------------------- */
#PageSubPage.PageCourse .SectionIntro .SectionMain .InBox {
    background: #f6f4f1;
}

#PageSubPage.PageCourse .SectionIntro .SectionMain .MdsArea {
    border-bottom: 1px solid #8a7453;
}

#PageSubPage.PageCourse .SectionIntro .SectionMain .MdsArea .MdsBox h3.MdsH3 span {
    display: block;
}

#PageSubPage.PageCourse .SectionIntro .SectionMain .MdsArea .MdsBox h3.MdsH3 .Main {
    color: #ba345e;
}

#PageSubPage.PageCourse .SectionIntro .SectionMain .Lead1:last-child,
#PageSubPage.PageCourse .SectionIntro .SectionMain .Lead2:last-child {
    margin-bottom: 0;
}

#PageSubPage.PageCourse .SectionIntro .SectionMain em {
    color: #ba345e;
}

#PageSubPage.PageCourse .SectionIntro .SectionSub {
    background: #fff;
}

#PageSubPage.PageCourse .SectionIntro .SectionSub:last-of-type {
    margin-bottom: 0;
}

#PageSubPage.PageCourse .SectionIntro .SectionDrMemo {
    border: 1px solid #8a7453;
}

#PageSubPage.PageCourse .SectionIntro .SectionDrMemo h5.MdsH5 {
    color: #8a7453;
}

#PageSubPage.PageCourse .SectionIntro .SectionDrMemo .LeadMain {
    font-weight: bold;
    color: #ba345e;
}

#PageSubPage.PageCourse .SectionIntro .BtnBox a {
    text-align: left;
}

@media only screen and (max-width: 767px) {

    #PageSubPage.PageCourse .SectionIntro .SectionMain {
        margin-bottom: 40px;
    }

    #PageSubPage.PageCourse .SectionIntro .SectionMain .InBox {
        padding: 20px 15px;
    }

    #PageSubPage.PageCourse .SectionIntro .SectionMain .LBox,
    #PageSubPage.PageCourse .SectionIntro .SectionMain .RBox {
        float: none;
    }

    #PageSubPage.PageCourse .SectionIntro .SectionMain .MdsArea {
        margin-bottom: 20px;
    }

    #PageSubPage.PageCourse .SectionIntro .SectionMain .MdsArea .MdsBox h3.MdsH3 .Sub {
        margin-bottom: 2px;
        line-height: 1.5em;
    }

    #PageSubPage.PageCourse .SectionIntro .SectionMain .MdsArea .MdsBox h3.MdsH3 .Main {
        font-size: 115%;
        line-height: 1.5em;
    }

    #PageSubPage.PageCourse .SectionIntro .SectionSub {
        margin-bottom: 20px;
        padding: 15px;
    }

    #PageSubPage.PageCourse .SectionIntro .SectionSub .ListDisc li {
        margin-bottom: 4px;
    }

    #PageSubPage.PageCourse .SectionIntro .SectionDrMemo {
        margin-top: 20px;
        padding: 20px 15px;
    }

    #PageSubPage.PageCourse .SectionIntro .SectionDrMemo h5.MdsH5 {
        margin-bottom: 5px;
        font-size: 122%;
    }

    #PageSubPage.PageCourse .SectionIntro .SectionDrMemo .LeadMain {
        margin-bottom: 8px;
        font-size: 115%;
        line-height: 1.6em;
    }

    #PageSubPage.PageCourse .SectionIntro .SectionDrMemo .Thumb img {
        width: 90px;
        height: auto;
    }

    #PageSubPage.PageCourse .SectionIntro .SectionDrMemo .Lead2 {
        margin-bottom: 10px;
    }

    #PageSubPage.PageCourse .SectionIntro .BtnBox {
        margin-top: 25px;
    }

    #PageSubPage.PageCourse .SectionIntro .BtnBox li {
        width: 100%;
        margin-bottom: 10px;
    }

    #PageSubPage.PageCourse .SectionIntro .BtnBox li:last-child {
        margin-bottom: 0;
    }

    #PageSubPage.PageCourse .SectionIntro .BtnBox a {
        width: 100%;
    }

}

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

    #PageSubPage.PageCourse .SectionIntro .SectionMain {
        margin-bottom: 70px;
    }

    #PageSubPage.PageCourse .SectionIntro .SectionMain .InBox {
        padding: 25px 20px;
    }

    #PageSubPage.PageCourse .SectionIntro .SectionMain .MdsArea {
        display: table;
        margin-bottom: 25px;
        padding-bottom: 20px;
    }

    #PageSubPage.PageCourse .SectionIntro .SectionMain .MdsArea .Thumb,
    #PageSubPage.PageCourse .SectionIntro .SectionMain .MdsArea .MdsBox {
        display: table-cell;
        vertical-align: middle;
    }

    #PageSubPage.PageCourse .SectionIntro .SectionMain .MdsArea .Thumb {
        width: 20%;
    }

    #PageSubPage.PageCourse .SectionIntro .SectionMain .MdsArea .MdsBox {
        width: 80%;
        padding-top: 15px;
        padding-left: 20px;
    }

    #PageSubPage.PageCourse .SectionIntro .SectionMain .MdsArea .MdsBox h3.MdsH3 .Sub {
        margin-bottom: 2px;
        font-size: 108%;
        line-height: 1.4em;
    }

    #PageSubPage.PageCourse .SectionIntro .SectionMain .MdsArea .MdsBox h3.MdsH3 .Main {
        font-size: 129%;
    }

    #PageSubPage.PageCourse .SectionIntro .SectionSub {
        margin-bottom: 20px;
        padding: 20px;
    }

    #PageSubPage.PageCourse .SectionIntro .SectionSub .ListDisc li {
        margin-bottom: 5px;
    }

    #PageSubPage.PageCourse .SectionIntro .SectionSub .Lead1 {
        line-height: 2.0em;
    }

    #PageSubPage.PageCourse .SectionIntro .SectionDrMemo {
        margin-top: 20px;
        padding: 20px;
    }

    #PageSubPage.PageCourse .SectionIntro .SectionDrMemo h5.MdsH5 {
        margin-bottom: 14px;
        font-size: 129%;
    }

    #PageSubPage.PageCourse .SectionIntro .SectionDrMemo .LeadMain {
        margin-bottom: 8px;
        font-size: 115%;
        line-height: 1.7em;
    }

    #PageSubPage.PageCourse .SectionIntro .SectionDrMemo .Lead2 {
        margin-bottom: 10px;
    }

    #PageSubPage.PageCourse .SectionIntro .SectionDrMemo .LBox {
        width: 78%;
    }

    #PageSubPage.PageCourse .SectionIntro .SectionDrMemo .RBox {
        width: 18%;
    }

    #PageSubPage.PageCourse .SectionIntro .BtnBox {
        margin-top: 35px;
    }

    #PageSubPage.PageCourse .SectionIntro .BtnBox li {
        width: 49%;
        margin-right: 2%;
    }

    #PageSubPage.PageCourse .SectionIntro .BtnBox li:nth-child(2n) {
        margin-right: 0;
    }

    #PageSubPage.PageCourse .SectionIntro .BtnBox a {
        width: 100%;
    }

}




/* ■ 汎用ライブラリー ==================================================================================== */

/*
SmartMenus
Magnific Popup
slick
*/


/* SmartMenus --------------------------------------------------- */

/* Mobile first layout SmartMenus Core CSS (it's not recommended editing these rules)
   You need this once per page no matter how many menu trees or different themes you use.
-------------------------------------------------------------------------------------------*/

.sm {
    box-sizing: border-box;
    position: relative;
    z-index: 9999;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.sm,
.sm ul,
.sm li {
    display: block;
    list-style: none;
    margin: 0;
    padding: 0;
    line-height: normal;
    direction: ltr;
    text-align: left;
}

.sm-rtl,
.sm-rtl ul,
.sm-rtl li {
    direction: rtl;
    text-align: right;
}

.sm>li>h1,
.sm>li>h2,
.sm>li>h3,
.sm>li>h4,
.sm>li>h5,
.sm>li>h6 {
    margin: 0;
    padding: 0;
}

.sm ul {
    display: none;
}

.sm li,
.sm a {
    position: relative;
}

.sm a {
    display: block;
}

.sm a.disabled {
    cursor: default;
}

.sm::after {
    content: "";
    display: block;
    height: 0;
    font: 0px/0 serif;
    clear: both;
    overflow: hidden;
}

.sm *,
.sm *::before,
.sm *::after {
    box-sizing: inherit;
}


/* Magnific Popup --------------------------------------------------- */

/* 閉じるボタン */
.mfp-close {
    display: block;
    position: absolute;
    top: -20px;
    right: -20px;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    text-indent: -9999px;
    background-color: #000;
    background-image: url(/img/common/icon/Icon_Close.png);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: 20px 20px;
}

@media only screen and (max-width: 767px) {}

@media print,
screen and (min-width: 768px) {}

@media print,
screen and (min-width: 1090px) {}


/* 親ウインドウの背景（opacityを調整） */
.mfp-bg {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 1042;
    width: 100%;
    height: 100%;
    background: #000;
    overflow: hidden;
    opacity: 0.2;
}

.mfp-wrap {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 1043;
    width: 100%;
    height: 100%;
    outline: none !important;
    -webkit-backface-visibility: hidden;
}

.mfp-container {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    padding: 0 8px;
    box-sizing: border-box;
    text-align: center;
}

.mfp-container:before {
    content: '';
    display: inline-block;
    height: 100%;
    vertical-align: middle;
}

.mfp-align-top .mfp-container:before {
    display: none;
}

.mfp-content {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    margin: 0 auto;
    text-align: left;
    z-index: 1045;
}

.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
    width: 100%;
    cursor: auto;
}

.mfp-ajax-cur {
    cursor: progress;
}

.mfp-zoom-out-cur,
.mfp-zoom-out-cur .mfp-image-holder .mfp-close {
    cursor: -moz-zoom-out;
    cursor: -webkit-zoom-out;
    cursor: zoom-out;
}

.mfp-zoom {
    cursor: pointer;
    cursor: -webkit-zoom-in;
    cursor: -moz-zoom-in;
    cursor: zoom-in;
}

.mfp-auto-cursor .mfp-content {
    cursor: auto;
}

.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter {
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
}

.mfp-loading.mfp-figure {
    display: none;
}

.mfp-hide {
    display: none !important;
}

.mfp-preloader {
    color: #CCC;
    position: absolute;
    top: 50%;
    width: auto;
    text-align: center;
    margin-top: -0.8em;
    left: 8px;
    right: 8px;
    z-index: 1044;
}

.mfp-preloader a {
    color: #CCC;
}

.mfp-preloader a:hover {
    color: #FFF;
}

.mfp-s-ready .mfp-preloader {
    display: none;
}

.mfp-s-error .mfp-content {
    display: none;
}

button.mfp-close,
button.mfp-arrow {
    overflow: visible;
    cursor: pointer;
    background: transparent;
    border: 0;
    -webkit-appearance: none;
    display: block;
    outline: none;
    padding: 0;
    z-index: 1046;
    box-shadow: none;
    touch-action: manipulation;
}

button::-moz-focus-inner {
    padding: 0;
    border: 0;
}

.mfp-close:hover,
.mfp-close:focus {
    opacity: 1;
}

.mfp-close:active {
    /* top: 1px; */
}

.mfp-close-btn-in .mfp-close {
    color: #333;
}

.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close {
    color: #FFF;
    right: -6px;
    text-align: right;
    padding-right: 6px;
    width: 100%;
}

.mfp-counter {
    position: absolute;
    top: 0;
    right: 0;
    color: #CCC;
    font-size: 12px;
    line-height: 18px;
    white-space: nowrap;
}

.mfp-arrow {
    position: absolute;
    opacity: 0.65;
    margin: 0;
    top: 50%;
    margin-top: -55px;
    padding: 0;
    width: 90px;
    height: 110px;
    -webkit-tap-highlight-color: transparent;
}

.mfp-arrow:active {
    margin-top: -54px;
}

.mfp-arrow:hover,
.mfp-arrow:focus {
    opacity: 1;
}

.mfp-arrow:before,
.mfp-arrow:after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    position: absolute;
    left: 0;
    top: 0;
    margin-top: 35px;
    margin-left: 35px;
    border: medium inset transparent;
}

.mfp-arrow:after {
    border-top-width: 13px;
    border-bottom-width: 13px;
    top: 8px;
}

.mfp-arrow:before {
    border-top-width: 21px;
    border-bottom-width: 21px;
    opacity: 0.7;
}

.mfp-arrow-left {
    left: 0;
}

.mfp-arrow-left:after {
    border-right: 17px solid #FFF;
    margin-left: 31px;
}

.mfp-arrow-left:before {
    margin-left: 25px;
    border-right: 27px solid #3F3F3F;
}

.mfp-arrow-right {
    right: 0;
}

.mfp-arrow-right:after {
    border-left: 17px solid #FFF;
    margin-left: 39px;
}

.mfp-arrow-right:before {
    border-left: 27px solid #3F3F3F;
}

.mfp-iframe-holder {
    padding-top: 40px;
    padding-bottom: 40px;
}

.mfp-iframe-holder .mfp-content {
    line-height: 0;
    width: 100%;
    max-width: 900px;
}

.mfp-iframe-holder .mfp-close {
    top: -40px;
}

.mfp-iframe-scaler {
    width: 100%;
    height: 0;
    overflow: hidden;
    padding-top: 56.25%;
}

.mfp-iframe-scaler iframe {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    background: #000;
}

/* Main image in popup */
img.mfp-img {
    width: auto;
    max-width: 100%;
    height: auto;
    display: block;
    line-height: 0;
    box-sizing: border-box;
    padding: 40px 0 40px;
    margin: 0 auto;
}

/* The shadow behind the image */
.mfp-figure {
    line-height: 0;
}

.mfp-figure:after {
    content: '';
    position: absolute;
    left: 0;
    top: 40px;
    bottom: 40px;
    display: block;
    right: 0;
    width: auto;
    height: auto;
    z-index: -1;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    background: #444;
}

.mfp-figure small {
    color: #BDBDBD;
    display: block;
    font-size: 12px;
    line-height: 14px;
}

.mfp-figure figure {
    margin: 0;
}

.mfp-bottom-bar {
    margin-top: -36px;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    cursor: auto;
}

.mfp-title {
    text-align: left;
    line-height: 18px;
    color: #F3F3F3;
    word-wrap: break-word;
    padding-right: 36px;
}

.mfp-image-holder .mfp-content {
    max-width: 100%;
}

.mfp-gallery .mfp-image-holder .mfp-figure {
    cursor: pointer;
}

@media screen and (max-width: 800px) and (orientation: landscape),
screen and (max-height: 300px) {

    /**
       * Remove all paddings around the image on small screen
       */
    .mfp-img-mobile .mfp-image-holder {
        padding-left: 0;
        padding-right: 0;
    }

    .mfp-img-mobile img.mfp-img {
        padding: 0;
    }

    .mfp-img-mobile .mfp-figure:after {
        top: 0;
        bottom: 0;
    }

    .mfp-img-mobile .mfp-figure small {
        display: inline;
        margin-left: 5px;
    }

    .mfp-img-mobile .mfp-bottom-bar {
        background: rgba(0, 0, 0, 0.6);
        bottom: 0;
        margin: 0;
        top: auto;
        padding: 3px 5px;
        position: fixed;
        box-sizing: border-box;
    }

    .mfp-img-mobile .mfp-bottom-bar:empty {
        padding: 0;
    }

    .mfp-img-mobile .mfp-counter {
        right: 5px;
        top: 3px;
    }

    .mfp-img-mobile .mfp-close {
        top: 0;
        right: 0;
        width: 35px;
        height: 35px;
        line-height: 35px;
        background: rgba(0, 0, 0, 0.6);
        position: fixed;
        text-align: center;
        padding: 0;
    }
}

@media all and (max-width: 900px) {
    .mfp-arrow {
        -webkit-transform: scale(0.75);
        transform: scale(0.75);
    }

    .mfp-arrow-left {
        -webkit-transform-origin: 0;
        transform-origin: 0;
    }

    .mfp-arrow-right {
        -webkit-transform-origin: 100%;
        transform-origin: 100%;
    }

    .mfp-container {
        padding-left: 6px;
        padding-right: 6px;
    }
}


/* slick --------------------------------------------------- */

.slick-slider {
    position: relative;

    display: block;
    box-sizing: border-box;

    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list {
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}

.slick-list:focus {
    outline: none;
}

.slick-list.dragging {
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

.slick-track {
    position: relative;
    top: 0;
    left: 0;

    display: block;
    margin-left: auto;
    margin-right: auto;
}

.slick-track:before,
.slick-track:after {
    display: table;

    content: '';
}

.slick-track:after {
    clear: both;
}

.slick-loading .slick-track {
    visibility: hidden;
}

.slick-slide {
    display: none;
    float: left;

    height: 100%;
    min-height: 1px;
}

[dir='rtl'] .slick-slide {
    float: right;
}

.slick-slide img {
    display: block;
}

.slick-slide.slick-loading img {
    display: none;
}

.slick-slide.dragging img {
    pointer-events: none;
}

.slick-initialized .slick-slide {
    display: block;
}

.slick-loading .slick-slide {
    visibility: hidden;
}

.slick-vertical .slick-slide {
    display: block;

    height: auto;

    border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
    display: none;
}


/* ───────────────── structure.css ───────────────── */
@charset "UTF-8";

/*
フォント設定
カラー設定
汎用
アイコン
横幅最大値・左右余白設定

ヘッダー（Header）
グローバルナビ（GlobalNav）
パン屑リスト（TopicPath）
常に横にいるボタン（ContactSideNavWrap）
常に下にいるボタン（ContactBottomNavWrap）
ページの先頭へ
フッターナビ（FooterNav）
フッター（Footer）
お問い合わせ（Contact）
ヘッダー・フッター以外の領域指定（Stage）

ローカルナビ（LocalNav）
コンテンツ領域（Contents）

見出し（h1〜）
メインリード（LeadMain）
メインセクション（SectionMain）
サブセクション（SectionSub）
関連情報（RelatedInfo）

記述リスト（DLHori、DLVert、DLTable）
表組み（Table1、Table2）
囲み（Box）
リスト各種
テキストリンクアイコン
ボタン
ページネーション
検索窓

フォーム

印刷用設定
*/



/* ■ フォント設定 ==================================================================================== */

/*
フォント
基準サイズ
*/


/* フォント --------------------------------------------------- */

/* WEBフォント：日本語 */
@font-face {
    font-family: 'Noto Sans Japanese';
    font-style: normal;
    font-weight: 100;
    src: url(https://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Thin.woff2) format('woff2'),
        url(https://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Thin.woff) format('woff'),
        url(https://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Thin.otf) format('opentype');
}

@font-face {
    font-family: 'Noto Sans Japanese';
    font-style: normal;
    font-weight: 200;
    src: url(https://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Light.woff2) format('woff2'),
        url(https://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Light.woff) format('woff'),
        url(https://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Light.otf) format('opentype');
}

@font-face {
    font-family: 'Noto Sans Japanese';
    font-style: normal;
    font-weight: 300;
    src: url(https://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-DemiLight.woff2) format('woff2'),
        url(https://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-DemiLight.woff) format('woff'),
        url(https://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-DemiLight.otf) format('opentype');
}

@font-face {
    font-family: 'Noto Sans Japanese';
    font-style: normal;
    font-weight: 400;
    src: url(https://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Regular.woff2) format('woff2'),
        url(https://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Regular.woff) format('woff'),
        url(https://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Regular.otf) format('opentype');
}

@font-face {
    font-family: 'Noto Sans Japanese';
    font-style: normal;
    font-weight: 500;
    src: url(https://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Medium.woff2) format('woff2'),
        url(https://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Medium.woff) format('woff'),
        url(https://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Medium.otf) format('opentype');
}

@font-face {
    font-family: 'Noto Sans Japanese';
    font-style: normal;
    font-weight: 700;
    src: url(https://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Bold.woff2) format('woff2'),
        url(https://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Bold.woff) format('woff'),
        url(https://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Bold.otf) format('opentype');
}

@font-face {
    font-family: 'Noto Sans Japanese';
    font-style: normal;
    font-weight: 900;
    src: url(https://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Black.woff2) format('woff2'),
        url(https://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Black.woff) format('woff'),
        url(https://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Black.otf) format('opentype');
}

/* WEBフォント：英語 */
.WF1 {
    font-family: 'Noto Serif JP', serif;
    font-weight: normal;
    letter-spacing: 0.08em;
}

.WF2 {
    font-family: 'Amiri', serif;
    letter-spacing: 0.08em;
}

.WF3 {
    font-family: 'Roboto', sans-serif;
    letter-spacing: 0.08em;
}

.WF4 {
    font-family: 'Noto Serif JP', serif;
    font-weight: normal;
}

/* フォントファミリー */
@media only screen and (max-width: 767px) {

    body {
        font-family: Sans-Serif;
    }

}

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

    body {
        font-family: "Noto Sans Japanese", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", Sans-Serif;
    }

}

@media print,
screen and (min-width: 1090px) {}


/* 基準サイズ --------------------------------------------------- */

@media only screen and (max-width: 767px) {

    body {
        font-size: 15px;
    }

    h1,
    h2,
    h3,
    h4,
    h5,
    h6,
    p,
    th,
    td,
    dl,
    ul,
    ol,
    caption,
    blockquote,
    input,
    select,
    textarea,
    div {
        line-height: 1.8em;
    }

}

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

    /* body {
        font-size: 12px;
    } */

    h1,
    h2,
    h3,
    h4,
    h5,
    h6,
    p,
    th,
    td,
    dl,
    ul,
    ol,
    caption,
    blockquote,
    input,
    select,
    textarea,
    div {
        line-height: 2.0em;
    }

}

@media print,
screen and (min-width: 1090px) {

    /* 基準フォントサイズ：15px */
    body {
        font-size: 15px;
    }

    h1,
    h2,
    h3,
    h4,
    h5,
    h6,
    p,
    th,
    td,
    dl,
    ul,
    ol,
    caption,
    blockquote,
    input,
    select,
    textarea,
    div {
        line-height: 2.0em;
    }

    /* 基準フォントサイズ：16px */
    /*
	body {
	font-size: 16px;
	}

	h1,h2,h3,h4,h5,h6,p,th,td,dl,ul,ol,caption,blockquote,input,select,textarea,div {
	line-height: 2.2em;
	}
*/

}



/* ■ カラー設定 ==================================================================================== */

/* 
本文・body背景
リンク
アラート
テキスト個別
ボーダー個別
背景個別
*/


/* 本文・body背景 --------------------------------------------------- */

body {
    color: #000;
    background: #fff;
}


/* リンク --------------------------------------------------- */

a:link {
    /* color: #1567a6; */
    text-decoration: none;
}

.wp-contents a:not([class]):link {
    color: #1A0DAB;
    text-decoration: underline;
}

.wp-contents a:not([class]):link:hover {
    opacity: .6;
}

a:active {
    color: #1567a6;
    text-decoration: none;
}

/* 
a:visited {
    color: #1567a6;
    text-decoration: none;
} */

@media only screen and (max-width: 767px) {}

@media print,
screen and (min-width: 768px) {}


a:link {
    -webkit-transition: color 0.3s ease 0.01s, background-color 0.3s ease 0.01s, opacity 0.3s ease 0.01s;
    transition: color 0.3s ease 0.01s, background-color 0.3s ease 0.01s, opacity 0.3s ease 0.01s;
}

a:hover:not(.jumplist>.item>a) {
    opacity: 0.7;
}



/* アラート --------------------------------------------------- */

.Alert {
    color: #e90000;
}

.Box.Alert,
.Box1.Alert {
    border-color: #e90000;
}


/* テキスト個別 --------------------------------------------------- */

.TxtColor1 {
    color: #b8b8b8 !important;
}

.TxtColor2 {
    color: #b8b8b8 !important;
}

.TxtColor3 {
    color: #b8b8b8 !important;
}


/* ボーダー個別 --------------------------------------------------- */

.BorderColor1 {
    border-color: #ccc !important;
}

.BorderColor2 {
    border-color: #ccc !important;
}

.BorderColor3 {
    border-color: #ccc !important;
}


/* 背景個別 --------------------------------------------------- */

.BgColor1 {
    background-color: #f6f4f1 !important;
}

.BgColor2 {}

.BgColor3 {}



/* ■ 汎用 ==================================================================================== */
#Wrapper {
    min-width: 320px;
}

/* 非アクティブ */
.Disabled {
    opacity: 0.3;
    pointer-events: none;
}

.Disabled:hover {
    opacity: 0.3;
}

@media only screen and (max-width: 767px) {

    .PC {
        display: none !important;
    }

    .SE {
        display: none !important;
    }

}

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

    .SP {
        display: none !important;
    }

    .SE {
        display: none !important;
    }
}

@media print,
screen and (min-width: 1090px) {}


@media screen and (max-width:320px) {

    .SE {
        display: block !important;
    }

}



/* ■ アイコン ==================================================================================== */



/* ■ 横幅最大値・左右余白設定 ==================================================================================== */

#Header,
#GlobalNav,
#FooterNav,
#BannerNav,
#Stage {
    width: 100%;
}

@media only screen and (max-width: 767px) {

    .ContentsUnit,
    .Width1,
    .Width2 {
        padding: 0 15px;
    }

    #PageWrap {
        margin: 30px 0;
    }

}

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

    #GlobalNavUnit,
    #FooterNavUnit,
    #PageWrap,
    .TopicPathUnit,
    .Width1,
    .Width2 {
        max-width: 1090px;
        margin: 40px auto;
        padding: 0 20px;
    }

    .BreadCrumbUnit {
        padding: 0 20px;
    }



}

@media print,
screen and (min-width: 1090px) {

    #GlobalNavUnit,
    #FooterNavUnit,
    #PageWrap,
    .TopicPathUnit,
    .Width1,
    .Width2 {
        padding: 0 40px;
    }

}



/* ■ ヘッダー（Header） ==================================================================================== */

.HeaderWrap {
    /* position: fixed; */
    width: 100%;
    background: #fff;
    z-index: 2000;
}

/* Logo */
#HeaderUnit .Logo a {
    display: block;
}

#HeaderUnit .ServiceName {
    display: block;
    line-height: 1.0em;
    text-indent: -9999px;
    background: url(../img/Logo.png) no-repeat;
    background-size: cover;
}

#HeaderUnit .TagLine {
    display: block;
    line-height: 1.0em;
    font-weight: 300;
    color: #000;
}

#HeaderUnit .FreeDial .TelNum a {
    color: #b9335f;
}

@media only screen and (max-width: 767px) {

    #Header {
        width: 100%;
        height: 75px;
        border-bottom: 5px solid #b9335f;
    }

    #HeaderUnit {
        margin: 0 auto;
    }

    /* Logo */
    #HeaderUnit .Logo {
        padding: 10px 0 20px 0;
    }

    #HeaderUnit .TagLine {
        margin-bottom: 10px;
        font-size: 67%;
        text-align: center;
    }

    #HeaderUnit .ServiceName {
        width: 187px;
        height: 26px;
        margin: 0 auto;
    }

    /* SubNav */
    #HeaderUnit .SubNavWrap {
        display: none;
    }

}

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

    #Header {
        height: 90px;
        box-sizing: border-box;
        border-bottom: 1px solid #e9e9e9;
    }

    /* Logo */
    #HeaderUnit .Logo {
        float: left;
        padding: 16px 0 18px 25px;
    }

    #HeaderUnit .TagLine {
        margin-bottom: 14px;
        font-size: 87%;
    }

    #HeaderUnit .ServiceName {
        width: 220px;
        height: 30px;
    }

    /* SubNav */
    #HeaderUnit .SubNavWrap {
        float: right;
        width: 55%;
    }

    #HeaderUnit .FreeDial {
        float: left;
        width: 50%;
        padding-top: 22px;
    }

    #HeaderUnit .FreeDial .TelNum {
        position: relative;
        margin-bottom: 6px;
        padding-left: 37px;
        font-size: 192%;
        line-height: 1.0em;
        color: #b9335f;
    }

    #HeaderUnit .FreeDial .TelNum:before {
        display: inline-block;
        position: absolute;
        top: 0;
        left: 0;
        width: 31px;
        height: 17px;
        margin-top: 2px;
        background: url(/img/common/icon/Icon_FreeDial.png) no-repeat center top;
        background-size: contain;
        content: '';
    }

    #HeaderUnit .FreeDial .TelNum a {
        pointer-events: none;
    }

    #HeaderUnit .FreeDial .Reception {
        font-size: 93%;
        line-height: 1.0em;
        letter-spacing: 0.08em;
        color: #000;
    }

    #HeaderUnit .SubNav {
        float: left;
        width: 50%;
    }

    #HeaderUnit .SubNav li {
        display: inline;
    }

    #HeaderUnit .SubNav li a {
        display: block;
        float: left;
        position: relative;
        width: 50%;
        border-left: 1px solid #91294b;
        background: #b9335f;
        color: #fff;
        height: 90px;
        font-size: 87%;
        text-align: center;
    }

    #HeaderUnit .SubNav li a span {
        display: block;
        position: absolute;
        left: 0;
        right: 0;
        bottom: 12px;
        margin: auto;
    }

    #HeaderUnit .SubNav li a:before {
        display: block;
        position: absolute;
        left: 50%;
        content: '';
    }

    #HeaderUnit .SubNav .Menu1 a:before {
        top: 25px;
        width: 23px;
        height: 17px;
        margin-left: -11px;
        background: url(/img/common/icon/Icon_Mail.png) no-repeat center top;
        background-size: contain;
    }

    #HeaderUnit .SubNav .Menu2 a:before {
        top: 24px;
        width: 28px;
        height: 20px;
        margin-left: -14px;
        background: url(/img/common/icon/Icon_Counselling.png) no-repeat center top;
        background-size: contain;
    }

}

/* 
@media print,
screen and (min-width: 1090px) {

    #HeaderUnit .SubNavWrap {
        width: 50%;
    }

    #HeaderUnit .FreeDial {
        width: 45%;
        padding-top: 17px;
    }

    #HeaderUnit .FreeDial .TelNum {
        padding-left: 39px;
    }

    #HeaderUnit .FreeDial .TelNum:before {
        width: 33px;
        height: 19px;
        margin-top: 3px;
    }

    #HeaderUnit .SubNav {
        width: 55%;
    }

    #HeaderUnit .SubNav li a {
        font-size: 94%;
    }

} */



/* ■ グローバルナビ（GlobalNav） ==================================================================================== */

#GlobalNav {}

#GlobalNavUnit li a {
    display: block;
    font-family: 'Noto Serif JP', serif;
    font-weight: 300;
    text-align: center;
    letter-spacing: 0.08em;
    color: #000;

}

@media only screen and (max-width: 767px) {

    #GlobalNav {
        box-shadow: 0 32px 30px -25px rgba(53, 47, 47, 0.15);
    }

    #GlobalNavUnit li {
        float: left;
        width: 33.33333%;
    }

    #GlobalNavUnit .sm li {
        float: none;
        width: 100%;
        text-align: left;
    }

    #GlobalNavUnit li a {
        padding: 15px 0;
        border-right: 1px solid #dbdbdb;
        border-bottom: 1px solid #dbdbdb;
        box-sizing: border-box;
        font-size: 87%;
        line-height: 1.0em;
    }

    #GlobalNavUnit li:nth-child(3n) a {
        border-right: none;
    }

    #GlobalNavUnit li:nth-child(n+4) a {
        border-bottom: none;
    }

    #GlobalNavUnit li a:link,
    #GlobalNavUnit li a:active,
    #GlobalNavUnit li a:visited,
    #GlobalNavUnit li a:hover {
        text-decoration: none;
    }

}

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

    #GlobalNav {
        height: 60px;
        box-shadow: 0 32px 30px -25px rgba(53, 47, 47, 0.15);
    }

    #GlobalNavUnit {
        padding-top: 16px;
    }

    #GlobalNavUnit li {
        float: left;
        width: 16.6666%;
    }

    #GlobalNavUnit li a {
        box-sizing: border-box;
        border-left: 1px solid #dbdbdb;
        font-size: 114%;
    }

    #GlobalNavUnit li:last-child a {
        border-right: 1px solid #dbdbdb;
    }

    #GlobalNavUnit li.Current .Parent a {}

    /* 下層メニュー */
    /*
	#GlobalNav .Level2 {
	position: absolute;
	z-index: 1000;
	}
	
	#GlobalNav .Level2 li {
	display: block;
	float: none;
	width: 100%;
	border: none;
	text-align: left;
	background-color: #ccc;
	}
	
*/
    /* SmartMenus設定 --------------------------------------------------- */

    /* 親メニュー選択時（.highlighted）基本hover色と同じ */
    /*
	#GlobalNav .Parent a.highlighted {
	background-color: #bb2218;
	}
*/

}

@media print,
screen and (min-width: 1090px) {}



/* ■ パン屑リスト（TopicPath） ==================================================================================== */

.TopicPathUnit li,
.BreadCrumbUnit li {
    display: inline;
    position: relative;
    margin-right: 4px;
    padding-left: 14px;
    line-height: 1.5em;
}

.TopicPathUnit li:after,
.BreadCrumbUnit li:after {
    display: block;
    position: absolute;
    left: -1px;
    top: 50%;
    width: 6px;
    height: 6px;
    margin-top: -3px;
    border-top: solid 1px #b9335f;
    border-right: solid 1px #b9335f;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: '';
}

.TopicPathUnit li:first-child,
.BreadCrumbUnit li:first-child {
    padding-left: 13px;
    background-image: url(../img/Icon_PathHome.png);
    background-repeat: no-repeat;
}

.TopicPathUnit li:first-child:after,
.BreadCrumbUnit li:first-child:after {
    display: none;
}

.TopicPathUnit li a,
.BreadCrumbUnit li a {
    color: #b9335f !important;
    text-decoration: none !important;
}

.TopicPathUnit li:last-child a,
.BreadCrumbUnit li:last-child a {
    color: #000;
    text-decoration: none;
}

@media only screen and (max-width: 767px) {

    .TopicPath,
    .BreadCrumb {
        margin-bottom: 15px;
        width: 100%;
        white-space: nowrap;
    }

    .TopicPathUnit,
    .BreadCrumbUnit {
        width: 100%;
        white-space: nowrap;
    }

    .TopicPathUnit li,
    .BreadCrumbUnit li {
        font-size: 72%;
    }

    .TopicPathUnit li:not(li.pankuzu-li),
    .BreadCrumbUnit li:not(li.pankuzu-li) {
        flex-shrink: 0;
    }

    .TopicPathUnit li:first-child,
    .BreadCrumbUnit li:first-child {
        background-size: 8px auto;
        background-position: 0 50%;
    }

}

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

    .TopicPath,
    .BreadCrumb {
        margin-bottom: 30px;
    }

    .TopicPathUnit li,
    .BreadCrumbUnit li {
        font-size: 79%;
    }

    .TopicPathUnit li:not(.pankuzu-li),
    .BreadCrumbUnit li:not(.pankuzu-li) {
        flex-shrink: 0;
    }

    .TopicPathUnit li:first-child,
    .BreadCrumbUnit li:first-child {
        background-size: 8px auto;
        background-position: 0 52%;
    }

}

@media print,
screen and (min-width: 1090px) {

    .TopicPath,
    .BreadCrumb {
        margin-bottom: 40px;
    }

}



/* ■ ページの先頭へ ==================================================================================== */

#PageTop {
    display: none;
    position: fixed;
    z-index: 3000;
    right: 20px;
    bottom: 20px;
}

@media only screen and (max-width: 767px) {

    #PageTop {
        right: 10px;
        bottom: 20px;
    }

    #PageTop img {
        width: 40px;
        height: auto;
    }

}

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

    #PageTop img {
        width: 60px;
        height: auto;
    }

}


@media print,
screen and (min-width: 1090px) {}



/* ■ 常に横にいるボタン（ContactSideNavWrap） ==================================================================================== */

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

    #ContactSideNavWrap {
        display: none;
    }

    #ContactSideNavWrap .ContactNav {
        position: fixed;
        top: 100px;
        right: 0;
        z-index: 3;
        box-shadow: -2px 4px 8px rgba(53, 47, 47, 0.15);
    }

    #ContactSideNavWrap .ContactNav li a {
        display: block;
        position: relative;
        width: 90px;
        height: 90px;
        border-bottom: 1px solid #91294b;
        background: #b9335f;
        font-size: 74%;
        text-align: center;
        line-height: 1.5em;
        color: #fff;
    }

    #ContactSideNavWrap .ContactNav li:last-child a {
        border-bottom: none;
    }

    #ContactSideNavWrap .ContactNav li a:before {
        display: block;
        position: absolute;
        left: 50%;
        content: '';
    }

    #ContactSideNavWrap .ContactNav li.Menu1 a:before {
        top: 20px;
        width: 24px;
        height: 22px;
        margin-left: -9px;
        background: url(/img/common/icon/Icon_Tel.png) no-repeat center top;
        background-size: contain;
    }

    #ContactSideNavWrap .ContactNav li.Menu2 a:before {
        top: 20px;
        width: 23px;
        height: 17px;
        margin-left: -11px;
        background: url(/img/common/icon/Icon_Mail.png) no-repeat center top;
        background-size: contain;
    }

    #ContactSideNavWrap .ContactNav li.Menu3 a:before {
        top: 15px;
        width: 28px;
        height: 20px;
        margin-left: -10px;
        background: url(/img/common/icon/Icon_Counselling.png) no-repeat center top;
        background-size: contain;
    }

    #ContactSideNavWrap .ContactNav li a span {
        display: block;
        position: absolute;
        left: 0;
        right: 0;
        bottom: 20px;
        margin: auto;
    }

    #ContactSideNavWrap .ContactNav li.Menu1 a span {
        display: block;
        position: absolute;
        left: 6px;
    }

    #ContactSideNavWrap .ContactNav li.Menu3 a span {
        display: block;
        position: absolute;
        bottom: 15px;
    }

}



/* ■ 常に下にいるボタン（ContactBottomNavWrap） ==================================================================================== */

@media only screen and (max-width: 767px) {

    #ContactBottomNavWrap {
        display: none;
    }

    #ContactBottomNavWrap .ContactNav {
        position: fixed;
        bottom: 0;
        width: 100%;
        z-index: 3;
        box-shadow: 0 -8px 10px rgba(53, 47, 47, 0.15);
    }

    #ContactBottomNavWrap .ContactNav li {
        width: 30%;
    }

    #ContactBottomNavWrap .ContactNav li:last-child {
        width: 40%;
    }

    #ContactBottomNavWrap .ContactNav li a {
        display: block !important;
        position: relative;
        width: 100%;
        height: 70px;
        border-right: 1px solid #91294b;
        background: #b9335f;
        font-size: 74%;
        text-align: center;
        line-height: 1.5em;
        color: #fff;
    }

    #ContactBottomNavWrap .ContactNav li:last-child a {
        border-right: none;
    }

    #ContactBottomNavWrap .ContactNav li a:before {
        display: block;
        position: absolute;
        top: 12px;
        left: 50%;
        content: '';
    }

    #ContactBottomNavWrap .ContactNav li.Menu1 a:before {
        width: 24px;
        height: 22px;
        margin-left: -9px;
        background: url(/img/common/icon/Icon_Tel.png) no-repeat center top;
        background-size: contain;
    }

    #ContactBottomNavWrap .ContactNav li.Menu2 a:before {
        top: 14px;
        width: 23px;
        height: 17px;
        margin-left: -11px;
        background: url(/img/common/icon/Icon_Mail.png) no-repeat center top;
        background-size: contain;
    }

    #ContactBottomNavWrap .ContactNav li.Menu3 a:before {
        width: 28px;
        height: 20px;
        margin-left: -10px;
        background: url(/img/common/icon/Icon_Counselling.png) no-repeat center top;
        background-size: contain;
    }

    #ContactBottomNavWrap .ContactNav li a span {
        display: block;
        position: absolute;
        left: 0;
        right: 0;
        bottom: 12px;
        margin: auto;
    }

    #ContactBottomNavWrap .ContactNav li.Menu1 a span {
        display: block;
        position: absolute;
        left: 6px;
    }

    #ContactBottomNavWrap .ContactNav li.Menu3 a span {
        display: block;
        position: absolute;
        bottom: 15px;
    }

}



/* ■ フッターナビ（FooterNav） ==================================================================================== */

/* 見出し（カテゴリ名） */
#FooterNavUnit .Unit h2 {
    font-family: 'Noto Serif JP', serif;
    font-weight: 300;
    letter-spacing: 0.08em;
}

#FooterNavUnit .Unit h2 a {
    display: block;
}

@media only screen and (max-width: 767px) {

    #FooterNav {
        padding: 35px 0 40px 0;
        background: #f6f4f1;
    }

    .OpenCloseUnit {
        display: none;
    }

    #FooterNavUnit {
        padding: 0 15px;
        box-sizing: border-box;
    }

    #FooterNavUnit a {
        color: #000;
    }

    #FooterNavUnit .OpenCloseUnit a {
        display: block;
        position: relative;
        border-bottom: 1px solid #e9e8e5;
        background: #fff;
        padding: 15px 40px 15px 15px;
    }

    #FooterNavUnit .OpenCloseUnit a:after {
        display: inline-block;
        /*忘れずに！*/
        position: absolute;
        top: 50%;
        right: 15px;
        width: 19.5px;
        height: 7px;
        margin-top: -3.5px;
        background: url(/img/common/icon/Icon_LinkAllow1.png) no-repeat right center;
        background-size: contain;
        vertical-align: middle;
        content: '';
    }

    /* 見出し（カテゴリ名） */
    #FooterNavUnit .Unit h2 a {
        position: relative;
        padding: 18px 15px;
        border-bottom: 1px solid #8a7453;
        font-size: 120%;
        line-height: 1.0em;
    }

    #FooterNavUnit .Unit:first-of-type h2 a {
        border-top: 1px solid #8a7453;
    }

    #FooterNavUnit .Unit h2 a:before,
    #FooterNavUnit .Unit h2 a:after {
        display: block;
        position: absolute;
        background-color: #b9335f;
        content: "";
    }

    #FooterNavUnit .Unit h2 a:before {
        top: 50%;
        right: 18px;
        width: 14px;
        height: 1px;
        margin-top: -1px;
    }

    #FooterNavUnit .Unit h2 a:after {
        top: 50%;
        right: 24px;
        width: 1px;
        height: 14px;
        margin-top: -7px;
    }

    #FooterNavUnit .Unit h2 a.Current {
        background: #ad9e84;
        border-bottom: none;
        color: #fff;
    }

    #FooterNavUnit .Unit h2 a.Current:before {
        background-color: #fff;
    }

    #FooterNavUnit .Unit h2 a.Current:after {
        display: none;
    }

}

@media only screen and (max-width: 372px) {

    #FooterNavUnit .OpenCloseUnit a {
        font-size: 80%;
    }

}

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

    #FooterNav {
        padding: 75px 0 90px 0;
        background: #f6f4f1;
    }

    #FooterNavUnit {
        display: table;
        width: 100%;
    }

    #FooterNavUnit .Unit {
        display: table-cell;
        width: 25%;
        padding-left: 3%;
        overflow: hidden;
    }

    #FooterNavUnit .Unit:first-child {
        width: 55%;
        padding-left: 0;
    }

    /* 見出し（カテゴリ名） */
    #FooterNavUnit h2 {
        margin-bottom: 25px;
        padding-top: 20px;
        border-top: 1px solid #8a7453;
        font-size: 134%;
        line-height: 1.5em;
    }

    #FooterNavUnit h2 a {
        color: #8a7453;
    }

    /* 子メニュー */
    #FooterNavUnit ul {
        margin-bottom: 15px;
    }

    #FooterNavUnit .Unit:first-child ul {
        float: left;
        width: 46%;
    }

    #FooterNavUnit .Unit:first-child ul:last-child {
        float: right;
    }

    #FooterNavUnit ul li {
        margin-bottom: 16px;
        font-size: 87%;
        line-height: 1.6em;
    }

    #FooterNavUnit ul li a {
        display: block;
        position: relative;
        padding-left: 18px;
        color: #000;
    }

    #FooterNavUnit ul li a:before {
        position: absolute;
        top: 0.7em;
        left: 0;
        width: 8px;
        border-top: 1px solid #b9335f;
        content: "";
    }

}

@media print,
screen and (min-width: 1090px) {}



/* ■ バナーナビ（BannerNav） ==================================================================================== */

@media only screen and (max-width: 767px) {

    #BannerNav {
        padding: 22px 35px;
        box-sizing: border-box;
        background: #f1ece5;
    }

    /* 子メニュー */
    #BannerNavUnit ul {
        width: 100%;
    }

    #BannerNavUnit ul li {
        margin-bottom: 10px;
    }

    #BannerNavUnit ul li:last-child {
        margin-bottom: 0;
    }

}

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

    #BannerNav {
        padding: 45px 0;
        background: #f1ece5;
    }

    #BannerNavUnit {
        max-width: 1000px;
        margin: 0 auto;
        padding: 0 20px;
    }

    /* 子メニュー */
    #BannerNavUnit ul {
        width: 100%;
    }


    #BannerNavUnit ul li {
        float: left;
        width: 32%;
        margin-right: 2%;
        border: 1px solid #e9e9e9;
        box-sizing: border-box;
    }

    #BannerNavUnit ul li:last-child {
        margin-right: 0;
    }


}

@media print,
screen and (min-width: 1090px) {

    #BannerNavUnit {
        padding: 0;
    }

}





/* ■ フッター（Footer） ==================================================================================== */


#FooterUnit .Credit .Logo a {
    display: block;
    text-indent: -9999px;
    background: url(../img/Logo.png) no-repeat;
}

@media only screen and (max-width: 767px) {

    #Footer {
        padding: 35px 15px 25px 15px;
        box-sizing: border-box;
    }

    /* SubNav */
    #FooterUnit .SubNav {
        margin-bottom: 35px;
    }

    #FooterUnit .SubNav p a {
        display: block;
        position: relative;
        padding: 15px 40px 15px 15px;
        border-bottom: 1px solid #e9e8e5;
        background: #fff;
    }

    #FooterUnit .SubNav p a:after {
        display: inline-block;
        position: absolute;
        top: 50%;
        right: 15px;
        width: 19.5px;
        height: 7px;
        margin-top: -3.5px;
        background: url(../img/Icon_LinkAllow1.png) no-repeat right center;
        background-size: contain;
        vertical-align: middle;
        content: '';
    }

    #FooterUnit .SubNav p:first-child a {
        border-top: 1px solid #e9e8e5;
    }

    /* クレジット */
    #FooterUnit .Logo {
        margin-bottom: 10px;
    }

    #FooterUnit .Logo a {
        width: 183px;
        height: 23px;
        background-size: contain !important;
    }

    #FooterUnit .Copyright {
        display: inline-block;
        font-size: 65%;
    }

}

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

    #Footer {
        padding-top: 30px;
        padding-bottom: 40px;
    }

    #FooterUnit {
        /* 	max-width: 685px; */
        max-width: 460px;
        margin: 0 auto;
    }

    /* SubNav */
    #FooterUnit .SubNav {
        display: block;
        margin-bottom: 65px;
        overflow: hidden;
    }

    #FooterUnit .SubNav p {
        width: fit-content;
        margin: 0 auto;
        padding: 0 40px;
        border-left: 1px solid #dbdbdb;
    }

    #FooterUnit .SubNav p a {
        display: block;
        box-sizing: border-box;
        font-size: 94%;
        text-align: center;
        width: fit-content;
    }

    #FooterUnit .SubNav p:last-child {
        border-right: 1px solid #dbdbdb;
    }

    /* クレジット */
    #FooterUnit .Credit {
        text-align: center;
    }

    #FooterUnit .Logo {
        margin-bottom: 25px;
    }

    #FooterUnit .Logo a {
        margin: 0 auto;
        width: 233px;
        height: 29px;
        background-size: contain !important;
    }

    #FooterUnit .Copyright {
        display: inline-block;
        font-size: 80%;
    }

}

@media print,
screen and (min-width: 1090px) {}



/* ■ お問い合わせ（Contact） ==================================================================================== */

#Contact .ContactUnit {
    box-sizing: border-box;
    border: 1px solid #e3adbf;
}

#Contact .LeadTitle {
    text-align: center;
}

#Contact .FreeDial .TelNum span {
    display: inline-block;
    position: relative;
    color: #b9335f;
}

#Contact .FreeDial .TelNum span:before {
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 0;
    background: url(/img/common/icon/Icon_FreeDial.png) no-repeat center top;
    background-size: contain;
    content: '';
}

#Contact .ContactNav li a {
    display: block;
    position: relative;
    background: #b9335f;
    color: #fff;
    font-family: 'Noto Serif JP', serif;
    font-weight: normal;
    letter-spacing: 0.06em;
    text-align: center;
}

#Contact .ContactNav li a span {
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
}

#Contact .ContactNav li a:before {
    display: block;
    position: absolute;
    left: 50%;
    content: '';
}

#Contact .ContactNav li.Menu1 a:before {
    background: url(/img/common/icon/Icon_Mail.png) no-repeat center top;
    background-size: contain;
}

#Contact .ContactNav li.Menu2 a:before {
    background: url(/img/common/icon/Icon_Counselling.png) no-repeat center top;
    background-size: contain;
}

@media only screen and (max-width: 767px) {

    #Contact .ContactUnit {
        padding: 25px 15px 15px 15px;
        box-sizing: border-box;
    }

    #Contact .LeadTitle {
        margin-bottom: 20px;
        font-size: 114%;
    }

    #Contact .FreeDial {
        margin: 0 auto 20px auto;
        text-align: center;
    }

    #Contact .FreeDial .TelNum {
        display: inline-block;
        margin-bottom: 15px;
        line-height: 1.0em;
    }

    #Contact .FreeDial .TelNum span {
        padding-left: 40px;
        font-size: 210%;
    }

    #Contact .FreeDial .TelNum span:before {
        width: 35px;
        height: 20px;
        margin-top: -12px;
    }

    #Contact .FreeDial .Reception {
        font-size: 86%;
        line-height: 1.0em;
    }

    #Contact .ContactNav li a {
        height: 110px;
        font-size: 108%;
        line-height: 1.6em;
    }

    #Contact .ContactNav li.Menu1 a span {
        bottom: 25px;
    }

    #Contact .ContactNav li.Menu2 a span {
        bottom: 15px;
    }

    #Contact .ContactNav li.Menu1 a:before {
        top: 22px;
        width: 23px;
        height: 17px;
        margin-left: -11px;
    }

    #Contact .ContactNav li.Menu2 a:before {
        top: 22px;
        width: 28px;
        height: 20px;
        margin-left: -14px;
    }

}

@media only screen and (max-width: 372px) {

    #Contact .LeadTitle {
        margin-bottom: 15px;
        font-size: 100%;
    }

    #Contact .FreeDial .TelNum span {
        padding-left: 35px;
        font-size: 200%;
    }

    #Contact .FreeDial .TelNum span:before {
        width: 30px;
        height: 15px;
        margin-top: -7.5px;
    }

    #Contact .ContactNav li a {
        font-size: 94%;
        line-height: 1.5em;
    }

}

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

    #Contact .ContactUnit {
        padding: 60px 0 40px 0;
    }

    #Contact .InBox {
        max-width: 490px;
        margin: 0 auto;
    }

    #Contact .LeadTitle {
        margin-bottom: 35px;
        font-size: 172%;
    }

    #Contact .FreeDial {
        margin: 0 auto 45px auto;
        text-align: center;
    }

    #Contact .FreeDial a {
        pointer-events: none;
    }

    #Contact .FreeDial .TelNum {
        display: inline-block;
        margin-bottom: 20px;
        line-height: 1.0em;
    }

    #Contact .FreeDial .TelNum span {
        margin-bottom: 6px;
        padding-left: 58px;
        font-size: 390%;
    }

    #Contact .FreeDial .TelNum span:before {
        width: 48px;
        height: 28px;
        margin-top: -14px;
    }

    #Contact .FreeDial .Reception {
        font-size: 108%;
        line-height: 1.0em;
    }

    #Contact .ContactNav li a {
        height: 110px;
        font-size: 134%;
    }

    #Contact .ContactNav li a span {
        bottom: 30px;
    }

    #Contact .ContactNav li.Menu1 a:before {
        top: 25px;
        width: 23px;
        height: 17px;
        margin-left: -11px;
    }

    #Contact .ContactNav li.Menu2 a:before {
        top: 24px;
        width: 28px;
        height: 20px;
        margin-left: -14px;
    }

}

@media print,
screen and (min-width: 1090px) {

    #Contact .InBox {
        max-width: 660px;
    }

}





/* ■ ヘッダー・フッター以外の領域指定（Stage） ==================================================================================== */

@media only screen and (max-width: 767px) {

    #Stage {
        /* margin-bottom: 30px; */
    }

}

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

    #Stage {
        margin-bottom: 50px;
    }

}

@media print,
screen and (min-width: 1090px) {}



/* ■ ローカルナビ（LocalNav） ==================================================================================== */

/* 見出し（カテゴリ名） */
#LocalNavArea h2.Mds {
    margin-bottom: 10px;
}

#LocalNavArea h2.Mds a {
    display: block;
    width: 100%;
    background-color: #b9335f;
    font-family: 'Noto Serif JP', serif;
    font-weight: normal;
    letter-spacing: 0.08em;
    text-align: center;
    line-height: 1em;
    color: #fff;
}

.LocalNav li a,
.LocalNav li.Disabled {
    display: block;
    box-sizing: border-box;
    font-weight: normal;
    color: #000;
    text-decoration: none;
}

/* 親メニュー */
.LocalNav .Parent a {
    position: relative;
    border-bottom: 1px solid #b9335f;
    font-family: 'Noto Serif JP', serif;
    letter-spacing: 0.05em;
}

.LocalNav .Level1:first-child .Parent a {
    border-top: 1px solid #b9335f;
}


.LocalNav .Parent a:before,
.LocalNav .Parent a:after {
    display: block;
    position: absolute;
    background-color: #b9335f;
    content: "";
}

.LocalNav .Parent a:before {
    top: 50%;
}

.LocalNav .Parent a:after {
    top: 50%;
}

.LocalNav.NotOpen .Parent a:before {
    display: none;
}

.LocalNav.NotOpen .Parent a:after {
    top: 50%;
    background: url(/img/common/icon/Icon_LinkAllow1.png) no-repeat right center;
    background-size: contain;
    vertical-align: middle;
}

.LocalNav .Current .Parent a {
    background-color: #ad9e84;
    border-top: none !important;
    border-bottom: none !important;
    color: #fff;
}

.LocalNav .Current .Parent a:before {
    background-color: #fff;
}

.LocalNav .Current .Parent a:after {
    display: none;
}

.LocalNav.NotOpen .Current .Parent a:before {
    display: none;
}

/*
.LocalNav .InPage .Parent a {
pointer-events: none !important;
}

.LocalNav .InPage .Parent a:before {
display: none;
}
*/

/* 子メニュー */
.LocalNav .Level2 {
    display: none;
}

.LocalNav .Current .Level2 {
    display: block;
}

.LocalNav .Level2 li {
    border-bottom: 1px solid #e9e8e5;
}

.LocalNav .Level2 li:last-child {
    border-bottom: none;
}

.LocalNav .Level2 a {
    position: relative;
    background-color: #f6f4f1;
}

.LocalNav .Level2 a:after {
    display: inline-block;
    position: absolute;
    top: 50%;
    background: url(/img/common/icon/Icon_LinkAllow1.png) no-repeat right center;
    background-size: contain;
    vertical-align: middle;
    content: '';
}

.LocalNav .Level2 .Current a {
    background-color: #ebe7e1;
}

/*
.LocalNav li.Disabled {
background-image: none;
}

.LocalNav li.Disabled span {
opacity: 0.25;
}
*/


@media only screen and (max-width: 767px) {

    #LocalNavArea {
        padding: 0 15px;
    }

    /* 見出し（カテゴリ名） */
    #LocalNavArea h2.Mds {
        margin-bottom: 10px;
    }

    #LocalNavArea h2.Mds a {
        font-size: 134%;
        padding: 15px 0;
    }

    /* 親メニュー */
    .LocalNav .Parent a {
        padding: 15px 60px 15px 15px;
        font-size: 100%;
        line-height: 1.5em;
    }

    .LocalNav .Parent a:before {
        right: 18px;
        width: 14px;
        height: 1px;
        margin-top: -1px;
    }

    .LocalNav .Parent a:after {
        right: 24px;
        width: 1px;
        height: 14px;
        margin-top: -7px;
    }

    .LocalNav.NotOpen .Parent a:after {
        right: 15px;
        width: 19.5px;
        height: 7px;
        margin-top: -3.5px;
    }

    /* 子メニュー */
    .LocalNav .Level2 a {
        padding: 15px 60px 15px 15px;
        font-size: 94%;
        line-height: 1.6em;
    }

    .LocalNav .Level2 a:after {
        right: 15px;
        width: 19.5px;
        height: 7px;
        margin-top: -3.5px;
    }

}

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

    #LocalNavArea {
        float: right;
        width: 25%;
    }

    /* 見出し（カテゴリ名） */
    #LocalNavArea h2.Mds a {
        font-size: 134%;
        padding: 25px 0;
    }

    /* 親メニュー */
    .LocalNav .Parent a {
        padding: 15px 45px 15px 15px;
        font-size: 107%;
        line-height: 1.5em;
    }

    .LocalNav .Parent a:before {
        right: 15px;
        width: 13px;
        height: 1px;
        margin-top: -0.5px;
    }

    .LocalNav .Parent a:after {
        right: 21px;
        width: 1px;
        height: 13px;
        margin-top: -6.5px;
    }

    .LocalNav.NotOpen .Parent a:after {
        right: 15px;
        width: 19.5px;
        height: 7px;
        margin-top: -3.5px;
    }

    /* 子メニュー */
    .LocalNav .Level2 a {
        padding: 15px 40px 15px 15px;
        font-size: 94%;
        line-height: 1.6em;
    }

    .LocalNav .Level2 a:after {
        right: 15px;
        width: 14px;
        height: 6px;
        margin-top: -3px;
    }

}

@media print,
screen and (min-width: 1090px) {

    /* 見出し（カテゴリ名） */
    #LocalNavArea h2.Mds a {
        padding: 25px 0;
        font-size: 147%;
    }

}



/* ■ コンテンツ領域（Contents） ==================================================================================== */

@media only screen and (max-width: 767px) {

    #PageSubPage #Contents {
        margin-bottom: 30px;
        padding-bottom: 30px;
        border-bottom: 1px solid #e9e9e9;
    }

    #Contents2 {}

}

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

    #PageSubPage #Contents {
        float: left;
        width: 71.5%;
    }

    #Contents2 {}

    #Contents3 {}

}

@media print,
screen and (min-width: 1090px) {}



/* ■ 見出し（h1〜） ==================================================================================== */

/* h1 */
.MdsH1 {
    font-family: 'Noto Serif JP', serif;
    font-weight: normal;
    /* letter-spacing: 0.10em; */
}

/* h2 */
.MdsH2 {
    font-family: 'Noto Serif JP', serif;
    font-weight: normal;
    /* letter-spacing: 0.08em; */
    line-height: 1.6em;
    color: #8a7453;
}

/* h3 */
.MdsH3 {}

/* h4 */
.MdsH4 {
    position: relative;
    margin-bottom: 5px;
}

.MdsH4:before {
    position: absolute;
    left: 0;
    background: #000;
    content: "";
}

/* h5 */
.MdsH5 {
    margin-bottom: 0;
    font-size: 100%;
    line-height: 1.4em;
}

@media only screen and (max-width: 767px) {

    /* h1 */
    .MdsH1 {
        font-size: 158%;
    }

    /* h2 */
    .MdsH2 {
        margin-bottom: 20px;
        font-size: 147%;
    }

    /* h3 */
    .MdsH3 {
        margin-bottom: 15px;
        font-size: 120%;
        line-height: 1.7em;
    }

    .MdsH3 span {
        color: #91294b;
    }

    /* h4 */
    .MdsH4 {
        padding-left: 16px;
        font-size: 108%;
        line-height: 1.4em;
    }

    .MdsH4:before {
        top: 5px;
        width: 11px;
        height: 11px;
    }

}

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

    /* h1 */
    .MdsH1 {
        max-width: 1090px;
        margin: 0 auto;
        font-size: 250%;
        padding: 0 20px;
    }

    /* h2 */
    .MdsH2 {
        margin-bottom: 25px;
        font-size: 200%;
    }

    /* h3 */
    .MdsH3 {
        margin-bottom: 15px;
        font-size: 134%;
        font-weight: 500;
        line-height: 1.8em;
    }

    .MdsH3 span {
        color: #91294b;
    }

    /* h4 */
    .MdsH4 {
        padding-left: 14px;
        font-size: 108%;
        line-height: 1.8em;
    }

    .MdsH4:before {
        top: 7px;
        width: 10px;
        height: 10px;
    }

}

@media print,
screen and (min-width: 1090px) {

    /* h1 */
    .MdsH1 {}

    /* h2 */
    .MdsH2 {
        margin-bottom: 30px;
    }

    /* h3 */
    .MdsH3 {}

    /* h4 */
    .MdsH4 {
        margin-bottom: 10px;
        padding-left: 18px;
    }

    .MdsH4:before {
        left: 0;
        top: 8px;
        width: 12px;
        height: 12px;
    }

    /* h5 */
    .MdsH5 {
        margin-bottom: 0;
    }

}

/* ボーダー */
.MdsH2BorderTop1 {
    padding-top: 30px;
    border-color: #8a7453;
    border-top: 2px solid #8a7453;
}

@media only screen and (max-width: 767px) {

    .MdsH2BorderTop1 {
        padding-top: 18px;
        border-top: 1px solid;
    }
}

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

    .MdsH2BorderTop1 {
        padding-top: 30px;
        border-top: 2px solid;
    }

}



/* ■ メインリード（LeadMain） ==================================================================================== */

@media only screen and (max-width: 767px) {

    .LeadMain {
        margin-bottom: 20px;
    }

}

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

    .LeadMain {
        margin-bottom: 25px;
    }

}

@media print,
screen and (min-width: 1090px) {

    .LeadMain {
        margin-bottom: 30px;
    }

}



/* ■ メインセクション（SectionMain） ==================================================================================== */

@media only screen and (max-width: 767px) {

    .SectionMain,
    .SectionBasic {
        margin-bottom: 40px;
    }

    .SectionMain .Lead1,
    .SectionBasic .Lead1 {
        margin-bottom: 20px;
        line-height: 2.0em;
    }

    .SectionMain .Lead2,
    .SectionBasic .Lead2 {
        margin-bottom: 20px;
    }

    .SectionMain .Photo,
    .SectionMain .PhotoM,
    .SectionBasic .Photo,
    .SectionBasic .PhotoM {
        margin-bottom: 12px;
    }

}

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

    .SectionMain,
    .SectionBasic {
        margin-bottom: 50px;
    }

    .SectionMain .Lead1,
    .SectionBasic .Lead1 {
        margin-bottom: 35px;
        line-height: 2.5em;
    }

    .SectionMain .Lead2,
    .SectionBasic .Lead2 {
        margin-bottom: 22px;
    }

    .SectionMain .Photo,
    .SectionMain .PhotoM,
    .SectionBasic .Photo,
    .SectionBasic .PhotoM {
        margin-bottom: 15px;
    }

}

@media print,
screen and (min-width: 1090px) {

    .SectionMain,
    .SectionBasic {
        margin-bottom: 70px;
    }

    .SectionMain .Lead1,
    .SectionBasic .Lead1 {}

    .SectionMain .Lead2,
    .SectionBasic .Lead2 {
        margin-bottom: 30px;
    }

    .SectionMain .Photo,
    .SectionMain .PhotoM,
    .SectionBasic .Photo,
    .SectionBasic .PhotoM {
        margin-bottom: 20px;
    }

}



/* ■ サブセクション（SectionSub） ==================================================================================== */

@media only screen and (max-width: 767px) {

    .SectionSub {
        margin-bottom: 35px;
    }

}

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

    .SectionSub {
        margin-bottom: 50px;
    }

}

@media print,
screen and (min-width: 1090px) {

    .SectionSub {
        margin-bottom: 70px;
    }

}



/* ■ 関連情報（RelatedInfo） ==================================================================================== */

@media only screen and (max-width: 767px) {

    .RelatedInfo .Mds {
        margin-bottom: 5px;
        font-size: 108%;
    }

}

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

    .RelatedInfo .Mds {
        margin-bottom: 5px;
        font-size: 108%;
    }

}


/* ■ 記述リスト（DLHori、DLVert、DLTable） ==================================================================================== */

/*
左右（dlh）
上下（dlv）
テーブルスタイル（dlt）
*/

/* 左右（dlh） --------------------------------------------------- */

.DLHori dl {
    border-bottom: 1px solid #e7e7e7;
}

@media only screen and (max-width: 767px) {

    /* 左右（dlh） */
    .DLHori {
        margin-top: -10px;
    }

    .DLHori dt,
    .DLHori dd {
        padding: 10px 0;
    }

}

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

    .DLHori {
        margin-top: -15px;
    }

    .DLHori dt,
    .DLHori dd {
        padding: 15px 0;
    }

}

@media print,
screen and (min-width: 1090px) {}

/* 上下（dlv） --------------------------------------------------- */

.DLVert dl {
    border-bottom: 1px solid #e7e7e7;
}

@media only screen and (max-width: 767px) {

    .DLVert {
        margin-top: -10px;
    }

    .DLVert dl {
        padding: 10px 0;
    }

    .DLVert dt {
        margin-bottom: 3px;
    }

}

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

    .DLVert {
        margin-top: -15px;
    }

    .DLVert dl {
        padding: 15px 0;
    }

    .DLVert dt {
        margin-bottom: 5px;
    }

}

@media print,
screen and (min-width: 1090px) {}

/* テーブルスタイル（dlt） --------------------------------------------------- */

.DLTable {
    border-top: 1px solid #b8b8b8;
}

.DLTable dl {
    border-left: 1px solid #b8b8b8;
}

.DLTable dt,
.DLTable dd {
    padding: 10px 15px;
    border-right: 1px solid #b8b8b8;
    border-bottom: 1px solid #b8b8b8;
}

.DLTable dt {
    background: #f2f2f2;
}

@media only screen and (max-width: 767px) {}

@media print,
screen and (min-width: 768px) {}

@media print,
screen and (min-width: 1090px) {}


/* ■ 表組み（Table1、Table2） ==================================================================================== */

.Table1 th,
.Table2 th,
.Table1 td,
.Table2 td {
    padding: 10px 15px;
    border: 1px solid #d0cbc4;
}

.Table1 th,
.Table2 th {
    background: #ebe7e1;
}

.Table1 th {
    text-align: center;
}

.Table2 th {
    text-align: left;
}

.Table1 td,
.Table2 td {
    background: #fff;
}

@media only screen and (max-width: 767px) {

    .Table1 th,
    .Table2 th,
    .Table1 td,
    .Table2 td {
        padding: 12px 10px;
    }

}

@media print,
screen and (min-width: 768px) {}

@media print,
screen and (min-width: 1090px) {}



/* ■ 囲み（Box） ==================================================================================== */

.Box,
.Box1 {
    border: 1px solid #b8b8b8;
}

.Box2 {
    border: 1px solid #e3adbf;
}


@media only screen and (max-width: 767px) {

    .Box,
    .Box1,
    .Box2 {
        margin-bottom: 20px;
        padding: 15px 15px;
    }

}

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

    .Box,
    .Box1,
    .Box2 {
        margin-bottom: 20px;
        padding: 15px 15px;
    }

}

@media print,
screen and (min-width: 1090px) {

    .Box,
    .Box1,
    .Box2 {
        margin-bottom: 20px;
        padding: 20px 20px;
    }

}



/* ■ リスト各種 ==================================================================================== */

/*
ディスク（ListDisc）
ディスク：小（ListDiscS）
米印（ListKome）
米印：小（ListKomeS）
連番（ListNum）
連番：小（ListNumS）
米印連番：小（ListKomeNumS）
*/


/* ディスク（ListDisc） --------------------------------------------------- */

.ListDisc li {
    margin-bottom: 8px;
    line-height: 1.8em;
}

.ListDisc li:before {
    left: 2px;
    border-radius: 100%;
    background: #000;
}


@media only screen and (max-width: 767px) {

    .ListDisc li {
        padding-left: 16px;
    }

    .ListDisc li:before {
        left: 2px;
        top: 10px;
        width: 8px;
        height: 8px;
    }

}

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

    .ListDisc li {
        padding-left: 15px;
    }

    .ListDisc li:before {
        left: 2px;
        top: 7px;
        width: 8px;
        height: 8px;
    }

}

@media print,
screen and (min-width: 1090px) {

    .ListDisc li {
        padding-left: 18px;
    }

    .ListDisc li:before {
        top: 9px;
        width: 9px;
        height: 9px;
    }

}

/* IE10以上 */
@media all and (-ms-high-contrast: none) {

    .ListDisc li:before {
        top: 9px;
    }

}

/* Firefox */
@-moz-document url-prefix() {

    .ListDisc li:before {
        top: 9px;
    }

}


/* ディスク：小（ListDiscS） --------------------------------------------------- */

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

.ListDiscS li:before {
    border-radius: 100%;
    background: #000;
}

@media only screen and (max-width: 767px) {

    .ListDiscS li {
        padding-left: 16px;
        font-size: 86%;
        line-height: 1.7em;
    }

    .ListDiscS li:before {
        left: 4px;
        top: 8px;
        width: 6px;
        height: 6px;
    }

    .Android .ListDiscS li:before {
        top: 9px;
    }

}

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

    .ListDiscS li {
        padding-left: 15px;
        font-size: 88%;
        line-height: 1.8em;
    }

    .ListDiscS li:before {
        left: 4px;
        top: 7px;
        width: 6px;
        height: 6px;
    }

}

@media print,
screen and (min-width: 1090px) {

    .ListDiscS li {
        padding-left: 17px;
    }

    .ListDiscS li:before {
        top: 9px;
        width: 7px;
        height: 7px;
    }

}

/* Firefox */
@-moz-document url-prefix() {

    .ListDiscS li:before {
        top: 9px;
    }

}


/* 米印（ListKome） --------------------------------------------------- */

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

.ListKome li:before {
    left: 1px;
}


@media only screen and (max-width: 767px) {

    .ListKome li {
        padding-left: 17px;
        line-height: 1.8em;
    }

    .ListKome li:before {
        top: 0px;
        font-size: 93%;
    }

    .Android .ListKome li:before {
        top: 1px;
    }

}

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

    .ListKome li {
        padding-left: 16px;
        line-height: 1.8em;
    }

    .ListKome li:before {
        top: 0;
        font-size: 90%;
    }

}

@media print,
screen and (min-width: 1090px) {

    .ListKome li {
        padding-left: 18px;
    }

    .Win .ListKome li:before {
        top: -1px;
    }

}

/* IE10以上 */
@media all and (-ms-high-contrast: none) {

    .Win .ListKome li:before {
        top: 1px;
    }

}

/* Firefox */
@-moz-document url-prefix() {

    .ListKome li:before {
        top: 1px;
    }

    .Win .ListKome li:before {
        top: 0;
    }

}


/* 米印：小（ListKomeS） --------------------------------------------------- */

.ListKomeS li {
    margin-bottom: 5px;
    line-height: 1.8em;
}

.ListKomeS li:before {
    left: 1px;
}

@media only screen and (max-width: 767px) {

    .ListKomeS li {
        padding-left: 16px;
        font-size: 86%;
    }

    .ListKomeS li:before {
        top: 0;
    }

}

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

    .ListKomeS li {
        padding-left: 13px;
        font-size: 86%;
    }

    .ListKomeS li:before {
        top: 0;
        font-size: 84%;
    }

}

@media print,
screen and (min-width: 1090px) {

    .ListKomeS li {
        padding-left: 15px;
    }

    .ListKomeS li:before {
        top: 1px;
        font-size: 82%;
    }

    .Win .ListKomeS li:before {
        top: -1px;
    }

}

/* IE10以上 */
@media all and (-ms-high-contrast: none) {

    .Win .ListKomeS li:before {
        top: 1px;
    }

}


/* 連番（ListNum） --------------------------------------------------- */

.ListNum {
    padding-left: 4px;
}

.ListNum li {
    margin-bottom: 10px;
    line-height: 1.8em;
    counter-increment: ListNum;
}

.ListNum li:before {
    left: 1px;
    top: 0;
    font-size: 97%;
}

.ListNum li>ol {
    margin-top: 10px;
    padding-left: 0;
}

.ListNum li>ol li {
    counter-increment: Sub;
}

.ListNum li>ol li:before {
    content: counter(Sub)".";
}

@media only screen and (max-width: 767px) {

    .ListNum li:nth-child(n+10):before {
        left: -8px;
    }

    .ListNum li {
        padding-left: 18px;
    }

}

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

    .ListNum li:nth-child(n+10):before {
        left: -5.5px;
    }

    .ListNum li {
        padding-left: 15px;
    }

}

@media print,
screen and (min-width: 1090px) {

    .ListNum li:nth-child(n+10):before {
        left: -8px;
    }

    .ListNum li {
        padding-left: 18px;
    }

}


/* 連番：小（ListNumS） --------------------------------------------------- */

.ListNumS {
    padding-left: 4px;
}

.ListNumS li {
    margin-bottom: 5px;
    font-size: 86%;
    counter-increment: ListNum;
}

.ListNumS li:before {
    left: 1px;
    top: 0;
    font-size: 97%;
}

@media only screen and (max-width: 767px) {

    .ListNumS li:nth-child(n+10):before {
        left: -7px;
    }

    .ListNumS li {
        padding-left: 16px;
        line-height: 1.7em;
    }

    .Android .ListNumS li:before {
        top: 1px;
    }

}

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

    .ListNumS li:nth-child(n+10):before {
        left: -4.5px;
    }

    .ListNumS li {
        padding-left: 13px;
        font-size: 86%;
        line-height: 1.8em;
    }

}

@media print,
screen and (min-width: 1090px) {

    .ListNumS li:nth-child(n+10):before {
        left: -6.5px;
    }

    .ListNumS li {
        padding-left: 16px;
    }

}


/* 米印連番：小（ListKomeNumS） --------------------------------------------------- */

.ListKomeNumS li {
    margin-bottom: 5px;
    counter-increment: ListNum;
}

.ListKomeNumS li:before {
    left: 1px;
    top: 0;
    font-size: 97%;
}

@media only screen and (max-width: 767px) {

    .ListKomeNumS li {
        padding-left: 26px;
        font-size: 86%;
        line-height: 1.7em;
    }

    .Android .ListKomeNumS li:before {
        top: 1px;
    }

}

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

    .ListKomeNumS li {
        padding-left: 22px;
        font-size: 88%;
        line-height: 1.8em;
    }

}

@media print,
screen and (min-width: 1090px) {

    .ListKomeNumS li {
        padding-left: 25px;
    }

}



/* ■ テキストリンクアイコン ==================================================================================== */

.LinkFwd,
.LinkBack,
.LinkDown,
.LinkUp {
    display: inline-block;
    position: relative;
    padding-left: 16px;
}

.LinkFwd:after,
.LinkBack:after,
.LinkDown:after,
.LinkUp:after {
    display: block;
    position: absolute;
    left: 0;
    top: 50%;
    width: 8px;
    height: 8px;
    margin-top: -4px;
    border-top: solid 2px;
    border-right: solid 2px;
    content: '';
}

.LinkNewWin,
.LinkPDF {
    display: inline-block;
    position: relative;
}

.LinkNewWin {
    padding-right: 15px;
}

.LinkPDF {
    padding-left: 20px;
}

.LinkNewWin:before,
.LinkPDF:before,
.LinkNewWin:after,
.LinkPDF:after {
    display: block;
    position: absolute;
    content: '';
}

/* 進む（LinkFwd） */
.LinkFwd:after {
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

/* 戻る（LinkBack） */
.LinkBack:after {
    left: 2px;
    -ms-transform: rotate(225deg);
    -webkit-transform: rotate(225deg);
    transform: rotate(225deg);
}

/* 下へ（LinkDown） */
.LinkDown:after {
    margin-top: -5px;
    -ms-transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
}

/* 下へ（LinkUp） */
.LinkUp:after {
    margin-top: -2px;
    -ms-transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

/* 別ウインドウ（LinkNewWin） */
.LinkNewWin:before {
    right: 0;
    top: 50%;
    width: 9px;
    height: 7px;
    margin-top: -2px;
    border: 1px solid #185ea7;
    background-color: #fff;
}

.LinkNewWin:after {
    right: -2px;
    top: 40%;
    width: 9px;
    height: 7px;
    margin-top: -2px;
    border: 1px solid #185ea7;
    border-top: 2px solid;
    background-color: #fff;
}

/* PDF（LinkPDF） */
.LinkPDF:before {
    left: 0;
    top: 50%;
    width: 13px;
    height: 16px;
    margin-top: -8px;
    border: 1px solid #a6a6a6;
    background-color: #fff;
}

.LinkPDF:after {
    left: -2px;
    top: 35%;
    width: 10px;
    height: 4px;
    font-size: 6px;
    background-color: #cc0000;
}

@media only screen and (max-width: 767px) {

    /* PDF（LinkPDF） */
    .LinkPDF {}

}

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

    /* PDF（LinkPDF） */
    .LinkPDF {}

}

@media print,
screen and (min-width: 1090px) {

    /* PDF（LinkPDF） */
    .LinkPDF {}

}



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

.BtnS,
.BtnM,
.BtnL {
    display: inline-block;
    position: relative;
    line-height: 1.0em;
    text-align: center;
}

/* 文字サイズ */
.BtnS {
    font-size: 93%;
}

.BtnM {
    font-size: 100%;
}

.BtnL {
    font-size: 115%;
}

/* 矢印 */
.BtnAllowLeft:after,
.BtnAllowRight:after,
.BtnAllowBack:after,
.BtnAllowDownLeft:after,
.BtnAllowDownRight:after,
.BtnAllowUpLeft:after,
.BtnAllowUpRight:after {
    display: block;
    position: absolute;
    top: 50%;
    width: 8px;
    height: 8px;
    margin-top: -5px;
    border-top: solid 2px;
    border-right: solid 2px;
    content: '';
}

/* 矢印：左 */
.BtnAllowLeft:after {
    left: 8px;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

/* 矢印：右 */
.BtnAllowRight:after {
    right: 10px;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

/* 矢印：戻る */
.BtnAllowBack:after {
    left: 10px;
    -ms-transform: rotate(225deg);
    -webkit-transform: rotate(225deg);
    transform: rotate(225deg);
}

/* 矢印：下向き左 */
.BtnAllowDownLeft:after {
    left: 10px;
    margin-top: -6px;
    -ms-transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
}

/* 矢印：下向き右 */
.BtnAllowDownRight:after {
    right: 10px;
    margin-top: -6px;
    -ms-transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
}

/* 矢印：上向き左 */
.BtnAllowUpLeft:after {
    left: 10px;
    margin-top: -3px;
    -ms-transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

/* 矢印：上向き右 */
.BtnAllowUpRight:after {
    right: 10px;
    margin-top: -3px;
    -ms-transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

/* 閉じる */
.BtnClose:before,
.BtnClose:after {
    display: block;
    position: absolute;
    left: 14px;
    top: 50%;
    height: 14px;
    margin-top: -7px;
    border: 1px solid;
    content: "";
}

.BtnClose:before {
    transform: rotate(-45deg);
}

.BtnClose:after {
    transform: rotate(45deg);
}

/* カラー：1 */
.BtnColor1:link,
.BtnColor1:active,
.BtnColor1:visited,
.BtnColor1:hover {
    color: #b9335f;
}

.BtnColor1:after {}

/* カラー：2 */
.BtnColor2:link,
.BtnColor2:active,
.BtnColor2:visited,
.BtnColor2:hover {
    color: #fff;
    background: #949494;
}

.BtnColor2:after {
    border-color: #fff;
}

/* カラー：3 */
.BtnColor3:link,
.BtnColor3:active,
.BtnColor3:visited,
.BtnColor3:hover {
    color: #fff;
    background: #970092;
}

.BtnColor3:after {
    border-color: #fff;
}

/* カラー：4 */
.BtnColor4:link,
.BtnColor4:active,
.BtnColor4:visited,
.BtnColor4:hover {
    color: #fff;
    background: #b9335f;
}


/* ボーダー */
.BtnBorder1 {
    border: 1px solid #e3adbf;
    box-sizing: border-box;
    text-align: left;
}

/* 画像矢印 */
.BtnImgAllowRight1:after {
    display: inline-block;
    position: absolute;
    top: 50%;
    background: url(/img/common/icon/Icon_LinkAllow1.png) no-repeat right center;
    background-size: contain;
    vertical-align: middle;
    content: '';
}

.BtnImgAllowRight2:after {
    display: inline-block;
    position: absolute;
    top: 50%;
    background: url(/img/common/icon/Icon_LinkAllow2.png) no-repeat right center;
    background-size: contain;
    vertical-align: middle;
    content: '';
}

@media only screen and (max-width: 767px) {

    .BtnImgAllowRight1:after {
        right: 10px;
        width: 19.5px;
        height: 7px;
        margin-top: -3.5px;
    }

    .BtnImgAllowRight2:after {
        right: 10px;
        width: 19.5px;
        height: 7px;
        margin-top: -3.5px;
    }

}

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

    .BtnImgAllowRight1:after {
        right: 10px;
        width: 19.5px;
        height: 7px;
        margin-top: -3.5px;
    }

    .BtnImgAllowRight2:after {
        right: 10px;
        width: 19.5px;
        height: 7px;
        margin-top: -3.5px;
    }

}


@media only screen and (max-width: 767px) {

    .BtnS {}

    .BtnM {
        width: 100%;
        padding: 14px 16px;
    }

    .BtnL {}

}

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

    .BtnS {}

    .BtnM {
        width: 45%;
        padding: 12px 15px;

    }

    .BtnL {}

    /* 矢印：左 */
    .BtnAllowLeft,
    .BtnAllowBack,
    .BtnAllowUpLeft,
    .BtnClose {
        padding-left: 50px;
    }

}

@media print,
screen and (min-width: 1090px) {

    .BtnM {
        width: 40%;
        padding: 12px 15px;
    }
}



/* ■ ページネーション ==================================================================================== */

.PageNation li a {
    display: block;
    border-radius: 2px;
}

.PageNation li.Prev a,
.PageNation li.Next a {
    position: relative;
    border: 1px solid #1567a6;
    text-indent: -9999px;
    background-color: #1567a6;
}

.PageNation li.Prev a:before,
.PageNation li.Next a:before {
    display: block;
    position: absolute;
    top: 50%;
    width: 8px;
    height: 8px;
    margin-top: -5px;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    content: '';
}

.PageNation li.Prev a:before {
    left: 45%;
    -ms-transform: rotate(225deg);
    -webkit-transform: rotate(225deg);
    transform: rotate(225deg);
}

.PageNation li.Next a:before {
    right: 45%;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

@media only screen and (max-width: 767px) {

    .PageNation {
        margin-top: 20px;
    }

    .PageNation .Num {
        margin-bottom: -33px;
        font-size: 86%;
        text-align: center;
    }

    .PageNation li:not(.Prev):not(.Next) {
        display: none;
    }

    .PageNation li a {
        padding: 12px 18px;
        border: 1px solid #1567a6;
        line-height: 1.0em;
        text-indent: -9999px;
    }

    .PageNation li.Prev {
        float: left;
    }

    .PageNation li.Next {
        float: right;
    }

}

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

    .PageNation .Num {
        float: left;
        padding: 12px 0;
        line-height: 1.0em;
    }

    .PageNation ul {
        float: right;
    }

    .PageNation li {
        float: left;
        margin-left: 5px;
        line-height: 1.0em;
    }

    .PageNation li a {
        float: left;
        padding: 8px 12px;
        border: 1px solid #ccc;
    }

    .PageNation li a:link,
    .PageNation li a:active,
    .PageNation li a:visited {
        text-decoration: none;
    }

    .PageNation li.Current a {
        border: 1px solid #ccc;
        font-weight: bold;
        color: #000;
        background: #f2f2f2;
    }

    .PageNation li.Prev {
        margin-right: 10px;
    }

    .PageNation li.Prev a {
        padding: 8px 20px;
    }

    .PageNation li.Next {
        margin-left: 15px;
    }

    .PageNation li.Next a {
        padding: 8px 20px;
    }

    .PageNation .Abbr {
        display: block;
        padding: 9px 2px;
    }

}

@media print,
screen and (min-width: 1090px) {}



/* ■ 検索窓 ==================================================================================== */

.SearchBox .SearchTxt {
    width: 80%;
    padding: 0 10px;
    box-shadow: inset 1px 1px 1px 0px #d5d5d5;
    box-sizing: border-box;
    vertical-align: middle;
    background: #fff;
}

.SearchBox .BtnSearch {
    width: 20%;
    padding: 0 10px;
    border: 1px solid #000;
    border-radius: 0 5px 5px 0;
    box-sizing: border-box;
    letter-spacing: 0.2em;
    vertical-align: middle;
    color: #fff;
    background: #000;
}

@media only screen and (max-width: 767px) {

    .SearchBox .SearchTxt {
        height: 3em;
        border: 1px solid #bbb;
        border-radius: 5px 0 0 5px;
    }

    .SearchBox .BtnSearch {
        height: 3em;
        box-sizing: border-box;
        appearance: none;
        -moz-appearance: none;
        -webkit-appearance: none;
    }

}

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

    .SearchBox .SearchTxt {
        height: 2.4em;
        border-top: 1px solid #bbb;
        border-right: none;
        border-bottom: 1px solid #bbb;
        border-left: 1px solid #bbb;
        border-radius: 5px 0 0 5px;
        line-height: 2.4em;
    }

    .Win .SearchBox .SearchTxt {
        line-height: 2.2em;
    }

    .SearchBox .BtnSearch {
        height: 2.4em;
        line-height: 2.2em;
    }

}

@media print,
screen and (min-width: 1090px) {}





/* ■ テキスト回り込み ==================================================================================== */


@media only screen and (max-width: 767px) {

    .flex>p {
        width: 100%;
        margin-bottom: 15px;
    }

    .flex>img {
        width: 100%;
    }

}

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

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

    .flex>p {
        width: 67%;
    }

    .flex>img {
        width: 30%;
    }

}

@media print,
screen and (min-width: 1090px) {}




/* ■ フォーム ==================================================================================== */

/*
基本ユニット
リード・注釈等
エラーチップ
アクションボタン
入力欄のスタイル
入力欄のサイズ
セレクトボックス装飾
ラジオボタン・チェックボックス装飾
完了画面
*/


/* 基本ユニット --------------------------------------------------- */

/* 項目欄の背景色（カラー設定） */
.FormUnit dt {
    background: #eee;
}

/* レイアウト設定 */
.FormUnit {
    margin-bottom: 30px;
}

/* 必須アイコン */
.FormUnit .Required {
    display: block;
    position: relative;
}

.FormUnit .Required:before {
    position: absolute;
    right: 0;
    padding: 5px 10px;
    border-radius: 2px;
    letter-spacing: 0.15em;
    text-align: center;
    color: #fff;
    background: #e90000;
    content: "必須";
}

@media only screen and (max-width: 767px) {

    /* 項目欄のborder色（カラー設定） */
    .FormUnit dt {
        border-top: 1px solid #bbb;
    }

    /* レイアウト設定 */
    .FormUnitWrap {}

    .FormUnit dt,
    .FormUnit dd {
        margin: 0;
    }

    .FormUnit dt {
        padding: 6px 15px;
        font-size: 93%;
        font-weight: bold;
    }

    .FormUnit dd {
        padding: 12px 0 20px 0;
    }

    .FormUnit dd p {
        margin: 0 15px;
    }

    /* 必須アイコン */
    .FormUnit dt span:before {
        top: 1px;
        font-size: 93%;
        line-height: 1.1em;
    }

}

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

    /* border色（カラー設定） */
    .FormUnitWrap {
        border-left: solid 1px #ccc;
        border-top: solid 1px #ccc;
    }

    .FormUnit dt,
    .FormUnit dd {
        border-right: solid 1px #ccc;
        border-bottom: solid 1px #ccc;
    }

    /* レイアウト設定 */
    .FormUnit dl {
        display: table;
        width: 100%;
    }

    .FormUnit dt,
    .FormUnit dd {
        display: table-cell;
        padding: 15px;
        vertical-align: top;
    }

    .FormUnit dt {
        width: 30%;
        font-weight: bold;
    }

    .FormUnit dd {
        width: 70%;
    }

    /* 必須アイコン */
    .FormUnit dt span:before {
        top: 0;
        font-size: 86%;
        line-height: 1.0em;
    }

}

@media print,
screen and (min-width: 1090px) {}

/* リード・注釈等  --------------------------------------------------- */

/* 単位 */
.FormUnit .NoteUnit {
    margin-left: 6px;
    vertical-align: middle;
}

/* 注釈 */
.FormUnit .NoteUpper {
    margin-bottom: 5px;
    font-size: 86%;
    line-height: 1.5em;
}

.FormUnit .NoteMiddle {
    margin-top: 10px;
    margin-bottom: 10px;
    font-size: 86%;
    line-height: 1.5em;
}

.FormUnit .NoteLower {
    font-size: 86%;
    line-height: 1.0em;
    color: #808080;
}

.FormUnit .NoteSide {
    margin-left: 5px;
    font-size: 86%;
    color: #808080;
}

.FormUnit .KomeS {
    position: relative;
}

.FormUnit .KomeS:before {
    position: absolute;
    display: inline-block;
    top: 0;
    left: 0;
    content: '※';
}

@media only screen and (max-width: 767px) {

    .FormUnit .KomeS {
        display: block;
        margin-top: 5px;
        padding-left: 15px;
        font-size: 86%;
        line-height: 1.6em;
    }

}

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

    .FormUnit .KomeS {
        display: inline-block;
        margin-left: 5px;
        padding-left: 14px;
        font-size: 86%;
    }
}


/* フッターNote  */
.FormUnit .FootNote li {
    font-size: 86%;
    line-height: 1.5em;
}

@media only screen and (max-width: 767px) {

    .FormUnit .LeadMain {
        font-size: 86%;
        font-weight: bold;
    }

    .FormUnit .LeadUnit {
        margin: 0 15px 30px 15px;
    }

    .FormUnit .LeadUnit .LeadMain {
        margin: 0;
    }

    .FormUnit .LeadUnit .ListKomeS {
        margin-top: 8px;
    }

    /* サブリード  */
    .FormUnit .LeadSub {
        margin: 0 15px;
        font-size: 86%;
    }

    /* メッセージBOX：アラート */
    .FormUnit .MsgBoxAlert {
        margin: 0 15px 30px 15px;
    }

    .FormUnit .MsgBoxAlert .Mds {
        font-size: 108%;
    }

    .FormUnit .MsgBoxAlert .Msg {
        font-size: 100%;
    }

    .FormUnit .NoteLower {
        margin-top: 7px;
    }

    /* フッターNote  */
    .FormUnit .FootNote {
        margin: 0 15px 30px 15px;
    }

}

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

    /* リード */
    .FormUnit .LeadUnit {
        margin-bottom: 40px;
    }

    .FormUnit .LeadMain {
        margin-bottom: 40px;
    }

    .FormUnit .LeadUnit .LeadMain {
        margin-bottom: 20px;
    }

    .FormUnit .LeadSub {}

    .FormUnit .NoteLower {
        margin-top: 8px;
    }

    /* フッターNote  */
    .FormUnit .FootNote {
        margin-top: 10px;
        margin-bottom: 30px;
    }

}

@media print,
screen and (min-width: 1090px) {}

/* エラーチップ（カラー設定）  --------------------------------------------------- */

.FormUnit .ErrTip {
    display: inline-block;
    position: relative;
    border-radius: 5px;
    color: #ffffff;
    background: #e90000;
}

.FormUnit .ErrTip:after {
    position: absolute;
    left: 25px;
    width: 0;
    height: 0;
    border: 10px solid transparent;
    border-top: 10px solid #e90000;
    margin-left: -10px;
    content: "";
}

@media only screen and (max-width: 767px) {

    .FormUnit .ErrTip {
        margin-bottom: 15px;
        padding: 5px 10px 5px 15px;
        line-height: 1.5em !important;
    }

    .FormUnit .ErrTip:after {
        top: 96%;
    }

}

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

    .FormUnit .ErrTip {
        margin-bottom: 20px;
        padding: 6px 10px 6px 15px;
        line-height: 1.6em !important;
    }

    .FormUnit .ErrTip:after {
        top: 92%;
    }

    .FormUnit .RadioCheckboxUnit .ErrTip {
        margin-bottom: 15px;
    }

}

@media print,
screen and (min-width: 1090px) {}

/* アクションボタン  --------------------------------------------------- */

.FormUnit .FormAction {
    text-align: center;
}

.FormUnit .FormAction input {
    border-style: none;
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    cursor: pointer;
}

.FormUnit .FormAction button {
    border-style: none;
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    cursor: pointer;
}

.FormUnit .FormAction .BtnNext {
    display: block;
    box-sizing: border-box;
    border: 1px solid #e3adbf;
    background: #fff url(/img/common/icon/Icon_LinkAllow1.png) no-repeat;
    background-size: 19.5px auto;
    background-position: 97% 50%;
    line-height: 1.0em;
    color: #b9335f;
}

.FormUnit .FormAction .BtnBack {
    display: block;
    box-sizing: border-box;
    border: 1px solid #e3adbf;
    background: #eee url(/img/common/icon/Icon_LinkAllowBack1.png) no-repeat;
    background-size: 19.5px auto;
    background-position: 3% 50%;
    line-height: 1.0em;
    color: #000;
}

@media only screen and (max-width: 767px) {

    .FormUnit .FormAction {
        margin: 0 15px;
    }

    .FormUnit .FormAction .BtnList {
        width: 100%;
    }

    .FormUnit .FormAction .BtnList li {
        float: none;
        width: 100%;
    }

    .FormUnit .FormAction .BtnNext {
        width: 100%;
        margin-top: 15px;
        padding: 15px;
        font-size: 115%;
    }

    .FormUnit .FormAction .BtnBack {
        width: 100%;
        margin-top: 15px;
        padding: 15px;
        font-size: 115%;
    }

}

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

    .FormUnit .FormAction {
        margin: 30px auto 0 auto;
    }

    .FormUnit .FormAction .BtnLine {
        width: 35%;
        margin: 0 auto;
    }

    .FormUnit .FormAction .BtnList {
        width: 60%;
        margin: 0 auto;
    }

    .FormUnit .FormAction .BtnList li {
        width: 48%;
        margin-right: 4%;
    }

    .FormUnit .FormAction .BtnList li:nth-child(2n) {
        margin-right: 0;
    }

    .FormUnit .FormAction .BtnNext {
        width: 100%;
        margin: 0 auto;
        padding: 15px 0;
        font-size: 108%;
    }

    .FormUnit .FormAction .BtnBack {
        width: 100%;
        margin: 0 auto;
        padding: 15px 0;
        font-size: 108%;
    }

    .FormUnit .FormAction input:hover {
        opacity: 0.9;
        -webkit-transition: all 0.05s cubic-bezier(.17, .67, .83, .67) 0s;
        transition: all 0.05s cubic-bezier(.17, .67, .83, .67) 0s;
    }

    .FormUnit .FormAction .BtnLeft {
        float: left;
    }

    .FormUnit .FormAction .BtnRight {
        float: right;
    }

}

@media print,
screen and (min-width: 1090px) {}

/* 入力欄のスタイル  --------------------------------------------------- */

/*  border色とシャドー（カラー設定） */
.FormUnit input[type=text],
.FormUnit input[type=email],
.FormUnit input[type=tel],
.FormUnit input[type=password],
.FormUnit textarea {
    border: 1px solid #bbb;
    box-shadow: inset 1px 1px 1px 0px #d5d5d5;
}

.FormUnit input[type=text],
.FormUnit input[type=email],
.FormUnit input[type=tel],
.FormUnit input[type=password],
.FormUnit textarea {
    border-radius: 2px;
    box-sizing: border-box;
    vertical-align: middle;
    background: #fff;
}

.FormUnit textarea {
    padding: 8px;
    line-height: 1.4em;
}

.FormUnit input[type=image] {
    vertical-align: middle;
}

/* labelの余白 */
.FormUnit label {
    margin: 0 20px 0 5px;
}

/* 住所入力 */
.FormUnit .AddressUnit label {
    display: block;
    line-height: 1.0em;
    font-weight: bold;
}


@media only screen and (max-width: 767px) {

    /*  border色とシャドー（カラー設定） */
    .FormUnit input[type=text],
    .FormUnit input[type=email],
    .FormUnit input[type=tel],
    .FormUnit input[type=password],
    .FormUnit textarea {
        font-size: 115%;
    }

    .FormUnit input[type=text],
    .FormUnit input[type=email],
    .FormUnit input[type=tel],
    .FormUnit input[type=password],
    .FormUnit textarea {
        padding: 10px 10px;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
    }

    .FormUnit textarea {
        font-size: 115%;
    }

    /* 住所入力 */
    .FormUnit .AddressUnit .EachUnit {
        margin-bottom: 15px;
    }

    .FormUnit .AddressUnit .EachUnit:last-child {
        margin-bottom: 0;
    }

    .FormUnit .AddressUnit label {
        margin-left: 15px;
        margin-right: 10px;
        margin-bottom: 8px;
    }

    /* ラジオボタン・セレクトボックス */
    .FormUnit .RadioCheckboxUnit p {
        margin-bottom: 15px;
    }

    .FormUnit .RadioCheckboxUnit p:last-child {
        margin-bottom: 0;
    }

}

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

    /*  border色とシャドー（カラー設定） */
    .FormUnit input[type=text],
    .FormUnit input[type=email],
    .FormUnit input[type=tel],
    .FormUnit input[type=password],
    .FormUnit textarea {
        -webkit-transition: all 0.1s cubic-bezier(.17, .67, .83, .67) 0.1s;
        transition: all 0.1s cubic-bezier(.17, .67, .83, .67) 0.1s;
    }

    .FormUnit input[type=text],
    .FormUnit input[type=email],
    .FormUnit input[type=tel],
    .FormUnit input[type=password],
    .FormUnit textarea {
        height: 2.4em;
        padding: 0 10px;
        line-height: 2.4em;
    }

    /* フォーカス時のスタイル（カラー設定）  */
    .FormUnit input[type=text]:focus,
    .FormUnit textarea:focus {
        background: #f7f7f7;
        -webkit-transition: all 0.1s cubic-bezier(.17, .67, .83, .67) 0.1s;
        transition: all 0.1s cubic-bezier(.17, .67, .83, .67) 0.1s;
    }

    /* 住所入入力 */
    .FormUnit .AddressUnit .EachUnit {
        margin-bottom: 20px;
    }

    .FormUnit .AddressUnit .EachUnit:last-child {
        margin-bottom: 0;
    }

    .FormUnit .AddressUnit label {
        margin-left: 0;
        margin-bottom: 10px;
    }

    .FormUnit .AddressUnit p {
        line-height: 1.2em;
    }

    /* ラジオボタン・セレクトボックス */
    .FormUnit .RadioCheckboxUnit p {
        margin-bottom: 3px;
    }

    .FormUnit .RadioCheckboxUnit p:last-child {
        margin-bottom: 0;
    }

}

@media print,
screen and (min-width: 1090px) {}

/* 入力欄のサイズ --------------------------------------------------- */

@media only screen and (max-width: 767px) {

    .FormUnit .InputCounselingNumbers {
        width: 100%;
    }

    .FormUnit .InputName {
        width: 100%;
    }

    .FormUnit .InputMail {
        width: 100%;
    }

    .FormUnit .InputZipCode {
        width: 150px;
    }

    .InputAddress1 {}

    .FormUnit .InputAddress2,
    .FormUnit .InputAddress3 {
        width: 100%;
    }

    .FormUnit .InputTel {
        width: 150px;
    }

    .FormUnit .InputAge {
        width: 60px;
    }

    .FormUnit .InputComment {
        width: 100%;
        height: 10em;
    }

}

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

    .FormUnit .InputCounselingNumbers {
        width: 40%;
    }

    .FormUnit .InputName {
        width: 40%;
    }

    .FormUnit .InputMail {
        width: 70%;
    }

    .FormUnit .InputZipCode {
        width: 30%;
    }

    .InputAddress1 {}

    .FormUnit .InputAddress2,
    .FormUnit .InputAddress3 {
        width: 70%;
    }

    .FormUnit .InputTel {
        width: 40%;
    }

    .FormUnit .InputAge {
        width: 10%;
    }

    .FormUnit .InputComment {
        width: 80%;
        height: 10em;
    }

}

@media print,
screen and (min-width: 1090px) {}

/* セレクトボックス装飾 --------------------------------------------------- */

/* border色（カラー設定） */
.FormUnit select {
    border: 1px solid #bbb;
}

.FormUnit select {
    border-radius: 2px;
    box-sizing: border-box;
    background: #fff url(/img/common/form/Icon_SelectBox.png) no-repeat center right;
    background-size: 25px 40px;
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
}

.SelectBoxS select {
    height: 2.0em;
    font-size: 93%;
}

@media only screen and (max-width: 767px) {

    .FormUnit select {
        height: 3.0em;
        padding-left: 10px;
        padding-right: 50px;
    }

}

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

    .FormUnit select {
        height: 2.4em;
        padding-left: 10px;
        padding-left: 6px\9;
        /* IE10以下調整 */
        padding-right: 40px;
        padding-right: 0\9;
        /* IE10以下調整 */
        background: #fff\9;
        /* IE10以下調整 */
    }

}

@media print,
screen and (min-width: 1090px) {}

/* Firefox用調整 */
@-moz-document url-prefix() {
    .FormUnit select {
        padding-left: 6px;
    }
}

/* IE11用調整 */
@media all and (-ms-high-contrast:none) {

    *::-ms-backdrop,
    .FormUnit select {
        padding-left: 6px;
        padding-right: 0;
        background: #fff;
    }
}


/* ラジオボタン・チェックボックス装飾 --------------------------------------------------- */

.FormUnit input[type=radio]+label,
.FormUnit input[type=checkbox]+label {
    position: relative;
    margin-right: 12px;
    padding: 0 0 0 32px;
    cursor: pointer;
}

.FormUnit input[type=radio]+label::before,
.FormUnit input[type=checkbox]+label::before {
    display: block;
    position: absolute;
    top: 11px;
    left: 0;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    background: #fff;
    content: "";
}

/* border色とシャドー（カラー設定） */
.FormUnit input[type=radio]+label::before,
.FormUnit input[type=checkbox]+label::before {
    border: 1px solid #bbb;
    box-shadow: inset 1px 1px 1px 0px #d5d5d5;
}

.FormUnit input[type=radio]+label::before {
    border-radius: 30px;
}

.FormUnit input[type=checkbox]+label::before {
    border-radius: 2px;
}

/* 選択時の背景色（カラー設定） */
.FormUnit input[type=radio]:checked+label::before,
.FormUnit input[type=checkbox]:checked+label::before {
    background: #777;
}

.FormUnit input[type=radio]:checked+label::before,
.FormUnit input[type=checkbox]:checked+label::before {
    border: none;
    box-shadow: none;
}

.FormUnit input[type=radio]:checked+label::after,
.FormUnit input[type=checkbox]:checked+label::after {
    content: "";
    display: block;
    position: absolute;
    top: 11px;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

/* ラジオボタン選択時の中央ドットの色 */
.FormUnit input[type=radio]:checked+label::after {
    background: #fff;
}

/* チェックボックス選択時のチェックマークの色 */
.FormUnit input[type=checkbox]:checked+label::after {
    border-left: 3px solid #fff;
    border-bottom: 3px solid #fff;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

@media only screen and (max-width: 767px) {

    .FormUnit input[type=radio],
    .FormUnit input[type=checkbox] {
        display: none;
        margin: 0 0 0 -10px;
    }

    .FormUnit input[type=radio]+label,
    .FormUnit input[type=checkbox]+label {
        display: inline-block;
        padding: 0 0 0 32px;
        line-height: 1.6em;
    }

    .FormUnit input[type=radio]+label::before,
    .FormUnit input[type=checkbox]+label::before {
        width: 24px;
        height: 24px;
        margin-top: -13px;
    }

    /* 選択時の背景色（カラー設定） */
    .FormUnit input[type=radio]:checked+label::after,
    .FormUnit input[type=checkbox]:checked+label::after {
        top: 11px;
    }

    /* ラジオボタン選択時の中央ドットのサイズ・位置 */
    .FormUnit input[type=radio]:checked+label::after {
        left: 6px;
        width: 12px;
        height: 12px;
        margin-top: -7px;
        border-radius: 8px;
    }

    /* チェックボックス選択時のチェックマークのサイズ・位置 */
    .FormUnit input[type=checkbox]:checked+label::after {
        left: 5px;
        width: 15px;
        height: 10px;
        margin-top: -8px;
    }

}

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

    .FormUnit input[type=radio],
    .FormUnit input[type=checkbox] {
        margin-right: 6px;
        -webkit-transition: all 0.1s cubic-bezier(.17, .67, .83, .67) 0.1s;
        transition: all 0.1s cubic-bezier(.17, .67, .83, .67) 0.1s;
    }

    .FormUnit input[type=radio]+label,
    .FormUnit input[type=checkbox]+label {
        font-size: 14px;
        line-height: 1.7em;
    }

    .FormUnit input[type=radio],
    .FormUnit input[type=checkbox] {
        display: none;
        margin: 0 0 0 -10px;
    }

    .FormUnit input[type=radio]+label,
    .FormUnit input[type=checkbox]+label {
        display: inline-block;
        padding: 0 0 0 24px;
    }

    .FormUnit input[type=radio]+label::before,
    .FormUnit input[type=checkbox]+label::before {
        width: 18px;
        height: 18px;
        margin-top: -9px;
    }

    /* border色とシャドー（カラー設定） */
    .FormUnit input[type=radio]+label::before,
    .FormUnit input[type=checkbox]+label::before {
        -webkit-transition: all 0.1s cubic-bezier(.17, .67, .83, .67) 0.1s;
        transition: all 0.1s cubic-bezier(.17, .67, .83, .67) 0.1s;
    }

    /* 選択時の背景色（カラー設定） */
    .FormUnit input[type=radio]:checked+label::after,
    .FormUnit input[type=checkbox]:checked+label::after {
        top: 12px;
    }

    /* ラジオボタン選択時の中央ドットのサイズ・位置 */
    .FormUnit input[type=radio]:checked+label::after {
        left: 5px;
        width: 8px;
        height: 8px;
        margin-top: -5px;
        border-radius: 8px;
    }

    /* チェックボックス選択時のチェックマークのサイズ・位置 */
    .FormUnit input[type=checkbox]:checked+label::after {
        left: 4px;
        width: 12px;
        height: 7px;
        margin-top: -6px;
    }

}

@media print,
screen and (min-width: 1090px) {}

/* 完了画面 --------------------------------------------------- */

@media only screen and (max-width: 767px) {

    .FormUnit .BtnHome {
        margin: 0 10px;
    }

    /* ボタン：通常（他のページ、次のページに移動など） */
    /*
	.FormUnit .BtnNext {
	display: block;
	width: 100%;
	padding: 20px 0;
	text-align: center;
	}
	
*/
    /* メッセージBOX：通常 */
    .FormUnit .MsgBoxNormal {
        margin: 30px 10px;
    }

    .FormUnit .MsgBoxNormal .Mds {
        font-size: 108%;
    }

    .FormUnit .BtnRight {
        margin-bottom: 20px;
    }

}

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

    .FormUnit .BtnHome {
        margin-top: 60px;
        text-align: center;
    }

    .FormUnit .MsgBox {
        text-align: center;
    }

    /* ボタン：通常（他のページ、次のページに移動など） */
    .FormUnit .BtnHome .BtnNext {
        display: block;
        width: 35%;
        margin: 0 auto;
        padding: 15px 0;
        box-sizing: border-box;
        border: 1px solid #e3adbf;
        background: #fff url(/img/common/icon/Icon_LinkAllow1.png) no-repeat;
        background-size: 19.5px auto;
        background-position: 97% 50%;
        font-size: 108%;
        line-height: 1.0em;
        color: #b9335f;
    }

    /*
	.FormUnit .BtnNext {
	padding: 16px 30px;
	}
*/

}

@media print,
screen and (min-width: 1090px) {}

/* ───────────────── 追加 ───────────────── */
.pankuzu-list {
    display: flex;
    align-items: center;
}

.pankuzu-li {
    flex-grow: 1;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}

.post-thumbnail {
    margin-bottom: 20px;
}

.date {
    text-align: right;
    font-size: 90%;
}

/* カテゴリーページ */
.wp-category {}

.wp-category>article {
    margin-bottom: 40px;
}

.wp-category .post-thumbnail {
    margin-bottom: 10px;
}

.wp-category a {
    color: #000;
}

.wp-category h2 {
    font-family: 'Noto Serif JP', serif;
    font-weight: normal;
    font-size: 130%;
    color: #1A0DAB;
    text-decoration: underline;
    line-height: 1.6;
}

.pagination {
    display: flex;
    justify-content: center;
}

.nav-links {
    display: flex;
}

.page-numbers {
    display: flex;
    justify-content: center;
    gap: 10px;
    padding: 10px 20px;
    color: #000;
    border-radius: 3px;
}

.page-numbers li {
    background: #f6f4f1;
    border: 1px solid #ad9e84;
}

.page-numbers.current {
    padding: 10px 20px;
    background: #ad9e84;
    color: #fff;
}

.page-numbers.prev,
.page-numbers.next {
    background: transparent;
    box-shadow: none;
    border: none;
    color: #666666;
}

.page-numbers.dots {
    background: transparent;
    box-shadow: none;
    border: none;
    color: #666666;
}



/* パーツ */
textarea {
    width: 100%;
    height: 200px;
    margin-bottom: 30px;
}

.full-img {
    margin-bottom: 20px;
}

.wp-contents h1 {
    line-height: 1.6em;
}

.wp-contents h2 {
    padding-top: 18px;
    border-top: 1px solid #8a7453;
    margin: 40px 0 30px;
    font-size: 147%;
    font-family: 'Noto Serif JP', serif;
    font-weight: normal;
    line-height: 1.6em;
    color: #8a7453;
}

.wp-contents h3 {
    margin: 30px 0 20px;
    font-size: 120%;
    line-height: 1.7em;
    color: #b9335f;
}

.wp-contents h4 {
    margin: 20px 0 15px;
    font-size: 107%;
    line-height: 1.6em;
}

.subtitle {
    position: relative;
    margin: 30px 0 10px;
    padding-left: 20px;
    font-size: 107%;
    line-height: 1.7em;
    font-weight: bold;
}

.subtitle::before {
    content: "■";
    position: absolute;
    top: 6px;
    left: 0px;
    color: #b9335f;
    font-size: 107%;
    line-height: 1;
}

.wp-contents p {
    margin-bottom: 20px;
    line-height: 1.6em;
}

.wp-contents p:has(+ p) {
    margin-bottom: 10px;
}

.pink {
    color: #ba335f;
}

.brown {
    color: #ad9e84;
}

.caution {
    display: inline-block;
    line-height: 1.8em;
    font-size: 86%;
}

.wp-contents table:has(+.caution),
.wp-contents .box:has(+.caution) {
    margin-bottom: 8px;
}

.wp-contents table+.caution,
.wp-contents .box+.caution {
    margin-bottom: 16px;
}

.bold {
    font-weight: bold;
}

.marker {
    font-weight: bold;
    border-bottom: 4px solid#ba335f;
}

.fullwidth-img {
    width: 100%;
    height: fit-content;
    margin-bottom: 30px;
}

.fullwidth-img img {
    display: block;
    width: 100%;
    height: auto;
}


.wp-contents table {
    width: 100%;
    margin-bottom: 30px;
    border-collapse: collapse;
    box-sizing: border-box;
    font-size: 94%;
    line-height: 1.6;
}

.wp-contents table a {
    word-break: break-all;

}

.wp-contents table p {
    margin-bottom: 0;
}

.wp-contents table th {
    padding: 12px 10px;
    text-align: left;
    background: #ebe7e1;
    border: 1px solid #d0cbc4;
    text-align: center;
}

.wp-contents table thead th:first-child {
    min-width: 160px;
}


.wp-contents table td {
    background: #fff;
    padding: 10px 15px;
    border: 1px solid #d0cbc4;
}

.wp-contents table tbody th {
    background: #f6f4f1;
    font-weight: normal;
}


.wp-contents .Box {
    border: 1px solid #b8b8b8;
    margin-bottom: 30px;
    padding: 20px;
}

.wp-contents .Box>*:last-child,
.wp-contents .Box>*:last-child>*:last-child {
    margin-bottom: 0;
}

.wp-contents .Box>*:first-child {
    margin-top: 0;
}

.wp-contents .Box[data-type="brown"] {
    background: #f6f4f1;
    border: none;
}

.wp-contents ol:not([class]) {
    padding-left: 20px;
}

.wp-contents ol:not([class]) li {
    list-style-type: decimal;
}

.wp-contents ul:not([class]),
.wp-contents ol:not([class]) {
    margin-bottom: 20px;
}

.wp-contents ul:not([class]) li {
    position: relative;
    padding-left: 20px;
    line-height: 1.6em;
    margin-bottom: 4px;
}

.wp-contents ol:not([class]) li {
    line-height: 1.8em;
    margin-bottom: 4px;
}

.wp-contents ul:not([class]) li:last-child,
.wp-contents ol:not([class]) li:last-child {
    margin-bottom: 0;
}

.wp-contents ul:not([class]) li:before {
    content: '';
    position: absolute;
    top: 0px;
    left: 4px;
    display: inline-block;
    width: 8px;
    height: 8px;
    margin-top: 8px;
    border-radius: 100%;
    background: #000;
}

.flexbox {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    width: 100%;
}

.flexbox img {
    display: block;
    width: 45%;
    height: auto;

}

.floatbox {
    width: 100%;
}

.floatbox img {
    display: block;
    width: 45%;
    height: auto;
    float: left;
    margin: 0 10px 6px 0;
}

.flexbox *:last-child,
.floatbox *:last-child {
    margin-bottom: 0;
}

.flexbox,
.floatbox {
    margin-bottom: 30px;
}

.arrow {
    width: 0;
    height: 0;
    margin: 20px auto;
    border-top: 1.2em solid #b9335f;
    border-right: 1.4em solid transparent;
    border-left: 1.4em solid transparent;
}

.quotebox {
    background: #f6f4f1;
    padding: 3.2em 1.8em 1.4em 1.8em;
    position: relative;
    margin-bottom: 30px;
}

.quotebox>*:first-child {
    margin-top: 0;
}

.quotebox *:last-child {
    margin-bottom: 0;
}

.quotebox>*:has(+ .right-txt),
.quotebox>*:has(+ .right-txt-icon) {
    margin-bottom: 10px;
}

.quotebox::before {
    display: inline-block;
    position: absolute;
    width: 4em;
    height: 4em;
    content: '';
    top: 10px;
    left: 12px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4.58341 17.3211C3.55316 16.2274 3 15 3 13.0103C3 9.51086 5.45651 6.37366 9.03059 4.82318L9.92328 6.20079C6.58804 8.00539 5.93618 10.346 5.67564 11.822C6.21263 11.5443 6.91558 11.4466 7.60471 11.5105C9.40908 11.6778 10.8312 13.159 10.8312 15C10.8312 16.933 9.26416 18.5 7.33116 18.5C6.2581 18.5 5.23196 18.0095 4.58341 17.3211ZM14.5834 17.3211C13.5532 16.2274 13 15 13 13.0103C13 9.51086 15.4565 6.37366 19.0306 4.82318L19.9233 6.20079C16.588 8.00539 15.9362 10.346 15.6756 11.822C16.2126 11.5443 16.9156 11.4466 17.6047 11.5105C19.4091 11.6778 20.8312 13.159 20.8312 15C20.8312 16.933 19.2642 18.5 17.3312 18.5C16.2581 18.5 15.232 18.0095 14.5834 17.3211Z' fill='%23d0cbc4'%3E%3C/path%3E%3C/svg%3E");
    background-size: 2.2em;
    background-repeat: no-repeat;
}

.right-txt {
    text-align: right;
}

.fukidashi {
    position: relative;
    width: fit-content;
    max-width: 100%;
    min-width: 75%;
    color: #fff;
    text-align: center;
    font-weight: bold;
    background: #8a7453;
    font-size: 107%;
    line-height: 1.6em;
    padding: 10px 20px;
    margin: 30px auto 34px;
}

.fukidashi::before {
    content: '';
    display: block;
    position: absolute;
    left: 50%;
    bottom: -43px;
    transform: translate(-50%, -50%);
    width: 0;
    height: 0;
    margin: 20px auto;
    border-top: 1.2em solid #8a7453;
    border-right: 1.4em solid transparent;
    border-left: 1.4em solid transparent;
}

.matomebox-title {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-size: 107%;
    line-height: 1.4;
    text-align: center;
    font-weight: bold;
    margin-bottom: 8px;
}

.matomebox-title::before,
.matomebox-title::after {
    content: "";
    display: block;
    background: #b9335f;
    width: 12px;
    height: 12px;
    flex-shrink: 0;
}

.surveybox-title {
    text-align: center;
    font-weight: bold;
    margin-bottom: 10px;
}

.surveybox ul {
    width: 100%;
}

.surveybox li {
    width: fit-content;
}

.right-txt-icon {
    display: flex;
    justify-content: flex-end;
}

.right-txt-icon a {
    position: relative;
    padding-left: 22px;
}

.right-txt-icon a::before {
    content: '';
    position: absolute;
    top: 5px;
    left: 0;
    display: block;
    background: url(../img/link-icon.png) center center / contain no-repeat;
    width: 16px;
    height: 16px;
}

.hosokubox-title {
    margin-bottom: 10px;
    font-weight: bold;
}

.wp-contents .btn {
    width: 80%;
    margin: 50px auto 60px;
}

.wp-contents .btn a {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 90px;
    margin: 0 auto;
    padding: 20px;
    background: #b9335f;
    color: #fff !important;
    font-family: 'Noto Serif JP', serif;
    font-weight: normal;
    letter-spacing: 0.06em;
    text-align: center;
    font-size: 130%;
    text-decoration: none !important;
}

.tag {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    font-size: 80%;
    color: #7b7b7b;
    gap: 8px;
    margin-bottom: 30px;
}

.tag:has(+ .tag) {
    margin-bottom: 8px;
}

.tag .item {
    padding: 8px 14px;
    background: #eeeeee;
    border-radius: 6px;
}

.tag>.on {
    background: #cb6386;
    color: #fff;
}

.scrolltable {
    overflow-x: scroll;
    margin-bottom: 30px;
}

.scrolltable {
    overflow-x: scroll;
    margin-bottom: 30px;
}

.wp-contents .scrolltable table {
    table-layout: fixed;
    min-width: 160%;
    width: auto;
    margin-bottom: 0;
    border-collapse: collapse;
    margin-right: 1px;
}

.wp-contents .scrolltable table thead th:first-of-type {
    min-width: 150px;
    white-space: normal;
}

.wp-contents .scrolltable table thead th:not(.scrolltable table thead th:first-of-type) {
    min-width: 180px;
    white-space: normal;
}

.wp-contents .scrolltable table th,
.wp-contents .scrolltable table td {
    padding: 10px 15px;
    border: 1px solid #d0cbc4;
    text-align: center;
    white-space: normal;
    word-break: break-word;
    overflow-wrap: break-word;
}

.wp-contents .scrolltable table td a:not(.btn a) {
    display: inline-block;
    word-break: break-all;
    overflow-wrap: break-word;
}

.wp-contents .scrolltable .btn {
    width: 100%;
    margin: 10px auto;
    font-size: 12px;
}

.scrolltable .caution {
    margin-bottom: 0;
}

.scrolltable img {
    margin: 0 auto;
}

.scrolltable a:has(img) {
    display: block;
    width: fit-content;
    margin: 0 auto;
}

.jumplist {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    margin-bottom: 30px;
}

.jumplist .item {
    width: 100%;
    border: 1px solid #b9335f;
    transition: .3s;
}

.jumplist .item:hover {
    background: #b9335f;
}

.jumplist .item:hover>a {
    color: #fff;
}

.jumplist .item>a {
    display: block;
    width: 100%;
    padding: 10px 20px;
    text-align: center;
    color: #b9335f;
    font-size: 120%;
    line-height: 1.6;
}

.numlist {
    display: flex;
    flex-direction: column;
    gap: 25px;
    margin: 30px 0 40px;
    counter-reset: num;
}

.wp-contents .numlist-title {
    position: relative;
    font-size: 1.16rem;
    letter-spacing: 0.03em;
    line-height: 1.4;
    margin-bottom: 12px;
    padding-left: 34px;
}

.numlist-title>span {
    display: block;
}

.numlist-num {
    position: absolute;
    left: 0px;
    top: -10px;
}

.numlist-num::before {
    counter-increment: num 1;
    content: counter(num) ".";
    color: #b9335f;
    font-size: 147%;
}

.numlist-block>*:last-child {
    margin-bottom: 0;
}

.rank {
    border-left: 4px solid #8a7453;
    padding: 0 10px;
    margin-top: 30px;
    margin-bottom: 20px;
}

.rank>span {
    display: block;
    margin-bottom: 2px;
    line-height: 1.2;
}

.rank a {
    font-size: 132%;
    font-weight: bold;
    line-height: 1.6;
}

.step-wrap {
    counter-reset: step;
    margin-bottom: 30px;
}

.step {
    position: relative;
    margin-bottom: 1rem;
    margin-left: 2rem;
    padding: 2rem 1.8rem 2rem 2.5rem;
    border: 1px solid #f3b6ca;
}

.wp-contents .step-title {
    margin-bottom: 12px;
}

.step-num {
    position: absolute;
    left: -1.5rem;
    top: 83px;
    display: block;
    width: 3rem;
    height: 3rem;
    font-size: 2rem;
    line-height: 3.2rem;
    text-align: center;
    margin: -4rem auto 0 auto;
    background: url(../img/Icon_NumberBg.png) center center / cover no-repeat;
}

.step-num::before {
    counter-increment: step 1;
    content: counter(step) " ";
    color: #fff;
}

.step-title>span:not(.step-num) {
    font-size: 132%;
    letter-spacing: 0.03em;
    line-height: 1.4;
    color: #b9335f;
}

.step-block>*:last-child {
    margin-bottom: 0;
}

.picup {
    position: relative;
    margin: 60px auto 34px;
    padding: 40px 12px 10px;
    border: 1px solid #8a7453;
}

.picup-title {
    position: absolute;
    left: 50%;
    top: 0px;
    transform: translate(-50%, -50%);
    width: 90%;
    color: #fff;
    text-align: center;
    font-weight: bold;
    background: #8a7453;
    font-size: 107%;
    line-height: 1.6em;
    padding: 10px 20px;
    margin: 0 auto;
}

.picup li {
    padding: 10px 0;
    line-height: 1.6;
}

.picup li+li {
    border-top: 1px solid #c7b69c;
}

.faq-wrap {
    margin-bottom: 30px;
    line-height: 1.6;
}

.faq-wrap:has(+.faq-wrap) {
    margin-bottom: 10px;
}


.faqQ {
    display: block;
    position: relative;
    border: 1px solid #e9e8e5;
    color: #000;
    text-decoration: none;
    padding: 15px 40px 15px 15px;
    margin-bottom: 0;
}

.faqQ>p {
    font-size: 114%;
    font-weight: bold;
    cursor: pointer;
    margin-bottom: 0;
}

.faqQ:before {
    top: 50%;
    right: 18px;
    width: 14px;
    height: 1px;
    margin-top: -1px;
}

.faqQ:after {
    top: 50%;
    right: 24px;
    width: 1px;
    height: 14px;
    margin-top: -7px;
}

.faqQ:before,
.faqQ:after {
    display: block;
    position: absolute;
    background-color: #b9335f;
    content: "";
}

.faq-open:before {
    color: #fff;
}

.faq-open:after {
    display: none;
}

.faq-open:before {
    background-color: #fff;
}

.faq-open {
    background: #ad9e84;
    border-bottom: none;
    color: #fff;
}

.faqA {
    display: none;
    border: 1px solid #e9e8e5;
    color: #000;
    text-decoration: none;
    padding: 15px;
}

.faqA>*:first-child {
    margin-top: 0;
}

.faqA>*:last-child {
    margin-bottom: 0;
}


.faqA-hidden {
    display: block;
}





.categoryparts {
    margin: 40px 0;
}

.categoryparts>.list>li {
    width: 100%;
    margin-bottom: 20px;
    border: 1px solid #ad9e84;
    box-sizing: border-box;
}

.categoryparts .wrap {
    position: relative;
}

.categoryparts .ttl {
    margin: -22px 20px 0px;
    padding: 0 5px;
    font-size: 143%;
    background: #ad9e84;
    text-align: center;
    line-height: 1.0em;
    color: #fff;
    font-family: 'Noto Serif JP', serif;
    font-weight: normal;
    letter-spacing: 0.08em;
}

.categoryparts .ttl>a {
    display: block;
    width: 100%;
    padding: 15px 0;
    color: #fff;
}

.categoryparts .block {
    padding: 0px 20px 22px 20px;
}

.categoryparts .block>li {
    float: none;
    border-bottom: 1px solid #e9e9e9;
}

.categoryparts .block>li>a {
    position: relative;
    display: block;
    padding: 15px 40px 15px 20px;
    color: #000;
    text-decoration: none;
    font-size: 115%;
    line-height: 1.7em;
}

.categoryparts .block>li>a::before {
    display: inline-block;
    position: absolute;
    background: url(../img/Icon_LinkAllow1.png) no-repeat center top;
    background-size: contain;
    content: '';
    top: 50%;
    right: 10px;
    width: 19.5px;
    height: 7px;
}