/*価格・購入について*/
h3.line-left{
	margin-top:50px;
}

.table-price.sp{
	display:none;
}

.table-price{
    width: 100%;
    border: 2px solid;
    border-radius: 15px;
    overflow: hidden;
    border-spacing: unset;
    margin-bottom: 10px;
    margin-top: 30px;
}

.table-price th{
    background: #757575;
    width: calc(100% / 4);
    color: #FFF;
    padding: 25px;
    border-bottom: 2px solid #000;
}

.table-price td{
    padding: 25px;
    text-align: center;
}

.table-price th:not(:last-child),
.table-price td:not(:last-child){
    border-right: 2px solid #000;
}

.trial-area{
	position: relative;
}

.trial-area:after{
	background-image:url(https://www.dos-osaka.co.jp/deviceshutter/price/img_01.png);
	position: absolute;
	aspect-ratio:176 / 241;
	width:auto;
	height:241px;
    content: '';
    bottom: 0;
    right: calc((100% - 1300px) / 2);
}

.trial-area p{
    text-align: center;
    font-size: 22px;
}

.trial-area .button-orange{
	width: 550px;
    margin: 50px auto 0;
}

.tab-area{
    width: 980px;
    height: 60px;
    border: 2px solid;
	margin: 30px auto 50px;
    border-radius: 15px;
    display: flex;
    justify-content: center;
    align-items: center;
	overflow: hidden;
}

.tab-area a{
    display: flex;
    width: calc((100% - 4px) / 2);
    height: 100%;
    align-items: center;
    justify-content: center;
    font-weight: bold;
}

.tab-area a:not(:last-child) {
	border-right:2px solid;
}

.tab-area a:hover{
background: #000;
    color: #FFF;
}

.price-button-area{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 50px;
    margin-top: 30px;
}

.price-button-area .button-orange,
.price-button-area .button-black {
	margin: unset;
	width:550px;
}

.button-external{
	width:415px;
}

.button-external:hover{
	background:#FFF;
	opacity: 0.6;
}

/*お支払い方法について*/

.flow-area{
    display: flex;
    flex-direction: column;
    gap: 25px;
    align-items: center;
    margin-bottom: 50px;
}

.flow-panel{
    display: flex;
    border: 2px solid;
    border-radius: 15px;
    height: 140px;
    overflow: hidden;
    width: 100%;
}


.flow-panel-left{
    background: #757575;
    width: 200px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-right: 2px solid;
}

.flow-panel-left-img-area{
    width: 100px;
    height: 100px;
    background: #FFF;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
}


.flow-panel-right{
	padding: 0 50px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 15px;
    background: #FFF;
	width: calc(100% - 200px);
}

.flow-panel-right-title{
    font-weight: bold;
}


.creditcard-area{
	display: flex;
    border: 2px solid #000000;
    border-radius: 15px;
    padding: 30px 20px;
    justify-content: center;
}


.creditcard-area-left{
    padding-right: 30px;
    border-right: 2px solid;
    margin-right: 30px;
}

.creditcard-area-img-group{
    display: flex;
    align-items: center;
    gap: 30px;
}

.creditcard-area-title{
	font-weight:bold;
}

.credit-tab-area{
	width: 980px;
    height: 60px;
    border: 2px solid;
    margin: 30px auto 50px;
    border-radius: 15px;
    display: flex;
    justify-content: center;
    align-items: center;
	overflow: hidden;
}

.credit-tab-area a {
    display: flex;
    width: calc((100% - 2px) / 2);
    height: 100%;
    align-items: center;
    justify-content: center;
    font-weight: bold;
	background:#FFF;
}

.credit-tab-area a:hover{
	background:#000;
	color:#FFF;
}

.credit-tab-area a:not(:last-child) {
    border-right: 2px solid;
}

.payment.button-orange{
	margin: 50px auto 0;
    width: 550px;
}


@media (max-width: 1500px) {

.trial-area:after{
	right: calc((100% - 1100px) / 2);
}

/*お支払いについて*/
.creditcard-area-img-group{
    flex-wrap: wrap;
    justify-content: center;
    gap: 15px;
}

}

@media (max-width: 1400px) {

.price-button-area .button-orange,
.price-button-area .button-black{
    width: 400px;
}

.button-external{
    width: calc((100% - 60px) / 3);
}

}

@media (max-width: 1100px) {
.trial-area:after{
	right: 30px;
}

.tab-area{
	width: 100%;
}

.button-external img{
	width: 50%;
}

}

@media (max-width: 1000px) {

.table-price.pc{
	display:none;
}

.table-price.sp{
        display: table;
}

.table-price th{
	width:45%;
}

.table-price td{
	border-bottom: 2px solid;
}

.table-price tr:last-child th,
.table-price tr:last-child td{
	border-bottom: none;
}

.trial-area .button-orange{
	width:auto;
	margin: 190px auto 0;
}

.trial-area:after{
	display:none;
}


.trial-area .button-orange:before{
    background-image: url(https://www.dos-osaka.co.jp/deviceshutter/price/img_01.png);
    position: absolute;
    aspect-ratio: 176 / 241;
    width: auto;
    height: 168px;
    content: '';
        bottom: calc(100% + 2px);
        right: calc((100% - 122px) / 2);
        background-size: contain;
}

/*お支払いについて*/
.credit-tab-area{
    width: auto;
}

.flow-panel{
	height: auto;
}

.flow-panel-right{
    padding: 20px;
}

.flow-panel-left-img-area{
    width: 60px;
    height: 60px;
}

.flow-panel-left-img{
	width: 50%;
    height: auto;
}

}

@media (max-width: 800px) {
.trial-area .button-orange{
    flex-direction: column;
}

.table-price th,
.table-price td{
	padding: 20px;
}

.table-price th {
	width: 50%;
}

.tab-area {
	flex-wrap: wrap;
    height: auto;
}

.tab-area a{
    padding: 20px 0;
	width:100%;
}

.tab-area a:not(:last-child) {
    border-right: none;
    border-bottom: 2px solid;
}

.button-area.external{
	margin: 30px 0 50px;
	flex-direction: column;
    align-items: center;
}

.price-button-area{
	flex-direction: column;
    gap: 15px;
}

.button-external{
	width: 100%;
        max-width: 400px;
        padding: 15px 45px 15px 20px;
        height: auto;
}

.button-external img{
        height: 30px;
        width: auto;
}

.button-external:after{
	background-size: contain;
    aspect-ratio: 30 / 21;
    width: 20px;
    height: auto;
}

.price-button-area .button-orange,
.price-button-area .button-black,
.button-external
{
width: calc(100% - 65px);
}

/*お支払いについて*/

.credit-tab-area{
	flex-wrap: wrap;
    height: auto;
    margin: 0 auto 50px;
}

.credit-tab-area a{
    width: 100%;
    padding: 20px 0;
}

.credit-tab-area a:not(:last-child) {
    border-right: none;
    border-bottom: 2px solid;
}

.payment.button-orange{
    width: calc(100% - 65px);
    max-width: 300px;
}

.flow-panel-left{
	width: 90px;
}

.flow-panel-right{
	width: calc(100% - 90px);
    gap: 10px;
}

.flow-area{
	gap: 10px;
}

.triangle img{
	width:25px;
	height:16px;
}

.creditcard-area{
    flex-direction: column;
}

.creditcard-area-left{
    margin: 0 0 30px 0;
    padding: 0 0 30px 0;
    border-right: none;
    border-bottom: 2px solid;
}

.creditcard-area-title{
	margin-bottom: 20px;
}

.trial-area p{
    font-size: 16px;
}

}