﻿/**** general ****/
.mt10{margin-top:10px;}
.mt40{margin-top:40px;}
.mb10{margin-bottom:10px;}
.mb40{margin-bottom:40px;}

@media screen and (max-width:768px) {
.mt40{margin-top:30px;}
.mb40{margin-bottom:30px;}
}


.youtubeBlock {
    margin-bottom:40px;
}
.youtubeBlock div{
    width:100%;
    aspect-ratio:16 / 9;
}
.youtubeBlock iframe {
    width:100%;
    height:100%;
}

.imageBlock{
    margin-bottom:40px;
}
.imageBlock img{
    width:100%;
    height:auto;
}

#upper-contents-area .wrap{
    font-size:16px;
	font-feature-settings:"palt";
	letter-spacing:0.05em;
    max-width:1200px;
    width:100% !important;
    margin:40px auto;
    padding:0;
    color:#1a1a1a;
}

#lower-contents-area .wrap{
    font-size:16px;
	letter-spacing:0.01em;
    max-width:1200px;
    width:100% !important;
    margin:40px auto;
    padding:0;
    color:#1a1a1a;
}

#upper-contents-area .wrap p{
    line-height:1.6;
}
    
#upper-contents-area .wrap .contenttitle{
    font-size:16px;
    font-weight:bolder;
    text-wrap:wrap;
}
    
#lower-contents-area .wrap .contenttitle{
    font-size:16px;
    font-weight:bolder;
    text-wrap:wrap;
	margin-bottom:10px;
}

#upper-contents-area a{
    text-decoration:none;
}

#upper-contents-area a:visited{
    color:#1a1a1a;
}

#lower-contents-area a{
    text-decoration:none;
}

#lower-contents-area a:visited{
    color:#1a1a1a;
}

@media screen and (max-width:768px) {
    .youtubeBlock {
        margin-bottom:30px;
    }
    
    .imageBlock{
        margin-bottom:30px;
    }

    #upper-contents-area .wrap{
        font-size:16px;
        max-width:calc(100vw - 20px) !important;
        min-width:340px;
        margin:30px auto;
    }
	
	#lower-contents-area .wrap{
        font-size:16px;
        max-width:calc(100vw - 20px) !important;
        min-width:340px;
        margin:30px auto;
		}
}
/**** general ****/

/**textarea**/
#upper-contents-area .textarea{
    margin-bottom:40px;
}

#upper-contents-area .textarea p{
    font-size:16px;
    margin-bottom:40px;
}

#upper-contents-area .textarea p a{
    font-size:16px;
    color:#003da6;
    text-decoration:underline;
}


#upper-contents-area .textarea .bgtext{
    padding:18px 15px;
    background-color:#EBEBEB;
    font-size:15px;
}

@media screen and (max-width:768px) {
    
    #upper-contents-area .textarea{
        margin-bottom:30px;
    }

    #upper-contents-area .textarea p{
        margin-bottom:30px;
}

    #upper-contents-area .textarea .bgtext{
        padding:20px 15px;
    }
}

#lower-contents-area .textarea{
    margin-bottom:40px;
}

#lower-contents-area .textarea p{
    font-size:16px;
    margin-bottom:40px;
}

#lower-contents-area .textarea p a{
    font-size:16px;
    color:#003da6;
    text-decoration:underline;
}


#lower-contents-area .textarea .bgtext{
    padding:18px 15px;
    background-color:#EBEBEB;
    font-size:15px;
}

@media screen and (max-width:768px) {
    
    #lower-contents-area .textarea{
        margin-bottom:30px;
    }

    #lower-contents-area .textarea p{
        margin-bottom:30px;
}

    #lower-contents-area .textarea .bgtext{
        padding:20px 15px;
    }
}

/**textarea**/

/**column4-2**/
#upper-contents-area .column4-2{
    margin-bottom:40px;
}

