@charset "utf-8";

/*----------------------------
         print
-----------------------------*/
#print main section{
	padding: 100px 0;
}
#print .pageTitle + section{
	padding-top: 70px;
}
@media screen and (max-width: 768px) {
#print main section{
	padding: 12vw 0;
}
}/*-SP only-*/

/*#printStrengths*/
#printStrengths{
	padding-bottom: 0 !important;
}
.strengthDetail{
	margin-top: 40px;
	padding: 100px 0;
}
.strengthDetail .lead dt{
	background: #222;
	color: #fff;
	font-size: min(54/768*100vw,36px);
	padding: calc(67px + 0.35em - (36px * 1.7 - 36px) / 2) 45px calc(67px - (36px * 1.7 - 36px) / 2);
	text-align: right;
	width: 45%;
}
.strengthDetail .lead dt span{
	display: inline-block;
	max-width: 438px;
	text-align: left;
}
.strengthDetail .lead dd{
	background: #fff;
	padding: calc(67px - (36px * 1.7 - 36px) / 2) 30px;
	width: 55%;
	font-size: 18px;
}
.strengthDetail .lead dd span{
	display: inline-block;
	max-width: 590px;
}
.strengthDetail .detailBox{
	background: #fff;
	box-shadow: 0 0 10px rgba(0,0,0,0.1);
	margin: 35px 2.3% 0;
	padding: 30px 2.3% 60px;
}
.strengthDetail .detailBox .title{
	background: #1f3963;
	margin-top: -38px;
	margin-left: -4.6%;
	text-align: center;
}
.strengthDetail .detailBox .title span{
	color: #fff;
	display: block;
	font-size: min(39/768*100vw,26px);
	font-weight: 700;
	line-height: 1.54;
}
.strengthDetail .detailBox .title img{
	margin-top: 15px;
}
.strengthDetail .detailBox .txt p{
	padding-bottom: calc(20px - (16px * 1.7 - 16px) / 2);
}
.strengthDetail .detailBox .txt dt{
	font-size: min(27/768*100vw,18px);
	font-weight: 700;
	padding-bottom: calc(10px - (18px * 1.7 - 18px) / 2);
}
.strengthDetail .detailBox .txt dt:not(:first-of-type){
	margin-top: 20px;
}
.strengthDetail .detailBox .txt:has(ul.defaultList){
	margin-top: 18px;
}
.strengthDetail .detailBox .txt ul.defaultList li{
	padding-left: 22px;
	margin-bottom: 3px;
}
.strengthDetail .detailBox .txt:has(ul.defaultList) + figure{
	margin-top: 18px;
	max-width: 300px;
}
.strengthDetail .detailBox .txt ul:not(.defaultList) li{
	padding-left: 22px;
	position: relative;
}
.strengthDetail .detailBox .txt ul:not(.defaultList) li::before{
	content: '';
	display: inline-block;
	background: url("../images/ic_circle.png") no-repeat left top / cover;
	width: 13px;
	height: 13px;
	position: absolute;
	top: calc(1em - 6px);
	left: 0;
}
.strengthDetail .detailBox .txt ul:not(.defaultList) li:not(:last-child){
	margin-bottom: 10px;
}
.strengthDetail .detailBox .bdrTxt{
	border: 1px solid #003d9e;
	color: #003d9e;
	display: inline-block;
	padding: 0.1em 0.5em;
}
.strengthDetail .detailBox .btnArrow{
	margin: 20px 0 0;
}
.strengthDetail .detailBox:nth-of-type(1) .txt{
	margin-top: 1em;
}
.strengthDetail .detailBox:nth-of-type(2){
	flex-direction: row-reverse;
	margin-top: 61px;
	padding-top: 58px;
}
.strengthDetail .detailBox:nth-of-type(2) .title{
	margin-left: 0;
	margin-right: -4.6%;
}
.strengthDetail .detailBox:nth-of-type(2) dl{
	max-width: 414px;
}
.strengthDetail .detailBox:nth-of-type(2) dl ul{
  margin-top: 18px;
  margin-left: 7px;
}
.strengthDetail .detailBox:nth-of-type(3){
	margin-top: 69px;
  padding-top: 54px;
}
.strengthDetail .detailBox:nth-of-type(3) .txt dd li{
	display: flex;
	justify-content: space-between;
  padding-right: 10px;
}
#printStrengths .strengthDetail .detailBox:nth-of-type(odd){
	background: url("../images/print_substrate_bg_right.png") no-repeat right top;
	background-size: contain;
}
#printStrengths .strengthDetail .detailBox:nth-of-type(even){
	background: url("../images/print_substrate_bg_right.png") no-repeat right top;
	background-size: contain;
}
@media screen and (max-width: 768px) {
.strengthDetail .lead dt,
.strengthDetail .lead dd{
	width: 100%;
}
.strengthDetail .detailBox .title{
	padding-top: calc(60px - (26px * 1.54 - 26px) / 2);
	width: 260px;
	height: 260px;
}
.strengthDetail .detailBox:nth-of-type(2) .txt dt{
	margin-top: 12px;
  font-size: 16px;
}
	font-size: min(27/768*100vw,18px);
.strengthDetail .detailBox:nth-of-type(2) .txt{
	margin-top: 18px;
}
.strengthDetail .detailBox:nth-of-type(2) .title{
	padding-top: calc(60px - (26px * 1.54 - 26px) / 2);
	margin-top: -74px;
}
.strengthDetail .detailBox:nth-of-type(2) .txt dl dt{
	margin-top: 12px;
  font-size: 16px;
}
.strengthDetail .detailBox:nth-of-type(3) .txt{
	margin-top: 18px;
}
.strengthDetail .detailBox:nth-of-type(3) .txt dl dt{
	margin-top: 12px;
  font-size: 16px;
}
.strengthDetail .detailBox:nth-of-type(3) .title{
  margin-top: -74px;
	padding-top: calc(50px - (26px * 1.54 - 26px) / 2);
}
.strengthDetail .detailBox > figure{
	margin-top: 20px;
}
#printStrengths .strengthDetail .detailBox:nth-of-type(1) .title img{
	width: 118px;
}
#printStrengths .strengthDetail .detailBox:nth-of-type(2) .title img{
	width: 131px;
}
#printStrengths .strengthDetail .detailBox:nth-of-type(3) .title img{
	width: 105px;
}
}/*-SP only-*/
@media screen and (min-width: 769px) {
.strengthDetail .detailBox .title{
	padding-top: calc(60px - (26px * 1.54 - 26px) / 2);
	width: 260px;
	height: 260px;
}
	.strengthDetail .detailBox:nth-of-type(1) .txt{
	width: 46%;
}
.strengthDetail .detailBox:nth-of-type(2) .title{
	padding-top: calc(60px - (26px * 1.54 - 26px) / 2);
	margin-top: -74px;
}
.strengthDetail .detailBox:nth-of-type(3) .title{
  margin-top: -74px;
	padding-top: calc(50px - (26px * 1.54 - 26px) / 2);
}
.strengthDetail .detailBox:nth-of-type(3) .txt{
	width: 46%;
	padding-right: 8%;
}
.strengthDetail .detailBox:nth-of-type(3) .txt dt{
	margin-top: 10px;
}
.strengthDetail .detailBox:nth-of-type(3) .txt dd + dt{
	margin-top: 20px;
}
.strengthDetail .detailBox figure{
	max-width: 300px;
}
#printStrengths .strengthDetail .detailBox:nth-of-type(1) .title img{
	width: 118px;
}
#printStrengths .strengthDetail .detailBox:nth-of-type(2) .title img{
	width: 131px;
}
#printStrengths .strengthDetail .detailBox:nth-of-type(3) .title img{
	width: 105px;
}
}/*-PC only-*/

