/*--------------------------------------------------------------------------

 common 

--------------------------------------------------------------------------*/
.flex_sbw {
    justify-content: space-between;
}
.bg_y {
    padding: 50px 0;
    background-color: #fef8e4;
}
.fnt_wb_r {
    color: #ff0a14;
    font-size: 20px;
    font-weight: bold;
}
.fnt_wbs_r {
    color: #ff0a14;
    font-weight: bold;
}



/* title ----------------------------------------------*/
#products.useful .useful_tit {
    padding: 50px 0;
    background: #fef8e4;
}
#products.useful .useful_tit .txt_main {
    color: #222;
}
#products.useful .useful_tit .sub_txt {
    margin-top: 15px;
    color: #f58200;
    font-size: 24px;
    font-weight: bold;
}

#products.useful .ttl_left_line:before {
    background-color: #f58200;
}
#products.useful .ttl_clr_o {
    margin: 10px 0 20px;
    color: #f58200;
    font-size: 22px;
    font-weight: bold;
}



/*--------------------------------------------------------------------------

 /jpn/consumer/products/cg/useful/bombe/ 

--------------------------------------------------------------------------*/
/* deadline */
#deadline .bg_gray_rc .flex_wrap {
    align-items: center;
}

/* bg_gray_rc */
.bg_gray_rc .inbox {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    margin: 50px 0 0;
    padding: 40px;
    background-color: #f6f7f8;
    border-radius: 20px;
}
.bg_gray_rc .inbox img {
    width: auto;
}
.bg_gray_rc .inbox .tit_arw {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0.8;
}
.tit_arw {
    position: relative;
    width: 100%;
    margin: 0 auto 30px;
    padding: 15px 0px;
    background: #f58200;
    color: #fff;
    border-radius: 20px;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
}
.tit_arw::after {
    content: "";
    position: absolute;
    top: 98%;
    left: 50%;
    margin-left: -15px;
    border: 15px solid transparent;
    border-top: 15px solid #f58200;
}
.text_link {
    margin-top: 30px;
}
.text_link a {
    color: #222;
}
.text_link a::before {
    content: '';
    display: inline-block;
    transform: rotate(45deg);
    width: 9px;
    height: 9px;
    border: 0;
    margin-right: 10px;
    border-top: solid 2px #f58200;
    border-right: solid 2px #f58200;
    transition: all .2s;
    vertical-align: middle;
}


/* step */

.step_area_wrap dl {
    margin: 30px 0;
    border: 4px solid #f58200;
    box-sizing: border-box;
    border-radius: 20px;
}
.step_area_wrap dl dt {
    padding: 10px;
    background-color: #f58200;
    color: #fff;
    border-radius: 15px 15px 0 0;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
}
.step_area_wrap dl dt span {
    display: inline-block;
    margin-left: 3px;
    font-size: 36px;
    line-height: 1;
}
.step_area_wrap dl dd {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-grow: 1;
    padding: 30px;
}
.step_area_wrap dl dd .img {
    margin-left: 20px;
}

.caution_box .caution_tit {
    position: relative;
    display: inline-block;
    padding: 20px 35px 0;
    background: #f6f7f8;
    color: #ff0a14;
    border-radius: 20px 20px 0 0;
    font-size: 23px;
    font-weight: bold;
}
.caution_box .caution_tit::before {
    position: absolute;
    content: "";
    display: block;
    right: -20px;
    bottom: 0;
    width: 20px;
    height: 20px;
    background: #f6f7f8;
    z-index: 1;
}
.caution_box .caution_tit::after {
    position: absolute;
    content: "";
    display: block;
    right: -40px;
    bottom: 0;
    width: 40px;
    height: 40px;
    background: #fff;
    border-radius: 40px;
    z-index: 2;
}
.caution_box .inbox {
    padding: 20px 30px 15px;
    background: #f6f7f8;
    border-radius: 0 20px 20px 20px;
}