#upper-contents-area .column4-2 ul{
    margin:0;
    list-style:none;
    padding:0;
    display:flex;
    flex-wrap:wrap;
}

#upper-contents-area .column4-2 ul li{
    display:flex;
    width:calc(25% - 15px);
    margin-right:20px;
    margin-top:10px;
}

#upper-contents-area .column4-2 ul li:nth-child(4n){
    margin-right:0;
}

#upper-contents-area .column4-2 ul a{
    display:flex;
    align-items:center;
    padding:12px 28px 12px 15px;
    width:100%;
    border:solid 1px #DCDCDC;
    border-radius:4px;
    font-size:14px;
}

#upper-contents-area .column4-2 ul a span{
    margin-right:28px;
}

#upper-contents-area .column4-2 a{
    position:relative;
}
#upper-contents-area .column4-2 li a::after{
    display:inline-block;
    position:absolute;
    top:50%;
    right:15px;
    color:#003da6;
    font-size:20px;
    font-weight:300;
    font-family:'FontAwesome';
    vertical-align:middle;
    content:"\f107";
    transform:translateY(-50%);
} 

@media screen and (max-width:768px) {
    #upper-contents-area .column4-2{
        margin-bottom:30px;
    }
    
    #upper-contents-area .column4-2 ul{
        margin:0;
        justify-content:space-between;
    }

    #upper-contents-area .column4-2 ul li{
        width:calc(50% - 5px);
        margin-right:0;
    }

    #upper-contents-area .column4-2 ul a{
        padding:14px 25px 14px 12px;
        width:100%;
        border-radius:5px;
    }
    #upper-contents-area .column4-2 ul a span{
        margin-right:25px;
    }
    .column4-2 li a::after,
    .column1-1 li a::after {
        right:12px;
        font-size:20px;
    }
}
/**column4-2**/

/**column1-1**/
#upper-contents-area .column1-1{
    margin-bottom:40px;
}

#upper-contents-area .column1-1 ul{
    margin:0;
    padding:0;
    list-style:none;
}

#upper-contents-area .column1-1 ul li{
    width:30%;
    margin-top:10px;
}

#upper-contents-area .column1-1 ul a{
    display:block;
    padding:12px 28px 12px 15px;
    width:100%;
    border:solid 1px #DCDCDC;
    border-radius:4px;
    font-size:14px;
}

#upper-contents-area .column1-1 ul a span {
    margin-right:28px;
}
#upper-contents-area .column1-1 a {
    position:relative;
}
#upper-contents-area .column1-1 li a::after {
    display:inline-block;
    position:absolute;
    top:50%;
    right:15px;
    color:#003da6;
    font-size:20px;
    font-weight:300;
    font-family:'FontAwesome';
    vertical-align:middle;
    content:"\f107";
    transform:translateY(-50%);
} 

@media screen and (max-width:768px) {
    #upper-contents-area .column1-1{
        margin-bottom:30px;
    }
	
	#upper-contents-area .column1-1 ul li{
		width:100%;
	}

    #upper-contents-area .column1-1 ul a{
        padding:14px 25px 14px 12px;
        border-radius:5px;
    }
    #upper-contents-area .column1-1 ul a span {
        margin-right:25px;
    }
}
/**column1-1**/

/**btntext**/
#upper-contents-area .btntext{
    margin-bottom:40px;
	width:100%;
}

#upper-contents-area .btntext p{
    font-size:14px;
    margin-bottom:10px;
}

#upper-contents-area .btntext p a{
    color:#003da6;
    text-decoration:underline;
    font-size:14px;
}

#upper-contents-area .imagebtn{
    margin-bottom:10px;
}
#upper-contents-area .imagebtn img{
    width:100%;
    height:auto;
}

@media screen and (max-width:768px) {
    #upper-contents-area .btntext{
        margin-bottom:30px;
    }
}
/**btntext**/

/**morebtn**/
#upper-contents-area .morebtn{
    margin-bottom:40px;
    padding:0;
    width:30%;
}

