@charset "UTF-8";

/*
■ フォント設定
■ カラー設定
■ 汎用
■ アイコン
■ 横幅最大値・左右余白設定

■ ヘッダー（Header）
■ グローバルナビ：製品（GlobalNavProducts）
■ グローバルナビ：その他（GlobalNavOthers）
■ パン屑リスト（BreadCrumbUnit）
■ ページの先頭へ
■ フッターナビ（FooterNav）
■ フッター（Footer）
■ ヘッダー・フッター以外の領域指定（Stage）

■ ローカルナビ（LocalNav）
■ コンテンツ領域（Contents）

■ 見出し（製品ページ）
■ 見出し（製品ページ以外）

■ メインリード（LeadMain）
■ セクション（製品ページ）
■ セクション（製品ページ以外）
■ 関連情報（RelatedInfo）

■ カラム（Col）

■ 記述リスト（DLHori、DLVert、DLTable）
■ 表組み（Table1、Table2）
■ 囲み（Box）
■ リスト各種
■ テキストリンクアイコン

■ ボタン

■ ページネーション

■ モーダルウインド

■ フォーム

■ PCヘッダー
■ PCフッター

■ 印刷用設定
*/


/* ■ フォント設定 ==================================================================================== */

/*
基準サイズ・フォントファミリー
ウエイト
*/


/* 基準サイズ・フォントファミリー --------------------------------------------------- */

@media only screen and (max-width: 767px) {

    /* html {
	font-size: 62.5%;
	}

	body {
	font-size: 1.6em;
	} */
    /* h1,h2,h3,h4,h5,h6,th,dt,strong,em {
	font-family: "Lato","ヒラギノUD角ゴ W5 JIS2004",Sans-Serif;
	line-height: 1.8em;
	font-weight: 700;
	}

	p,td,dl,ul,ol,caption,blockquote,input,select,textarea,div {
	font-family: "Lato","ヒラギノUD角ゴ W3 JIS2004",Sans-Serif;
	line-height: 1.9em;
	}

	.FW_N {
	font-family: "Lato","ヒラギノUD角ゴ W3 JIS2004",Sans-Serif;
	font-weight: 400;
	}

	.FW_B {
	font-family: "Lato","ヒラギノUD角ゴ W5 JIS2004",Sans-Serif;
	font-weight: 700;
	} */

}

@media print, screen and (min-width: 768px) {

    /* html {
	font-size: 56%;
	}

	body {
	font-size: 1.6em;
	} */
    /* h1,h2,h3,h4,h5,h6,th,dt,strong,em {
	font-family: "Lato","ヒラギノUD角ゴ W5 JIS2004","ヒラギノ角ゴ Pro W5","Hiragino Kaku Gothic Pro","メイリオ","Meiryo","ＭＳ Ｐゴシック",Sans-Serif;
	line-height: 1.8em;
	font-weight: 700;
	} */
    /* p,td,dl,ul,ol,caption,blockquote,input,select,textarea,div {
	font-family: "Lato","ヒラギノUD角ゴ W3 JIS2004","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo","ＭＳ Ｐゴシック",Sans-Serif;
	line-height: 2.2em;
	} */
    /* .FW_N {
	font-family: "Lato","ヒラギノUD角ゴ W3 JIS2004","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo","ＭＳ Ｐゴシック",Sans-Serif;
	font-weight: 400;
	}

	.FW_B {
	font-family: "Lato","ヒラギノUD角ゴ W5 JIS2004","ヒラギノ角ゴ Pro W5","Hiragino Kaku Gothic Pro","メイリオ","Meiryo","ＭＳ Ｐゴシック",Sans-Serif;
	font-weight: 700;
	} */

}

@media print, screen and (min-width: 1090px) {

    /* html {
	font-size: 62.5%;
	} */

}


/* ■ カラー設定 ==================================================================================== */

/*
本文・body背景
リンク
アラート
テキスト個別
ボーダー個別
背景個別
*/


/* 本文・body背景 --------------------------------------------------- */

body {
    color: #000;
    background: #fff;
}


/* リンク --------------------------------------------------- */

/* a:link {
color: #3975ae;
text-decoration: none;
}

a:active {
color: #3975ae;
text-decoration: none;
}

a:visited {
color: #3975ae;
text-decoration: none;
}

a:hover {
color: #b91010;
text-decoration: none;
} */

@media only screen and (max-width: 767px) {

}

@media print, screen and (min-width: 768px) {

}

@media print, screen and (min-width: 1090px) {

    /* 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 {
	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: #f6f6f6 !important;*/
}

.BgColor2 {
    /*background-color: #ccc !important;*/
}

.BgColor3 {
    /*background-color: #ccc !important;*/
}


/* ■ 汎用 ==================================================================================== */

#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;
    }

}

@media print, screen and (min-width: 768px) {

    .SP {
        display: none !important;
    }

}

@media print, screen and (min-width: 1090px) {

}


/* ■ アイコン ==================================================================================== */


/* ■ 横幅最大値・左右余白設定 ==================================================================================== */

#Header,
#GlobalNav,
#FooterNavUnit,
#FooterUnit,
#Stage {
    width: 100%;
}

@media only screen and (max-width: 767px) {

    .Wrap {
        padding: 0 15px;
    }

    /* スマホのみ */
    .WrapSP {
        padding: 0 15px;
    }

}

@media print, screen and (min-width: 768px) {

    .Wrap {
        padding: 0 30px;
    }

    /* PC・タブレットのみ */
    .WrapPC {
        padding: 0 30px;
    }

}

@media print, screen and (min-width: 1090px) {

    .Width1,
    .Width2,
    .Width3,
    .Width4 {
        margin: 0 auto;
    }

    .Width1 {
        /*max-width: 1050px;*/
    }

    .Width2 {
        /*max-width: 900px;*/
    }

    .Width3 {
        /*max-width: 1280px;*/
    }

    /* 小要素 横幅拡張 */
    .Width2Over {
        margin-left: -75px;
        margin-right: -75px;
    }

    .WidthFull1 {
        width: calc(100vw - 240px);
        margin: 0 calc(50% - 50vw);
        padding: 0 50px;
    }

    .WidthFull2 {
        width: calc(100vw - 240px);
        margin: 0 calc(50% - 50vw);
    }

}


/* ■ ヘッダー（Header） ==================================================================================== */

#HeaderGlobalNavWrap {
    position: relative;
}

#Header {
    background: #000;
}

/* Logo */
.Header_Logo a {
    display: block;
    position: relative;
    line-height: 1.0em;
    text-indent: -9999px;
    background: url(/img/common/header/Logo.png) no-repeat;
    background-size: cover;
}

/* ログイン・検索・Local Site */
.Header_Login a,
#BtnSearchBox,
#BtnLocalSite {
    color: #fff;
}

/* ログイン */
.Header_Login a {
    background: url(/img/common/icon/Icon_Login.png) no-repeat;
}

/* Local Site */
#BtnLocalSite {
    position: relative;
    background: url(/img/common/icon/Icon_SelectBox.png) no-repeat;
}

#ListLocalSite {
    display: none;
    position: absolute;
    z-index: 30000;
    background: #2a2a2a;
}

#ListLocalSite a {
    display: block;
    position: relative;
    line-height: 1.0em;
    color: #cacaca;
}

@media only screen and (max-width: 767px) {

    #Header {
        position: relative;
        height: 50px;
    }

    /* Logo */
    .Header_Logo {
        padding-left: 12px;
        padding-top: 16px;
    }

    .Header_Logo a {
        width: 75px;
        height: 16px;
    }

    /* ログイン・検索・Local Site */
    .Header_Login,
    #BtnSearchBox,
    #BtnLocalSite {
        position: absolute;
        top: 15px;
    }

    .Header_Login a,
    #BtnSearchBox,
    #BtnLocalSite {
        display: block;
        font-size: 11px;
        line-height: 1.0em;
    }

    /* ログイン */
    .Header_Login {
        right: 195px;
    }

    .Header_Login a {
        padding: 4px 0 4px 17px;
        background-position: 0 1px;
        background-size: 10px 15px;
    }

    /* 検索 */
    #BtnSearchBox {
        right: 140px;
        padding: 4px 0 4px 18px;
        line-height: 1.0em;
        background: url(/img/common/icon/Icon_Search2.png) no-repeat;
        background-position: 0 3px;
        background-size: 15px 15px;
    }

    #SearchBox {
        display: none;
        position: absolute;
        left: 0;
        top: 50px;
        z-index: 10000;
        width: 100%;
        padding: 25px 15px;
        background: #1f1f1f;
    }

    /* Local Site */
    #BtnLocalSite {
        right: 60px;
        padding: 3.5px 14px 4px 0;
        background-position: 100% 6px;
        background-size: 10px 6px;
    }

    #ListLocalSite {
        left: 0;
        top: 50px;
        width: 100%;
    }

    #ListLocalSite a {
        position: relative;
        margin-bottom: 1px;
        padding: 18px 15px;
        font-size: 15px;
        background: #1f1f1f;
    }

    #ListLocalSite a:before,
    #ListLocalSite a:after {
        display: block;
        position: absolute;
        top: 50%;
        height: 1px;
        background: #fff;
        content: "";
    }

    #ListLocalSite a:before {
        right: 14px;
        width: 8px;
        margin-top: -3px;
        transform: rotate(45deg);
    }

    #ListLocalSite a:after {
        right: 15px;
        width: 18px;
    }

    /* メールマガジン */
    .Header_MailNewsUnit {
        margin: 20px 15px 0 15px;
        padding: 20px 30px 25px 30px;
        text-align: center;
        color: #fff;
        background: #2a2a2a;
    }

    .Header_MailNewsUnit .Lead1 {
        font-size: 15px;
    }

    .Header_MailNewsUnit .BtnTo {
        margin-top: 10px;
    }

    /* BtnOpenMenu */
    #BtnOpenMenu a {
        display: block;
        position: absolute;
        top: 0;
        right: 0;
        width: 50px;
        height: 50px;
        text-indent: -9999px;
    }

    #BtnOpenMenu .Current {
        background: #1f1f1f;
    }

    #BtnOpenMenu .HamburgerItem {
        position: absolute;
        display: block;
        width: 20px;
        height: 1px;
        top: 24px;
        left: 0;
        right: 0;
        margin: auto;
        background-color: #fff;
        transition: 0.3s ease 0.01s;
    }

    #BtnOpenMenu .HamburgerItem:nth-child(1) {
        transform: translateY(-7px);
    }

    #BtnOpenMenu .HamburgerItem:nth-child(3) {
        transform: translateY(7px);
    }

    #BtnOpenMenu .Current .HamburgerItem:nth-child(1) {
        transform: translateY(0px) rotate(45deg);
    }

    #BtnOpenMenu .Current .HamburgerItem:nth-child(2) {
        transform: translateX(6.3333333333px);
        opacity: 0;
    }

    #BtnOpenMenu .Current .HamburgerItem:nth-child(3) {
        transform: translateY(0px) rotate(-45deg);
    }

}