/*printBnrArea*/
#printBnrArea{
	margin-top: 60px;
}
#printBnrArea a{
	display: block;
	background: url("../images/print_bnr_bg.png") no-repeat center center / cover;
	height: 130px;
  box-shadow: 0 4px 0 0 rgba(0, 0, 0, 0.2);
	margin-inline: 2.3%;
}
#printBnrArea a:hover{
	cursor: pointer;
}
#printBnrArea a .txts{
	display: grid;
	align-items: center;
	height: 100%;
	width: min(100%, 628px);
	margin-left: auto;
}
#printBnrArea a .txts p{
	font-size: 24px;
	text-align: center;
	color: #fff;
}
#printBnrArea a .txts p span{
	position: relative;
	display: inline-block;
	padding-right: 33px;
	font-size: 14px;
}
#printBnrArea a .txts p span::before{
	display: inline-block;
	content: '';
	width: 18px;
	aspect-ratio: 1 / 1;
	border: 2px solid #fff;
	border-radius: 20px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 0;
}
#printBnrArea a .txts p span::after{
	display: inline-block;
  content: '';
  margin-left: 10px;
  width: 6px;
  height: 6px;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  -webkit-transform: rotate(45deg) translate(-2px);
  transform: rotate(45deg) translate(-2px);
	position: absolute;
	top: calc(50% - 2px);
	right: 7px;
}
@media screen and (max-width: 768px) {	
	#printBnrArea a .txts p{
		font-size: 20px;
	}
} /* -SP- */