#upper-contents-area .morebtn div{
    width:100%;
}

#upper-contents-area .morebtn div a{
    display:block;
    padding:12px 15px;
    width:100%;
    color:#003da6;
    border:solid 1px #003da6;
    border-radius:4px;
    text-align:center;
	font-size:14px;
}

@media screen and (max-width:768px) {
    #upper-contents-area .morebtn{
        margin-bottom:30px;
		width:100%;
    }

    #upper-contents-area .morebtn div a{
        padding:14px 12px;
        border-radius:5px;
    }
}
/**morebtn**/

/**famousarea**/
#upper-contents-area .famousarea{
    margin-bottom:40px;
}

#upper-contents-area .famousarea .famousseries{
    margin:0;
    list-style:none;
    padding:0;
    display:flex;
    flex-wrap:wrap;
}

#upper-contents-area .famousarea .famousseries li{
    margin-right:10px;
    margin-top:10px;
}

#upper-contents-area .famousarea .famousseries a{
    display:inline-block;
    padding:7px 15px;
    border:solid 1px #DCDCDC;
    border-radius:4px;
	color:#1a1a1a;
    font-size:14px;
}

@media screen and (max-width:768px) {
    #upper-contents-area .famousarea{
        margin-bottom:30px;
    }

    #upper-contents-area .famousarea .famousseries a{
        padding:9px 20px;
        width:100%;
        border-radius:5px;
    }
}
/**famousarea**/

/**productarea**/
#upper-contents-area .productarea{
    margin-bottom:40px;
	width:100%;
}

#upper-contents-area .productarea h2{
    border-bottom:solid 1px #1a1a1a;
    margin-bottom:40px;
	padding-bottom:10px;
    font-size:20px;
}

#upper-contents-area .productarea .productBlock ul{
    margin:0;
    list-style:none;
    padding:0;
    display:flex;
    flex-wrap:wrap;
}

#upper-contents-area .productarea .productBlock ul li{
    width:calc(25% - 15px);
    margin-right:20px;
    margin-top:10px;
}

#upper-contents-area .productarea .productBlock ul li:nth-child(4n){
    margin-right:0;
}

#upper-contents-area .productarea .productBlock div{
	width:100%;
	margin-bottom:10px;
}

#upper-contents-area .productarea .productBlock .image{
	margin-bottom:15px;
	}
	
#upper-contents-area .productarea .productBlock .image img{
	width:100%;
	height:auto;
	}
	
#upper-contents-area .productarea .productBlock .brand{
	text-overflow:ellipsis;
	white-space: nowrap;
	}
	
#upper-contents-area .productarea .productBlock .product-name{
	font-size:16px;
	display:-webkit-box;
	-webkit-box-orient:vertical;
	-webkit-line-clamp:2; line-clamp:2;
	}
	
#upper-contents-area .productBlock .price{font-size:16px; font-weight:bolder;}

@media screen and (max-width:768px) {
    #upper-contents-area .productarea{
        margin-bottom:30px;
    }
	
	#upper-contents-area .productarea h2{
		margin-bottom:30px;
		font-size:18px;
}
	
    #upper-contents-area .productarea .productBlock ul{
        margin:0;
        justify-content:space-between;
    }

    #upper-contents-area .productarea .productBlock ul li{
        width:calc(50% - 5px);
        margin-right:0;
    }
}
/**productarea**/

/**tablearea**/
#upper-contents-area .tablearea{
	text-align:left;
    margin-bottom:40px;
	width:100%;
	box-sizing:border-box;
	padding:10px;
	border-collapse:collapse;
}
#upper-contents-area .tablearea thead, tbody{
	border:solid 1px #d9d9d9;
	}

#upper-contents-area .tablearea th{
	padding:10px;
	background-color:#F5F5F5;
}

#upper-contents-area .tablearea td{
	padding:10px;
}
	
