@charset "utf-8";
/* CSS Document */
/*------------------------------------------------------

手ぬぐいのOEM製作は当店にお任せ下さい　OEM

------------------------------------------------------*/
html p {
    font-size: 15px;
    line-height: 1.9;
}

@media screen and (max-width: 786px) {
    html p {
        font-size: 14px;
    }
}

@media screen and (max-width: 480px) {
    html p {
        font-size: 13px;
        line-height: 1.8;
    }
}

/*----パンくず----*/
.bread-box {
	background: #FFF;
	width: 100%;
	margin: 0 auto;
}

.bread-box ol {
	width: 1070px;
	margin: 0 auto;
}

@media screen and (max-width: 786px) {
	.bread-box {
		width: 100%;
		margin: 0;
		padding: 8px 10px;
	}
	
	.bread-box ol {
		width: auto;
	}
}

/*----top-container----*/
.top-container {
	margin: 0 auto;
	background: #FFF;
}

.width {
	width: 980px;
    margin: 0 auto;
}

@media screen and (max-width: 786px) {
	.top-container {
		box-sizing: border-box;
	}
    
    .width {
        width: 100%;
        padding: 0 20px;
        box-sizing: border-box;
    }
}


/*----h要素----*/
.h-standard {
    font-weight: 900;
    color: #1b59d6;
    font-size: 3.2rem;
    text-align: center;
    letter-spacing: .08em;
    margin-bottom: 2.5rem;
}
.h-standard em {
    display: block;
    font-size: 4.5rem;
    font-weight: 900;
}