@media only screen and (max-width: 372px) {

    /* Logo */
    .Header_Logo {
        padding-left: 10px;
    }

    /* ログイン */
    .Header_Login {
        right: 150px;
    }

    /* 検索 */
    #BtnSearchBox {
        right: 125px;
        width: 15px;
        text-indent: -9999px;
    }

    /* Local Site */
    #BtnLocalSite {
        right: 60px;
    }

}

@media print, screen and (min-width: 768px) {

    #Header {
        height: 90px;
    }

    /* Logo */
    .Header_Logo {
        padding-left: 20px;
        padding-top: 30px;
    }

    .Header_Logo a {
        width: 122px;
        height: 26px;
    }

    /* Logo：50th */
    /*
	.Header_Logo a:after {
	display: block;
	position: absolute;
	right: -70px;
	top: -8px;
	width: 60px;
	height: 46px;
	background: url(/img/home/slide/50th_Logo.png) no-repeat;
	background-size: 60px 46px;
	content: "";
	}
*/
    /* ログイン・メルマガ・検索・Local Site */
    .Header_Login,
    .Header_MailNews,
    .Header_Search,
    .Header_LocalSite {
        position: absolute;
        top: 8px;
    }

    .Header_Login a,
    .Header_MailNews a,
    #BtnLocalSite {
        font-size: 12px;
        line-height: 1.0em;
    }

    /* ログイン */
    .Header_Login {
        right: 475px;
    }

    .Header_Login a {
        padding: 2px 0 2px 18px;
        background-position: 0 1px;
        background-size: 10px 15px;
    }

    /* メールマガジン */
    .Header_MailNews {
        right: 365px;
    }

    .Header_MailNews a {
        padding: 2px 0 2px 18px;
        color: #fff;
        background: url(/img/common/icon/Icon_Mail.png) no-repeat;
        background-position: 0 4.5px;
        background-size: 13px 9px;
    }

    /* 検索 */
    .Header_Search {
        right: 100px;
    }

    #SearchBox {
        display: block !important;
    }

    /* Local Site */
    .Header_LocalSite {
        right: 15px;
    }

    #BtnLocalSite {
        padding: 10px 25px 15px 10px;
        background-position: 90% 14px;
        background-size: 10px 6px;
    }

    #BtnLocalSite.Current {
        background-color: #2a2a2a;
    }

    #ListLocalSite {
        top: 38px;
        right: 0;
        min-width: 130px;
        padding: 10px 0 10px 10px;
    }

    #ListLocalSite li {
        display: block;
    }

    #ListLocalSite a {
        padding: 5px 10px 5px 24px;
        font-size: 13px;
    }

    #ListLocalSite a:before {
        display: block;
        position: absolute;
        left: 5px;
        top: 10px;
        width: 10px;
        height: 1px;
        background: #666;
        content: "";
    }

    /* BtnOpenMenu */
    #BtnOpenMenu {
        display: none;
    }

}

@media print, screen and (min-width: 1090px) {

    /* Logo：50th */
    .Header_Logo a:after {
        right: -85px;
        top: -12px;
        width: 70px;
        height: 53px;
        background-size: 70px 53px;
    }

    /* ログイン */
    .Header_Login {
        right: 510px;
    }

    /* メールマガジン */
    .Header_MailNews {
        right: 390px;
    }

    /* 検索 */
    .Header_Search {
        right: 120px;
    }

    /* Local Site */
    .Header_LocalSite {
        right: 20px;
    }

    #BtnLocalSite {
        padding: 10px 25px 15px 10px;
        background-position: 99% 11px;
        background-position: 88% 15px;
    }

    #ListLocalSite {
        top: 42px;
        min-width: 140px;
    }

    #ListLocalSite a:hover {
        color: #b91010;
        opacity: 1.0;
    }

    #ListLocalSite a:hover:before {
        background: #b91010;
    }

}


/* ■ グローバルナビ：製品（#GlobalNavProducts） ==================================================================================== */

/*
親メニュー・共通
カテゴリーリスト
その他 メニューリスト
製品名から探す（A-Z）
検索窓
*/


/* 親メニュー・共通 --------------------------------------------------- */

#GlobalNavProducts {
    background: #1f1f1f;
}

#GlobalNavProducts .MdsPS,
#GlobalNavProducts .Parent a {
    color: #fff;
    background-repeat: no-repeat;
}

#GlobalNavProducts .Menu1 .Parent a {
    background-image: url(/img/common/icon/Icon_Cate1.png);
}

#GlobalNavProducts .Menu2 .Parent a {
    background-image: url(/img/common/icon/Icon_Cate2.png);
}

#GlobalNavProducts .Menu3 .Parent a {
    background-image: url(/img/common/icon/Icon_Cate3.png);
}

#GlobalNavProducts .Menu4 .Parent a {
    background-image: url(/img/common/icon/Icon_Cate4.png);
}

#GlobalNavProducts .Menu5 .Parent a {
    background-image: url(/img/common/icon/Icon_Cate5.png);
}

/* 下層メニュー */
#GlobalNavProducts .MegaMenuWrap {
    display: block;
    position: relative;
    float: none;
    width: 100%;
    border: none;
    text-align: left;
    background-color: #fff;
}

@media only screen and (max-width: 767px) {

    #GlobalNavWrap {
        display: none;
        position: absolute;
        left: 0;
        top: 50px;
        z-index: 10001;
        width: 100%;
        padding: 20px 0 30px 0;
        background: #1f1f1f;
    }

    #GlobalNavProducts .MdsPS {
        margin-left: 15px;
        margin-bottom: 15px;
        font-size: 15px;
    }

    #GlobalNavProducts .Parent a {
        display: block;
        position: relative;
        padding: 26px 22px 26px 56px;
        border-bottom: 1px solid #666;
        font-size: 17px;
        line-height: 1em;
        background-color: #000;
        background-position: 22px 50%;
        background-size: 25px auto;
    }

    #GlobalNavProducts .Menu1 .Parent a {
        border-top: 1px solid #666;
    }

    /* プラスマイナス アイコン */
    #GlobalNavProducts .Parent a:before,
    #GlobalNavProducts .Parent a:after {
        display: block;
        position: absolute;
        top: 50%;
        right: 15px;
        width: 15px;
        height: 1px;
        background: #fff;
        content: "";
    }

    #GlobalNavProducts .Parent a:after {
        transform: rotate(90deg);
    }

    #GlobalNavProducts .Parent a.Current:after,
    #GlobalNavProducts .Parent a.highlighted:after {
        display: none;
    }

    /* 親メニュー選択時（SmartMenus設定 .highlighted）基本hover色と同じ */
    #GlobalNavProducts .Parent a.Current,
    #GlobalNavProducts .Parent a.highlighted {
        border-bottom: none;
    }

    /* 下層メニュー */
    #GlobalNavProducts .MegaMenuWrap {
        padding: 15px 15px 50px 15px;
    }

    /* 親のみ（下層メニューなし） */
    #GlobalNavProducts .NoChild a:before,
    #GlobalNavProducts .NoChild a:after {
        display: block;
        position: absolute;
        top: 50%;
        height: 1px;
        background: #fff;
        content: "";
    }

    #GlobalNavProducts .NoChild a:before {
        right: 14px;
        width: 8px;
        margin-top: -3px;
        transform: rotate(45deg);
    }

    #GlobalNavProducts .NoChild a:after {
        right: 15px;
        width: 18px;
        transform: rotate(0);
    }

    #GlobalNavProducts .NoChild a.Current:after,
    #GlobalNavProducts .NoChild a.highlighted:after {
        display: block;
    }

    #GlobalNavProducts .Parent a.Current,
    #GlobalNavProducts .Parent a.highlighted {
        border-bottom: 1px solid #666;
    }

}

@media print, screen and (min-width: 768px) {

    #GlobalNavWrap {
        display: block !important;
    }

    #GlobalNavProducts {
        position: relative;
        z-index: 10000;
    }

    .Page_Home #GlobalNavProducts.Opened {
        opacity: 1;
    }

    #GlobalNavProducts li {
        display: block;
        float: left;
    }

    #GlobalNavProducts .MdsPS {
        display: none;
    }

    #GlobalNavProducts .Parent a {
        display: block;
        position: relative;
        margin-right: 3px;
        padding: 30px 22px 30px 56px;
        font-size: 14px;
        line-height: 1em;
        background-position: 22px 50%;
        background-size: 24px auto;
    }

    /* 親メニュー選択時（SmartMenus設定 .highlighted）基本hover色と同じ */
    #GlobalNavProducts .Parent a.highlighted {
        background-color: #2a2a2a;
    }

    /* 親メニュー：カレント */
    #PageProducts_Professional #GlobalNavProducts .Menu1 .Parent a {
        background-color: #2a2a2a;
    }

    #PageProducts_Sports #GlobalNavProducts .Menu2 .Parent a {
        background-color: #2a2a2a;
    }

    #PageProducts_Security #GlobalNavProducts .Menu3 .Parent a {
        background-color: #2a2a2a;
    }

    #PageProducts_Medical #GlobalNavProducts .Menu4 .Parent a {
        background-color: #2a2a2a;
    }

    /* 下層メニュー */
    #GlobalNavProducts .Level2 {
        position: absolute;
        z-index: 10001;
    }

    #GlobalNavProducts .MegaMenuWrap {
        padding: 30px 30px 140px 30px;
        box-shadow: 0px 4px 20px -4px #ccc;
    }

    /* メガメニュー閉じるボタン */
    #GlobalNavProducts .BtnCloseMegaMenu {
        display: block;
        position: absolute;
        right: 0;
        bottom: 0;
        width: 40px;
        height: 40px;
        text-indent: -9999px;
        background: #2a2a2a url(/img/common/icon/Icon_Close.png) no-repeat;
        background-position: 50% 50%;
        background-size: 15px auto;
    }

    /* TOPページ 透過 */
    /*
	.Page_Home #GlobalNavProducts {
	opacity: 0.9;
	}
*/

}

@media print, screen and (min-width: 1090px) {

    #GlobalNavProducts {
        padding-left: 20px;
    }

    #GlobalNavProducts .MdsPS {
        display: block;
        margin-right: 25px;
        padding: 30px 0;
        font-size: 13px;
        line-height: 1em;
    }

    #GlobalNavProducts .Parent a {
        padding: 30px 28px 30px 70px;
        background-position: 25px 45%;
        background-size: 30px 35px;
    }

    #GlobalNavProducts .Parent {
        display: block;
        position: relative;
    }

    #GlobalNavProducts .Menu1 .Parent:before {
        position: absolute;
        left: -18px;
        top: 30px;
        width: 9px;
        height: 12px;
        background: url(/img/common/globalnav/Icon_Allow.png) no-repeat;
        background-size: 9px 12px;
        content: "";
    }

    /* hover */
    #GlobalNavProducts .Parent a:hover {
        background-color: #2a2a2a;
        opacity: 1;
    }

    /* メガメニュー閉じるボタン */
    #GlobalNavProducts .BtnCloseMegaMenu {
        width: 60px;
        height: 60px;
        background-size: 20px auto;
    }

    /* 4番目のメニュー調整 */
    #GlobalNavProducts .Menu4 .Parent a {
        padding-left: 65px;
    }

}