/*.printWorkBox*/
.printWorkBox{
	margin-top: 90px;
}
.printWorkBoxInner{
	padding: 22px 4.4% 49px;
	background-color: #fff;
}
.printWorkBox h3{
	background-color: #222222;
	border-top: 7px solid #923636;
	padding: 20px 10px 16px;
	color: #fff;
	font-size: min(6.6vw,36px);
	font-weight: 500;
	text-align: center;
}
.printWorkBoxLead{
	text-align: center;
	font-size: min(3.8vw,18px);
	line-height: 1.78em;
}
.printWorkBoxLead + .printWorkBoxLead{
	margin-top: 1.78em;
}
.printWorkBox h4{
	border-left: 2px solid #053077;
	margin-top: 35px;
	padding: 2px 0 2px 14px;
	font-size: 22px;
	color: #053077;
}
.printWorkFlow{
	position: relative;
	display: flex;
	gap: 53px;
	margin-top: 38px;
	z-index: 1;
}
.printWorkFlow li{
	position: relative;
	z-index: 2;
}
.printWorkFlow li > div{
	position: relative;
	display: flex;
	flex-direction: column;
	background-color: #fff;
	border: 2px solid #1f3963;
	border-radius: 8px;
  height: 100%;
}
#printPcbwork .printWorkFlow li:nth-of-type(1) > div,
#printPcbwork .printWorkFlow li:nth-of-type(4) > div{
	background-color: #dce2ff;
}
.printWorkFlow li:not(:last-child) > div::after{
	content: "";
	position: absolute;
	display: block;
	background-color: #1f3963;
}
#printArtwork .printWorkFlow li:nth-of-type(4){
	margin-right: 3px;
}
#printArtwork .printWorkFlow li:nth-of-type(4)::before{
	content: "";
	position: absolute;
	inset: -9px -45px -9px -9px;
	display: block;
	background-color: #dce2ff;
}
#printArtwork .printWorkFlow li:nth-of-type(4) > div{
	border-color: #5165bf;
}
#printArtwork .printWorkFlow li:nth-of-type(4) > div::after{
	background-color: #5165bf;
}
.printWorkFlow li > div div{
	position: relative;
	flex-grow: 1;
	display: grid;
	place-content: center;
	background-color: #1f3963;
	min-height: 2.6em;
	font-size: 20px;
	color: #fff;
}
.printWorkFlow li > div div > span{
	padding-inline: 10px;
	text-align: center;
}
.printWorkFlow li > div div > span span{
	display: grid;
	align-items: center;
	background-color: #fff;
	border-radius: 3px;
  width: min(100%, 13em);
	margin-top: 26px;
	margin-inline: auto;
  padding: 5px;
	font-size: 14px;
	color: #930007;
}
#printArtwork .printWorkFlow li:nth-of-type(4) > div div{
	background-color: #5165bf;
}
#printPcbwork .printWorkFlow li > div div{
	padding-block: 19px 38px;
}
.printWorkFlow li p{
	position: relative;
	min-height: 123px;
	display: grid;
	place-content: center;
	color: #1f3963;
	font-size: 18px;
	line-height: 2.33em;
}
.printWorkFlow li figure{
	position: relative;
	min-height: 123px;
	display: grid;
	place-content: center;
}
#printArtwork .printWorkFlow li figure img{
	width: calc(139 / 155);
}
#printPcbwork .printWorkFlow li figure{
	padding: 14px 19px;
}
#printPcbwork .printWorkFlow li figure img{
	margin-top: -38px;
}
.printWorkBoxInner > figure{
	margin-top: 46px;
	display: flex;
	justify-content: space-between;
	gap: 430px 6.1%;
}
.printWorkBoxInner > figure img:nth-of-type(1){
	aspect-ratio: 386 / 228;
	width: 38.6%;
}
.printWorkBoxInner > figure img:nth-of-type(2){
	aspect-ratio: 553 / 227;
	width: 55.3%;
}
@media screen and (max-width: 768px) {
	.printWorkFlow{
		flex-direction: column;
	}	
	#printArtwork .printWorkFlow li:nth-of-type(4)::before{
		inset: -9px -9px -45px -9px;
	}
	.printWorkFlow li:not(:last-child) > div::after{
		top: calc(100% + 13px);
		transform: translateX(-50%);
		left: 50%;
		width: 38px;
		height: 31px;
		clip-path: polygon(20% 0, 80% 0, 80% 32%, 100% 32%, 50% 100%, 0 32%, 20% 32%);
	}
} /* -SP- */
@media screen and (min-width: 769px) {
	.printWorkFlow li{
		flex: 1;
	}
	.printWorkFlow li:not(:last-child) > div::after{
		top: 50%;
		transform: translateY(-50%);
		left: calc(100% + 13px);
		width: 31px;
		height: 38px;
		clip-path: polygon(0 20%, 32% 20%, 32% 0, 100% 50%, 32% 100%, 32% 80%, 0 80%);
	}
} /* -PC only- */

