@charset "utf-8";

#keyVisual{
	background: url("../img/keyvisual_pc.jpg") no-repeat right center / cover;
}

@media screen and (max-width: 1600px){
	#keyVisual{
		background-position: 50% center;
	}
}
@media screen and (max-width: 1024px){
	#keyVisual{
		background-position: 82% center;
	}
}
@media screen and (max-width: 768px){
	#keyVisual{
		background: url("../img/keyvisual_sp.jpg") no-repeat right center / cover;
	}
}


/* ------------------------------------------------------------------------ */

/* 共通

/* ------------------------------------------------------------------------ */
.imgBox{
    display: flex;
    justify-content: space-between;
}

.ulStyle01 {
	margin	: 30px 0px;
    font-size: 1.6rem;
}

	.ulStyle01 li {
		list-style	: disc;
		margin		: 0 15px 3px;
		padding		: 0;
		text-align	: left;
	}

.indent{
    padding: 0 0 0 1em;
    text-indent: -1em;
}

.contents,
.contents > section {
    text-align: left;
}

.contents > section {
    margin: 0 0 100px;
}

.contents > section > div{
    margin-bottom: 60px;
}

.contents > section > section > p,
.contents > section > p,
.contents > p{
    font-size: 1.6rem;
    line-height: 2.0;
}

#lead{
	font-family: "Shippori Mincho", serif;
    font-size: 2.0rem;
    font-weight: bold;
    line-height: 2.0;
    text-align: left;
    margin: 60px 0;
}

.contents > p.sub-txt{
    font-family: "Shippori Mincho", serif;
    font-size: 1.8rem;
    font-weight: bold;    
}

.contents_area{
    margin-bottom: 100px;
}


/* ------------------------------------------------------------------------ */

/* 遺品整理

/* ------------------------------------------------------------------------ */
.sec_ihin .contents{
    position: relative;
}

.sec_ihin .imgBox{
    margin: 40px 0 60px;
}
.sec_ihin .imgBox > div{
    width: 100%;
    max-width: 740px;
    margin-right: 20px;
}
.sec_ihin .imgBox > div p{
    font-size: 1.6rem;
    line-height: 2.0;
    margin-bottom: 20px;
}
.sec_ihin figure{
    text-align: center;
}


/* ------------------------------------------------------------------------ */

/* 仏壇・墓石

/* ------------------------------------------------------------------------ */
.sec_gravestone > .contents{
    position: relative;
    padding: 0 0 0 32px;
}

.sec_gravestone > .contents:before{
    content: "";
    background: #efedfa;
    width: 600px;
    height: 516px;
    border-radius: 5px;
    display: block;
    position: absolute;
    top: -20px;
    left: 0;
    z-index: -1;
}

.sec_gravestone > .contents > .hd02 span{
    background: #efedfa;
}

.contents_area .flex{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin: 20px 0;
}
.contents_area .flex p{
    width: 30%;
}
.contents_area .flex p a.com-btn{
    margin: 20px 0 0;
    text-align: center;
}
.contents_area .flex .map{
    max-width: 720px;
    width: 65%;
}


/* ------------------------------------------------------------------------ */

/* 海洋散骨

/* ------------------------------------------------------------------------ */
.sec_marineashes{
    background: #def1ff;
    margin: 100px auto;
    padding: 100px 0;
}

.sec_marineashes figure{
    margin-bottom: 50px;
}

.sec_marineashes .flex li{
    width: 33%;
}

.sec_marineashes p{
    font-family: "Shippori Mincho", serif;
    margin-bottom: 50px;
}

.sec_marineashes p span{
    color: #4d4497;
}

.sec_marineashes .btn a:hover{
    opacity: 0.8;
}

/* ------------------------------------------------------------------------ */

/* スライダー設定

/* ------------------------------------------------------------------------ */
.cnt-swiper{
	margin-top: 40px;
	position: relative;
	z-index: 1;
}

.swiper-slide{
	max-width: 280px;
    margin-left: 12px;
}

.swiper-slide:first-child{
	max-width: 280px;
    margin-left: 0;
}

.swiper-nav{
	position: absolute;
	top: calc(50% - 34px);
	left: 50%;
	width: 100%;
	max-width: 1592px;
	transform: translate(-50%,-50%);
	z-index: 10;
	padding: 0 20px;
}
	.swiper-nav button{
		border: none;
		background: #fff;
		width: 56px;
		height: 56px;
		overflow: hidden;
		border-radius: 50%;
		cursor: pointer;
		display: flex;
		justify-content: center;
		align-items: center;
	}

.swiper-nav button::before{
	content: "";
	display: block;
	width: 26px;
	height: 7px;
	background: url("/common/img/icon_arrow_pur_min.png") no-repeat center / contain;
	margin-bottom: 3px;
}

	.swiper-nav button.swiper-button-prev::before{
		transform: scale(-1,1);
	}

.cnt-swiper figcaption{
	font-size: var(--font-sizei);
	margin-top: 10px;
}


@media screen and (max-width: 1120px) {
    #lead{
        font-size: 1.8vw;
    }
}

@media screen and (max-width: 768px) {
    .hd01{
        margin: 0 auto 20px;
    }
    
    .contents_area .flex{
        display: block;
        width: 100%;
    }
    
    #lead,
    .contents > p.sub-txt{
        font-size: 1.6rem;
    }
    
    .ulStyle01{
        margin: 15px 0px;
    }
    
    .sec_ihin .imgBox{
        margin: 40px 0;
    }
    
    .sec_ihin .imgBox{
        flex-direction: column;
    }
    
    .sec_gravestone > .contents{
        margin-top: 60px;
        padding: 0 0 0 20px;
    }
    .contents_area .flex p{
        width: 100%;
        margin-bottom: 20px;
    }
    .contents_area .flex .map{
        width: 100%;
    }
    
    .sec_marineashes .flex{
        flex-wrap: wrap;
        flex-direction: column;
    }
    .sec_marineashes .flex li{
        margin-bottom: 20px;
        width: 60%;
    }
    .sec_marineashes .flex li:nth-child(odd){
        margin-right: 40%;
    }
    .sec_marineashes .flex li:nth-child(even){
        margin-left: 40%;
    }
}

@media (min-width: 769px){
    .cnt-swiper01 .swiper-wrapper{
        display:flex;
        justify-content: center;
        gap:20px;
    }

    .cnt-swiper01 .swiper-slide{
        width:calc(25% - 15px);
    }
}

@media (max-width: 468px){
    .contents > section > section > p,
    .contents > section > p,
    .contents > p{
        font-size: 1.4rem;
    }
    
    .sec_marineashes{
        padding: 40px 0;
    }
    
}