/* 4番目のメニューを「非表示」にするサイズ */
@media only screen and (min-width: 1090px) and (max-width: 1300px) {

    #GlobalNavProducts .Menu5 {
        display: none;
    }

}

/* 4番目のメニューを「非表示」にするサイズ */
@media only screen and (min-width: 768px) and (max-width: 950px) {

    #GlobalNavProducts .Menu5 {
        display: none;
    }

}


/* カテゴリーリスト --------------------------------------------------- */

@media only screen and (max-width: 767px) {

}

@media print, screen and (min-width: 768px) {

    #GlobalNavProducts .GlobalNavProducts_CateWrap {
        max-width: 1280px;
        margin: 0 auto;
    }
}

@media print, screen and (min-width: 1090px) {

}


/* その他 メニューリスト --------------------------------------------------- */

@media only screen and (max-width: 767px) {

}

@media print, screen and (min-width: 768px) {

    #GlobalNavProducts .GlobalNavProducts_OthersWrap {
        max-width: 1280px;
        margin: 30px auto 0 auto;
    }

}

@media print, screen and (min-width: 1090px) {

}


/* 製品名から探す（A-Z） --------------------------------------------------- */

@media only screen and (max-width: 767px) {

    #GlobalNavProducts .GlobalNavProducts_NameWrap {
        margin-top: 30px;
    }

}

@media print, screen and (min-width: 768px) {

    #GlobalNavProducts .GlobalNavProducts_NameWrap {
        max-width: 1280px;
        margin: 70px auto 0 auto;
    }

}

@media print, screen and (min-width: 1090px) {

}


/* 検索窓 --------------------------------------------------- */

@media only screen and (max-width: 767px) {

    #GlobalNavProducts .GlobalNavProducts_SearchWrap {
        margin-top: 30px;
    }

}

@media print, screen and (min-width: 768px) {

    #GlobalNavProducts .GlobalNavProducts_SearchWrap {
        max-width: 800px;
        margin: 70px auto 0 auto;
    }

}

@media print, screen and (min-width: 1090px) {

}


/* ■ グローバルナビ：その他（GlobalNavOthers） ==================================================================================== */

#GlobalNavOthers .Parent a {
    position: relative;
    color: #fff;
}

#GlobalNavOthers .Parent a:before {

}

@media only screen and (max-width: 767px) {

    #GlobalNavOthers {
        margin: 30px 15px 0 15px;
    }

    #GlobalNavOthers .Parent a {
        margin-top: 5px;
        padding: 14px 15px;
        border: 1px solid #666;
    }

    /* プラスマイナス アイコン */
    #GlobalNavOthers .Parent a:before,
    #GlobalNavOthers .Parent a:after {
        display: block;
        position: absolute;
        top: 50%;
        right: 15px;
        width: 15px;
        height: 1px;
        background: #fff;
        content: "";
    }

    #GlobalNavOthers .Parent a:after {
        transform: rotate(90deg);
    }

    /* 親メニュー選択時（SmartMenus設定 .highlighted）基本hover色と同じ */
    #GlobalNavOthers .Parent a.Current:after,
    #GlobalNavOthers .Parent a.highlighted:after {
        display: none;
    }

    /* 子メニュー */
    #GlobalNavOthers .Level2 a {
        position: relative;
        margin-bottom: 1px;
        padding: 14px 15px;
        font-size: 15px;
        color: #fff;
        background: #2f2f2f;
    }

    #GlobalNavOthers .Level2 a:before,
    #GlobalNavOthers .Level2 a:after {
        display: block;
        position: absolute;
        top: 50%;
        height: 1px;
        background: #fff;
        content: "";
    }

    #GlobalNavOthers .Level2 a:before {
        right: 14px;
        width: 8px;
        margin-top: -3px;
        transform: rotate(45deg);
    }

    #GlobalNavOthers .Level2 a:after {
        right: 15px;
        width: 18px;
    }

    /* 親のみ（下層メニューなし） */
    #GlobalNavOthers .NoChild a:before,
    #GlobalNavOthers .NoChild a:after {
        display: block;
        position: absolute;
        top: 50%;
        height: 1px;
        background: #fff;
        content: "";
    }

    #GlobalNavOthers .NoChild a:before {
        right: 14px;
        width: 8px;
        margin-top: -3px;
        transform: rotate(45deg);
    }

    #GlobalNavOthers .NoChild a:after {
        right: 15px;
        width: 18px;
        transform: rotate(0);
    }

    #GlobalNavOthers .NoChild a.Current:after,
    #GlobalNavOthers .NoChild a.highlighted:after {
        display: block;
    }

    #GlobalNavOthers .Parent a.Current,
    #GlobalNavOthers .Parent a.highlighted {
        border-bottom: 1px solid #666;
    }

}

@media print, screen and (min-width: 768px) {

    #GlobalNavOthers {
        position: absolute;
        top: 55px;
        right: 30px;
        z-index: 20000;
    }

    #GlobalNavOthers .Level1 {
        display: inline-block;
        margin-left: 40px;
    }

    #GlobalNavOthers .Parent a {
        font-size: 13px;
    }

    #GlobalNavOthers .Parent a:before {
        display: block;
        position: absolute;
        height: 1px;
        left: -19px;
        top: 50%;
        width: 10px;
        background: #b91010;
        content: "";
    }

    /* 下層メニュー */
    #GlobalNavOthers .Level2 {
        position: absolute;
        left: -20px !important;
        top: 34px !important;
        z-index: 20000;
        min-width: 200px !important;
        padding: 14px 0 14px 30px;
        background-color: #2a2a2a;
    }

    #GlobalNavOthers .Menu5 .Level2 {
        left: inherit !important;
        right: 0 !important;
    }

    #GlobalNavOthers .Level2 li {
        display: block;
    }

    #GlobalNavOthers .Level2 a {
        position: relative;
        padding: 5px 10px 5px 10px;
        font-size: 13px;
        color: #cacaca;
    }

    #GlobalNavOthers .Level2 a:before {
        display: block;
        position: absolute;
        left: -10px;
        top: 14px;
        width: 10px;
        height: 1px;
        background: #666;
        content: "";
    }

    /* 親メニュー選択時（SmartMenus設定 .highlighted）基本hover色と同じ */
    #GlobalNavOthers .Parent a.highlighted {
        color: #b91010;
    }

    /* ボタンタイプ */
    #GlobalNavOthers .TypeBtn a {
        padding: 2px 14px 1px 14px;
        border: 1px solid #fff;
        border-radius: 50px;
    }

    #GlobalNavOthers .Menu6 {
        margin-left: 30px;
    }

    #GlobalNavOthers .TypeBtn a:before {
        display: none;
    }

}

@media print, screen and (min-width: 1090px) {

    #GlobalNavOthers {
        right: 40px;
    }

    #GlobalNavOthers .Level1 {
        margin-left: 50px;
    }

    /* 親メニュー選択時（SmartMenus設定 .highlighted）基本hover色と同じ */
    #GlobalNavOthers .Parent a:hover {
        color: #b91010;
        opacity: 1.0;
    }

    /* 下層メニュー */
    #GlobalNavOthers .Level2 {
        min-width: 230px !important;
    }

    #GlobalNavOthers .Level2 a:hover {
        color: #b91010;
        opacity: 1.0;
    }

    #GlobalNavOthers .Level2 a:hover:before {
        background: #b91010;
    }

    /* ボタンタイプ */
    #GlobalNavOthers .Menu6 {
        margin-left: 25px;
    }

    #GlobalNavOthers .TypeBtn a:hover {
        border: 1px solid #fff;
        background: #fff;
    }

}

/* メニューを非表示にするサイズ */
@media only screen and (min-width: 768px) and (max-width: 880px) {

    #GlobalNavOthers .Menu6 {
        display: none;
    }

}


/* ■ パン屑リスト（BreadCrumbUnit） ==================================================================================== */

.BreadCrumb {
    background: #f6f6f6;
}

.BreadCrumbUnit li {
    display: inline;
    position: relative;
    margin-right: 4px;
    padding-left: 14px;
    line-height: 1.5em;
}

.BreadCrumbUnit li:after {
    display: block;
    position: absolute;
    left: 1px;
    top: 50%;
    width: 0;
    height: 0;
    margin-top: -4px;
    border-style: solid;
    border-width: 4px 0 4px 5px;
    border-color: transparent transparent transparent #a0a0a0;
    content: '';
}

.BreadCrumbUnit li:first-child {
    background-image: url(/img/common/icon/Icon_PathHome.png);
    background-repeat: no-repeat;
}

.BreadCrumbUnit li:first-child:after {
    display: none;
}

.BreadCrumbUnit li:last-child a {
    color: #000;
    text-decoration: none;
}

@media only screen and (max-width: 767px) {

    .BreadCrumb {
        padding: 10px 0 5px 15px;
        width: 100%;
        -webkit-overflow-scrolling: touch;
        overflow-x: scroll;
        white-space: nowrap;
    }

    .BreadCrumbUnit {
        width: 100%;
        white-space: nowrap;
    }

    .BreadCrumbUnit li {
        display: inline-block;
        max-width: 200px;
        font-size: 72%;
        text-overflow: ellipsis;
        white-space: nowrap;
        overflow: hidden;
    }

    .BreadCrumbUnit li:first-child {
        padding-left: 18px;
        background-position: 0 49%;
        background-size: 10px 12px;
    }

}

@media print, screen and (min-width: 768px) {

    .BreadCrumb {
        padding: 10px 0 10px 30px;
    }

    .BreadCrumbUnit li {
        font-size: 79%;
    }

    .BreadCrumbUnit li:first-child {
        padding-left: 17px;
        background-position: 0 0;
        background-size: 9px 11px;
    }

}

@media print, screen and (min-width: 1090px) {

    .BreadCrumb {
        padding: 10px 0 10px 20px;
    }

    .BreadCrumbUnit li:first-child {
        padding-left: 20px;
        background-size: 11px 13px;
    }

}


/* ■ ページの先頭へ ==================================================================================== */

#PageTop {
    display: none;
    position: fixed;
    z-index: 3000;
    right: 0;
    bottom: 0;
    opacity: 0.5;
}

@media only screen and (max-width: 767px) {

    #PageTop img {
        width: 50px;
    }

}

@media print, screen and (min-width: 768px) {

    #PageTop img {
        width: 80px;
    }

}


@media print, screen and (min-width: 1090px) {

}


