@charset "utf-8";
/* グローバル変数の設定 */ :root {
    
    --font-family-base: "Noto Sans JP", sans-serif;
    --font-family-en: 'Poppins', sans-serif;
    --font-weight-S: 100;
    --font-weight-R: 400;
    --font-weight-M: 500;
    --font-weight-B: 700;
    
    --color-object-blue: #0d2e9b;
    --color-object-light-blue: #2282cc;
    --color-object-orange: #e68000;
    
    --color-text-blue: #0d2e9b;
    --color-text-light-blue: #2282cc;
    --color-link-orange: #e68000;
    
}
main {
    font-family: var(--font-family-base);/* kato 202504 コメントアウト "Noto Sans JP","游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;*/
    font-weight: var(--font-weight-M); /* kato 202504 コメントアウト 500*/ 
}
@media print, screen and (min-width : 901px) {
    /* CSS Document */
    /*html {font-size: 62.5%;}*/
    body {
        /*font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;*/
        /*font-family: AXIS Std,'Yu Gothic','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3','メイリオ', 'Meiryo','Helvetica Neue', 'Helvetica', 'Arial',sans-serif;
	font-family: 'Yu Gothic','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3','メイリオ', 'Meiryo','Helvetica Neue', 'Helvetica', 'Arial',sans-serif;*/
        color: #333;
        font-size: 14px;
    }
    * {
        margin: 0;
        padding: 0;
    }
    *, *:before, *:after {
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box;
    }
    h1, h2, h3, h4, h5 {
        margin: 0;
        padding: 0;
        word-break: normal; /* add Togashi 20240722*/
    }
    div {
        margin: 0;
        padding: 0;
    }
    p {
        margin: 0;
        padding: 0;
        word-break: normal; /* add Togashi 20240722*/
    }
    a { /*color:#131341; */ text-decoration: none;
    }
    a:visited { /* color:#131341;*/
    }
    a:hover { /*color:#131341; text-decoration:underline;*/
    }
    a:focus { /*color:#131341; outline: thin dotted; */
    }
    a:hover, a:active { /*color:#131341; outline: 0;*/
    }
    table, th, td {
        margin: 0;
        padding: 0;
        font-size: inherit;
        font-size: 1em;
        border-collapse: collapse;
        word-break: normal; /* add Togashi 20240722*/
    }
    table {
        width: 100%;
    }
    ul, ol, li, dl, dt, dd {
        margin: 0;
        padding: 0;
        list-style: none;
        list-style-position: outside;
        word-break: normal; /* add Togashi 20240722*/
    }
    img {
        margin: 0;
        padding: 0;
        border: none;
        line-height: 0;
        vertical-align: bottom;
    }
    article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
        display: block;
    }
    /*------------------------
		option.css
------------------------*/
    /*=========display=========*/
    .DisPlayNone {
        display: none;
    }
    .DisPlayBlock {
        display: block;
    }
    .DisPlayInline {
        display: inline;
    }
    /*=========float=========*/
    .FRight {
        float: right;
    }
    .FLeft {
        float: left;
    }
    /*=========clear=========*/
    .ClearBoth {
        clear: both;
    }
    .ClearRight {
        clear: right;
    }
    .ClearLeft {
        clear: left;
    }
    .ClearBox {
        clear: both;
        height: 0;
        overflow: hidden;
    }
    .ClearFix {
        zoom: 1;
    }
    .ClearFix:after {
        display: block;
        clear: both;
        height: 0;
        visibility: hidden;
        line-height: 0;
        content: ".";
    }
    .clearfix:after {
        content: "";
        display: block;
        clear: both;
        height: 0;
    }
    /* no ie mac \*/
    * html .ClearFix {
        height: 1%;
    }
    .ClearFix {
        display: block;
    }
    /*=========visibility=========*/
    .VisVis {
        visibility: visible;
    }
    .VisHid {
        visibility: hidden;
    }
    .VisCol {
        visibility: collapse;
    }
    /*=========マージン設定=========*/
    .MA0 {
        margin: 0;
    }
    .MRLAuto {
        margin-left: auto;
        margin-right: auto;
    }
    /* 20240516 下記 marginに「!important」追加。add A-Togashi */
    .MT0 {
        margin-top: 0 !important;
    }
    .MT5 {
        margin-top: 5px !important;
    }
    .MT10 {
        margin-top: 10px !important;
    }
    .MT15 {
        margin-top: 15px !important;
    }
    .MT20 {
        margin-top: 20px !important;
    }
    .MT25 {
        margin-top: 25px !important;
    }
    .MT30 {
        margin-top: 30px !important;
    }
    .MT40 {
        margin-top: 40px !important;
    }
    .MT45 {
        margin-top: 45px !important;
    }
    .MT47 {
        margin-top: 47px !important;
    }
    .MT50 {
        margin-top: 50px !important;
    }
    .MT51 {
        margin-top: 51px !important;
    }
    .MT54 {
        margin-top: 54px !important;
    }
    .MT55 {
        margin-top: 55px !important;
    }
    .MT60 {
        margin-top: 60px !important;
    }
    .MT61 {
        margin-top: 61px !important;
    }
    .MT66 {
        margin-top: 66px !important;
    }
    .MT70 {
        margin-top: 70px !important;
    }
    .MT80 {
        margin-top: 80px !important;
    }
    .MT90 {
        margin-top: 90px !important;
    }
    .MT95 {
        margin-top: 95px !important;
    }
    .MT100 {
        margin-top: 100px !important;
    }
    .MT120 {
        margin-top: 120px !important;
    }
    .MT160 {
        margin-top: 160px !important;
    }
    .MR0 {
        margin-right: 0 !important;
    }
    .MR5 {
        margin-right: 5px !important;
    }
    .MR10 {
        margin-right: 10px !important;
    }
    .MR15 {
        margin-right: 15px !important;
    }
    .MR20 {
        margin-right: 20px !important;
    }
    .MR25 {
        margin-right: 25px !important;
    }
    .MR30 {
        margin-right: 30px !important;
    }
    .MR35 {
        margin-right: 35px !important;
    }
    .MR40 {
        margin-right: 40px !important;
    }
    .MR45 {
        margin-right: 45px !important;
    }
    .MR50 {
        margin-right: 50px !important;
    }
    .MR60 {
        margin-right: 60px !important;
    }
    .MB0 {
        margin-bottom: 0 !important;
    }
    .MB5 {
        margin-bottom: 5px !important;
    }
    .MB6 {
        margin-bottom: 6px !important;
    }
    .MB8 {
        margin-bottom: 8px !important;
    }
    .MB10 {
        margin-bottom: 10px !important;
    }
    .MB15 {
        margin-bottom: 15px !important;
    }
    .MB20 {
        margin-bottom: 20px !important;
    }
    .MB25 {
        margin-bottom: 25px !important;
    }
    .MB27 {
        margin-bottom: 27px !important;
    }
    .MB30 {
        margin-bottom: 30px !important;
    }
    .MB35 {
        margin-bottom: 35px !important;
    }
    .MB39 {
        margin-bottom: 39px !important;
    }
    .MB40 {
        margin-bottom: 40px !important;
    }
    .MB43 {
        margin-bottom: 43px !important;
    }
    .MB45 {
        margin-bottom: 45px !important;
    }
    .MB47 {
        margin-bottom: 47px !important;
    }
    .MB50 {
        margin-bottom: 50px !important;
    }
    .MB54 {
        margin-bottom: 54px !important;
    }
    .MB55 {
        margin-bottom: 55px !important;
    }
    .MB56 {
        margin-bottom: 56px !important;
    }
    .MB60 {
        margin-bottom: 60px !important;
    }
    .MB65 {
        margin-bottom: 65px !important;
    }
    .MB67 {
        margin-bottom: 67px !important;
    }
    .MB70 {
        margin-bottom: 70px !important;
    }
    .MB75 {
        margin-bottom: 75px !important;
    }
    .MB80 {
        margin-bottom: 80px !important;
    }
    .MB85 {
        margin-bottom: 85px !important;
    }
    .MB90 {
        margin-bottom: 90px !important;
    }
    .MB93 {
        margin-bottom: 93px !important;
    }
    .MB95 {
        margin-bottom: 95px !important;
    }
    .MB100 {
        margin-bottom: 100px !important;
    }
    .MB104 {
        margin-bottom: 104px !important;
    }
    .MB109 {
        margin-bottom: 109px !important;
    }
    .MB110 {
        margin-bottom: 110px !important;
    }
    .MB115 {
        margin-bottom: 115px !important;
    }
    .MB120 {
        margin-bottom: 120px !important;
    }
    .MB125 {
        margin-bottom: 125px !important;
    }
    .MB134 {
        margin-bottom: 134px !important;
    }
    .MB138 {
        margin-bottom: 138px !important;
    }
    .MB142 {
        margin-bottom: 142px !important;
    }
    .MB150 {
        margin-bottom: 150px !important;
    }
    .MB153 {
        margin-bottom: 153px !important;
    }
    .MB167 {
        margin-bottom: 167px !important;
    }
    .MB180 {
        margin-bottom: 180px !important;
    }
    .ML0 {
        margin-left: 0 !important;
    }
    .ML5 {
        margin-left: 5px !important;
    }
    .ML10 {
        margin-left: 10px !important;
    }
    .ML15 {
        margin-left: 15px !important;
    }
    .ML20 {
        margin-left: 20px !important;
    }
    .ML25 {
        margin-left: 25px !important;
    }
    .ML30 {
        margin-left: 30px !important;
    }
    .ML35 {
        margin-left: 35px !important;
    }
    .ML40 {
        margin-left: 40px !important;
    }
    .ML45 {
        margin-left: 45px !important;
    }
    .ML50 {
        margin-left: 50px !important;
    }
    .ML60 {
        margin-left: 60px !important;
    }
    .ML70 {
        margin-left: 70px !important;
    }
    .ML100 {
        margin-left: 100px !important;
    }
    /*=========パディング設定=========*/
    .PA0 {
        padding: 0;
    }
    .PA10 {
        padding: 10px;
    }
    .PA20 {
        padding: 20px;
    }
    .PA30 {
        padding: 30px;
    }
    .PT0 {
        padding-top: 0;
    }
    .PT5 {
        padding-top: 5px;
    }
    .PT10 {
        padding-top: 10px;
    }
    .PT15 {
        padding-top: 15px;
    }
    .PT20 {
        padding-top: 20px;
    }
    .PT25 {
        padding-top: 25px;
    }
    .PT30 {
        padding-top: 30px;
    }
    .PT35 {
        padding-top: 35px;
    }
    .PT40 {
        padding-top: 40px;
    }
    .PT50 {
        padding-top: 50px;
    }
    .PT55 {
        padding-top: 55px;
    }
    .PT60 {
        padding-top: 60px;
    }
    .PT70 {
        padding-top: 70px;
    }
    .PT80 {
        padding-top: 80px;
    }
    .PT90 {
        padding-top: 90px;
    }
    .PT104 {
        padding-top: 104px;
    }
    .PT110 {
        padding-top: 110px;
    }
    .PT120 {
        padding-top: 120px;
    }
    .PT130 {
        padding-top: 130px;
    }
    .PR0 {
        padding-right: 0;
    }
    .PR5 {
        padding-right: 5px;
    }
    .PR10 {
        padding-right: 10px;
    }
    .PR15 {
        padding-right: 15px;
    }
    .PR20 {
        padding-right: 20px;
    }
    .PR30 {
        padding-right: 30px;
    }
    .PR35 {
        padding-right: 35px;
    }
    .PR40 {
        padding-right: 40px;
    }
    .PR50 {
        padding-right: 50px;
    }
    .PR60 {
        padding-right: 60px;
    }
    .PR70 {
        padding-right: 70px;
    }
    .PB0 {
        padding-bottom: 0;
    }
    .PB5 {
        padding-bottom: 5px;
    }
    .PB10 {
        padding-bottom: 10px;
    }
    .PB15 {
        padding-bottom: 15px;
    }
    .PB20 {
        padding-bottom: 20px;
    }
    .PB25 {
        padding-bottom: 25px;
    }
    .PB30 {
        padding-bottom: 30px;
    }
    .PB32 {
        padding-bottom: 32px;
    }
    .PB40 {
        padding-bottom: 40px;
    }
    .PB50 {
        padding-bottom: 50px;
    }
    .PB60 {
        padding-bottom: 60px;
    }
    .PB70 {
        padding-bottom: 70px;
    }
    .PB90 {
        padding-bottom: 90px;
    }
    .PB93 {
        padding-bottom: 93px;
    }
    .PB97 {
        padding-bottom: 97px;
    }
    .PB116 {
        padding-bottom: 116px;
    }
    .PB143 {
        padding-bottom: 143px;
    }
    .PL0 {
        padding-left: 0;
    }
    .PL5 {
        padding-left: 5px;
    }
    .PL10 {
        padding-left: 10px;
    }
    .PL15 {
        padding-left: 15px;
    }
    .PL20 {
        padding-left: 20px;
    }
    .PL30 {
        padding-left: 30px;
    }
    .PL40 {
        padding-left: 40px;
    }
    .PL50 {
        padding-left: 50px;
    }
    .PL100 {
        padding-left: 100px;
    }
    /*=========Border=========*/
    .BorderNone {
        border: none;
    }
    /*=========Font=========*/
    .FontBold {
        font-weight: bold;
    }
    .FC_blue {
        color: #0088fb;
    }
    .FC_white {
        color: #ffffff;
    }
    .FC_Red {
        color: #FF3333;
    }
    a.FC_blue2 {
        color: #007FFF;
    }
    a.FC_blue2:visited {
        color: #551a8b;
    }
    a.FC_blue2:active {
        color: #551a8b;
    }
    .FontS {
        font-size: 80%;
        line-height: 1.2em;
    }
    .FontSS {
        font-size: 70%;
        line-height: 1.5em;
    }
    .FontB {
        font-size: 120%;
    }
    .F11 {
        font-size: 11px;
        line-height: 12px;
    }
    /*=========text-align=========*/
    .TACenter {
        text-align: center;
    }
    .TARight {
        text-align: right;
    }
    .TALeft {
        text-align: left;
    }
    /*=========Indent=========*/
    .caption {
        text-align: left;
        display: block;
        clear: both;
        font-size: 85%;
        line-height: 130%;
        padding-top: 5px;
    }
    .caption_right {
        font-size: 85%;
        text-align: right;
        display: block;
        line-height: 130%;
        clear: both;
        padding-top: 5px;
    }
    .caption02 {
        font-size: 9px;
        line-height: 12px;
    }
    .caption03 {
        font-size: 10px;
        line-height: 15px;
        color: #fff;
    }
    .caption04 {
        font-size: 10px;
        line-height: 15px;
        color: #fff;
        width: 928px;
        text-align: right;
        margin-bottom: 20px;
    }
    .visible_pc {
        display: block;
    }
    .visible_sp {
        display: none;
    }
}
@media only screen and (max-width : 900px) {
    * {
        margin: 0;
        padding: 0;
    }
    *, *:before, *:after {
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box;
    }
    html {
        font-size: 62.5%;
    }
    body {
        font-size: 1.4rem; /*14px*/
        color: #1D1D1D;
    }
    h1, h2, h3, h4, h5 {
        margin: 0;
        padding: 0;
        word-break: normal; /* add Togashi 20240722*/
    }
    div {
        margin: 0;
        padding: 0;
    }
    p {
        margin: 0;
        padding: 0;
        word-break: normal; /* add Togashi 20240722*/
    }
    /*
a { color:#131341; text-decoration:none; }
a:visited { color:#131341; }
a:hover { color:#131341; text-decoration:underline; }
a:focus { color:#131341; outline: thin dotted; }
a:hover, a:active { color:#131341; outline: 0; }
*/
    table, th, td {
        margin: 0;
        padding: 0;
        font-size: inherit;
        font-size: 1em;
        border-collapse: collapse;
        word-break: normal; /* add Togashi 20240722*/
    }
    table {
        width: 100%;
    }
    ul, ol, li, dl, dt, dd {
        margin: 0;
        padding: 0;
        list-style: none;
        list-style-position: outside;
        word-break: normal; /* add Togashi 20240722*/
    }
    img {
        margin: 0;
        padding: 0;
        border: none;
        line-height: 0;
        vertical-align: bottom;
        max-width: 100%;
    }
    article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
        display: block;
    }
    /*------------------------
		option.css
------------------------*/
    /*=========display=========*/
    .DisPlayNone {
        display: none;
    }
    .DisPlayBlock {
        display: block;
    }
    .DisPlayInline {
        display: inline;
    }
    /*=========float=========*/
    /*=========clear=========*/
    .ClearBoth {
        clear: both;
    }
    .ClearRight {
        clear: right;
    }
    .ClearLeft {
        clear: left;
    }
    .ClearBox {
        clear: both;
        height: 0;
        overflow: hidden;
    }
    .ClearFix {
        zoom: 1;
    }
    .ClearFix:after {
        display: block;
        clear: both;
        height: 0;
        visibility: hidden;
        line-height: 0;
        content: ".";
    }
    .clearfix:after {
        content: "";
        display: block;
        clear: both;
        height: 0;
    }
    /* no ie mac \*/
    * html .ClearFix {
        height: 1%;
    }
    .ClearFix {
        display: block;
    }
    /*=========visibility=========*/
    .VisVis {
        visibility: visible;
    }
    .VisHid {
        visibility: hidden;
    }
    .VisCol {
        visibility: collapse;
    }
    /*=========Border=========*/
    .BorderNone {
        border: none;
    }
    /*=========Font=========*/
    .FontBold {
        font-weight: bold;
    }
    .FC_blue {
        color: #0088fb;
    }
    .FC_white {
        color: #ffffff;
    }
    .FC_Red {
        color: #FF3333;
    }
    a.FC_blue2 {
        color: #007FFF;
    }
    a.FC_blue2:visited {
        color: #551a8b;
    }
    a.FC_blue2:active {
        color: #551a8b;
    }
    .FontS {
        font-size: 80%;
        line-height: 1.2em;
    }
    .FontSS {
        font-size: 70%;
        line-height: 1.5em;
    }
    .FontB {
        font-size: 120%;
    }
    .F11 {
        font-size: 11px;
        line-height: 12px;
    }
    /*=========text-align=========*/
    /*.TACenter {	text-align: center; }
.TARight { text-align: right; }
.TALeft { text-align: left; }*/
    /*=========Indent=========*/
    .caption {
        text-align: left;
        display: block;
        clear: both;
        font-size: 85%;
        line-height: 130%;
        padding-top: 5px;
    }
    .caption_right {
        font-size: 85%;
        text-align: right;
        display: block;
        line-height: 130%;
        clear: both;
        padding-top: 5px;
    }
    .caption02 {
        font-size: 9px;
        line-height: 12px;
    }
    .caption03 {
        font-size: 10px;
        line-height: 15px;
        color: #fff;
    }
    .caption04 {
        font-size: 10px;
        line-height: 15px;
        color: #fff;
        width: 928px;
        text-align: right;
        margin-bottom: 20px;
    }
    .tar {
        text-align: right;
    }
    .visible_sp {
        display: block;
    }
    .visible_pc {
        display: none;
    }
    .mb1 {
        margin-bottom: 1%;
    }
    .mb2 {
        margin-bottom: 2%;
    }
    .mb3 {
        margin-bottom: 3%;
    }
    .mb4 {
        margin-bottom: 4%;
    }
    .mb5 {
        margin-bottom: 5%;
    }
    .mb6 {
        margin-bottom: 6%;
    }
    .mb7 {
        margin-bottom: 7%;
    }
    .mb8 {
        margin-bottom: 8%;
    }
    .mb9 {
        margin-bottom: 9%;
    }
    .mb10 {
        margin-bottom: 10%;
    }
    .mb11 {
        margin-bottom: 11%;
    }
    .mb12 {
        margin-bottom: 12%;
    }
    .mb13 {
        margin-bottom: 13%;
    }
    .mb15 {
        margin-bottom: 15%;
    }
    .mb17 {
        margin-bottom: 17%;
    }
    .mb20 {
        margin-bottom: 20%;
    }
    .mt1 {
        margin-top: 1%;
    }
    .mt2 {
        margin-top: 2%;
    }
    .mt3 {
        margin-top: 3%;
    }
    .mt4 {
        margin-top: 4%;
    }
    .mt5 {
        margin-top: 5%;
    }
    .mt6 {
        margin-top: 6%;
    }
    .mt7 {
        margin-top: 7%;
    }
    .mt8 {
        margin-top: 8%;
    }
    .mt9 {
        margin-top: 9%;
    }
    .mt10 {
        margin-top: 10%;
    }
    .mt12 {
        margin-top: 12%;
    }
    .mt17 {
        margin-top: 17%;
    }
    .ml1 {
        margin-left: 1%;
    }
    .ml2 {
        margin-left: 2%;
    }
    .ml3 {
        margin-left: 3%;
    }
    .ml4 {
        margin-left: 4%;
    }
    .ml5 {
        margin-left: 5%;
    }
    .ml6 {
        margin-left: 6%;
    }
    .ml7 {
        margin-left: 7%;
    }
    .ml8 {
        margin-left: 8%;
    }
    .ml9 {
        margin-left: 9%;
    }
    .ml10 {
        margin-left: 10%;
    }
    .mr1 {
        margin-right: 1%;
    }
    .mr2 {
        margin-right: 2%;
    }
    .mr3 {
        margin-right: 3%;
    }
    .mr4 {
        margin-right: 4%;
    }
    .mr5 {
        margin-right: 5%;
    }
    .mr6 {
        margin-right: 6%;
    }
    .mr7 {
        margin-right: 7%;
    }
    .mr8 {
        margin-right: 8%;
    }
    .mr9 {
        margin-right: 9%;
    }
    .mr10 {
        margin-right: 10%;
    }
    .pb1 {
        padding-bottom: 1%;
    }
    .pb2 {
        padding-bottom: 2%;
    }
    .pb3 {
        padding-bottom: 3%;
    }
    .pb4 {
        padding-bottom: 4%;
    }
    .pb5 {
        padding-bottom: 5%;
    }
    .pb6 {
        padding-bottom: 6%;
    }
    .pb7 {
        padding-bottom: 7%;
    }
    .pb8 {
        padding-bottom: 8%;
    }
    .pb9 {
        padding-bottom: 9%;
    }
    .pb10 {
        padding-bottom: 10%;
    }
    .pb11 {
        padding-bottom: 11%;
    }
    .pb12 {
        padding-bottom: 12%;
    }
    .pb16 {
        padding-bottom: 16%;
    }
    .pt1 {
        padding-top: 1%;
    }
    .pt2 {
        padding-top: 2%;
    }
    .pt3 {
        padding-top: 3%;
    }
    .pt4 {
        padding-top: 4%;
    }
    .pt5 {
        padding-top: 5%;
    }
    .pt6 {
        padding-top: 6%;
    }
    .pt7 {
        padding-top: 7%;
    }
    .pt8 {
        padding-top: 8%;
    }
    .pt9 {
        padding-top: 9%;
    }
    .pt10 {
        padding-top: 10%;
    }
    .pt12 {
        padding-top: 12%;
    }
    .tac {
        text-align: center;
    }
}
@-ms-viewport {
    width: device-width;
}
.visible-xs, .visible-sm, .visible-md, .visible-lg {
    display: none !important;
}
.visible-xs-block, .visible-xs-inline, .visible-xs-inline-block, .visible-sm-block, .visible-sm-inline, .visible-sm-inline-block, .visible-md-block, .visible-md-inline, .visible-md-inline-block, .visible-lg-block, .visible-lg-inline, .visible-lg-inline-block {
    display: none !important;
}
@media (max-width:420px) {
    .hidden-xs {
        display: none !important;
    }
}
@media (min-width:420px) and (max-width:900px) {
    .hidden-sm {
        display: none !important;
    }
}
@media (min-width:901px) {
    .hidden-md {
        display: none !important;
    }
}