/* ============================================================
PC
============================================================ */
@media print, screen and (min-width:768px){
    .txt_lh {
        line-height: 2.5em;
        letter-spacing: 0;
    }

    section.content_inner {
        margin: 80px auto 120px;
    }
    .bg_gray_rc._col2 {
        justify-content: space-between;
    }
    .bg_gray_rc .inbox._col2 {
        width: 49%;
        max-width: 558px;
    }

    /* step */
    .step_area_wrap {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
    }
    .step_area_wrap dl {
        display: flex;
        flex-direction: column;
        width: 49%;
        max-width: 558px;
    }

/********************************************************/
    #deadline .txt_box {
        width: 72%;
    }
    #deadline .bg_gray_rc .flex_wrap .txt {
        width: 52%;
    }
    #deadline .bg_gray_rc .flex_wrap .img {
        width: 46%;
    }
    #conro .bg_gray_rc .flex_wrap {
        justify-content: center;
        align-items: center;
    }
    #conro .bg_gray_rc .flex_wrap > * {
        width: 42%;
        margin: 0 20px;
    }
    #rollingstock .txt_box {
        width: 65%;
        max-width: 720px;
    }
    #rollingstock .img {
        width: 30%;
    }
}

/* ============================================================
SP
============================================================ */
@media screen and (max-width:767px){
    .txt_lh {
        line-height: 2.0em;
        letter-spacing: 0;
    }

    section.content_inner {
        margin: 40px auto 70px;
    }
    .flex_wrap > .img {
        margin-top: 20px;
    }
    .step_area_wrap dl dd {
        display: block;
    }
    .step_area_wrap dl dd .img {
        margin-left: 0;
        margin-top: 15px;
        text-align: center;
    }
}








/*--------------------------------------------------------------------------

 /jpn/consumer/products/cg/useful/clean/ 

--------------------------------------------------------------------------*/
.read_box .txt {
    font-size: 20px;
    font-weight: bold;
}

.method_area_wrap .inbox {
    margin-top: 40px;
}
.method_area_wrap .inbox .txt_num {
    position: relative;
    margin-bottom: 15px;
    padding-left: 44px;
    line-height: 2em;
}
.method_area_wrap .inbox .txt_num span{
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    width: 34px;
    height: 34px;
    background-color: #f58200;
    color: #fff;
    border-radius: 50px;
    font-weight: bold;
    text-align: center;
    line-height: 34px;
}

.ttl_left_line._point {
    display: flex;
    align-items: center;
    line-height: 0;
}
.ttl_left_line._point::before {
    display: none;
}
.ttl_left_line._point .icon {
    margin-right: 15px;
}

/* ============================================================
PC
============================================================ */
@media print, screen and (min-width:768px){
    .read_box {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
    }
    .read_box .txt {
        width: 810px;
        line-height: 3em;
    }
    .read_box .img {
        max-width: 314px;
    }
    .read_box .img img {
        width: 100%;
    }
    .method_area_wrap .flex_wrap {
        justify-content: space-between;
    }
    .method_area_wrap .flex_wrap .inbox {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        width: 49%;
        max-width: 558px;
    }
    .img_text {
        display: flex;
        justify-content: space-between;
    }
    .img_text > * {
        width: 50%;
        max-width: 558px;
    }
    .img_text > * img {
        width: 100%;
    }
    
}

/* ============================================================
SP
============================================================ */
@media screen and (max-width:767px){
    .read_box .txt {
        line-height: 1.7em;
    }
    .read_box .img {
        margin-top: 20px;
        text-align: center;
    }

}






/*--------------------------------------------------------------------------

 /jpn/consumer/products/cg/useful/stockpile/ 

--------------------------------------------------------------------------*/

.text_box {
    margin: 30px 0;
    padding: 20px;
    border: 2px solid #f58200;
    border-radius: 20px;
}
.text_box_tit {
    margin-bottom: 10px;
    color: #f58200;
    font-size: 20px;
    font-weight: bold;
}

.table_style {
    width: 100%;
    margin: 10px 0 5px;
    border: 1px solid gray;    
}
.table_style tr,
.table_style td {
    border: solid 1px gray;
    vertical-align: middle;
}
.table_style th, .table_style td {
    padding: 5px;
    text-align: center;
}
.table_style tr,
.table_style th,
.table_style td {
    border: solid 1px gray;
    vertical-align: middle;
}
th.bold-th {
    border-left: 2px solid;
    border-top: 2px solid;
    border-right: 2px solid;
}
td.bold-td {
    border-left: 2px solid;
    border-right: 2px solid;
}
td.bold-td-last {
    border-left: 2px solid;
    border-bottom: 2px solid;
    border-right: 2px solid;
}

/* ============================================================
PC
============================================================ */
@media print, screen and (min-width:768px){
}

/* ============================================================
SP
============================================================ */
@media screen and (max-width:767px){
    #prepare .flex_wrap .img {
        width: 70%;
        margin: 20px auto;
        text-align: center;
    }
}