/* ■ フッターナビ（FooterNav） ==================================================================================== */

/*
共通
製品カテゴリ
製品カテゴリ以外
サブ・SNS・メルマガ
*/


/* 共通 --------------------------------------------------- */

#FooterNav {
    background: #252525;
}

#FooterNavUnit a {
    display: block;
}

@media only screen and (max-width: 767px) {

    #FooterNav {
        padding-top: 30px;
    }

    #FooterNavUnit {
        padding: 0 15px;
    }

}

@media print, screen and (min-width: 768px) {

    #FooterNav {
        padding: 40px 0;
    }

    #FooterNavUnit {
        max-width: 1340px;
        margin: 0 auto;
        padding: 0 30px;
    }

}

@media print, screen and (min-width: 1090px) {

    #FooterNav {
        padding: 70px 0;
    }

}


/* 製品カテゴリ --------------------------------------------------- */

#FooterNavUnit .CateUnit .Mds {
    color: #fff;
}

#FooterNavUnit .CateUnit a {
    line-height: 1em;
    color: #fff;
    background-color: #2a2a2a;
    background-repeat: no-repeat;
}

#FooterNavUnit .CateUnit .Cate1 {
    background-image: url(/img/common/icon/Icon_Cate1.png);
}

#FooterNavUnit .CateUnit .Cate2 {
    background-image: url(/img/common/icon/Icon_Cate2.png);
}

#FooterNavUnit .CateUnit .Cate3 {
    background-image: url(/img/common/icon/Icon_Cate3.png);
}

#FooterNavUnit .CateUnit .Cate4 {
    background-image: url(/img/common/icon/Icon_Cate4.png);
}

@media only screen and (max-width: 767px) {

    #FooterNavUnit .CateUnit .Col {
        margin-top: 10px;
    }

    #FooterNavUnit .CateUnit a {
        padding: 20px 0 20px 55px;
        font-size: 17px;
        background-position: 15px 50%;
        background-size: 25px auto;
    }

}

@media print, screen and (min-width: 768px) {

    #FooterNavUnit .CateUnit .Col {
        margin-top: 20px;
    }

    #FooterNavUnit .CateUnit a {
        padding: 90px 0 30px 0;
        font-size: 15px;
        text-align: center;
        background-position: 50% 28px;
        background-size: 38px auto;
    }

}

@media print, screen and (min-width: 1090px) {

    #FooterNavUnit .CateUnit a:hover {
        background-color: #323232;
        opacity: 1;
    }

}


/* 製品カテゴリ以外 --------------------------------------------------- */

#FooterNavUnit .BtnOpenClose a {
    color: #fff;
}

/* 子メニュー */
#FooterNavUnit .OpenCloseUnit a,
#FooterNavUnit .MenuUtility a {
    position: relative;
    color: #cacaca;
}

@media only screen and (max-width: 767px) {

    #FooterNavUnit .UnitWrap {
        margin-top: 20px;
    }

    #FooterNavUnit .Unit {
        margin-top: 5px;
    }

    #FooterNavUnit .BtnOpenClose {
        display: block;
        position: relative;
        padding: 10px 15px 11px 15px;
        border: 1px solid #666;
        cursor: pointer;
    }

    #FooterNavUnit .BtnOpenClose a {
        pointer-events: none;
    }

    /* プラスマイナス アイコン */
    #FooterNavUnit .BtnOpenClose:before,
    #FooterNavUnit .BtnOpenClose:after {
        display: block;
        position: absolute;
        top: 50%;
        right: 15px;
        width: 15px;
        height: 1px;
        background: #fff;
        content: "";
    }

    #FooterNavUnit .BtnOpenClose:after {
        transform: rotate(90deg);
    }

    #FooterNavUnit .BtnOpenClose.Current:after {
        display: none;
    }

    /* 子メニュー */
    #FooterNavUnit .OpenCloseUnit {
        display: none;
    }

    #FooterNavUnit .OpenCloseUnit a {
        position: relative;
        margin-bottom: 1px;
        padding: 10px 15px;
        font-size: 15px;
        background: #2f2f2f;
    }

    #FooterNavUnit .OpenCloseUnit a:before,
    #FooterNavUnit .OpenCloseUnit a:after {
        display: block;
        position: absolute;
        top: 50%;
        height: 1px;
        background: #fff;
        content: "";
    }

    #FooterNavUnit .OpenCloseUnit a:before {
        right: 14px;
        width: 8px;
        margin-top: -3px;
        transform: rotate(45deg);
    }

    #FooterNavUnit .OpenCloseUnit a:after {
        right: 15px;
        width: 18px;
    }

}

@media print, screen and (min-width: 768px) {

    #FooterNavUnit .UnitWrap {
        display: flex;
        flex-wrap: wrap;
        margin: 20px -1% 0 -1%;
    }

    #FooterNavUnit .Unit {
        width: calc(19% - 1%);
        margin: 0 1% 2%;
        padding-top: 30px;
        border-top: 1px solid #666;
    }

    /* 見出し（カテゴリ名） */
    #FooterNavUnit .BtnOpenClose a {
        margin-bottom: 7px;
        font-size: 16px;
        line-height: 1.5em;
        pointer-events: none;
    }

    /* 子メニュー */
    #FooterNavUnit .OpenCloseUnit {
        display: block !important;
        margin-top: 15px;
    }

    #FooterNavUnit .OpenCloseUnit a {
        margin-bottom: 11px;
    }

    #FooterNavUnit .OpenCloseUnit a,
    #FooterNavUnit .MenuUtility a {
        padding-left: 15px;
        font-size: 14px;
        line-height: 1.5em;
    }

    #FooterNavUnit .OpenCloseUnit a:before,
    #FooterNavUnit .MenuUtility a:before {
        display: block;
        position: absolute;
        left: 0;
        top: 8px;
        width: 6px;
        height: 1px;
        background: #666;
        content: '';
    }

}

@media print, screen and (min-width: 1090px) {

    /* 見出し（カテゴリ名） */
    #FooterNavUnit .BtnOpenClose a:hover {
        opacity: 1;
    }

    #FooterNavUnit .OpenCloseUnit a:before,
    #FooterNavUnit .MenuUtility a:before {
        top: 10px;
    }

}


/* サブ・SNS・メルマガ --------------------------------------------------- */

/* SNS */
#FooterNavUnit .MenuSns li {
    display: inline-block;
    color: #cacaca;
}

#FooterNavUnit .MenuFacebook a,
#FooterNavUnit .MenuTwitter a,
#FooterNavUnit .MenuYouTube a {
    display: flex;
    align-items: center;
    text-indent: -9999px;
    background-repeat: no-repeat;
    background-position: 50% 50%;
}

#FooterNavUnit .MenuFacebook a {
    background-image: url(/img/common/icon/Icon_Facebook.png);
}

#FooterNavUnit .MenuTwitter a {
    background-image: url(/img/common/icon/Icon_Twitter.png);
}

#FooterNavUnit .MenuYouTube a {
    background-image: url(/img/common/icon/Icon_YouTube.png);
}

/* メルマガ */
#FooterNavUnit .MenuMailNews li {
    color: #fff;
}

@media only screen and (max-width: 767px) {

    #FooterNavUnit .SuvMenuWrap {
        margin-top: 20px;
    }

    /* サブ */
    #FooterNavUnit .MenuUtility li a {
        position: relative;
        padding: 8px 15px;
        font-size: 15px;
        border-bottom: 1px solid #666;
    }

    #FooterNavUnit .MenuUtility li:first-child a {
        border-top: 1px solid #666;
    }

    #FooterNavUnit .MenuUtility a:before,
    #FooterNavUnit .MenuUtility a:after {
        display: block;
        position: absolute;
        top: 50%;
        height: 1px;
        background: #fff;
        content: "";
    }

    #FooterNavUnit .MenuUtility a:before {
        right: 14px;
        width: 8px;
        margin-top: -3px;
        transform: rotate(45deg);
    }

    #FooterNavUnit .MenuUtility a:after {
        right: 15px;
        width: 18px;
    }

    /* SNS */
    #FooterNavUnit .MenuSns {
        padding: 20px 0 30px 0;
        text-align: center;
    }

    #FooterNavUnit .MenuSns .Mds {
        display: block;
        margin-bottom: 5px;
    }

    #FooterNavUnit .MenuFacebook a,
    #FooterNavUnit .MenuTwitter a {
        width: 35px;
        height: 35px;
        margin: 0 5px;
        background-size: cover;
    }

    #FooterNavUnit .MenuYouTube a {
        width: 35px;
        height: 24px;
        margin-left: 10px;
        margin-right: 15px;
        background-size: cover;
    }

    /* メルマガ */
    #FooterNavUnit .MenuMailNews {
        margin: 0 -15px;
        padding: 20px 15px 30px 15px;
        text-align: center;
        background: #2a2a2a;
    }

    #FooterNavUnit .MenuMailNews .Mds {
        margin-bottom: 5px;
    }

    #FooterNavUnit .MenuMailNews .BtnMailNews {
        padding: 0 30px;
    }

}

@media print, screen and (min-width: 768px) {

    #FooterNavUnit .SuvMenuWrap {
        display: flex;
        margin-top: 30px;
        padding-top: 30px;
        border-top: 1px solid #666;
    }

    /* サブ */
    #FooterNavUnit .MenuUtility li {
        display: block;
        margin-right: 25px;
        margin-bottom: 5px;
    }

    /* SNS */
    #FooterNavUnit .MenuSns {
        padding-left: 22px;
        border-left: 1px solid #666;
    }

    #FooterNavUnit .MenuSns li {
        margin-right: 5px;
        font-size: 14px;
        vertical-align: middle;
    }

    #FooterNavUnit .MenuSns .Mds {
        margin-right: 10px;
    }

    #FooterNavUnit .MenuFacebook a,
    #FooterNavUnit .MenuTwitter a {
        width: 25px;
        height: 25px;
        background-size: cover;
    }

    #FooterNavUnit .MenuYouTube a {
        width: 28px;
        height: 20px;
        margin-left: 7px;
        background-size: cover;
    }

    /* メルマガ */
    #FooterNavUnit .MenuMailNews {
        margin-left: auto;
    }

    #FooterNavUnit .MenuMailNews li {
        display: inline-block;
        vertical-align: middle;
    }

    #FooterNavUnit .MenuMailNews .Mds {
        margin-right: 10px;
    }

}

@media print, screen and (min-width: 1090px) {

    /* サブ */
    #FooterNavUnit .MenuUtility li {
        display: inline-block;
    }

    /* SNS */
    #FooterNavUnit .MenuSns .Mds {
        margin-right: 15px;
    }

    /* メルマガ */
    #FooterNavUnit .MenuMailNews .Mds {
        margin-right: 15px;
    }

}


/* ■ フッター（Footer） ==================================================================================== */

#Footer {
    color: #cacaca;
    background: #000;
}

