/* prism */
pre{
    display: block;
    background-color: #272822;
    color: #f8f8f2;
    font-size: 14px;
    position: relative;
    padding: 0.5em;
    border-radius: 3px;
    margfin: 0 auto 3em;
    overflow: scroll;
    border: 1px solid #A0A0A0;
}
code[class*='language-'],
pre[class*='language-'] {
  white-space: pre-wrap !important;
}
/*ここからタイトルコンポーネントのカスタマイズ*/
.cmp-title--h-lv2--large .cmp-title__text {
    font-weight: normal;
}
@media screen and (max-width: 767px) {
    .cmp-title--h-lv2--large .cmp-title__text {
        font-size: 2pc;
    }

}
/*ここからコンテンツナビのカスタマイズ*/
.gs21-ContentsNav.Ctm_nav{
    border: none;
    margin: 0;
}
@media screen and (max-width: 767px) {
.gs21-ContentsNav.Ctm_nav .gs21-ContentsNavListItem{
    width: 100%;
}
.gs21-ContentsNav.Ctm_nav {
    display: none;
    transform: translateZ(0);
    transition: all 0.3s;
    border-bottom: 1px solid #989898;
}
.gs21-ContentsNav.Ctm_nav.show{
    display: block;
    height: auto;
    transition: all 0.3s;
}
}
.gs21-ContentsNav.Ctm_nav .gs21-ContentsNavListItem .gs21-Link{
    padding: 15px 10px 15px 30px;
}
.sp_menu_btn{
    display: none;
}
@media screen and (max-width: 767px) {
.sp_menu_btn{
    display: block;
    margin: 0 calc(50% - 50vw);
    width: 100vw;
}
.sp_menu_btn .sp_menu_btnIn{
    position: relative;
    font-weight: bold;
    padding: 20px 20px;
    border-bottom: 1px solid #989898;
    cursor: pointer;
}
.sp_menu_btn .sp_menu_btnIn::before,.sp_menu_btn .sp_menu_btnIn::after  {
    content: '';
    display: inline-block;
    width: 26px;
    height: 2px;
    background-color: #333;
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    transition: opacity 0.3s;
}

.sp_menu_btn .sp_menu_btnIn::after {
    transform: translateY(-50%) rotate(90deg);
    transition: transform 0.3s;
}

.sp_menu_btn .sp_menu_btnIn.show::before {
    opacity: 0;
}

.sp_menu_btn .sp_menu_btnIn.show::after {
    transform: translateY(-50%) rotate(180deg);
}
}
/*ここからアコーディオンコンポーネントのカスタマイズ*/
.Custom-007 .cmp-accordion__item{
    border-top: none;
}
.Custom-007 .cmp-accordion__item:last-child{
    border-bottom: none;
}
.Custom-007 .cmp-accordion{
    border-bottom: 1px solid #B3B3B3;
}
.Custom-007 .cmp-accordion__button{
    border-top: none;
}
.Custom-007 .cmp-accordion__panel--expanded:before{
    background-color: transparent;
}
.Custom-007 .cmp-accordion__title{
    padding: 37px 33px 36px 0;
}
.Custom-007 .cmp-accordion__panel--expanded{
    padding: 25px 0 25px;
    border-top: 1px solid #b3b3b3;
}
/*ここからカスタムコンテンツwrap*/
/*カスタムコンテンツwrapページ最下部にてコンテンツマージンをつけない場合付与*/
.gs21-Main:has(#ctm_ConentsWrap_BtmmbNone){
    margin-bottom: 0;
    padding-bottom: 0;

}
.gs21-MainContents:has(#ctm_ConentsWrap_TopmtNone){
    padding-top: 0;
}

/*Container Mainの中でコンテンツ領域を超えてコンテナを配置*/
#ctm_Contents_penetratSection{
    margin-inline: calc(50% - 50vw);
}

/*900px*/
#ctm_ConentsWrap_Narrow{
    max-width: 60pc;
    width: 66.6667%;
    box-sizing: border-box;
    margin-left: auto;
    margin-right: auto;
    padding-bottom: 80px;
    padding-left:30px;
    padding-right: 30px;
}
@media only screen and (max-width: 767.99px) {
    #ctm_ConentsWrap_Narrow {
        padding-left:15px;
        padding-right: 15px;
    }
}
@media only screen and (min-width: 961px) {
    #ctm_ConentsWrap_Narrow {
        min-width:60pc;
    }
}
@media only screen and (min-width: 769px)and (max-width:960px) {
    #ctm_ConentsWrap_Narrow {
        width:auto
    }
}
/*1400px*/
#ctm_ConentsWrap {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-left: auto;
    margin-right: auto;
    max-width: 90pc;
    padding-bottom: 80px;
    padding-left: 30px;
    padding-right: 30px;
}
@media only screen and (max-width: 767.99px) {
    #ctm_ConentsWrap {
        padding-left:15px;
        padding-right: 15px
    }
}