/*#printQuality*/
#printQuality .lead{
	margin-bottom: 30px;
}
#printQuality .lead figure{
	width: 100%;
	max-width: 498px;
}
#printQuality .lead dl{
	border: 1px solid #333;
	padding: calc(50px - (26px * 1.7 - 26px) / 2) 40px;
}
#printQuality .lead dl dt{
	background: #333;
	color: #fff;
	font-size: min(39/768*100vw,26px);
	font-weight: 700;
	padding: calc(15px - (26px * 1.7 - 26px) / 2) 15px;
	text-align: center;
}
#printQuality .lead dl dd{
	font-weight: 700;
	padding-top: calc(30px - (18px * 1.7 - 18px) / 2);
	text-align: center;
}
#printQuality .bgGray{
	margin-bottom: 50px;
	padding: 40px 50px;
}
#printQuality .bgGray div{
	padding: 25px;
}
#printQuality .photoBox{
	max-width: 514px;
}
#printQuality .imgFlow{
	max-width: 1000px;
}
@media screen and (max-width: 768px) {
#printQuality .lead dl{
	margin-top: 20px;
	padding: calc(20px - (20px * 1.7 - 20px) / 2);
}
#printQuality .lead dl dd{
	padding-top: calc(15px - (14px * 1.5 - 14px) / 2);
}
#printQuality .bgGray{
	margin-bottom: 30px;
	padding: 20px 5.7%;
}
#printQuality .bgGray div{
	padding: 5.7%;
}
#printQuality .bgGray .txt{
	margin-bottom: 15px;
}
#printQuality .bgGray .photoBox img{
	margin-top: 5px;
	width: 100%;
}
}/*-SP only-*/
@media screen and (min-width: 769px) {
#printQuality .lead{
	align-items: center;
}
#printQuality .lead dl{
	width: 50%;
}
#printQuality .photoBox img{
	width: 169px;
}
#printQuality .photoBox img:not(:last-of-type){
	margin-right: 2px;
}
}/*-PC only-*/


/* */
@media screen and (max-width: 768px) {
	/*===========
.scroll-box
===========*/
.scroll-box {
  overflow-x: auto;
  padding-bottom: 10px;
  -webkit-overflow-scrolling: touch;
}
.scroll-box img {
  max-width: 100%;
  min-width: 600px;
  vertical-align: top;
}

}/*-SP only-*/
@media screen and (min-width: 769px) {
}/*-PC only-*/