#Footer .Logo a {
    display: inline-block;
    text-indent: -9999px;
    background: url(/img/common/header/Logo.png) no-repeat;
}

@media only screen and (max-width: 767px) {

    #Footer {
        padding: 25px 15px;
        text-align: center;
    }

    #Footer .Logo a {
        position: relative;
        width: 100px;
        height: 21px;
        background-size: cover;
    }

    /* Logo：50th */
    /*
	#Footer .Logo {
	padding-top: 70px;
	}

	#Footer .Logo a:after {
	display: block;
	position: absolute;
	left: 50%;
	top: -75px;
	width: 70px;
	height: 53px;
	margin-left: -35px;
	background: url(/img/home/slide/50th_Logo.png) no-repeat;
	background-size: 70px 53px;
	content: "";
	}
*/
    #Footer .Copyright {
        font-size: 10px;
        line-height: 1em;
    }

}

@media print, screen and (min-width: 768px) {

    #Footer {
        height: 80px;
        padding: 0 20px;
    }

    #Footer .Logo,
    #Footer .Copyright {
        display: inline-block;
    }

    #Footer .Logo {
        margin-top: 25px;
    }

    #Footer .Logo a {
        width: 122px;
        height: 26px;
        background-size: cover;
    }

    #Footer .Copyright {
        margin-left: 10px;
        font-size: 10px;
    }

}

@media print, screen and (min-width: 1090px) {

}


/* ■ ヘッダー・フッター以外の領域指定（Stage） ==================================================================================== */

@media only screen and (max-width: 767px) {

    #Stage {
    }

}

@media print, screen and (min-width: 768px) {

    #Stage {
        position: relative;
    }

    #Stage.StageWrap:before {
        position: absolute;
        left: 0;
        top: 0;
        z-index: 1000;
        width: 100%;
        height: 100%;
        background: #000;
        opacity: 0.5;
        content: "";
    }

}

@media print, screen and (min-width: 1090px) {

}


/* ■ ローカルナビ（LocalNav） ==================================================================================== */

@media only screen and (max-width: 767px) {

}

@media print, screen and (min-width: 768px) {

    #LocalNavWrap_L {
        position: sticky;
        top: 30px;
        align-self: baseline;
        width: 24%;
    }

}

@media print, screen and (min-width: 1090px) {

}


/* ■ コンテンツ領域（Contents） ==================================================================================== */

@media only screen and (max-width: 767px) {

    #ContentsWrap {
        padding-top: 30px;
        padding-bottom: 30px;
    }

    /* PC左右レイアウト */
    #Contents_R {
        padding: 30px 15px 30px 15px;
    }

}

@media print, screen and (min-width: 768px) {

    #ContentsWrap {
        padding-top: 50px;
        padding-bottom: 50px;
    }

    /* PC左右レイアウト */
    #ContentsLR {
        display: flex;
        flex-wrap: wrap;
        align-content: flex-start
        align-items: baseline;
        max-width: 1340px;
        margin: 0 auto;
        padding: 50px 30px 50px 30px;
        overflow: visible;
    }

    #Contents_R {
        width: 76%;
        padding-left: 6%;
    }

}

@media print, screen and (min-width: 1090px) {

    #ContentsWrap {
        padding-bottom: 80px;
    }

    /* PC左右レイアウト */
    #ContentsLR {
        padding: 60px 30px 80px 30px;
    }

}


/* ■ 見出し（製品ページ） ==================================================================================== */

/* h1 */
.MdsH1 {
    border-bottom: 1px solid #b91010;
}

.MdsH1.NoBorder {
    border-bottom: none;
}

/* h2 */
.MdsH2 {
    /*border-bottom: 1px solid #b91010;*/
}

.MdsH2.NoBorder {
    border-bottom: none;
}

/* h3 */
.MdsH3 {
    height: auto !important;
}

/* h4 */
.MdsH4 {
    display: block;
    /*display: inline-block;*/
    /*border-bottom: 1px solid #d5d5d5;*/
}

.MdsH1,
.MdsH2,
.MdsH3,
.MdsH4 {
    margin-top: 1rem !important;
}

@media only screen and (max-width: 767px) {

    /* h1 */
    .MdsH1 {
        padding-bottom: 10px;
        font-size: 25px;
        line-height: 1.4em;
    }

    /* h2 */
    .MdsH2 {
        /*padding-bottom: 10px;*/
        font-size: 25px;
        line-height: 1.6em;
    }

    .MdsH2.NoBorder {
        padding-bottom: 0;
    }

    /* h3 */
    .MdsH3 {
        font-size: 22px;
    }

    /* h4 */
    .MdsH4 {
        margin-bottom: 15px;
        padding-bottom: 3px;
        font-size: 18px;
    }

}

@media print, screen and (min-width: 768px) {

    /* h1 */
    .MdsH1 {
        padding-bottom: 25px;
        font-size: 40px;
        line-height: 1.4em;
    }

    /* h2 */
    .MdsH2 {
        /*padding-bottom: 25px;*/
        font-size: 40px;
        line-height: 1.6em;
        /*text-align: center;*/
    }

    .MdsH2.NoBorder {
        padding-bottom: 0;
    }

    /* h3 */
    .MdsH3 {
        font-size: 26px;
    }

    /* h4 */
    .MdsH4 {
        margin-bottom: 20px;
        padding-bottom: 3px;
        font-size: 20px;
    }

}

@media print, screen and (min-width: 1090px) {

    /* h2 */
    .MdsH2 {
        /*padding-bottom: 30px;*/
    }

    .MdsH2.NoBorder {
        padding-bottom: 0;
    }

}


/* ■ 見出し（製品ページ以外） ==================================================================================== */
.MdsH1In,
.MdsH2In,
.MdsH3In,
.MdsH4In {
    margin-top: 0 !important;
}

/* h1 */
.MdsH1In {
    border-bottom: 1px solid #b91010;
}

.MdsH1In.NoBorder {
    border-bottom: none;
}

/* h2 */
.MdsH2In {
}

/* h3 */
.MdsH3In {
}

/* h4 */
.MdsH4In {
    /*display: inline-block;*/
    display: block;
    /*border-bottom: 1px solid #d5d5d5;*/
}

@media only screen and (max-width: 767px) {

    /* h1 */
    .MdsH1In {
        padding-bottom: 10px;
        font-size: 25px;
        line-height: 1.4em;
    }

    /* h2 */
    .MdsH2In {
        font-size: 22px;
        line-height: 1.6em;
    }

    /* h3 */
    .MdsH3In {
        margin-bottom: 10px;
        font-size: 18px;
        line-height: 1.6em;
    }

    /* h4 */
    .MdsH4In {
        margin-bottom: 10px;
        padding-bottom: 3px;
        font-size: 16px;
        line-height: 1.6em;
    }

}

@media print, screen and (min-width: 768px) {

    /* h1 */
    .MdsH1In {
        padding-bottom: 25px;
        font-size: 40px;
        line-height: 1.4em;
    }

    /* h2 */
    .MdsH2In {
        font-size: 28px;
        line-height: 1.6em;
    }

    /* h3 */
    .MdsH3In {
        margin-bottom: 10px;
        font-size: 21px;
        line-height: 1.6em;
    }

    /* h4 */
    .MdsH4In {
        margin-bottom: 5px;
        padding-bottom: 3px;
        font-size: 17px;
        line-height: 1.6em;
    }

}

@media print, screen and (min-width: 1090px) {

}


/* ■ メインリード（LeadMain） ==================================================================================== */

@media only screen and (max-width: 767px) {

    .LeadMain {
        margin-top: 30px;
    }

}

@media print, screen and (min-width: 768px) {

    .LeadMain {
        margin-top: 30px;
    }

}

@media print, screen and (min-width: 1090px) {

    .LeadMain {
    }

}


/* ■ セクション（製品ページ） ==================================================================================== */

/*
共通
SectionWrap
メイン
サブ
*/

.SectionMain ul.SmoothScrollInPageNavVers li {
    padding-left: 0 !important;
}

.SectionMain ul.SmoothScrollInPageNavVers li + li {
    margin-top: 0 !important;
}

.SectionMain ul.SmoothScrollInPageNavVers li::before {
    display: none !important;
}


/* 共通 --------------------------------------------------- */

@media only screen and (max-width: 767px) {

    .SectionMain .Photo,
    .SectionSub .Photo,
    .SectionSub2 .Photo {
        margin-top: 20px;
    }

    .SectionMain .Lead,
    .SectionSub .Lead,
    .SectionSub2 .Lead {
        margin-top: 15px;
    }

}

@media print, screen and (min-width: 768px) {

    .SectionMain .Photo,
    .SectionSub .Photo,
    .SectionSub2 .Photo {
        margin-top: 30px;
    }

    .SectionMain .Lead,
    .SectionSub .Lead,
    .SectionSub2 .Lead {
        margin-top: 20px;
    }

}

@media print, screen and (min-width: 1090px) {

    .SectionMain .Photo,
    .SectionSub .Photo,
    .SectionSub2 .Photo {
        margin-top: 40px;
    }

    .SectionMain .Lead,
    .SectionSub .Lead,
    .SectionSub2 .Lead {
        margin-top: 20px;
    }

    .SectionMain .LRBox .Photo,
    .SectionSub .LRBox .Photo,
    .SectionSub2 .LRBox .Photo {
        margin-top: 0;
    }

}


/* SectionWrap --------------------------------------------------- */

@media only screen and (max-width: 767px) {

    .SectionWrap {
        padding: 30px 15px;
    }

    .SectionWrap.SectionWrapS {
        padding-top: 5px;
    }

}

@media print, screen and (min-width: 768px) {

    .SectionWrap {
        padding: 40px 30px;
    }

}

@media print, screen and (min-width: 1090px) {

    .SectionWrap {
        padding-top: 40px;
        padding-bottom: 40px;
    }

    .SectionWrap.SectionWrapS {
        padding-top: 20px;
    }

}

/** 製品 - 上部余白調整作業（20251212） **/
.l-post-content > .SectionWrap:first-of-type {
    padding-top: 0;
}


/* メイン --------------------------------------------------- */

@media only screen and (max-width: 767px) {

    .SectionMain {
        margin-top: 30px;
    }

    .SectionMain.Only {
        margin-top: 30px !important;
    }

}

@media print, screen and (min-width: 768px) {

    .SectionMain {
        margin-top: 30px;
    }

    .SectionMain.Only {
        margin-top: 30px !important;
    }

}

@media print, screen and (min-width: 1090px) {

    .SectionMain {
        margin-top: 50px;
    }

    .SectionMain.Only {
        margin-top: 50px !important;
    }

}

.SectionMain:nth-of-type(1) {
    margin-top: 0;
}


/* サブ --------------------------------------------------- */

/*.SectionSub {*/
/*    border-top: 1px solid #d5d5d5;*/
/*}*/

@media only screen and (max-width: 767px) {

    .SectionSub {
        margin-top: 30px;
        padding-top: 20px;
    }

    .SectionSub2 {
        margin-top: 20px;
    }

}