/*ここからカスタムテーブル*/
/*ボーダーなし*/
#Ctm_tblNoborder .cmp-text table{
    border: none;
}
#Ctm_tblNoborder .cmp-text table tr td, #Ctm_tblNoborder .cmp-text table tr th{
    border: none;
}
#Ctm_tblNoborder .cmp-text table tr th{
    background-color: transparent;
}



/*汎用CSS*/
/*diplay*/
.pdDisnon{display: none !important;}
@media screen and (max-width: 767px) {.pdDisnon{display: block !important;}}
.spDisnon{display: block !important;}
@media screen and (max-width: 767px) {.spDisnon{display: none !important;}}
.disBlo{display:block !important}
.disInl{display:inline !important}
.disInB{display:inline-block !important}
.disTbl{display:table !important;width:100%}
.disTbc{display:table-cell !important}
.disNon{display:none !important}
.visHid{visibility:hidden !important}
.visVis{visibility:visible !important}
.hide{position:absolute;width:0;height:0;overflow:hidden}
.fixed{position:fixed !important}
.linkNon{pointer-events:none}
.u-hide{display:none}
.fullImg{width:100%;max-width:none}
/*font size*/
.fs10{font-size:1.0rem !important}
.fs12{font-size:1.2rem !important}
.fs14{font-size:1.4rem !important}
.fs16{font-size:1.6rem !important}
.fs18{font-size:1.8rem !important}
.fs20{font-size:2.0rem !important}
.nowrap{white-space:nowrap !important}
.brAll{word-break:break-all !important}
.ofHid{overflow:hidden !important}
/*float text-align vertical-align*/
.floatL{float:left}
.floatR{float:right}
.alL{text-align:left !important}
.alC{text-align:center !important}
.alR{text-align:right !important}
.vaT{vertical-align:top !important}
.vaM{vertical-align:middle !important}
.vaB{vertical-align:bottom !important}
.vaBL{vertical-align:baseline !important}
.vt{vertical-align:top !important;font-size:90%}
/* margin */
.mgtXS{margin-top:10px !important}
.mgtS{margin-top:20px !important}
.mgtM{margin-top:30px !important}
.mgtL{margin-top:40px !important}
.mgtXL{margin-top:50px !important}
.mgt0{margin-top:0 !important}
.mgt5{margin-top:5px !important}
.mgt10{margin-top:10px !important}
.mgt15{margin-top:15px !important}
.mgt20{margin-top:20px !important}
.mgt25{margin-top:25px !important}
.mgt30{margin-top:30px !important}
.mgt35{margin-top:35px !important}
.mgt40{margin-top:40px !important}
.mgt45{margin-top:45px !important}
.mgt50{margin-top:50px !important}
.mgt55{margin-top:55px !important}
.mgt60{margin-top:60px !important}
.mgt65{margin-top:65px !important}
.mgt70{margin-top:70px !important}
.mgt75{margin-top:75px !important}
.mgt80{margin-top:80px !important}
.mgt85{margin-top:85px !important}
.mgt90{margin-top:90px !important}
.mgt95{margin-top:95px !important}
.mgt100{margin-top:100px !important}
.mgr0{margin-right:0 !important}
.mgr5{margin-right:5px !important}
.mgr10{margin-right:10px !important}
.mgr15{margin-right:15px !important}
.mgr20{margin-right:20px !important}
.mgr25{margin-right:25px !important}
.mgr30{margin-right:30px !important}
.mgb0{margin-bottom:0 !important}
.mgl0{margin-left:0 !important}
.mgl5{margin-left:5px !important}
.mgl10{margin-left:10px !important}
.mgl15{margin-left:15px !important}
.mgl20{margin-left:20px !important}
.mgl25{margin-left:25px !important}
.mgl30{margin-left:30px !important}
.mglA{margin:0 auto}
/*padding*/
.pdt0{padding-top:0 !important}
.pdt5{padding-top:5px !important}
.pdt10{padding-top:10px !important}
.pdt15{padding-top:15px !important}
.pdt20{padding-top:20px !important}
.pdt25{padding-top:25px !important}
.pdt30{padding-top:30px !important}
.pdt35{padding-top:35px !important}
.pdt40{padding-top:40px !important}
.pdt45{padding-top:45px !important}
.pdt50{padding-top:50px !important}
.pdr0{padding-right:0 !important}
.pdr5{padding-right:5px !important}
.pdr10{padding-right:10px !important}
.pdr15{padding-right:15px !important}
.pdr20{padding-right:20px !important}
.pdr25{padding-right:25px !important}
.pdr30{padding-right:30px !important}
.pdr35{padding-right:35px !important}
.pdr40{padding-right:40px !important}
.pdr45{padding-right:45px !important}
.pdr50{padding-right:50px !important}
.pdb0{padding-bottom:0 !important}
.pdb5{padding-bottom:5px !important}
.pdb10{padding-bottom:10px !important}
.pdb15{padding-bottom:15px !important}
.pdb20{padding-bottom:20px !important}
.pdb25{padding-bottom:25px !important}
.pdb30{padding-bottom:30px !important}
.pdb35{padding-bottom:35px !important}
.pdb40{padding-bottom:40px !important}
.pdb45{padding-bottom:45px !important}
.pdb50{padding-bottom:50px !important}
.pdl0{padding-left:0 !important}
.pdl5{padding-left:5px !important}
.pdl10{padding-left:10px !important}
.pdl15{padding-left:15px !important}
.pdl20{padding-left:20px !important}
.pdl25{padding-left:25px !important}
.pdl30{padding-left:30px !important}
.pdl35{padding-left:35px !important}
.pdl40{padding-left:40px !important}
.pdl45{padding-left:45px !important}
.pdl50{padding-left:50px !important}
/* width */
.w1P{width:1% !important}
.w2P{width:2% !important}
.w3P{width:3% !important}
.w4P{width:4% !important}
.w5P{width:5% !important}
.w6P{width:6% !important}
.w7P{width:7% !important}
.w8P{width:8% !important}
.w9P{width:9% !important}
.w10P{width:10% !important}
.w11P{width:11% !important}
.w12P{width:12% !important}
.w13P{width:13% !important}
.w14P{width:14% !important}
.w15P{width:15% !important}
.w16P{width:16% !important}
.w17P{width:17% !important}
.w18P{width:18% !important}
.w19P{width:19% !important}
.w20P{width:20% !important}
.w21P{width:21% !important}
.w22P{width:22% !important}
.w23P{width:23% !important}
.w24P{width:24% !important}
.w25P{width:25% !important}
.w26P{width:26% !important}
.w27P{width:27% !important}
.w28P{width:28% !important}
.w29P{width:29% !important}
.w30P{width:30% !important}
.w31P{width:31% !important}
.w32P{width:32% !important}
.w33P{width:33% !important}
.w34P{width:34% !important}
.w35P{width:35% !important}
.w36P{width:36% !important}
.w37P{width:37% !important}
.w38P{width:38% !important}
.w39P{width:39% !important}
.w40P{width:40% !important}
.w41P{width:41% !important}
.w42P{width:42% !important}
.w43P{width:43% !important}
.w44P{width:44% !important}
.w45P{width:45% !important}
.w46P{width:46% !important}
.w47P{width:47% !important}
.w48P{width:48% !important}
.w49P{width:49% !important}
.w50P{width:50% !important}
.w51P{width:51% !important}
.w52P{width:52% !important}
.w53P{width:53% !important}
.w54P{width:54% !important}
.w55P{width:55% !important}
.w56P{width:56% !important}
.w57P{width:57% !important}
.w58P{width:58% !important}
.w59P{width:59% !important}
.w60P{width:60% !important}
.w61P{width:61% !important}
.w62P{width:62% !important}
.w63P{width:63% !important}
.w64P{width:64% !important}
.w65P{width:65% !important}
.w66P{width:66% !important}
.w67P{width:67% !important}
.w68P{width:68% !important}
.w69P{width:69% !important}
.w70P{width:70% !important}
.w71P{width:71% !important}
.w72P{width:72% !important}
.w73P{width:73% !important}
.w74P{width:74% !important}
.w75P{width:75% !important}
.w76P{width:76% !important}
.w77P{width:77% !important}
.w78P{width:78% !important}
.w79P{width:79% !important}
.w80P{width:80% !important}
.w81P{width:81% !important}
.w82P{width:82% !important}
.w83P{width:83% !important}
.w84P{width:84% !important}
.w85P{width:85% !important}
.w86P{width:86% !important}
.w87P{width:87% !important}
.w88P{width:88% !important}
.w89P{width:89% !important}
.w90P{width:90% !important}
.w91P{width:91% !important}
.w92P{width:92% !important}
.w93P{width:93% !important}
.w94P{width:94% !important}
.w95P{width:95% !important}
.w96P{width:96% !important}
.w97P{width:97% !important}
.w98P{width:98% !important}
.w99P{width:99% !important}
.w100P{width:100% !important}