/*スマホ用*/
@media screen and (max-width:640px){
/*デザイン修正*/
.dservice_top{
	height: 145vw;
	max-height: 650px;
	min-height: 500px;
	margin: 0 calc((100% - 100vw) / 2) -12.5vw;
}
.dservice_top:before{
	content: "";
	display: block;
	background: url("/wp-content/uploads//dservice_top_back02.png") no-repeat 0% 90% / 15% auto,
		url("/wp-content/uploads/dservice_top_back03.png") no-repeat 100% 15% / 13% auto,
		url("/wp-content/uploads/dservice_top_back_sp.png") no-repeat 0% 0% / 100% auto,
		#46c6fa;
	height: 145vw;
	max-height: 650px;
	min-height: 500px;
}
.dservice_top_main {
    max-width: 450px;
    min-width: unset;
}
.dservice_spmenubtn{
    display: block;
    width: 55px;
    height: 55px;
    background: #c8f0ff;
	margin: 0 20px;
    position: absolute;
	top: 0;
	right: 0;
    z-index: 2;
    transition: .3s;
}
.dservice_spmenubtn div:first-of-type{
	width: 28px;
	height: 2px;
	border-radius: 1px;
	background: #00326e;
	position: absolute;
	top: 13px;
	left: 50%;
	transform: translateX(-50%);
	transition: .3s;
}
.dservice_spmenubtn div:nth-of-type(2){
	content: "";
	width: 28px;
	height: 2px;
	border-radius: 1px;
	background: #00326e;
	position: absolute;
	top: 20px;
	left: 50%;
	transform: translateX(-50%);
	transition: .3s;
}
.dservice_spmenubtn div:last-of-type{
	content: "";
	width: 28px;
	height: 2px;
	border-radius: 1px;
	background: #00326e;
	position: absolute;
	top: 28px;
	left: 50%;
	transform: translateX(-50%);
	transition: .3s;
}
.dservice_spmenubtn:after{
    content: "menu";
    font-family: "Hiragino UD Sans W6 JIS2004";
	font-size: 10px;
	font-weight: 700;
	color: #0064ea;
	position: absolute;
	top: 30px;
	left: 50%;
	transform: translateX(-50%);
	transition: .3s;
}
#contents .dservice_top ul{
	flex-direction: column;
	padding: 60px 30px 25px;
	right: -100%;
	transition: .5s;
}
.dservice_top ul li {
    padding: 6px 0;
	text-align: right;
}
.dservice_spmenubtn.hambtn_active{
    background: transparent;
	transition: 1s .3s;
}
.dservice_menu .spmenubtnlp.hambtn_active div:first-of-type{
    transform: translate(-50%,8px) rotate(45deg);
}
.dservice_menu .spmenubtnlp.hambtn_active div:nth-of-type(2){
	opacity: 0;
}
.dservice_menu .spmenubtnlp.hambtn_active div:last-of-type{
	transform: translate(-50%,-8px) rotate(-45deg);
}
.dservice_spmenubtn.hambtn_active:after{
    content: "close";
}
#contents .dservice_menu .spmenuboxlp.hammenu_active ul{
	right: 0;
}
.dservice_back{
	padding: calc(9.25vw + 60px) calc((100vw - 100%) / 2) 80px;
}
#contents .dservice_flow h3:before{
	clip-path: polygon(0 0, calc(100% - 20px) 0, 100% 50%, calc(100% - 20px) 100%, 0 100%);
}
#contents .dservice_what,#contents .dservice_feature,#contents .dservice_flow h3{
	font-size: 20px;
	max-width: 500px;
}
#contents .dservice_what:before,#contents .dservice_feature:before{
	clip-path: polygon(0 0, calc(100% - 20px) 0, 100% 50%, calc(100% - 20px) 100%, 0 100%);
}
#contents .dservice_what + p,#contents .dservice_feature + p{
	font-size: 16px;
	max-width: 500px;
}
#contents .dservice_what + p{
	margin: 0 auto 80px;
}
.dservice_what:after{
	display: none;
}
#contents .dservice_course{
	font-size: 30px;
	margin: 100px auto 32px;
}
#contents .dservice_course:before{
	display: none;
}
.dservice_course div {
    padding-left: 100px;
}
.dservice_course div:before{
	font-size: 20px;
	width: 90px;
	line-height: 90px;
}
.dservice_course div:after{
	width: 18px;
	height: 18px;
    left: 70px;
}
.dservice_course + ul{
	flex-direction: column;
}
.dservice_course + ul li{
	width: 100%;
	max-width: 320px;
	margin: 0 auto;
}
.dservice_course01{
	font-size: 18px;
}
.dservice_course02{
	font-size: 23px;
	padding: 15px 15px 35px;
	margin: 35px 0 45px; 
}
.dservice_course02:after{
	width: 35px;
	height: 15px;
	bottom: 10px;
}
.dservice_flow{
	margin: 40px calc((100% - 100vw) / 2);
	padding: 80px calc((100vw - 100%) / 2);
}
#contents .dservice_flow p{
	font-size: 16px;
	text-align: left;
}
.dservice_flow .x-scrollbox_tc{
	background: #fff;
	padding: 20px 30px 17.5px;
	margin: 0 auto;
	border-radius: 10px;
	box-shadow: 0px 0px 8px  rgba(0, 0, 0, 0.3);
}
.dservice_flow ul{
	width: 650px;
}
.dservice_flow li div{
	font-size: 14px;
	width: 110px;
	height: 25px;
}
.dservice_flow li img{
	width: 90px;
	margin: 8px auto 0;
}
.dservice_flow li:after{
	content: "";
	width: 18px;
	height: 28px;
	bottom: 23px;
	right: -10px;
}
.dservice_flow li:nth-of-type(2):after{
	content: "";
	width: 18px;
	height: 28px;
	bottom: 8px;
	right: -8px;
}
.dservice_flow li:nth-of-type(2):before{
	content: "";
	width: 18px;
	height: 28px;
	bottom: 45px;
	right: -2px;
}
.dservice_course_h01,.dservice_order span,.dservice_qa span{
	font-size: 23px;
	background-size: 100% 13px;
	padding: 10px 10px;
}
.dservice_course_h01:before{
	display: none;
}
.dservice_up_back{
	padding: 0 20px 30px;
	margin: 38px auto 60px;
	border-radius: 20px;
}
#contents .dservice_features{
	font-size: 16px;
	width: 80px;
	margin-bottom: 12px;
}
.dservice_features + p{
	font-size: 15px;
}
.dservice_details{
	padding: 15px 20px 5px;
}
#contents .dservice_details th{
	display: block;
	width: 100%;
}
.dservice_details th div{
	width: 100%;
	height: 35px;
	font-size: 16px;
	padding: 3px;
}
.dservice_details td{
	display: block;
	font-size: 15px;
	margin-bottom: 15px;
}
#contents .details_note01{
	font-size: 13px;
}
.dservice_up_back .price_btn{
	width: 100%;
	height: 40px;
	font-size: 18px;
	margin: 20px auto 30px;
}
.dservice_up_back .price_btn:after{
	content: "";
	display: block;
	width: 10px;
	height: 18px;
	right: 18px;
}
.dservice_up_back .dservice_sample{
	font-size: 18px;
}
.dservice_ba{
	flex-direction: column;
	align-items: center;
	padding: 20px;
}
.dservice_b{
	font-size: 15px;
	width: 60%;
	margin: 0 0 50px;
}
.dservice_b:after{
	width: 40px;
    height: 76px;
	top: auto;
	bottom: 5px;
	right: 50%;
	transform: translate(50%,100%) rotate(90deg);
}
.dservice_a{
	font-size: 15px;
	width: 100%;
}
.dservice_ba + p{
	font-size: 13px;
	text-align: left;
}
/*ご注文方法*/
#contents .dservice_order,#contents .dservice_qa{
	margin: 0 auto 30px;
}
.dservice_order span:before,.dservice_qa span:before{
	display: none;
}
.dservice_order_details{
	padding: 25px 0 0;
	margin-bottom: 60px;
	border-radius: 20px;
}
.dservice_order_details p{
	font-size: 15px;
	padding: 10px 20px 20px;
	margin: 0 25px;
}
.dservice_order_details p:first-letter{
	font-size: 18px;
}
#contents .dservice_order_details h4{
	font-size: 20px;
	margin: 25px 0 15px;
}
.dservice_order_details ul{
	justify-content: center;
	padding: 0 25px;
}
.dservice_order_details ul a{
	font-size: 16px;
	width: 200px;
	height: 40px;
	padding: 5.5px;
	margin: 0 7.5px 10px;
}
.dservice_order_other_btn{
	flex-direction: column;
	font-size: 16px;
	padding: 20px 25px 25px;
}
.dservice_order_other_btn div{
	width: 100%;
	max-width: 300px;
	margin: 0 auto;
}
.dservice_order_other_btn .dservice_estimate,.dservice_order_other_btn .dservice_contact{
	font-size: 18px;
	height: 40px;
	margin-bottom: 20px;
}
.accordion_dservice_qa dt{
	font-size: 16px;
}
.accordion_dservice_qa dt:before{
	top: 12px;
}
.accordion_dservice_qa dd{
	font-size: 15px;
	padding: 10px 20px 15px;
}
#contents .dservice_contact_p{
	font-size: 18px;
	margin: 80px 0 20px;
}
.dservice_contact_p + .dservice_contact{
	font-size: 18px;
	width: 200px;
	height: 40px;
}
	
	/*デザイン修正価格*/