@media print, screen and (min-width: 768px) {

    .SectionSub {
        margin-top: 30px;
        padding-top: 30px;
    }

    .SectionSub2 {
        margin-top: 30px;
    }

}

@media print, screen and (min-width: 1090px) {

    .SectionSub {
        /*margin-top: 80px;*/
        /*padding-top: 50px;*/
    }

    .SectionSub2 {
        /*margin-top: 40px;*/
    }

}

.SectionSub:nth-of-type(1) {
    padding-top: 0;
    border-top: none;
}


/* ■ セクション（製品ページ以外） ==================================================================================== */

.SectionMainIn.Border {
    /*border-top: 1px solid #d5d5d5;*/
}

.CreditUnit .SectionSubIn {
    border-top: 1px solid #d5d5d5;
}

.SectionSubIn {
    /*border-top: 1px solid #d5d5d5;*/
}

@media only screen and (max-width: 767px) {

    .SectionMainIn {
        margin-top: 30px;
    }

    .SectionMainIn.Border {
        padding-top: 0;
    }

    .SectionSubIn {
        margin-top: 20px;
        padding-top: 20px;
    }

}

@media print, screen and (min-width: 768px) {

    .SectionMainIn {
        margin-top: 50px;
    }

    .SectionMainIn.Border {
        padding-top: 0;
    }

    .SectionSubIn {
        margin-top: 30px;
        padding-top: 30px;
    }

}

@media print, screen and (min-width: 1090px) {

}


/* ■ 関連情報（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%;
    }

}


/* ■ カラム（Col） ==================================================================================== */

/*
6カラム to 3カラム
5カラム to 3カラム
4カラム to 2カラム
4カラム to 1カラム
3カラム to 2カラム
3カラム to 1カラム
2カラム to 2カラム
2カラム to 1カラム
*/


/* 6カラム to 3カラム --------------------------------------------------- */

@media only screen and (max-width: 767px) {

    .Col6_Col3 {
        grid-template-columns: repeat(3, 1fr);
        /*margin: 0 -1%;*/
    }

    .Col6_Col3 li {
        /*width: calc(32.33333333% - 1%);*/
        /*margin: 0 1% 2%;*/
    }

}

@media print, screen and (min-width: 768px) {

    .Col6_Col3 {
        grid-template-columns: repeat(6, 1fr);
        /*margin: 0 -0.5%;*/
    }

    .Col6_Col3 li {
        /*width: calc(16% - 0.5%);*/
        /*margin: 0 0.5% 1%;*/
    }

}

@media print, screen and (min-width: 1090px) {

}


/* 5カラム to 3カラム --------------------------------------------------- */

@media only screen and (max-width: 767px) {

    .Col5_Col3 {
        grid-template-columns: repeat(3, 1fr);
        /* margin: 0 -1%; */
    }

    .Col5_Col3 li {
        /* width: calc(32.33333333% - 1%); */
        /* margin: 0 1% 2%; */
    }

}

@media print, screen and (min-width: 768px) {

    .Col5_Col3 {
        grid-template-columns: repeat(5, 1fr);
        /* margin: 0 -1%; */
    }

    .Col5_Col3 li {
        /* width: calc(19% - 1%); */
        /* margin: 0 1% 2%; */
    }

}

@media print, screen and (min-width: 1090px) {

}


/* 4カラム to 2カラム --------------------------------------------------- */

@media only screen and (max-width: 767px) {

    .Col4_Col2 {
        grid-template-columns: repeat(2, 1fr);
        /* margin: 0 -2%; */
    }

    .Col4_Col2 li {
        /* width: calc(48% - 2%);
        margin: 0 2% 2%; */
    }

}

@media print, screen and (min-width: 768px) {

    .Col4_Col2 {
        grid-template-columns: repeat(4, 1fr);
        /* margin: 0 -1.5%; */
    }

    .Col4_Col2 li {
        /* width: calc(23.5% - 1.5%);
        margin: 0 1.5% 2%; */
    }

}

@media print, screen and (min-width: 1090px) {

}


/* 4カラム to 1カラム --------------------------------------------------- */

@media only screen and (max-width: 767px) {

    .Col4_Col1 {
        grid-template-columns: repeat(1, 1fr);
    }

    .Col4_Col1 li {
        width: 100%;
        margin-top: 5px;
    }

}

@media print, screen and (min-width: 768px) {

    .Col4_Col1 {
        grid-template-columns: repeat(4, 1fr);
        /* margin: 0 -1.5%; */
    }

    .Col4_Col1 li {
        /* width: calc(23.5% - 1.5%);
        margin: 0 1.5% 2%; */
    }

}

@media print, screen and (min-width: 1090px) {

}


/* 3カラム to 2カラム --------------------------------------------------- */

.l-post-content .Col3_Col2 li {
    padding: 0;
}

.l-post-content .Col3_Col2 li + li {
    margin-top: 0;
}

.l-post-content .Col3_Col2 li::before {
    display: none;
}

@media only screen and (max-width: 767px) {

    .Col3_Col2 {
        grid-template-columns: repeat(2, 1fr);
        /*margin: 0 -2%;*/
    }

    .Col3_Col2 li {
        /*width: calc(48% - 2%);*/
        /*margin: 0 2% 2%;*/
    }

}

@media print, screen and (min-width: 768px) {

    .Col3_Col2 {
        grid-template-columns: repeat(3, 1fr);
        /*margin: 0 -1%;*/
    }

    .Col3_Col2 li {
        /*width: calc(32.33333333% - 1%);*/
        /*margin: 0 1% 2%;*/
    }

}

@media print, screen and (min-width: 1090px) {

}


/* 3カラム to 1カラム --------------------------------------------------- */

@media only screen and (max-width: 767px) {

    .Col3_Col1 {
        grid-template-columns: repeat(1, 1fr);
    }

    .Col3_Col1 li {
        width: 100%;
        margin-top: 5px;
    }

}

@media print, screen and (min-width: 768px) {

    .Col3_Col1 {
        grid-template-columns: repeat(3, 1fr);
        /*margin: 0 -1%;*/
    }

    .Col3_Col1 li {
        /*width: calc(32.33333333% - 1%);*/
        /*margin: 0 1% 2%;*/
    }

}

@media print, screen and (min-width: 1090px) {

}


/* 2カラム to 1カラム --------------------------------------------------- */

.l-post-content .Col2_Col2 li {
    padding-left: 0 !important;
}

.l-post-content .Col2_Col2 li + li {
    margin-top: 0 !important;
}

.l-post-content .Col2_Col2 li::before {
    display: none !important;
}

@media only screen and (max-width: 767px) {

    .Col2_Col2 {
        grid-template-columns: repeat(2, 1fr);
        /*margin: 0 -2%;*/
    }

    .Col2_Col2 li {
        /*width: calc(48% - 2%);*/
        /*margin: 0 2% 2%;*/
    }

}

@media print, screen and (min-width: 768px) {

    .Col2_Col2 {
        grid-template-columns: repeat(2, 1fr);
        /*margin: 0 -2%;*/
    }

    .Col2_Col2 li {
        /*width: calc(48% - 2%);*/
        /*margin: 0 2% 2%;*/
    }

}

@media print, screen and (min-width: 1090px) {

}


/* 2カラム to 1カラム --------------------------------------------------- */

.l-post-content .Col2_Col1 li:not(.ListDisc li) {
    padding: 0;
}

.l-post-content .Col2_Col1 li:not(.ListDisc li) + li:not(.ListDisc li) {
    margin-top: 0;
}

.l-post-content .Col2_Col1 li:not(.ListDisc li)::before {
    display: none;
}

@media only screen and (max-width: 767px) {

    .Col2_Col1 {
        grid-template-columns: repeat(1, 1fr);
    }

    .Col2_Col1 li {
        /*width: 100%;*/
        /*margin-top: 5px;*/
    }

}

@media print, screen and (min-width: 768px) {

    .Col2_Col1 {
        grid-template-columns: repeat(2, 1fr);
        /*margin: 0 -2%;*/
    }

    .Col2_Col1 li {

        /*width: calc(48% - 2%);*/
        /*margin: 0 2% 2%;*/
    }

}

@media print, screen and (min-width: 1090px) {

}


/* ■ 記述リスト（DLHori、DLVert、DLTable） ==================================================================================== */

/*
左右（dlh）
上下（dlv）
テーブルスタイル（dlt）
*/

/* 左右（dlh） --------------------------------------------------- */

.DLHori dl {
    border-bottom: 1px solid #d5d5d5;
}

@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 #d5d5d5;
}

@media only screen and (max-width: 767px) {

    .DLVert dl {
        padding: 10px 0;
    }

    .DLVert dt {
        margin-bottom: 3px;
    }

}

@media print, screen and (min-width: 768px) {

    .DLVert dl {
        padding: 15px 0;
    }

    .DLVert dt {
        margin-bottom: 5px;
    }

}

@media print, screen and (min-width: 1090px) {

}

/* テーブルスタイル（dlt） --------------------------------------------------- */

.DLTable {
    border-top: 1px solid #d5d5d5;
}

.DLTable dl {
    border-left: 1px solid #d5d5d5;
}

.DLTable dt,
.DLTable dd {
    padding: 10px 15px;
    border-right: 1px solid #d5d5d5;
    border-bottom: 1px solid #d5d5d5;
}

.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 #d5d5d5;
}

.Table1 th,
.Table2 th {
    background: #f2f2f2;
}

.Table1 td,
.Table2 td {
    background: #fff;
}

@media only screen and (max-width: 767px) {

    .TableScroll {
        overflow: auto;
        white-space: nowrap;
    }

}

@media print, screen and (min-width: 768px) {

}

@media print, screen and (min-width: 1090px) {

}


/* ■ 囲み（Box） ==================================================================================== */

.Box1 {
    border: 1px solid #d5d5d5;
}

.Box1 .SectionSubIn:first-child {
    padding-top: 0;
    margin-top: 0;
    border-top: 0;
}

.Box1 .SectionSubIn .MdsH3In {
    border-top: 0;
    padding-top: 0;
}

.l-post-content ul > li.Box1::before {
    display: none;
}

.Box2 {
    background: #f6f6f6;
}

.post-type-products.growp-post-content .Box2,
.single-products .Box2 {
    background: transparent;
}

@media only screen and (max-width: 767px) {

    .Box1,
    .Box2 {
        padding: 15px 15px;
    }

}

@media print, screen and (min-width: 768px) {

    .Box1,
    .Box2 {
        padding: 20px 20px;
    }

}

@media print, screen and (min-width: 1090px) {

    .Box1,
    .Box2 {
        padding: 30px 30px;
    }

}


/* ■ リスト各種 ==================================================================================== */

/*
ディスク（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;
}

/* ネストされた.ListDiscの親要素のスタイルをリセット */
.ListDisc li:has(.ListDisc) {
    padding-left: 0;
}