.h-standard.white { color: #FFF; }
.h-standard.yellow { color: #c1861f; }

@media screen and (max-width: 786px) {
    .h-standard {
        font-size: 2.8rem;
        padding: 0 25px;
        box-sizing: border-box;
    }
    .h-standard em {
        font-size: 3.7rem;
    }
}

@media screen and (max-width: 480px) {
    .h-standard {
        font-size: 2rem;
    }
    .h-standard em {
        font-size: 2.8rem;
    }
}




/*------------------------------------------------------

main-tit

------------------------------------------------------*/
.main-tit {
    background: url("../../../_images/other/oem/main-back.gif") no-repeat;
    background-size: 60% 100%;
}

.main-tit .inner {
    width: 980px;
    margin: 0 auto;
    padding: 3rem 0 9rem;
    align-items: center;
}

.main-tit .inner .h-main {
    font-weight: 900;
    color: #FFF;
    font-size: 4rem;
    letter-spacing: .08em;
}

.main-tit .inner .h-main em {
    font-weight: 900;
    display: block;
    font-size: 5.5rem;
}

.main-tit .inner ul li {
    margin-bottom: -3rem;
}

.main-tit .inner ul li:first-child {
    margin-right: -25px;
}

@media screen and (max-width: 1000px) {
    .main-tit {
        background-size: 95% 100%;
    }
    
    .main-tit .inner {
        width: 100%;
        padding: 5rem 3rem 9rem;
        box-sizing: border-box;
        text-align: center;
        justify-content: center;
    }
    
    .main-tit .inner .h-main {
        margin-bottom: 2rem;
        font-size: 3rem;
    }
    
    .main-tit .inner .h-main em {
        font-size: 4.5rem;
    }
    
    .main-tit .inner ul li {
        max-width: 190px;
    }
    
    .main-tit .inner ul li img {
        width: 100%;
        height: auto;
    }
}

@media screen and (max-width: 786px) {
    .main-tit {
        background-size: 120% 100%;
        display: block;
        width: fit-content;
    }
}

@media screen and (max-width: 600px) {
    .main-tit .inner {
        padding: 4rem 3rem 0;
    }
    
    .main-tit .inner .h-main {
        font-size: 2rem;
        margin-bottom: 1rem;
    }
    
    .main-tit .inner .h-main em {
        font-size: 3.1rem;
    }
    
    .main-tit .inner ul {
        position: relative;
        z-index: 1;
    }
    .main-tit .inner ul li {
        max-width: 140px;
    }
    .main-tit .inner ul li:first-child {
        margin-right: -15px;
    }
}



/*------------------------------------------------------

main-img

------------------------------------------------------*/
.main-img {
    margin: -5rem auto 0;
    gap: 0 1%;
    justify-content: center;
}

.main-img li {
    border-radius: 15px;
    overflow: hidden;
    width: 19%;
    max-width: 300px;
}

.main-img li img {
    width: 100%;
    height: auto;
}

@media screen and (max-width: 600px) {
    .main-img {
        gap: 0;
        margin: 0 auto;
    }
    
    .main-img li {
        width: 50%;
        border-radius: 0;
    }
    
    .main-img li:nth-child( n + 3 ) {
        width: calc( 100% / 3);
    }
}



/*------------------------------------------------------

当店が選ばれる理由

------------------------------------------------------*/
.reason-cont {
    background: #f3f5fa;
    padding-top: 19rem;
    margin-top: -10rem;
}

.reason-cont .lead-text {
    font-size: 1.8rem;
    color: #1b59d6;
    font-weight: bold;
    letter-spacing: .1em;
    text-align: center;
    margin-bottom: 5rem;
}

.reason-cont .reason-list {
    row-gap: 4rem;
    align-items: flex-start;
    margin-bottom: 7rem;
}

.reason-cont .reason-list li {
    width: 475px;
    background: #FFF;
    border-radius: 20px;
    box-shadow: 0px 7px 13.5px 1.5px rgba(75, 94, 130, 0.15);
    padding: 1rem 4rem 4rem;
    box-sizing: border-box;
}
.reason-cont .reason-list li:nth-child(even) {
    margin-top: 4rem;
}

.reason-cont .reason-list dt {
    font-size: 2.7rem;
    font-weight: 900;
    letter-spacing: .06em;
    color: #1b59d6;
    text-shadow: #fff 0px 0px 15px;
    margin: -2rem 2.5rem 1.5rem;
    line-height: 1.4;
}

.reason-cont .reason-list dd {
    padding: 0 .5rem;
}

.reason-cont .reason-list dd p {
    font-size: 14px;
}

@media screen and (max-width: 786px) {
    .reason-cont .lead-text {
        margin: 0 25px 5rem;
    }
    
    .reason-cont .reason-list li {
        width: 49%;
        padding: 1rem 2rem 3rem;
    }
    
    .reason-cont .reason-list dt {
        font-size: 2.1rem;
    }
    .reason-cont .reason-list dt br {
        display: none;
    }
    
    .reason-cont .reason-list dd {
        padding: 0 .8rem;
    }
    
    .reason-cont .reason-list dd p {
        font-size: 12px;
    }
}

@media screen and (max-width: 480px) {
    .reason-cont {
        padding-top: 16rem;
    }
    
    .reason-cont .lead-text {
        font-size: 1.6rem;
        margin-bottom: 4rem;
    }
    .reason-cont .lead-text br {
        display: none;
    }
    
    .reason-cont .reason-list {
        row-gap: 2rem;
    }
    .reason-cont .reason-list li {
        width: 100%;
        padding: 0 2.5rem 3rem;
    }
    .reason-cont .reason-list li:nth-child(even) {
        margin-top: 0;
    }
    
    .reason-cont .reason-list dt {
        margin-top: -1.4rem;
    }
}


/*----estimate-reason----*/
.reason-cont .estimate-reason {
    background: #FFF;
    position: relative;
    text-align: center;
    padding: 5rem 0;
}
.reason-cont .estimate-reason:before {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 37px 40px 0 40px;
    border-color: #f3f5fa transparent transparent transparent;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    top: -1px;
    position: absolute;
}

.reason-cont .estimate-reason .inner {
    max-width: 1170px;
    margin: 0 auto;
    position: relative;
    padding: 0 195px;
    box-sizing: border-box;
    min-height: 280px;
    display: flex;
	justify-content:center;
	flex-direction: column;
}
.reason-cont .estimate-reason .inner:before,
.reason-cont .estimate-reason .inner:after {
    content: "";
    width: 195px;
    height: 280px;
    display: block;
    position: absolute;
    top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}
.reason-cont .estimate-reason .inner:before {
    background: url("../../../_images/other/oem/idea-man.gif") no-repeat;
    left: 0;
}
.reason-cont .estimate-reason .inner:after {
    background: url("../../../_images/other/oem/idea-woman.gif") no-repeat;
    right: 0;
}

.reason-cont .estimate-reason p {
    font-weight: 900;
    color: #404699;
    font-size: 2.5rem;
    letter-spacing: .1em;
    margin-bottom: 2.5rem;
    line-height: 1.5;
}
.reason-cont .estimate-reason p em {
    font-size: 2.7rem;
    display: block;
    font-weight: 900;
}

@media screen and (max-width: 786px) {
    .reason-cont .estimate-reason .inner {
        padding: 2rem 125px;
        min-height: auto;
    }
    .reason-cont .estimate-reason .inner:before,
    .reason-cont .estimate-reason .inner:after {
        width: 125px;
        height: 180px;
        background-size: contain;
    }
    
    .reason-cont .estimate-reason p {
        font-size: 2.3rem;
    }
    .reason-cont .estimate-reason p em {
        font-size: 2.5rem;
    }
}

@media screen and (max-width: 600px) {
    .reason-cont .estimate-reason .inner {
        padding: 2rem 0 180px;
    }
    
    .reason-cont .estimate-reason p {
        font-size: 1.8rem;
        padding: 0 25px;
    }
    .reason-cont .estimate-reason p em {
        font-size: 2rem;
    }
    
    .reason-cont .estimate-reason .inner:before,
    .reason-cont .estimate-reason .inner:after {
        width: 100px;
        height: 150px;
        transform: none;
    }
    
    .reason-cont .estimate-reason .inner:before {
        left: calc(50% - 100px);
        top: auto;
        bottom: 0;
    }
    .reason-cont .estimate-reason .inner:after {
        right: calc(50% - 100px);
        top: auto;
        bottom: 0;
    }
}


/*------------------------------------------------------

estimate-link 無料お見積もりはこちら

------------------------------------------------------*/
.estimate-link {
    max-width: 660px;
    text-align: center;
    margin: 0 auto;
    width: 80%;
}

.estimate-link a {
    display: block;
    border-radius: 100px;
    border: 5px solid rgba(255, 255, 255, 0.98);
    font-size: 2.9rem;
    font-weight: 900;
    padding: 2.3rem 5rem;
    color: #FFF;
    text-shadow: 0px 2px 3px rgba(55, 20, 35, 0.25);
    text-align: center;
    box-shadow: 0px 7px 14px 2px rgba(72, 19, 42, 0.3);
    background: -webkit-linear-gradient(right, #aaf1f0 0%, #c57df7 25%, #fa1d7b 51%, #ff5e1f 90%);
    background: -o-linear-gradient(right, #aaf1f0 0%, #c57df7 25%, #fa1d7b 51%, #ff5e1f 90%);
    background: linear-gradient(to left, #aaf1f0 0%, #c57df7 25%, #fa1d7b 51%, #ff5e1f 90%);
    background-position: 1% 50%;
    background-size: 200% auto;
    transition: all 0.3s ease-out;
}
.estimate-link a:hover {
    opacity: 1;
    background-position: 99% 50%;
}

.estimate-link a em {
    font-weight: 900;
    margin-right: 15px;
}

.estimate-link a span {
    position: relative;
    padding-right: 55px;
    display: inline-block;
}
.estimate-link a span:after {
    content: "";
    display: block;
    vertical-align: middle;
    position: absolute;
    right: 5px;
    top: 45%;
	transform: translateY(-50%) rotate(135deg);
	-webkit-transform: translateY(-50%) rotate(135deg);
    line-height: 1;
    width: 20px;
    height: 20px;
    border: 0.5rem solid #FFF;
    border-left: 0 !important;
    border-bottom: 0 !important;;
    box-sizing: border-box;
}

@media screen and (max-width: 786px) {
    .estimate-link a {
        font-size: 2.5rem;
    }
    
    .estimate-link a span {
        padding-right: 40px;
    }
    
    .estimate-link a span:after {
        width: 15px;
        height: 15px;
        border: 0.4rem solid #FFF;
    }
}

@media screen and (max-width: 480px) {
    .estimate-link a {
        font-size: 2.3rem;
        padding: 2.3rem 4rem 4rem;
        border-width: 4px;
    }
    
    .estimate-link a span {
        padding-right: 0;
    }
    .estimate-link a span:after {
        right: 42%;
        top: auto;
        bottom: -15px;
        transform: translateX(-50%) rotate(135deg);
        -webkit-transform: translateX(-50%) rotate(135deg);
        width: 12px;
        height: 12px;
        border: 0.3rem solid #FFF;
    }
    
    .estimate-link a em {
        display: block;
        margin: 0 auto;
    }
}



/*------------------------------------------------------

case-cont

------------------------------------------------------*/
.case-cont {
    background: #f3f5fa;
    padding-bottom: 8rem;
}

.case-cont .h-standard {
    text-shadow: 0px 0px 13px rgba(0, 0, 0, 0.3);
    background: url("../../../_images/other/oem/oem-back.gif") no-repeat;
    background-position: center;
    background-size: cover;
    padding: 10rem 2rem 20rem;
    box-sizing: border-box;
    margin-bottom: -13rem;
}

.case-cont .case-list {
    row-gap: 2.5rem;
    margin-bottom: 4rem;
}

.case-cont .case-list li {
    box-shadow: 0px 2px 7px 0px rgba(0, 0, 0, 0.11);
    border-radius: 8px;
    overflow: hidden;
    background: #FFF;
    text-align: center;
    width: 230px;
}

.case-cont .case-list li figcaption {
    font-weight: 900;
    font-size: 2rem;
    color: #3e5290;
    letter-spacing: .08em;
    padding: 0 2rem 2.5rem;
    display:flex;
	justify-content: center;
	align-items: center;
}

@media screen and (max-width: 786px) {
    .case-cont .case-list li {
        width: 23%;
    }
    
    .case-cont .case-list li figcaption {
        font-size: 1.7rem;
        padding-bottom: 2rem;
    }
    
    .case-cont .case-list li figcaption br {
        display: none;
    }
}

@media screen and (max-width: 480px) {
    .case-cont .h-standard {
        padding: 6rem 2rem 17rem;
    }
    
    .case-cont .case-list {
        row-gap: 2rem;
    }
    
    .case-cont .case-list li {
        width: 48%;
    }
}


/*----support-cont----*/
.case-cont .support-cont {
    width: 80%;
    margin: 6.5rem auto 0;
    border: 1.5rem solid #f2f776;
    box-sizing: border-box;
    background: #FFF;
    position: relative;
    padding: 3.5rem 230px 3.5rem 5rem;
    text-align: center;
}
.case-cont .support-cont:before {
    content: "";
    background: url("../../../_images/other/oem/support-staff.gif") no-repeat;
    width: 205px;
    height: 215px;
    display: block;
    position: absolute;
    bottom: -15px;
    right: 20px;
}

.case-cont .support-cont .usually {
    font-size: 1.6rem;
    color: #0a4c73;
    font-weight: bold;
    letter-spacing: .08em;
    line-height: 1.5;
    margin-bottom: 5px;
}

.case-cont .support-cont .em {
    font-size: 2.2rem;
    color: #f80058;
    font-weight: 900;
    letter-spacing: .1em;
    line-height: 1.5;
}


@media screen and (max-width: 786px) {
    .case-cont .support-cont {
        width: 90%;
    }
    
    .case-cont .support-cont .usually br {
        display: none;
    }
}

@media screen and (max-width: 600px) {
    .case-cont .support-cont {
        padding: 3.5rem 3.5rem 145px;
    }
    
    .case-cont .support-cont:before {
        width: 140px;
        height: 147px;
        background-size: contain;
        bottom: -12px;
        left: 50%;
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
    }
}



/*------------------------------------------------------

疑問にお答えします

------------------------------------------------------*/
.qa-cont {
    padding: 10rem 20px;
    box-sizing: border-box;
    max-width: 980px;
    margin: 0 auto;
}

.qa-cont .qa-dl {
    display: flex;
	justify-content:center;
	flex-direction: column;
    row-gap: 2rem;
}

@media screen and (max-width: 786px) {
    .qa-cont {
        padding: 7rem 20px;
    }
}

@media screen and (max-width: 480px) {
    .qa-cont .qa-dl {
        row-gap: 1.5rem;
    }

}

/*----開閉動作----*/
.open-btn {
	display:block;
	cursor:pointer;
	position: relative;
}
.open-btn:before,
.open-btn:after{
	content: "";
	display: block;
	background: #424242;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	transition: all 0.2s ease-out;
	z-index: 50;
}
.open-btn:before{
	height: 25px;
	width: 4px;
	right: 40px;
}
.open-btn:after{
	width: 25px;
	height: 4px;
	right: 30px;
}
.open-btn.active:before{
	transform: rotate(90deg);
	-webkit-transform: rotate(90deg);
}
.open-btn.active:after{
	opacity: 0;
}

.open-cont{
	display:none;
}

@media screen and (max-width: 786px) {

}

@media screen and (max-width: 480px) {
    .open-btn:before{
        height: 17px;
        width: 3px;
        right: 24px;
    }
    .open-btn:after{
        width: 17px;
        height: 3px;
        right: 17px;
    }
}

/*----open-btn（見た目）----*/
.open-btn {
	background: #f5f5f5;
    padding-right: 85px;
    border-radius: 5px;
    transition: all 0.3s ease-out;
}
.open-btn:hover {
    background: #E0EAFD;
}

.open-btn span {
    display: block;
    padding: 2.2rem 3rem 2.2rem 10.5rem;
    font-size: 1.9rem;
    font-weight: bold;
    letter-spacing: .08em;
    color: #424242;
    border-right: 1px solid #d2d2d2;
    position: relative;
}

.open-btn span:before {
    content: "";
    width: 40px;
    height: 40px;
    background: #2c4760;
    border-radius: 50%;
    display: block;
    position: absolute;
    left: 4rem;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}
.open-btn span:after {
    content: "Q";
    color: #FFF;
    font-weight: bold;
    font-size: 2rem;
    position: absolute;
    left: 5.1rem;
    top: 47%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

@media screen and (max-width: 480px) {
    .open-btn {
        padding-right: 50px;
    }
    
    .open-btn span {
        padding: 2rem 3rem 2rem 7.5rem;
        font-size: 1.7rem;
    }
    
    .open-btn span:before {
        width: 30px;
        height: 30px;
        left: 2.7rem;
    }
    .open-btn span:after {
        font-size: 1.8rem;
        left: 3.6rem;
        top: 48%;
    }
}


/*----open-cont（見た目）----*/
.open-cont .answer {
    margin: 3rem 4.5rem 1rem;
    padding-left: 6.5rem;
    position:relative;
}
.open-cont .answer:before {
    content: "";
    width: 40px;
    height: 40px;
    background: #ee2b0b;
    border-radius: 50%;
    display: block;
    position: absolute;
    left: 0;
	top: 0;
}
.open-cont .answer:after {
    content: "A";
    color: #FFF;
    font-weight: bold;
    font-size: 2rem;
    position: absolute;
    left: 13px;
    top: 6px;
}

.open-cont .answer .b {
    font-size: 1.8rem;
    color: #ee2b0b;
    font-weight: bold;
    letter-spacing: .08em;
    margin-bottom: 1rem;
    display: block;
    line-height: 1.5;
}

.open-cont .answer .b + p {
    font-size: 1.6rem;
    letter-spacing: .06em;
}

.open-cont .answer p a {
    text-decoration: underline;
    color: #175A97;
}
.open-cont .answer p a:hover {
    text-decoration: none;
    opacity: 1;
}

@media screen and (max-width: 480px) {
    .open-cont .answer {
        margin: 3rem 0 1.5rem;
        padding-left: 7.5rem;
    }
    
    .open-cont .answer:before {
        width: 30px;
        height: 30px;
        left: 2.7rem;
    }
    .open-cont .answer:after {
        font-size: 1.8rem;
        left: 3.8rem;
        top: 4px;
    }
    
    .open-cont .answer .b + p {
        font-size: 13px;
    }
}


/*------------------------------------------------------

無料お見積もりはこちら

------------------------------------------------------*/
.estimate-induction {
    padding: 5rem 0 7rem;
    background-image: -moz-linear-gradient( 90deg, rgb(42,48,87) 10%, rgb(67,70,92) 90%);
    background-image: -webkit-linear-gradient( 90deg, rgb(42,48,87) 10%, rgb(67,70,92) 90%);
    background-image: -ms-linear-gradient( 90deg, rgb(42,48,87) 10%, rgb(67,70,92) 90%);
}

.estimate-induction p {
    color: #FFF;
    font-weight: 900;
    font-size: 2.3rem;
    letter-spacing: .1em;
    margin-bottom: 10px;
    text-align: center;
}


/*------------------------------------------------------

ワンストップ対応

------------------------------------------------------*/
.flow-cont {
    padding: 8.5rem 0 27rem;
    background: #f7f7f7;
    margin-bottom: -20rem;
}

.flow-cont .h-standard {
    margin-bottom: 5rem;
}

.flow-cont .flow-list {
    margin-bottom: 5rem;
}

.flow-cont .flow-list li {
    border-radius: 7px;
    border-left: 9px solid #c1861f;
    box-shadow: 0px 2px 7px 0px rgba(0, 0, 0, 0.11);
    position: relative;
    padding-left: 185px;
    background-position: 5.5rem center !important;
}
.flow-cont .flow-list li:first-child { background: #FFFFFF url("../../../_images/other/oem/flow-01.gif") no-repeat; }
.flow-cont .flow-list li:nth-child(2) { background: #FFFFFF url("../../../_images/other/oem/flow-02.gif") no-repeat; }
.flow-cont .flow-list li:nth-child(3) { background: #FFFFFF url("../../../_images/other/oem/flow-03.gif") no-repeat; }
.flow-cont .flow-list li:nth-child(5) { background: #FFFFFF url("../../../_images/other/oem/flow-04.gif") no-repeat; }
.flow-cont .flow-list li:nth-child(6) { background: #FFFFFF url("../../../_images/other/oem/flow-05.gif") no-repeat; }


.flow-cont .flow-list li:after {
	content: "";
	-webkit-mask-image: var(--icon-arrow);
	mask-image: var(--icon-arrow);
	mask-repeat: no-repeat;
	mask-position: center;
	width: 26px;
	height: 26px;
	display: block;
	position: absolute;
	left: 77px;
	bottom: -2.2rem;
	background: #434749;
    transform: rotate(90deg);  
    -webkit-transform: rotate(90deg);  
    z-index: 1;
}

@media screen and (max-width: 480px) {
    .flow-cont .flow-list {
        margin: 0 20px 4rem;
    }
    
    .flow-cont .flow-list li {
        border-left: none;
        border-top: 6px solid #c1861f;
        padding: 70px 0 0;
        background-position: center 16px !important;
        background-size: 40px !important;
    }
    
    .flow-cont .flow-list li:after {
        width: 23px;
        height: 23px;
        left: 50%;
        bottom: -1.3rem;
        transform: translateX(-50%) rotate(90deg);
        -webkit-transform: translateX(-50%) rotate(90deg);
    }
}


/*last-child*/
.flow-cont .flow-list li:last-child {
    border-color: #ee2b0b;
}
.flow-cont .flow-list li:last-child dt {
    color: #ee2b0b;
}
.flow-cont .flow-list li:not(:last-child) {
    margin-bottom: 2rem;
}
.flow-cont .flow-list li:last-child:after {
    content: none;
}


/**/
.flow-cont .flow-list li dl {
    padding: 4.5rem 5rem;
    border-left: 1px solid #e9e9e9;
}

.flow-cont .flow-list li dt {
    font-size: 2.5rem;
    color: #c1861f;
    font-weight: 900;
    margin-bottom: 1rem;
}

.flow-cont .flow-list li dd p {
    color: #292929;
    font-size: 1.7rem;
    font-weight: bold;
}

@media screen and (max-width: 480px) {
    .flow-cont .flow-list li dl {
        padding: 3rem 4rem 3.5rem;
        border-left: none;
        border-top: 1px solid #e9e9e9;
    }
    
    .flow-cont .flow-list li dt {
        font-size: 2.1rem;
        text-align: center;
    }
    
    .flow-cont .flow-list li dd p {
        font-size: 13px;
    }
}


/*サンプル校正*/
.flow-cont .flow-list li.sample-li {
    padding-left: 0;
    margin-left: 185px;
    background: #FFF;
    border-color: #a59f95;
}
.flow-cont .flow-list li.sample-li:after {
	left: 50%;
	transform: translateX(-50%) rotate(90deg);
	-webkit-transform: translateX(-50%) rotate(90deg); 
}
.flow-cont .flow-list li.sample-li dt {
    color: #a59f95;
}

@media screen and (max-width: 480px) {
    .flow-cont .flow-list li.sample-li {
        padding-top: 0;
        width: 80%;
        margin: 0 auto 2rem;
    }
}




/*------------------------------------------------------

お見積りフォーム

------------------------------------------------------*/
.estimate-cont {
	border: 10px solid #ece8e2;
	width: 980px;
	padding: 50px 70px;
	box-sizing: border-box;
	margin-bottom: 10rem;
    background: #FFF;
}

.estimate-cont p {
    font-size: 14px;
}

.h-estimate-other {
	text-align: center;
	font-weight: 900;
	font-size: 3.5rem;
	color: #8d2a14;
	letter-spacing: .1em;
	padding: 0 20px 10px;
	border-bottom: 1px solid #8d2a14;
	margin-bottom: 3rem;
}

.h-estimate-other span {
	color: #c60000;
	margin-right: 15px;
}

.h-estimate-other em {
	color: #FFF;
	display: block;
	width: fit-content;
	margin: 5px auto;
	background: #2f649f;
	font-size: 2.5rem;
	padding: 5px 30px;
	font-weight: bold;
	border-radius: 100px;
}

.h-estimate-other + .mb20 {
	margin: 0 5% 3rem;
	font-size: 13px;
}

.estimate-cont .other-box .flex {
	row-gap: 15px;
}

.estimate-cont .other-box .flex:after {
	content: "";
	display: block;
	width: 23%;
	height: 0;
}
.estimate-cont .other-box .flex:before {
	content: "";
	display: block;
	width: 23%;
	height: 0;
	order: 1;
}

.estimate-cont .other-box li {
	width: 23%;
	text-align: center;
}
.estimate-cont .other-box li label {
	padding: 10px 10px 15px;
	justify-content: start;
}

.estimate-cont label input[type="checkbox"] + span {
	width: fit-content;
	margin: 15px auto 0;
	text-align: center;
	max-width: 85%;
	box-sizing: border-box;
}

.estimate-cont textarea {
	height: 150px;
}

.estimate-cont .customer-box table tr:last-child td input[type="text"]{
	width: 5em;
	margin: 0 10px;
}

@media screen and (max-width: 786px) {
	.estimate-cont {
		width: 100%;
		padding: 40px 50px;
	}
	
	.h-estimate-other span {
		display: block;
		margin: 0 auto;
	}
	
	.h-estimate-other + .mb20 {
		margin: 0 0 3rem;
	}
}

@media screen and (max-width: 650px) {
	.estimate-cont {
		padding: 0 20px;
		border: none;	
	}
    
    .estimate-cont p {
        font-size: 13px;
    }
	
	.h-estimate-other {
		border-top: 10px solid #ece8e2;
		padding-top: 40px;
		width: calc(100% + 40px);
		margin-left: -20px;
		box-sizing: border-box;
        font-size: 2.8rem;
	}
    
    .h-estimate-other span {
        font-size: 2.3rem;
    }
	
	.estimate-cont .other-box .flex:after,
	.estimate-cont .other-box .flex:before,
	.estimate-cont .other-box li {
		width: 48%;
	}
}



/*----優先事項----*/
.estimate-cont .priority-box label {
    font-size: 1.8rem;
    font-weight: 900;
    transition: all 0.1s ease-out;
}
.estimate-cont .priority-box label.current {
    border-color: #ff5e1f;
    background: #ff5e1f;
}

.estimate-cont .priority-box li label input[type="radio"] + span {
    padding: 0;
    letter-spacing: .08em;
}

.estimate-cont .priority-box input[type="radio"]:checked + span {
    color: #FFF;
}

.estimate-cont .priority-box li label input[type="radio"] + span::before,
.estimate-cont .priority-box li label input[type="radio"] + span::after {
    content: none !important;
}

.estimate-cont .priority-box li img {
    width: auto;
    max-width: 100%;
}
.estimate-cont .priority-box li .current img {
    filter: invert(100%) sepia(0%) saturate(7500%) hue-rotate(152deg) brightness(107%) contrast(105%);
}

.estimate-cont .priority-box li label {
    padding: 20px;
}



/*------------------------------------------------------

お見積りフォーム（確認画面）

------------------------------------------------------*/
.estimate-cont.confirm-page .other-box li {
	text-align: center;
	padding: 10px 10px 15px;
	border-radius: 7px;
	display: flex;
    justify-content: center;
    flex-direction: column;
    box-sizing: border-box;
    border: 1px solid #9c9fab;
}
.estimate-cont.confirm-page .other-box li img {
	width: 100%;
	height: auto;
	margin-bottom: 10px;
}







/*------------------------------------------------------

スクロールエフェクト

------------------------------------------------------*/

/*----scroll_up----*/
.anime {
  opacity: 0;
  transition: all .8s ease;
}

.anime.show {
  opacity: 1;
  transform: none;
}

.anime-lr {
  transform: translate(-2rem, 0);
}

.anime-rl {
  transform: translate(2rem, 0);
}

.anime-up {
  transform: translate(0, 30px);
}

.anime-down {
  transform: translate(0, -30px);
}