#upper-contents-area .tablearea span{font-weight:bolder; color:#EB1D33;}

@media screen and (max-width:768px) {
    #upper-contents-area .tablearea{
        margin-bottom:30px;
	}
}

#lower-contents-area .tablearea{
	text-align:left;
    margin-bottom:40px;
	width:100%;
	box-sizing:border-box;
	padding:10px;
	border-collapse:collapse;
}
#lower-contents-area .tablearea thead, tbody{
	border:solid 1px #d9d9d9;
	}

#lower-contents-area .tablearea th{
	padding:10px;
	background-color:#F5F5F5;
}

#lower-contents-area .tablearea td{
	padding:10px;
}
	
#lower-contents-area .tablearea span{font-weight:bolder; color:#EB1D33;}

@media screen and (max-width:768px) {
    #lower-contents-area .tablearea{
        margin-bottom:30px;
	}
}
/**tablearea**/

/**nearshop**/
#lower-contents-area .nearshop ul{
    margin:0;
    list-style:none;
    padding:0;
    display:flex;
	justify-content:space-around;
}
#lower-contents-area .nearshop ul li{
    display:flex;
    align-items:center;
    border-radius:50px;
    box-shadow:0 0 8px #ccc;
	width:36%;
}
#lower-contents-area .nearshop ul li a{
	padding:12px 16px;
    width:100%;
	color:#fff;
	text-align:center;
	font-size:20px;
	font-weight:bolder;
}

@media screen and (max-width:768px) {
    #lower-contents-area .nearshop ul{
    display:block;
	}
	#lower-contents-area .nearshop ul li{
	width:80%;
	margin:0 auto;
	margin-bottom:10px;
	}
	#lower-contents-area .nearshop ul li a{
	padding:12px 16px;
    width:100%;
	color:#fff;
	text-align:center;
	font-size:16px;
	font-weight:bolder;
	}
}
/**nearshop**/

/**slickarea**/
.slickarea{
    margin-bottom:40px;
} 
.pickup {
    padding-inline-start:0;
} 
.slick-slide {
    height:auto !important;   
}
.sliderImage {
    max-width:256px;
    margin-right:18px;
}
.slick-next,
.slick-prev,
.slick-prev:before, 
.slick-next:before {
    display:none;
}

@media screen and (max-width:768px) {
    .slickarea{
        margin-bottom:30px;
    }
    .sliderImage {
        max-width:150px;
        margin-right:10px;
   }
   .slick-next {
        right:0px !important;
    }
}
/**slickarea**/

/**breadcrumb**/
.global-contents .magazine-detail .c-breadcrumb{
display:none !important;
}
/**breadcrumb**/

/**product-list**/
#feature-group-items h2{
text-wrap:wrap;
font-style:normal;
color:#1a1a1a;
background-color:#fff;
font-size:20px;
}

@media screen and (max-width:768px) {
#feature-group-items h2{font-size:18px;}
}
/**product-list**/

/**upper-contents-area**/
#upper-contents-area{overflow-x:hidden !important;}
.magazine-detail__main-content{overflow-x: hidden !important;}
main .global-contents {overflow:hidden !important;}
/**upper-contents-area**/

/**lower-contents-area**/
#lower-contents-area{overflow-x:hidden !important;}
/**lower-contents-area**/