.ListDisc li:has(.ListDisc):before {
    display: none;
}


@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: 14px;
        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: 14px;
    }

    .ListDiscS li:before {
        left: -3px;
        top: 10px;
        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: 18px;
    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;
}

.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 {
    background: url(/img/common/icon/Icon_PDF.png) no-repeat;
}

@media only screen and (max-width: 767px) {

    .LinkFwd:after,
    .LinkBack:after,
    .LinkDown:after,
    .LinkUp:after {
        top: 15px;
    }

    .LinkPDF {
        padding-left: 30px;
        background-position: 0 50%;
        background-size: 24px auto;
    }

}

@media print, screen and (min-width: 768px) {

    .LinkFwd:after,
    .LinkBack:after,
    .LinkDown:after,
    .LinkUp:after {
        top: 16px;
    }

    .LinkPDF {
        padding-left: 30px;
        background-position: 0 50%;
        background-size: 24px auto;
    }

}

@media print, screen and (min-width: 1090px) {

    .LinkFwd:after,
    .LinkBack:after,
    .LinkDown:after,
    .LinkUp:after {
        top: 18px;
    }

}


/* ■ ボタン ==================================================================================== */

/*
汎用
ダウンロード
ログイン
*/


/* 汎用 --------------------------------------------------- */

.BtnS,
.BtnM,
.BtnL {
    display: inline-block;
    position: relative;
    border-radius: 50px;
    line-height: 1.0em;
    text-align: left;
}

/* 矢印 */
.Allow {
    position: relative;
}

.AllowBack {
    text-align: center;
}

.AllowFwd:before,
.AllowFwd:after,
.AllowBack:before,
.AllowBack:after {
    display: block;
    position: absolute;
    top: 50%;
    height: 1px;
    background-color: #000;
    content: "";
}

.AllowFwd:before {
    transform: rotate(55deg);
}

.AllowFwd:after {
    right: 15px;
}

.AllowBack:before {
    transform: rotate(125deg);
}

.AllowBack:after {
    left: 15px;
}

/* カラー：1 */
.BtnColor1:link,
.BtnColor1:active,
.BtnColor1:visited,
.BtnColor1:hover {
    border: 1px solid #b91010;
    color: #fff !important;
    background-color: #b91010;
}

.BtnColor1.AllowFwd:before,
.BtnColor1.AllowFwd:after,
.BtnColor1.AllowBack:before,
.BtnColor1.AllowBack:after {
    background-color: #fff;
}

/* カラー：2 */
.BtnColor2:link,
.BtnColor2:active,
.BtnColor2:visited,
.BtnColor2:hover {
    border: 1px solid #979797;
    color: #000;
    background-color: #fff;
}

.BtnColor2.AllowFwd:before,
.BtnColor2.AllowFwd:after,
.BtnColor2.AllowBack:before,
.BtnColor2.AllowBack:after {
}

/* カラー：3 */
.BtnColor3:link,
.BtnColor3:active,
.BtnColor3:visited,
.BtnColor3:hover {
    border: 1px solid #fff;
    color: #fff;
    background-color: transparent;
}

.BtnColor3.AllowFwd:before,
.BtnColor3.AllowFwd:after,
.BtnColor3.AllowBack:before,
.BtnColor3.AllowBack:after {
    background-color: #fff;
}

@media only screen and (max-width: 767px) {

    /* サイズ */
    .BtnS,
    .BtnM,
    .BtnL {
        width: 100%;
        padding: 15px 20px;
    }

    /* 矢印 */
    .AllowFwd:before {
        right: 14px;
        width: 8px;
        margin-top: -3px;
    }

    .AllowBack:before {
        left: 14px;
        width: 8px;
        margin-top: -3px;
    }

    .AllowFwd:after,
    .AllowBack:after {
        width: 18px;
    }

}

@media print, screen and (min-width: 768px) {

    /* サイズ */
    .BtnS {
        font-size: 14px;
    }

    .BtnM {
        font-size: 15px;
    }

    .BtnL {
        font-size: 17px;
    }

    /* 進む */
    .BtnS.AllowFwd {
        padding: 8px 50px 8px 20px;
    }

    .BtnM.AllowFwd {
        padding: 12px 50px 12px 20px;
    }

    .BtnL.AllowFwd {
        padding: 18px 60px 18px 20px;
    }

    /* 戻る */
    .BtnS.AllowBack {
        padding: 8px 30px 8px 50px;
    }

    .BtnM.AllowBack {
        padding: 12px 30px 12px 50px;
    }

    .BtnL.AllowBack {
        padding: 18px 30px 18px 50px;
    }

    /* 矢印 */
    .AllowFwd:before {
        right: 13px;
        width: 8px;
        margin-top: -3px;
    }

    .AllowBack:before {
        left: 13px;
        width: 8px;
        margin-top: -3px;
    }

    .AllowFwd:after,
    .AllowBack:after {
        width: 21px;
    }

}

@media print, screen and (min-width: 1090px) {

    /* カラー：1 */
    .BtnColor1:hover {
        border: 1px solid #b91010;
        color: #b91010 !important;
        background-color: #fff;
        opacity: 1;
    }

    .BtnColor1.AllowFwd:hover:before,
    .BtnColor1.AllowFwd:hover:after,
    .BtnColor1.AllowBack:hover:before,
    .BtnColor1.AllowBack:hover:after {
        background-color: #b91010;
    }

    /* カラー：2 */
    .BtnColor2:hover {
        background-color: #f6f6f6;
        opacity: 1;
    }

}


/* ダウンロード --------------------------------------------------- */

.BtnDownload {
    display: inline-block;
    position: relative;
    border: 1px solid #b91010;
    border-radius: 50px;
    line-height: 1.0em;
    text-align: center;
    color: #b91010 !important;
    background-color: #fff;
    background-image: url(/img/common/icon/Icon_Download.png);
    background-repeat: no-repeat;
}

@media only screen and (max-width: 767px) {

    .BtnDownload {
        width: 110px;
        padding: 8px 0 8px 18px;
        font-size: 11px;
        background-position: 12px 7px;
        background-size: 13px auto;
    }

}

@media print, screen and (min-width: 768px) {

    .BtnDownload {
        width: 130px;
        padding: 8px 0 8px 18px;
        font-size: 13px;
        background-position: 12px 7px;
        background-size: 13px auto;
    }

}

@media print, screen and (min-width: 1090px) {

    .BtnDownload:hover {
        background-color: #f6f6f6;
        opacity: 1;
    }

}


/* ログイン --------------------------------------------------- */

.BtnLogin {
    display: inline-block;
    position: relative;
    border: 1px solid #000;
    border-radius: 50px;
    line-height: 1.0em;
    text-align: center;
    color: #000 !important;
    background-color: #fff;
    background-image: url(/img/common/icon/Icon_Login2.png);
    background-repeat: no-repeat;
}

@media only screen and (max-width: 767px) {

    .BtnLogin {
        width: 110px;
        padding: 8px 0 8px 12px;
        font-size: 11px;
        background-position: 15px 6px;
        background-size: 10px auto;
    }

}

@media print, screen and (min-width: 768px) {

    .BtnLogin {
        width: 130px;
        padding: 8px 0 8px 12px;
        font-size: 13px;
        background-position: 15px 7px;
        background-size: 10px auto;
    }

}

@media print, screen and (min-width: 1090px) {

    .BtnLogin:hover {
        background-color: #f6f6f6;
        opacity: 1;
    }

}


/* ■ ページネーション ==================================================================================== */

.PageNation li a {
    display: block;
}

.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 20px;
        border: 1px solid #1567a6;
        line-height: 1.0em;
        text-indent: -9999px;
    }

    .PageNation li.Prev {
        float: left;
    }

    .PageNation li.Next {
        float: right;
    }

}

@media only screen and (max-width: 372px) {

    .PageNation .Num {
        font-size: 11px;
    }

}

@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;
        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) {

}


/* ■ モーダルウインド ==================================================================================== */

.ModalWindow {
    position: relative;
    width: auto;
    margin: 0 auto;
    border-radius: 4px;
    background: #fff;
}

.ModalWindow .Mds {
    border-bottom: 1px solid #cc0000;
    text-align: center;
}

.ModalWindow .FormUnit {
    margin-bottom: 0;
}

.ModalWindow .BtnUnit {
    text-align: center;
}

.ModalWindow .BtnApply {
    text-align: right;
}

/* ローディング処理 */
.ModalWindow .LoadingLogin {
    opacity: 0.2;
    pointer-events: none;
}

@media only screen and (max-width: 767px) {

    .ModalWindow {
        margin: 0 10px;
        padding: 20px 15px 30px 15px;
    }

    .ModalWindow .Mds {
        padding-bottom: 10px;
        font-size: 20px;
    }

    .ModalWindow .Lead {
        margin-top: 15px;
    }

    .ModalWindow .FormUnit {
        margin-top: 15px;
    }

    .ModalWindow .BtnUnit {
        margin-top: 20px;
    }

    .ModalWindow .BtnCloseModal {
        display: block;
        margin-top: 20px;
    }

}

@media print, screen and (min-width: 768px) {

    .ModalWindow {
        max-width: 500px;
        margin: 0 auto;
        padding: 30px 30px 40px 30px;
    }

    .ModalWindow .Mds {
        padding-bottom: 10px;
        font-size: 24px;
    }

    .ModalWindow .Lead {
        margin-top: 15px;
    }

    .ModalWindow .FormUnit {
        margin-top: 20px;
        margin-bottom: 0;
    }

    .ModalWindow .BtnUnit {
        margin-top: 30px;
    }

    .ModalWindow .BtnTo a {
        padding: 10px 60px;
    }

    .ModalWindow .BtnCloseModal {
        margin: 0 10px;
    }

    .ModalWindow .BtnCloseModal a {
        padding: 10px 15px;
    }

}


/* ■ フォーム ==================================================================================== */

/*
基本ユニット
導入リード
見出し
注釈等
エラーチップ
アクションボタン
入力欄のスタイル
入力欄のサイズ
セレクトボックス装飾
ラジオボタン・チェックボックス装飾
完了画面
*/


/* 基本ユニット --------------------------------------------------- */

/* 項目欄の背景色（カラー設定） */
.FormUnit dt {
    background: #f6f6f6;
}

/* レイアウト設定 */
.FormUnit {
    margin-bottom: 30px;
}

/* 必須アイコン */
.FormUnit .Required {
    display: block;
    position: relative;
}

.FormUnit .Required:before {
    position: absolute;
    right: 0;
    padding: 5px 10px;
    border-radius: 0;
    letter-spacing: 0.15em;
    text-align: center;
    color: #fff;
    background: #b91010;
    content: "必須";
}

