/* ベースCSS変更 */
@media (max-width: 599px){
    .main.main--home section.__block.__block--news .__body ul li > a span, 
	.main.main--home section.__block.__block--news .__body ul li > span span {
        font-size: 1em;
    }
}

.top-main{padding: 1rem;}

/* item */
.item-title{
    display: flex;
    align-items: center;
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 20px;
}
.item-title:before,
.item-title:after {
    content: "";
    flex-basis: 100%;
    height: 1px;
    display: block;
    background: #eee;
}
.item-title .wrap {
    padding: 0 1em;
    display: inline-block;
    flex-shrink: 0;
}

.item-point,
.item-pick{margin: 2.0rem 0;}

.item-point-list{margin: 0; padding: 20px; list-style: none; background-color: #fcf1d5; color: #1c347a;}
.item-point-list li{position: relative; padding: 0 0 0 20px; margin-bottom: 12px;}
.item-point-list li:last-child{margin-bottom: 0;}
.item-point-list li:before{content: '●'; position: absolute; left: 0; top: 0;}

.item-pick{padding: 20px; background-color: #E4F0F7;}
.item-pick .item-title:before,
.item-pick .item-title:after{
	background-color: #fff;
}

.item-pick-list{display: flex; flex-wrap: wrap; margin: 0; padding: 0; list-style: none;}
.item-pick-list li{flex-basis: 49%; max-width: 49%; position: relative; margin: 0.50%; padding: 10px 10px 10px 35px; background-color: #fff;}
.item-pick-list li:before{content: 'ー'; position: absolute; left: 10px; top: 10px; color: #FFB300;}
@media (max-width: 599px) {
	.item-pick-list{display: block;}
	.item-pick-list li{max-width: 100%; margin: 2px 0;}
}

.grids {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 0 15px 0;
    margin-bottom: 15px;
    border-bottom: 1px solid #ddd;
}

.grids figure {
    flex-basis: 30%;
    display: flex;
    align-items: center;
    justify-content: center;
	height: 210px;
	margin: 0;
    border: 1px solid #C2C2C2;
	overflow: hidden;
}

.grids figure.noborder{border: none;}

.grids figure img{
	max-width: 100%;
	height: auto;
}

.grids .padder {
    flex-basis: 70%;
	padding: 0 0 0 30px;
}

@media screen and (max-width: 1279px) {
	.grids figure {
        flex-basis: 40%;
	}
	.grids .padder {
        flex-basis: 60%;
	}
}

@media (max-width: 599px) {
	.grids {
		flex-direction: column;
	}
	.grids figure {
		flex-basis: initial;
		margin: 0 auto;
		width: 275px;
	}
	.grids .padder {
		padding: 5px 20px;
	}
}

/* table */
.table-comp{margin: 2.0rem 0;}
.table-comp th,
.table-comp td{padding: 20px; border: 1px solid #ddd; vertical-align: top;}
.table-comp th{width: 30%; background-color: #f2f2f2; font-weight: 700;}
.table-comp td{width: 70%;}
.table-comp p{margin: 0 0 1rem;}
.table-comp p:last-child{margin-bottom: 0;}
.table-comp ul{margin: 0; padding: 0 0 0 20px;}
@media (max-width: 599px) {
	.table-comp{border: 1px solid #ddd;}
	.table-comp th,
	.table-comp td{display: block; width: 100%; border: none;}
	.table-comp th{border-bottom: 1px solid #ddd; border-top: 1px solid #ddd; padding: 10px;}
	.table-comp tr:first-child > th{border-top: none;}
}

/* font */
.f-12px{font-size: 12px;}
.f-14px{font-size: 14px;}
.f-16px{font-size: 16px;}
.f-18px{font-size: 18px;}
.f-20px{font-size: 20px;}
.f-22px{font-size: 22px;}
.f-24px{font-size: 24px;}

.f-c-red{color: #f00;}
.f-c-black{color: #000;}


/* Catalog */
.top-catalog-dl{
    padding: 1rem;
}
.top-catalog-dl a{
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid #ddd;
	border-radius: 4px;
	padding: 8px;
	color: #000;
}
.top-catalog-dl .img{
    margin: 10px;
    flex-basis: calc(45% - 20px);
    max-width: calc(45% - 20px);
    font-size: 0;
}
.top-catalog-dl img{
    display: inline-block;
    border: 2px solid #eee;
    /*width: 48%;
    margin: 1%;*/
}
.top-catalog-dl .text{
    margin: 10px;
    flex-basis: calc(55% - 20px);
    max-width: calc(55% - 20px);
	text-align: center;
}
@media (max-width: 599px) {
    .top-catalog-dl a{
        flex-direction: column;
    }
    .top-catalog-dl .img{
        flex-basis: calc(100% - 20px);
        max-width: calc(100% - 20px);
    }
    .top-catalog-dl .text{
        flex-basis: calc(100% - 20px);
        max-width: calc(100% - 20px);
    }
}

.left-catalog-dl{
    padding: 1rem;
	text-align: center;
}
.left-catalog-dl a{
	display: block;
}
.left-catalog-dl .img{
    margin: 0 0 10px;
}
.left-catalog-dl img{
    display: block;
    border: 2px solid #eee;
}
.left-catalog-dl .text{
	font-size: 14px;
}

.catalog-item{
    display: flex;
}
.catalog-item .item{
    margin: 10px;
    flex-basis: calc(50% - 20px);
    max-width: calc(50% - 20px);
}
.catalog-item .item img{
    display: block;
    border: 3px solid #eee;
}
.catalog-button{
    text-align: center;
}
.catalog-button a{
    display: inline-block;
    margin: auto;
    padding: 16px 32px;
    background-color: #f30000;
	border-radius: 4px;
    color: #fff;
}