/**header-banner**/
.magazine-detail__main-content #header-banner{margin-bottom:40px; margin-top:40px;}
@media screen and (max-width:768px) {.magazine-detail__main-content #header-banner{margin-bottom:30px; margin-top:30px;}}
/**header-banner**/

/**page-title**/
.magazine-detail__main-content #page-title{text-wrap:wrap; margin:0; font-size:24px;}
@media screen and (max-width:768px) {.magazine-detail__main-content #page-title{font-size:20px}}

#upper-contents-area .page-title{text-wrap:wrap; margin:0; font-size:24px; font-weight:bolder;}
@media screen and (max-width:768px) {#upper-contents-area .page-title{font-size:20px; margin: 0 10px;}}
/**page-title**/

/** comparison_table **/
.comparison {
    padding: 45px 0 10px;
}

.comparison_table_wrap {
    width: 100%;
    height: 1100px;
    overflow: auto;
    position: relative;
}

.comparison .ttl {
    color: #000;
    font-weight: 400;
    font-size: 24px;
    text-align: center;
    margin-top: 46px;
}

.comparison .text {
    color: #000;
    font-weight: 500;
    font-size: 14px;
    line-height: 1.7;
    padding: 0 20px;
    margin: 18px 0 40px;
}

.comparison_table {
    width: max-content;
    min-width: 100%;
    table-layout: fixed;
    border-collapse: separate;
    border-spacing: 0;
    color: #333;
    font-size: 11px;
    line-height: 1.4;
}

/* 列幅 */
.comparison_table col.col-category {
    width: 80px;
}

.comparison_table col.col-row-title {
    width: 220px;
}

.comparison_table col.col-product {
    width: 220px;
}

.comparison_table th {
    box-sizing: border-box;
    border-right: 1px solid #dbdbdb;
    border-bottom: 1px solid #dbdbdb;
    border-top: 1px solid #dbdbdb;
    padding: 21px 9px 14px;
    vertical-align: top;
}

.comparison_table td {
    box-sizing: border-box;
    border-right: 1px solid #dbdbdb;
    border-bottom: 1px solid #dbdbdb;
    padding: 11px 10px 10px;
    vertical-align: top;
    font-weight: 400;
    line-height: 1.45;
    color: #000;
}

.comparison_table .category {
    width: 80px;
    min-width: 80px;
    position: sticky;
    left: 0;
    z-index: 10;
    font-size: 20px;
    background: #dbdbdb;
    font-weight: 500;
    color: #000;
    border-right: 1px solid #b2b2b2;
    border-bottom: 1px solid #b2b2b2;
    vertical-align: middle;
}

.comparison_table .row-title {
    width: 220px;
    min-width: 220px;
    position: sticky;
    left: 80px;
    z-index: 10;
    font-size: 17px;
    background: #dbdbdb;
    font-weight: 500;
    color: #000;
    border-bottom: 1px solid #b2b2b2;
    padding: 7px 0 8px 8px;
    text-align: left;
    vertical-align: middle;
    word-break: break-word;
    overflow-wrap: break-word;
}

.comparison_table .row_title {
    width: 300px;
    min-width: 300px;
    border-bottom: 1px solid #b2b2b2;
    position: sticky;
    left: 0;
    z-index: 10;
    text-align: left;
    vertical-align: middle;
    font-size: 20px;
    font-weight: 500;
    color: #000;
    word-break: break-word;
    overflow-wrap: break-word;
    background: #dbdbdb;
}

.comparison_table .comparison_head {
    width: 300px;
    min-width: 300px;
    position: sticky;
    left: 0;
    top: 0;
}

.comparison_table thead th {
    position: sticky;
    top: 0;
    z-index: 11;
    background: #fff;
    text-align: center;
    vertical-align: top;
    border-bottom: 1px solid #333;
}

.comparison_table thead .comparison_head {
    z-index: 12;
    background: #f5f5f5;
    border-left: 1px solid #dbdbdb;
    border-top: 1px solid #dbdbdb;
}

.comparison_table .product {
    width: 220px;
    min-width: 220px;
}

.comparison_table .product a {
    text-decoration: none;
}

.lower-contents-area .product_image {
    position: relative;
    width: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
}

.comparison .product_image {
    width: 100%;
    overflow: hidden;
}

.comparison_table .product .product_image img {
    display: block;
    width: 80%;
    object-fit: contain;
    margin: 0 auto;
}

.product_color {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 5px;
    min-height: 15px;
    margin: 16px 0 15px;
}

.product_color span {
    display: block;
    flex: 0 0 17px;
    width: 17px;
    height: 17px;
    padding: 0;
    margin: 0;
    border-radius: 50%;
    background: var(--color);
    border: 1px solid rgba(0, 0, 0, 0.08);
    box-sizing: border-box;
}

.comparison_table .product_name {
    margin: 0;
    font-size: 16px;
    color: #000;
    line-height: 1.4;
    font-weight: 700;
    min-height: 45px;
    display: flex;
    justify-content: center;
    align-items: center;
    word-break: break-word;
    overflow-wrap: break-word;
}

.product_jp {
    margin: 0;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.3;
    color: #333;
    min-height: 33px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.comparison_table .product_category {
    display: inline-block;
    padding: 2px 8px;
    margin-top: 6px;
    color: #fff;
    background: #000;
    font-size: 12px;
}

.comparison_table .row_title small {
    font-size: 14px;
    font-weight: 400;
    margin-left: 8px;
}

.comparison_table tbody td {
    background: #fff;
    font-size: 14px;
    word-break: break-word;
    overflow-wrap: break-word;
}

.comparison_table tbody tr:nth-child(1) td,
.comparison_table tbody tr:nth-child(3) td,
.comparison_table tbody tr:nth-child(5) td,
.comparison_table tbody tr:nth-child(10) td,
.comparison_table tbody tr:nth-child(12) td,
.comparison_table tbody tr:nth-child(14) td {
    background: #f5f5f5;
}

.comparison_table tbody .row_title {
    background: #dbdbdb;
    padding: 0 20px;
}

.comparison_table tbody strong {
    font-weight: 600;
}

.comparison_table .header_spacer {
    height: 18px;
}

.comparison_table .header_spacer th {
    height: 18px;
    padding: 0 !important;
    background: #fff !important;
    border-top: 1px solid #ddd !important;
    border-bottom: 1px solid #ddd !important;
}

.comparison_table .function_group {
    width: 80px;
    position: sticky;
    left: 0;
    z-index: 11;
    padding: 0 !important;
    background: #ddd !important;
    text-align: left;
    vertical-align: top;
    border-bottom: 1px solid #b2b2b2;
}

.comparison_table .function_group_title {
    position: absolute;
    left: 20px;
    top: 50%;
    transform: translateY(-50%);
    color: #000;
    font-size: 20px;
    font-weight: 500;
    line-height: 1;
    z-index: 2;
}

.comparison_table .function_labels {
    position: absolute;
    left: 79px;
    right: 0;
    top: 0;
    bottom: 0;
    display: flex;
    flex-direction: column;
}

.comparison_table .function_labels span {
    display: flex;
    align-items: center;
    flex: 1;
    box-sizing: border-box;
    padding: 0 0 0 8px;
    border-bottom: 1px solid #b2b2b2;
    border-left: 1px solid #b2b2b2;
    color: #000;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.2;
    text-align: left;
}

.comparison_table .function_labels span:last-child {
    border-bottom: 0;
}

.comparison_table .function_row td {
    padding: 4px 6px;
    background: #fff;
    text-align: left;
    vertical-align: middle;
    font-size: 16px;
}

.comparison_table .function_other {
    height: 50px;
}

.comparison_table .function_other td {
    padding-top: 6px;
    vertical-align: top;
}

.comparison_table .product_description td {
    font-size: 14px;
    line-height: 1.5;
}

.product_link td {
    padding: 20px 30px 68px;
}

.detail_btn {
    display: block;
    text-align: center;
    width: 160px;
    padding: 15px 15px 17px 5px;
    box-sizing: border-box;
    background: rgba(0, 0, 0, 0.7);
    color: #fff;
    text-decoration: none;
    font-size: 16px;
    font-weight: 500;
    line-height: 1;
    position: relative;
    margin: 0 auto;
}

.detail_btn::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 12px;
    width: 8px;
    height: 8px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    transform: translateY(-50%) rotate(45deg);
}

.detail_btn span {
    font-size: 16px;
    line-height: 1;
}

.comparison_table tbody .product_link .row_title {
    background: #fff;
    border: none;
}

.comparison_table tbody .product_link td {
    background: #fff;
    border: none;
}

/* ===== SP ===== */
@media screen and (max-width: 767px) {
    .comparison {
        padding: 30px 0 10px;
    }

    .comparison .ttl {
        font-size: 20px;
        margin-top: 20px;
    }

    .comparison .text {
        padding: 0 10px;
        margin: 5px 0 30px;
        font-size: 13px;
    }

    .comparison_table_wrap {
        width: 100%;
        height: auto;
        overflow: visible;
        position: relative;
    }

    .comparison_table_scroll {
        width: 100%;
        overflow-x: auto;
        overflow-y: visible;
        position: relative;
        -webkit-overflow-scrolling: touch;
    }

    .comparison_table {
        width: max-content;
        min-width: 100%;
        table-layout: auto !important;
    }

    /* SP列  */
     .comparison_table col.col-category {
        width: 8vw !important;
    }

    .comparison_table col.col-row-title {
        width: 10vw !important;
    }

    .comparison_table col.col-product {
        width: 40vw !important;
    }

    .comparison_table th,
    .comparison_table td {
        box-sizing: border-box;
    }

    .comparison_table thead th {
        position: relative;
        top: auto;
        z-index: 11;
        background: #fff;
    }

    .comparison_table thead .comparison_head {
        position: sticky;
        left: 0;
        top: auto;
        z-index: 13;
        background: #f5f5f5;
    }

    .comparison_table .comparison_head,
    .comparison_table .row_title {
        width: 18vw !important;
        min-width: 18vw !important;
        font-size: 12px;
        line-height: 1.35;
    }

    .comparison_table .category {
        width: 8vw !important;
        min-width: 8vw !important;
        left: 0;
        font-size: 11px;
        padding: 10px 2px;
        text-align: center;
        line-height: 1.3;
    }

    .comparison_table .row-title {
        width: 10vw !important;
        min-width: 10vw !important;
        left: 8vw !important;
        font-size: 11px;
        padding: 6px 2px;
        line-height: 1.3;
    }

    .comparison_table tbody .row_title {
        width: 18vw !important;
        min-width: 18vw !important;
        padding: 0 4px !important;
        font-size: 11px;
        line-height: 1.35;
    }

    .comparison_table .row_title small {
        font-size: 10px;
        font-weight: 400;
        margin-left: 0;
    }

    .comparison_table .product {
        width: 40vw !important;
        min-width: 40vw !important;
        padding: 8px 6px 10px;
    }

    .comparison_table tbody td {
        font-size: 12px;
        padding: 10px 5px;
        line-height: 1.5;
    }

    .comparison_table .product_image {
        width: 80%;
        margin: 0 auto;
    }

    .product_color {
        margin: 5px 0;
        gap: 4px;
        flex-wrap: wrap;
    }

    .product_color span {
        flex: 0 0 12px;
        width: 12px;
        height: 12px;
    }

    .comparison_table .product_name {
        font-size: 14px;
        line-height: 1.25;
        min-height: 43px;
    }

    .product_jp {
        margin: 0;
        font-size: 10px;
        min-height: 25px;
    }

    .comparison_table .product_category {
        padding: 2px 8px;
        margin-top: 3px;
        font-size: 10px;
    }

    .comparison_table .product_description td {
        font-size: 12px;
        line-height: 1.5;
    }

    .product_link td {
        padding: 15px 10px 30px;
    }

    .detail_btn {
        width: 150px;
        padding: 13px 15px 13px 5px;
        font-size: 14px;
        margin: 0 auto;
    }

    .detail_btn::after {
        right: 10px;
        width: 6px;
        height: 6px;
    }

    /* function系の保険 */
    .comparison_table .function_group {
        width: 18vw !important;
        min-width: 18vw !important;
        left: 0;
    }

    .comparison_table .function_group_title {
        left: 8px;
        font-size: 12px;
    }

    .comparison_table .function_labels {
        left: 8vw;
    }

    .comparison_table .function_labels span {
        padding: 0 0 0 4px;
        font-size: 11px;
        line-height: 1.3;
        word-break: break-word;
        overflow-wrap: break-word;
    }

    /* 使うなら固定ヘッダー側も合わせる */
    .comparison_table_sticky {
        position: fixed;
        top: 0;
        left: 0;
        z-index: 9999;
        display: none;
        width: 100%;
        overflow: hidden;
        background: #fff;
        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    }

    .comparison_table_sticky_inner {
        position: relative;
        width: max-content;
    }

    .comparison_table_sticky table {
        width: max-content;
        min-width: 100%;
        table-layout: auto;
        border-collapse: separate;
        border-spacing: 0;
    }

    .comparison_table_sticky th {
        box-sizing: border-box;
        border-right: 1px solid #dbdbdb;
        border-bottom: 1px solid #333;
        border-top: 1px solid #dbdbdb;
        padding: 21px 10px 14px;
        vertical-align: top;
        background: #fff;
    }

    .comparison_table_sticky .comparison_head {
        width: 18vw;
        min-width: 18vw;
        position: sticky;
        left: 0;
        z-index: 50;
        background: #f5f5f5;
        border-left: 1px solid #dbdbdb;
    }

    .comparison_table_sticky .product {
        width: 40vw;
        min-width: 40vw;
    }

    .comparison_table_sticky .product_image {
        width: 80%;
        margin: 0 auto;
        overflow: hidden;
    }

    .comparison_table_sticky .product_color {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 5px;
        min-height: 15px;
        margin: 5px 0;
        flex-wrap: wrap;
    }

    .comparison_table_sticky .product_color span {
        display: block;
        flex: 0 0 12px;
        width: 12px;
        height: 12px;
        padding: 0;
        margin: 0;
        border-radius: 50%;
        background: var(--color);
        border: 1px solid rgba(0, 0, 0, 0.08);
        box-sizing: border-box;
    }

    .comparison_table_sticky .product_name {
        margin: 0;
        font-size: 14px;
        color: #000;
        line-height: 1.2;
        font-weight: 700;
        min-height: 43px;
        display: flex;
        justify-content: center;
        align-items: center;
        word-break: break-word;
        overflow-wrap: break-word;
    }

    .comparison_table_sticky .product_jp {
        margin: 0;
        font-size: 10px;
        font-weight: 600;
        line-height: 1.3;
        color: #333;
        min-height: 25px;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .comparison_table_sticky .product_category {
        display: inline-block;
        padding: 3px 5px;
        margin-top: 3px;
        color: #fff;
        background: #000;
        font-size: 10px;
    }
}
/** comparison_table **/

    .detail_btn {
        width: 150px;
        padding: 13px 15px 13px 5px;
        font-size: 14px;
        margin: 0 auto;
    }
    .detail_btn::after {
        right: 10px;
        width: 6px;
        height: 6px;
    }

.global-container {
    display: unset!important;
}

.sumtext {
	font-weight:bold; 
	padding-top:20px; 
	line-height: 1.8;
}

.sumtext p {
	font-size: 14px;
    margin-bottom: 10px;
}

.banner_content {
    padding: 18px 0 0;
}

.banner_content .banner_grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 3%;
    margin-top: 40px;
}
.banner_content .banner_grid .banner_item {
    display: block;
}
@media screen and (max-width: 767px) {
    .banner_content {
        padding: 18px 10px 0;
    }
    .banner_content .banner_grid {
        grid-template-columns: repeat(1, minmax(0, 1fr));
        gap: 25px;
        margin-top: 30px;
    }
    .magazine-detail__main-content {
        padding-inline: 0!important;
    }
}