@media only screen and (max-width: 767px) {

    /* 項目欄のborder色（カラー設定） */
    .FormUnit dt {
        border-top: 1px solid #d5d5d5;
    }

    /* レイアウト設定 */
    .FormUnitWrap {
    }

    .FormUnit dt,
    .FormUnit dd {
        margin: 0;
    }

    .FormUnit dt {
        padding: 6px 15px;
        font-size: 93%;
    }

    .FormUnit dd {
        padding: 12px 15px 20px 15px;
    }

    /* 必須アイコン */
    .FormUnit dt span:before {
        top: 1px;
        font-size: 12px;
        line-height: 1.1em;
    }

    /* エラーボックス */
    .FormUnit .Box1.Alert {
        margin: 0 15px 30px 15px;
    }

}

@media print, screen and (min-width: 768px) {

    /* border色（カラー設定） */
    .FormUnitWrap {
        border-left: solid 1px #d5d5d5;
        border-top: solid 1px #d5d5d5;
    }

    .FormUnit dt,
    .FormUnit dd {
        border-right: solid 1px #d5d5d5;
        border-bottom: solid 1px #d5d5d5;
    }

    /* レイアウト設定 */
    .FormUnit dl {
        display: table;
        width: 100%;
    }

    .FormUnit dt,
    .FormUnit dd {
        display: table-cell;
        padding: 15px;
        vertical-align: top;
    }

    .FormUnit dt {
        width: 30%;
    }

    .FormUnit dd {
        width: 70%;
    }

    /* 必須アイコン */
    .FormUnit dt span:before {
        top: 0;
        font-size: 86%;
        line-height: 1.0em;
    }

    /* エラーボックス */
    .FormUnit .Box1.Alert {
        margin-bottom: 30px;
    }

}

@media print, screen and (min-width: 1090px) {

}


/* 導入リード  --------------------------------------------------- */

@media only screen and (max-width: 767px) {

    .FormUnit .LeadUnit {
        margin-top: 15px;
        margin-bottom: 30px;
    }

    .FormUnit .LeadUnit .Notice {
        margin-bottom: 20px;
    }

    .FormUnit .LeadUnit .Lead1 {
    }

}

@media print, screen and (min-width: 768px) {

    .FormUnit .LeadUnit {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .FormUnit .LeadUnit .Notice {
        margin-bottom: 30px;
    }

    .FormUnit .LeadUnit .Lead1 {
        font-size: 18px;
    }

}

@media print, screen and (min-width: 1090px) {

}


/* 見出し  --------------------------------------------------- */

@media only screen and (max-width: 767px) {

    .FormUnit .FormMdsUnit {
        margin-top: 10px;
    }

    .FormUnit .FormMdsUnit h2.Mds {
        margin-bottom: 10px;
        font-size: 20px;
    }

}

@media print, screen and (min-width: 768px) {

    .FormUnit .FormMdsUnit {
        margin-top: 30px;
    }

    .FormUnit .FormMdsUnit h2.Mds {
        margin-bottom: 10px;
        font-size: 22px;
    }

}

@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;
}

.FormUnitWrap .ListKomeS {
    margin-top: 15px;
}

/* 内線 */
.FormUnit .TelExit {
    margin-top: 7px;
}

/* フッターNote  */
.FormUnit .FootNote li {
    font-size: 86%;
    line-height: 1.5em;
}

@media only screen and (max-width: 767px) {

    .FormUnit .NoteLower {
        margin-top: 10px;
    }

    /* フッターNote  */
    .FormUnit .FootNote {
        margin: 0 15px 30px 15px;
    }

}

@media print, screen and (min-width: 768px) {

    .FormUnit .NoteLower {
        margin-top: 10px;
    }

    /* フッター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: 3px;
    color: #ffffff;
    background: #e90000;
}

.FormUnit .ErrTip:after {
    position: absolute;
    left: 30px;
    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,
.FormUnit .FormAction button {
    border-style: none;
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    cursor: pointer;
}

.FormUnit .FormAction .BtnSubmit,
.FormUnit .FormAction .BtnBack {
    border-radius: 50px;
    line-height: 1.0em;
    text-align: center;
}

.FormUnit .FormAction .BtnSubmit {
    border: 1px solid #b91010;
    color: #fff;
    background-color: #b91010;
}

.FormUnit .FormAction .BtnBack {
    border: 1px solid #979797;
    color: #000;
    background-color: #fff;
}

@media only screen and (max-width: 767px) {

    .FormUnit .FormAction {
        margin: 10px 15px 0 15px;
    }

    .FormUnit .FormAction .BtnSubmit,
    .FormUnit .FormAction .BtnBack {
        width: 100%;
        padding: 18px 20px;
        font-size: 16px;
    }

    .FormUnit .FormAction input {
        display: block;
    }

}

@media print, screen and (min-width: 768px) {

    .FormUnit .FormAction {
        max-width: 550px;
        margin: 50px auto 0 auto;
    }

    .FormUnit .FormAction .BtnSubmit,
    .FormUnit .FormAction .BtnBack {
        font-size: 17px;
    }

    .FormUnit .FormAction .BtnSubmit {
        width: 300px;
        padding: 20px 0;
        font-size: 17px;
    }

    .FormUnit .FormAction .BtnBack {
        padding: 20px 60px;
        font-size: 17px;
    }

    .FormUnit .FormAction input {
        margin: 0 10px;
    }

    .FormUnit .FormAction .BtnLeft {
        float: left;
    }

    .FormUnit .FormAction .BtnRight {
        float: right;
    }

}

@media print, screen and (min-width: 1090px) {

    .FormUnit .FormAction .BtnSubmit {
        -webkit-transition: background-color 0.3s ease 0.01s;
        transition: background-color 0.3s ease 0.01s;
    }

    .FormUnit .FormAction .BtnSubmit:hover {
        border: 1px solid #b91010;
        color: #b91010;
        background-color: #fff;
    }

}

/* 入力欄のスタイル  --------------------------------------------------- */

/*  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;
}


@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 {
    }

    .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 {
    }

    /* 住所入力 */
    .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 input[type=email]:focus,
    .FormUnit input[type=tel]:focus,
    .FormUnit input[type=password],
    .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 .InputName {
        width: 100%;
    }

    .FormUnit .InputMail {
        width: 100%;
    }

    .FormUnit .InputZipCode {
        width: 35%;
    }

    .InputAddress {
        width: 100%;
    }

    .FormUnit .InputAddress2,
    .FormUnit .InputAddress3 {
        width: 100%;
    }

    .FormUnit .InputTel {
        width: 100%;
    }

    .FormUnit .InputAge {
        width: 60px;
    }

    .FormUnit .InputComment {
        width: 100%;
        height: 10em;
    }

    .FormUnit .InputOther1 {
        width: 100%;
    }

}

@media print, screen and (min-width: 768px) {

    .FormUnit .InputName {
        width: 40%;
    }

    .FormUnit .InputMail {
        width: 70%;
    }

    .FormUnit .InputZipCode {
        width: 15%;
    }

    .InputAddress {
        width: 70%;
    }

    .FormUnit .InputAddress2,
    .FormUnit .InputAddress3 {
        width: 70%;
    }

    .FormUnit .InputTel {
        width: 35%;
    }

    .FormUnit .InputAge {
        width: 10%;
    }

    .FormUnit .InputComment {
        width: 80%;
        height: 10em;
    }

    .FormUnit .InputOther1 {
        width: 70%;
    }

}

@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/icon/Icon_SelectBox2.png) no-repeat center right;
    background-size: 25px 60px;
    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: -11px;
    }

    /* 選択時の背景色（カラー設定） */
    .FormUnit input[type=radio]:checked + label::after,
    .FormUnit input[type=checkbox]:checked + label::after {
        top: 13px;
    }

    /* ラジオボタン選択時の中央ドットのサイズ・位置 */
    .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 {
        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 28px;
    }

    .FormUnit input[type=radio] + label::before,
    .FormUnit input[type=checkbox] + label::before {
        width: 18px;
        height: 18px;
        margin-top: -7px;
    }

    /* 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: 14px;
    }

    /* ラジオボタン選択時の中央ドットのサイズ・位置 */
    .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 .BtnNext {
        padding: 16px 30px;
    }

}

@media print, screen and (min-width: 1090px) {

}


/* ■ PCヘッダー ==================================================================================== */

#PC_Header {
    height: 90px;
    background: #000;
}

/* Logo */
#PC_Header .PC_Header_Logo {
    padding-left: 20px;
    padding-top: 30px;
}

#PC_Header .PC_Header_Logo a {
    display: block;
    width: 122px;
    height: 26px;
    line-height: 1.0em;
    text-indent: -9999px;
    background: url(/img/common/header/Logo.png) no-repeat;
    background-size: cover;
}


/* ■ PCフッター ==================================================================================== */

#PC_Footer {
    height: 80px;
    padding: 0 20px;
    color: #cacaca;
    background: #000;
}

#PC_Footer .Logo,
#PC_Footer .Copyright {
    display: inline-block;
}

#PC_Footer .Logo {
    margin-top: 25px;
}

#PC_Footer .Logo a {
    display: inline-block;
    width: 122px;
    height: 26px;
    text-indent: -9999px;
    background: url(/img/common/header/Logo.png) no-repeat;
    background-size: cover;
}

#PC_Footer .Copyright {
    margin-left: 10px;
    font-size: 10px;
}


/* ■ 印刷用設定 ==================================================================================== */

#growp-editor-wrapper:is(.post-type-post,.post-type-faq,.post-type-exhibitions,.post-type-articles,.post-type-products,post-type-case_studies,.growp-post-content) :is(.is-root-container,.mce-content-body)>:not(.acf-block-component) ul.Col li:not(.ListDisc li),
.l-post-content ul.Col li:not(.ListDisc li) {
    padding: 0;
}

#growp-editor-wrapper:is(.post-type-post,.post-type-faq,.post-type-exhibitions,.post-type-articles,.post-type-products,post-type-case_studies,.growp-post-content) :is(.is-root-container,.mce-content-body)>:not(.acf-block-component) ul.Col li:not(.ListDisc li)::before,
.l-post-content ul.Col li:not(.ListDisc li)::before {
    display: none;
}

#growp-editor-wrapper:is(.post-type-post,.post-type-faq,.post-type-exhibitions,.post-type-articles,.post-type-products,post-type-case_studies,.growp-post-content) :is(.is-root-container,.mce-content-body)>:not(.acf-block-component) ul:has(.MovieWrap) li:not(.ListDisc li),
.l-post-content ul:has(.MovieWrap) li:not(.ListDisc li) {
    padding: 0;
}

#growp-editor-wrapper:is(.post-type-post,.post-type-faq,.post-type-exhibitions,.post-type-articles,.post-type-products,post-type-case_studies,.growp-post-content) :is(.is-root-container,.mce-content-body)>:not(.acf-block-component) ul:has(.MovieWrap) li:not(.ListDisc li)::before,
.l-post-content ul:has(.MovieWrap) li:not(.ListDisc li)::before {
    display: none;
}