.dservice_back.price h2{
	font-size: 20px;
	margin-bottom: 20px;
}
.dservice_back.price h2 + p{
	font-size: 14px;
}
.price .dservice_up_back{
	padding: 5px 30px 30px;
}
.dservice_back.price h3{
	font-size: 18px;
	margin: 25px 0 10px;
}
.dprice_scrollbox{
	overflow: auto;
    max-height: 600px;
}
.dservice_back.price table{
	width: 550px;
	font-size: 14px;
}
.dservice_back.price.ds01 th:first-of-type{
	left: 0;
	z-index: 2;
}
.dservice_back.price.ds01 td:first-of-type{
	position: sticky;
	left: 0;
}
.dservice_back.price h4{
	font-size: 16px;
	margin-top: 10px;
}
}

/*タブレット用*/
@media screen and (min-width:641px) and (max-width:980px){
/*デザイン修正*/
.dservice_top{
	height: 93vw;
	max-height: 700px;
	min-height: 100%;
	margin: 0 calc((100% - 100vw) / 2) -12.5vw;
}
.dservice_top:before{
	content: "";
	display: block;
	background: url("/wp-content/uploads/dservice_top_back02.png") no-repeat 0% 85% / 9% auto,
		url("/wp-content/uploads/dservice_top_back03.png") no-repeat 100% 15% / 7% auto,
		url("/wp-content/uploads/dservice_top_back_tc.png") no-repeat 0% 0% / 100% auto,
		#46c6fa;
	height: 93vw;
	max-height: 700px;
	min-height: 100%;
}
.dservice_top_main {
    width: 100%;
    max-width: 780px;
    min-width: 650px;
}
.dservice_spmenubtn{
    display: block;
    width: 55px;
    height: 55px;
    background: #c8f0ff;
	margin: 0 20px;
    position: absolute;
	top: 0;
	right: 0;
    z-index: 2;
    transition: .3s;
}
.dservice_spmenubtn div:first-of-type{
	width: 28px;
	height: 2px;
	border-radius: 1px;
	background: #00326e;
	position: absolute;
	top: 13px;
	left: 50%;
	transform: translateX(-50%);
	transition: .3s;
}
.dservice_spmenubtn div:nth-of-type(2){
	content: "";
	width: 28px;
	height: 2px;
	border-radius: 1px;
	background: #00326e;
	position: absolute;
	top: 20px;
	left: 50%;
	transform: translateX(-50%);
	transition: .3s;
}
.dservice_spmenubtn div:last-of-type{
	content: "";
	width: 28px;
	height: 2px;
	border-radius: 1px;
	background: #00326e;
	position: absolute;
	top: 28px;
	left: 50%;
	transform: translateX(-50%);
	transition: .3s;
}
.dservice_spmenubtn:after{
    content: "menu";
    font-family: "Hiragino UD Sans W6 JIS2004";
	font-size: 10px;
	font-weight: 700;
	color: #0064ea;
	position: absolute;
	top: 30px;
	left: 50%;
	transform: translateX(-50%);
	transition: .3s;
}
#contents .dservice_top ul{
	flex-direction: column;
	padding: 60px 30px 25px;
	right: -100%;
	transition: .5s;
}
.dservice_top ul li {
    padding: 6px 0;
	text-align: right;
}
.dservice_spmenubtn.hambtn_active{
    background: transparent;
	transition: .3s .3s;
}
.dservice_menu .spmenubtnlp.hambtn_active div:first-of-type{
    transform: translate(-50%,8px) rotate(45deg);
}
.dservice_menu .spmenubtnlp.hambtn_active div:nth-of-type(2){
	opacity: 0;
}
.dservice_menu .spmenubtnlp.hambtn_active div:last-of-type{
	transform: translate(-50%,-8px) rotate(-45deg);
}
.dservice_spmenubtn.hambtn_active:after{
    content: "close";
}
#contents .dservice_menu .spmenuboxlp.hammenu_active ul{
	right: 0;
}
#contents .dservice_what,#contents .dservice_feature,#contents .dservice_flow h3,#contents .dservice_what + p,#contents .dservice_feature + p{
	max-width: 500px;
}
.dservice_what:after{
	display: none;
}
.dservice_course01{
	font-size: 20px;
}
.dservice_flow{
	padding: 150px calc((100vw - 100%) / 2);
}
.dservice_flow p{
	text-align: left;
}
.dservice_flow ul{
	width: 850px;
}
.dservice_order_details ul{
	justify-content: center;
}
}