/*--------------------------------------------------------------------------

/jpn/consumer/products/cg/useful/pslg/

--------------------------------------------------------------------------*/

.pslpg_mark_wrap {
    border: 2px solid #f58200;
    border-radius: 20px;
}
.caution_tit_box {
    padding: 15px;
    background-color: #f58200;
    color: #fff;
    border-radius: 16px 16px 0 0;
}
.caution_tit_box .caution_tit {
    font-weight: bold;
    line-height: 1.4;
}
.mark_wrap {
    display: flex;
}
.mark img {
    width: auto;
    height: 100%;
}
.pslpg_mark_inner {
    padding: 30px 30px 0;
}
.not_box {
    margin-top: 20px;
    padding: 20px;
    background-color: #f6f7f8;
    border-radius: 20px;
}
.not_box .img {
    width: 30%;
}
.logo_box .logo img {
    width: 100%;
}

/* ============================================================
PC
============================================================ */
@media print, screen and (min-width:768px){
    .read_box_p {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
    .read_box_p .txt {
        width: 810px;
    }
    .read_box_p .txt p {
        margin-bottom: 1em;
    }
    .read_box_p .img {
        max-width: 314px;
    }

    .caution_tit_box {
        display: flex;
        justify-content: center;
    }
    .caution_tit_box .caution_tit {
        font-size: 32px;
    }
    .caution_tit_box .caution_tit span {
        font-size: 40px;
    }
    .mark {
        height: 120px;
        margin: 0 10px;
        text-align: center;
    }
    .pslpg_mark_inner .text_wrap {
        width: 59%;
    }
    .pslpg_mark_inner .img_box {
        width: 38%;
    }
    .logo_box {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
    .logo_box .logo:last-child {
        width: 38%;
        max-width: 300px;
    }
}

/* ============================================================
SP
============================================================ */
@media screen and (max-width:767px){
    .caution_tit_box .caution_tit {
        font-size: 26px;
    }
    .caution_tit_box .caution_tit span {
        font-size: 30px;
    }
    .mark_wrap {
        margin-top: 15px;
    }
    .mark {
        height: 100px;
        margin: 0 10px;
    }

    .logo_box {
        margin-top: 15px;
    }
}






/*--------------------------------------------------------------------------

/jpn/consumer/products/cg/useful/safety/

--------------------------------------------------------------------------*/

.float_box {
    overflow: hidden;
}
.float_box .img_icon {
    float: left;
    margin-right: 50px;
}
.float_box .icon_tit {
    float: left;
}



.safety_area_wrap .img_icon {
    max-width: 150px;
}
.safety_area_wrap .img_icon img {
    width: 100%;
}
.safety_area_wrap .icon_tit span {
    display: block;
    font-weight: bold;
}
.safety_area_wrap .icon_tit .main {
    font-size: 180%;
    border-bottom: 1px solid #000;
    margin-bottom: 20px;
}
.tit_style_line {
    margin-top: 40px;
    margin-bottom: 20px;
    border-bottom: 1px solid #000;
}
.icon_tit + .tit_style_line,
.detail_wrap .tit_style_line:first-child {
    margin-top: 0;
}
.tit_style_line span {
    display: inline-block;
    margin-bottom: 3px;
    padding-left: 10px;
    border-left: 5px solid #eab505;
    font-size: 130%;
    font-weight: bold;
}
.detail_txt .dl_style_line {
    margin: 15px 0 0;
    border: 1px solid #222;
}
.detail_txt .dl_style_line dt,
.detail_txt .dl_style_line dd {
    padding: 10px;
}
.detail_txt .dl_style_line dt {
    border-bottom: 1px solid #222;
    font-weight: bold;
}
.dl_style_nml dt {
    margin-bottom: 5px;
    font-size: 18px;
    font-weight: bold;
}


/* ============================================================
PC
============================================================ */
@media print, screen and (min-width:768px){
    .float_box .icon_tit,
    .safety_area_wrap .detail_wrap {
        width: calc(100% - 200px);
    }
    .float_box .detail_wrap {
        float: left;
    }


    .safety_area_wrap .flex_wrap {
        justify-content: space-between;
    }
    .safety_area_wrap .img_icon._icon_col3 span {
        display: block;
        margin-bottom: 20px;
    }
    .safety_area_wrap .detail_wrap .detail_txt {
        width: calc(100% - 330px);
    }
    .safety_area_wrap .detail_wrap .img_box {
        width: 300px;
    }
}

/* ============================================================
SP
============================================================ */
@media screen and (max-width:767px){
    .float_box .icon_tit {
        width: calc(100% - 100px);
    }
    .float_box .detail_wrap {
        clear: both;
    }
    .flex_wrap.sp_col {
        display: flex;
        flex-direction: column;
    }
    .flex_wrap.sp_col_re {
        display: flex;
        flex-direction: column-reverse;
    }
    .safety_area_wrap .img_icon {
        width: 80px;
        margin: 0 20px 20px 0;
    }
    .safety_area_wrap .icon_tit .main {
        font-size: 23px;
    }
    .safety_area_wrap .img_icon._icon_col3 {
        display: flex;
        justify-content: space-between;
        width: 100%;
        max-width: 100%;
    }
    .safety_area_wrap .img_icon._icon_col3 span {
        display: block;
        width: 30%;
    }
    .safety_area_wrap .detail_wrap .img_box {
        margin-top: 30px;
    }
    .flex_wrap.sp_col_re .img_box {
        margin: 0 auto 20px;
    }
}



/*--------------------------------------------------------------------------

/jpn/consumer/products/cg/useful/stove_select/

--------------------------------------------------------------------------*/
.anchor_link_stove {
    margin: 40px 0;
}
.anchor_link_stove li {
    margin-bottom: 20px;
}
.anchor_link_stove li a {
    display: block;
    position: relative;
    padding: 15px 10px;
    color: #222;
    border: 2px solid #f08600;
    border-radius: 20px;
    text-align: center;
    font-weight: bold;
}
.anchor_link_stove li a::after {
    content: "";
    display: block;
    width: 8px;
    height: 8px;
    top: 0;
    bottom: 0;
    right: 15px;
    margin: auto 0;
    position: absolute;
    border-top: 2px solid #f08600;
    border-right: 2px solid #f08600;
    transform: rotate(135deg);
}
.anchor_link_stove li a:hover {
    background-color: #f08600;
    color: #fff;
    text-decoration: none;
}
.anchor_link_stove li a:hover::after {
    border-color: #fff;
}

.item_box_wrap li {
    margin-bottom: 30px;
}
.item_box_wrap dl dt {
    margin-bottom: 10px;
    font-weight: bold;
    font-size: 24px;
}
.item_box_wrap dl dd {
    position: relative;
    line-height: 1.5;
}
.item_box_wrap dl dd a img {
    width: 100%;
    transition: all .2s;
}
.item_box_wrap dl dd a:hover {
    overflow: hidden;
    transition: all .2s;
}
.item_box_wrap dl dd a:hover img {
    transform: scale(1.1);
    transition: all .2s;
}
.item_box_wrap dl dd + dd {
    margin-top: 10px;
}

/* ============================================================
PC
============================================================ */
@media print, screen and (min-width:768px){
    .anchor_link_stove {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    .anchor_link_stove li {
        width: 32%;
        min-width: 300px;
        max-width: 374px;
    }
    .anchor_link_stove::after {
        content: "";
        min-width: 376px;
        height: 0;
    }
    .item_box_wrap {
        display: flex;
        flex-wrap: wrap;
        justify-content: start;
        margin-left: -58px;
        width: calc(100% + 58px);
    }
    .item_box_wrap li {
        width: calc(25% - 58px);
        max-width: 250px;
        margin-left: 58px;
    }
}


/* ============================================================
liquid
============================================================ */
@media screen and (max-width: 1200px) {
    .ttl_page.support_tit .ttl_page_inner {
        max-width: 95%;
    }
}


/* ============================================================
SP
============================================================ */
@media screen and (max-width:767px){
    .anchor_link_stove li a {
        padding: 15px 30px 15px 9px;
    }
    .item_box_wrap dl dt + dd{
        text-align: center;
    }
}

/* PJ2104_012-1358 スポット運用｜カートリッジ｜2023年3月末公開予定｜カーボンフットプリントページ作成 */
.wrap_flex {
	display: flex;
    align-items: center;
}
.txt_main.ls0{
    letter-spacing: 0.02em;
}
@media print, screen and (min-width: 768px){
    section.content_inner.mb_narrow{
        margin-bottom: 20px;
    }
}
@media screen and (max-width:767px){
	.wrap_flex.v02 {
		flex-direction: column;
	}
}
