.wrap {
	position: relative;
	padding-top: 0;
	z-index: 998
}

.wrap #wrapBox>div {
	position: relative
}

.wrap #wrapBox .bg {
	position: relative;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	opacity: 1
}

.seebox {
	position: relative;
	width: 1300px;
	margin: 0 auto;
	max-width: 95%
}

.titlrJ:before {
	content: "";
	position: absolute;
	width: 50px;
	height: 3px;
	background: #973434;
	bottom: -10px
}

.titlrJ {
	margin-bottom: 50px;
	display: flex;
	flex-direction: column;
	align-items: center;
	position: relative
}

.titlrJ h2 {
	font-size: 9em;
	font-weight: 900;
	color: #ffffff;
	z-index: 0;
	-webkit-text-stroke: .5px #56201e57;
	-webkit-text-fill-color: transparent;
	font-family: "Barlow", sans-serif;
	text-transform: uppercase;
}

.titlrJ p {
	font-size: 1.75em;
	font-weight: 600;
	color: #000000;
	letter-spacing: 2px;
	margin-top: -4em
}

#NewsBox .titlrJ p {
	margin-left: 15px;
	margin-top: 9px;
	letter-spacing: 0.15em
}

.JJlink {
	display: flex;
	align-items: center
}

.JJlink a {
	display: flex;
	align-items: center;
	background: #ca2423;
	padding: 10px 25px
}

.JJlink a:hover {
	background: #cca82b
}

.JJlink a span {
	color: white;
	font-size: 22px;
	padding: 0 10px;
	font-weight: 400
}

.JJlink a span.smallJ {
	font-size: 17px
}

.JJlink a svg {
	fill: white;
	width: 30px;
	height: 30px
}

.youtuabout {
	display: flex;
	padding: 90px 0 90px;
	position: relative
}

.youtuabout:before {
	content: "";
	position: absolute;
	width: 50%;
	height: calc(100% + 120px);
	left: -20%;
	top: 0;
	moz-transform-origin: bottom;
	-moz-transform: skewX(20deg);
	-webkit-transform-origin: bottom;
	-webkit-transform: skewX(-20deg);
	-o-transform-origin: bottom;
	-o-transform: skewX(-20deg);
	-ms-transform-origin: bottom;
	-ms-transform: skewX(-20deg);
	transform-origin: bottom;
	transform: skewX(-20deg);
	z-index: -2;
	background-image: url(/images/46/aka_JJ_bg.webp);
	background-position: 50% 50%;
	background-size: 150%;
	background-repeat: no-repeat
}

.youtuabout:after {
	content: "";
	position: absolute;
	width: 38%;
	height: calc(100% + 120px);
	background: #c6c6c6;
	right: -28%;
	top: 0;
	moz-transform-origin: bottom;
	-moz-transform: skewX(20deg);
	-webkit-transform-origin: bottom;
	-webkit-transform: skewX(-20deg);
	-o-transform-origin: bottom;
	-o-transform: skewX(-20deg);
	-ms-transform-origin: bottom;
	-ms-transform: skewX(-20deg);
	transform-origin: bottom;
	transform: skewX(-20deg);
	z-index: -2;
	background-image: url(/images/46/aka_JJ_bg.webp);
	background-position: 50% 50%;
	background-size: 150%;
	background-repeat: no-repeat
}

#bookBox {
	background: #fff;
	padding: 0
}

#bookBox .list .slick-list li {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-end;
	background-image: url(/images/46/pn_bg.jpg)
}

#bookBox .topBox {
	position: absolute;
	width: 50%;
	left: 240px;
	top: 140px;
	display: flex;
	z-index: 9
}

#bookBox .topBox h2 {
	line-height: 120%;
	display: flex;
	flex-direction: column;
	font-size: 9em;
	top: -72px;
	left: 100px;
	font-weight: 900;
	color: #ffffff;
	z-index: 0;
	-webkit-text-stroke: .5px #56201e57;
	-webkit-text-fill-color: transparent;
	font-family: "Barlow", sans-serif;
	text-transform: uppercase;
}

#bookBox .topBox .title {
	position: absolute;
}

#bookBox .topBox b {
	font-size: 1.75em;
	font-weight: 500;
	letter-spacing: 0.25em;
	margin-left: 20px
}

#bookBox .topBox .more {
	text-align: right
}

#bookBox .list ul li .img {
	width: 50%;
	overflow: hidden;
	position: relative;
	z-index: 1;
	order: 2
}

#bookBox .list ul li .img img {
	position: relative;
	width: 100%;
	height: 35vw;
	object-fit: cover;
	z-index: 1
}

#bookBox .list ul li .info {
	position: relative;
	width: calc(45% - 250px);
	z-index: 2;
	padding-bottom: 85px;
	padding-left: 250px;
}

#bookBox .list ul li .info:before {
	content: "";
	position: absolute;
	width: 111%;
	height: 1px;
	background: #bababa57;
	top: -40px;
	left: 0%;
}

#bookBox .list ul li .info h3 a {
	height: auto;
	font-weight: 500;
	font-size: 22px;
	color: #2d2c2c;
	margin-bottom: 15px
}

#bookBox .list ul li .info p {
	color: #605f5f;
	height: auto;
	letter-spacing: 2px;
	font-size: 1em;
	font-weight: 400;
}

#bookBox .abcallJtop {
	position: relative;
	display: flex;
	left: 0;
	bottom: 0;
	margin-top: 60px
}

#bookBox .list ul li .info .more {
	text-align: left
}

#bookBox .slick-dots {
	bottom: 0;
	width: 150px;
	height: 100%;
	border-right: 1px solid #d8d8d8;
	display: flex !important;
	align-items: center;
	justify-content: center;
	flex-direction: column
}

#bookBox .slick-dots li {
	width: 15px;
	height: 2px;
	margin: 10px 0
}

#bookBox .slick-dots li button {
	width: 15px;
	height: 2px;
	padding: 0;
	background: #666
}

#bookBox .slick-dots li button:before {
	display: none
}

#bookBox .slick-dots li.slick-active button {
	width: 30px
}

.wrap #wrapBox .maflyJ {
	position: absolute;
	left: -180px;
	z-index: 9;
	margin-top: -200px;
}

.wrap #wrapBox .maflyJ img {
	width: 500px;
	animation: rotme 5s linear infinite;
}

@keyframes rotme {
	0% {
		transform: rotate(0rad);
	}

	25% {
		transform: rotate(0.05rad);
	}

	50% {

		transform: rotate(-0.0178rad);
	}

	75% {
		transform: rotate(-0.108rad);
	}

	100% {
		transform: rotate(0rad);
	}
}

#ginbox {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	background: #fcfcfc;
	padding: 45px 0;
	margin-top: 0;
	border-bottom: #eaeaea 1px solid;
	background: linear-gradient(321deg, #56201e, #973434);
	width: 60%;
	margin: -150px auto 0;
	border-radius: 25px;
	z-index: 5;
}

#ginbox .titleJP {
	display: flex
}

#ginbox .titleJP h2 {
	font-size: 1.75em;
	color: #fff;
	font-weight: 500
}

#ginbox .bawan {
	display: flex;
	width: 100%;
	align-items: flex-start;
	justify-content: center
}

#ginbox .bitem {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	width: calc((100%/4) - 50px);
	margin: 0 0
}

#ginbox .bitem img {
	width: 85px;
	margin-bottom: 10px;
	-webkit-filter: contrast(0) brightness(150%);
	filter: contrast(0) brightness(200%)
}

#ginbox .bitem .masslink {
	position: absolute;
	width: 100%;
	height: 100%
}

#ginbox .bitem:hover svg {
	background-color: #33b51d
}

#ginbox .bitem:hover svg .cls-1 {
	fill: white
}

#ginbox .badot {
	width: 6px;
	height: 6px;
	background: #494949;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	margin: 0 4px
}

#ginbox .badot.shaw {
	background: #33b51d
}

#ginbox .bitem h3 {
	font-size: 1.3em;
	font-weight: 500;
	color: #fff
}

#ginbox .bitem p {
	font-size: 1em;
	color: #fff;
	margin-bottom: 5px;
	word-break: keep-all;
	text-align: center;
	margin-top: 15px;
	opacity: .7;
	font-weight: 200
}

#ginbox .bitem span {
	font-size: 16px;
	color: #494949;
	font-weight: 400
}

#ginbox .bitem svg {
	width: 50px;
	border: #bdbdbd 1px solid;
	border-radius: 50%;
	padding: 15px;
	margin: 10px 0;
	fill: #636363;
	transition: all linear 0.3s
}

#ginbox .bitem.Jboom svg {
	width: 50px;
	border: #33b51d 1px solid;
	fill: #f4b362
}

#mshareBox {
	position: relative;
	padding: 80px 0 0px
}

#mshareBox:before {
	content: "";
	position: absolute;
	width: 218px;
	aspect-ratio: 5 / 4;
	background-image: url(/images/46/winddow.png);
	right: 137px;
	top: 63px;
	background-repeat: no-repeat;
	background-size: contain
}

#mshareBox .workframe {}

#shareBox {
	margin-top: 50px
}

#shareBox .slick-slider {
	margin-bottom: 0
}

#shareBox li {
	background: #f6f6f6;
	border-radius: 3px;
	outline: 1px solid rgb(0 0 0 / 15%);
	outline-offset: -15px;
	margin: 10px;
	aspect-ratio: 4 / 3;
	display: flex
}

#shareBox li .text {
	padding: 25px 50px;
	position: relative
}

#shareBox li .text:before {
	content: "”";
	font-size: 100px;
	position: absolute;
	top: -15px;
	right: -20px;
	line-height: 100%
}

#shareBox li h3 {}

#shareBox li p {
	color: #ffcd36;
	font-size: 14px
}

#shareBox li article {
	overflow: hidden;
	height: 135px;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 5;
	-webkit-box-orient: vertical;
	font-size: 15px;
	margin-top: 5px
}

#shareBox .slick-dots li button {
	width: 10px;
	height: 2px;
	padding: 6px
}

#shareBox .slick-dots li button:before {
	content: '';
	width: 10px;
	height: 1px;
	line-height: 0px;
	background: #000
}

#shareBox .slick-dots {
	position: relative;
	margin-top: 15px;
	bottom: 0
}

#shareBox .slick-dots li {
	width: 10px;
	height: 1px;
	display: inline-flex;
	background: none;
	border-radius: unset;
	margin: 0 5px;
	outline-offset: unset;
	outline: unset
}

.youtuabout .mJbox {
	display: flex
}

.youtuabout .videoXbox {
	display: flex;
	flex-direction: column;
	width: 55%
}

.youtuabout .videoXbox iframe {
	width: 100%;
	height: 520px
}

.youtuabout .textXbox {
	display: flex;
	flex-direction: column;
	width: 45%;
	justify-content: center;
	padding: 0 60px;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box
}

.youtuabout .imfoJ {
	display: flex;
	margin-bottom: 50px
}

.youtuabout .imfoJ p {
	font-size: 16px;
	color: #111111;
	font-weight: 400;
	text-align: justify;
	line-height: 230%
}

.about-block {
	background-repeat: no-repeat;
	background-size: contain;
	background-attachment: fixed;
	background-position-y: bottom
}

.about-block .editor {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	justify-content: center;
	gap: 10rem;
	padding: 4rem 0
}

.about-block .editor::before,
.about-block .editor::after {
	display: none
}

.about-block .editor .part-01,
.about-block .editor .part-02 {
	width: 600px
}

.about-block .slogan-01 {
	font-size: 26px;
	color: #bdad84;
	font-weight: 400;
	letter-spacing: 2px;
	padding: 0 0 20px;
	margin: 0;
	font-family: 'Noto Serif TC', serif
}

.about-block .slogan-02 {
	color: #bdad84;
	font-size: 20px;
	font-weight: 500;
	letter-spacing: 5px;
	padding: 0;
	margin: 0;
	font-family: 'Noto Serif TC', serif
}

.about-block .description {
	color: #8a877f;
	font-size: 17px;
	font-weight: 300;
	letter-spacing: 4px;
	line-height: 2
}

.about-block .description p {
	font-family: 'Noto Serif TC', serif
}

.about-block .description span {
	font-size: 30px;
	letter-spacing: 15px;
	font-weight: 400;
	color: #bdad84
}

.about-block .vertical-line {
	content: '';
	height: 150px;
	width: 1px;
	background: #dcdcdc
}

.wrap #wrapBox .haha_bg {
	width: 93%;
	height: 69%;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: -1
}

#aboutBox {
	padding: 10px 0 160px;
	position: relative
}

#aboutBox:before {
	content: "";
	position: absolute;
	width: 199px;
	aspect-ratio: 5 / 4;
	background-image: url(/images/46/dot.png);
	bottom: -22px;
	left: 249px;
	z-index: 0;
	background-repeat: no-repeat;
	background-size: contain
}

#aboutBox p.more {
	text-align: left;
	margin-left: 30px
}

#aboutBox .deck01 {
	top: -15px;
	left: 80%;
	transform: translateX(-50%);
	position: absolute;
	width: 100%;
	z-index: 2
}

#aboutBox .deck01 .serviceTitle,
#bookBox .deck01 .bookTitle {
	font-size: 9em;
	line-height: 90%;
	color: #f7f7f7;
	font-weight: 700;
	text-align: center;
	text-transform: uppercase;
	font-family: "Barlow", sans-serif;
}

#aboutBox .describe_about {
	position: relative;
	display: flex;
	flex-direction: column
}

#aboutBox .abtop_title {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	justify-content: center;
	gap: 0rem;
	padding: 3rem 0 1rem;
	position: absolute;
	width: 100%;
	top: 40px;
	z-index: 9
}

#aboutBox .abtop_title .subtitle01 {
	width: 56%;
	display: flex;
	justify-content: center
}

#aboutBox .abtop_title .subtitle02 {
	width: 45%;
	display: flex;
	justify-content: flex-end;
	margin-right: 15%
}

#aboutBox .abtop_title h4 {
	flex-shrink: 0;
	font-size: 20px;
	color: #8a877f;
	letter-spacing: 5.5px;
	line-height: 150%;
	font-weight: 500
}

#aboutBox .abtop_title h4.img_text02 {
	display: flex;
	font-weight: 500;
	letter-spacing: 0.05em;
	color: #000000;
	font-size: 26px;
	line-height: 130%;
	letter-spacing: 2.5px;
	font-weight: 500;
	padding-bottom: 5px
}

#aboutBox .abtop_title span {
	color: #bdad84;
	font-family: 'Cormorant', serif;
	font-weight: 500;
	line-height: 140%;
	letter-spacing: 0.5px;
	text-transform: uppercase;
	display: inline-block;
	margin-left: 20px;
	display: none
}

#aboutBox .flex_box {
	display: flex
}

#aboutBox .flex_box img {
	z-index: -1;
	border-radius: 0px 40px 15px 0px;
}

#aboutBox .rightbox {
	display: flex;
	flex-direction: column;
	width: 50%
}

#aboutBox .leftbox {
	display: flex;
	flex-direction: column;
	width: 55%;
	margin-left: 3%;
	margin-l CONTAIN-INTRINSIC-BLOCK-SIZE: AUTO 100PX;
	margin-l CONTAIN-INTRINSIC-BLOCK-SIZE: AUTO 100PX;
	position: absolute;
	right: 0%;
	top: 130px;
	padding: 60px 60px;
	background-image: url(/images/46/pn_bg.jpg);
	border-radius: 40px 0px 0 0;
}

#aboutBox .leftbox article {
	padding: 20px 30px 10px
}

.flyitem img {
	position: absolute;
	top: -226px;
	right: 9%;
	width: 28%;
	z-index: 4;
	animation: tada2 11s linear infinite alternate forwards
}

@keyframes tada2 {
	from {
		transform: scale3d(1, 1, 1)
	}

	10%,
	20% {
		transform: scale3d(1, 1, 1) rotate3d(0, 0, 1, -3deg)
	}

	30%,
	50%,
	70%,
	90% {
		transform: scale3d(1, 1, 1) rotate3d(0, 0, 1, 3deg)
	}

	40%,
	60%,
	80% {
		transform: scale3d(1, 1, 1) rotate3d(0, 0, 1, -3deg)
	}

	to {
		transform: scale3d(1, 1, 1)
	}
}

#productBox .workframe {
	position: relative;
	width: 100%
}

#productBox .proList {
	padding: 0 0 1vw
}

#productBox .proList li {
	position: relative;
	padding: 0;
	-webkit-transition: all .5s ease;
	-o-transition: all .5s ease;
	transition: all .5s ease
}

#productBox .proList li.slick-slide {
	-moz-transform: scale(0.8);
	-webkit-transform: scale(0.8);
	-o-transform: scale(0.8);
	-ms-transform: scale(0.8);
	transform: scale(0.8);
	z-index: -1;
	margin: 0 -30px;
	opacity: 0.4
}

#productBox .proList li.slick-center {
	z-index: 1;
	-webkit-transform: scaleY(0.9);
	-ms-transform: scaleY(0.9);
	transform: scaleY(0.9);
	opacity: 1
}

#productBox .proList .item {
	margin: 30px auto;
	position: relative;
	width: 100%;
	max-width: 1180px;
	-webkit-box-shadow: 0px 5px 30px -5px rgba(0, 0, 0, 0.3);
	box-shadow: 0px 5px 30px -5px rgba(0, 0, 0, 0.3)
}

#productBox .proList .item .Img {
	position: relative
}

#productBox .proList .item .Img a.photo:after {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgb(0 0 0 / 0.2);
	content: ""
}

#productBox .proList .item .info {
	position: absolute;
	left: 50%;
	bottom: 35px;
	-webkit-transform: translate(-50%, 0);
	-ms-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
	text-align: center
}

#productBox .proList .item .info h3 {
	text-align: center;
	color: #fff;
	font-size: 2.4rem;
	font-weight: bold;
	text-shadow: 0px 0px 10px rgb(0 0 0 / 0.5);
	-webkit-line-clamp: 1
}

#productBox .proList .item .info article p {
	text-align: center;
	color: #ffffff;
	font-weight: 500;
	text-shadow: 0 0 10px rgb(0 0 0 / 0.3);
	-webkit-line-clamp: 2
}

#productBox2 {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 5px 0 0px;
	background-position: 50% 50%;
	background-size: 160%;
	background-repeat: no-repeat
}

#productBox2:before {
	content: "";
	position: absolute;
	width: 100%;
	height: calc(100% + 157px);
	background: url(/images/46/poc_bg.jpg);
	top: -146px;
	z-index: -3;
}

#productBox2 a.photo {
	-webkit-clip-path: url(#clip_product);
	clip-path: url(#clip_product);
	aspect-ratio: 13 / 12
}

#productBox2 .Img {
	width: 95%;
	width: 350px;
	-webkit-transition: all .5s ease;
	-o-transition: all .5s ease;
	transition: all .5s ease;
	max-width: 95%
}

#productBox2 .Img:hover {
	filter: drop-shadow(0px 0px 0px rgb(202 36 35))
}

#productBox2 ul {
	max-width: 100%
}

#productBox2 .slick-prev:before,
#productBox2 .slick-next:before {
	color: #444444;
	font-size: 42px
}

#productBox2 .slick-prev:before {
	content: "〈"
}

#productBox2 .slick-next:before {
	content: "〉"
}

#productBox2 .slick-prev {
	left: -80px;
	top: 40%;
}

#productBox2 .slick-next {
	right: -80px;
	top: 40%;
}

#productBox2 ul li {
	margin: 0 5px
}

#productBox2 ul .item {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center
}

#productBox2 ul .item p.ponumber {
	position: absolute;
	left: 35px;
	top: 10px;
	font-weight: 600;
	font-family: "Poppins", sans-serif
}

#productBox2 .JJlink a {
	background-color: unset;
	border: #666666 1px solid;
	padding: 15px 15px
}

#productBox2 .JJlink a:hover {
	background: #ca2423;
	border: #ca2423 1px solid
}

#productBox2 .JJlink a:hover svg {
	fill: white
}

#productBox2 .JJlink a:hover span.smallJ {
	color: white
}

#productBox2 .JJlink a span.smallJ {
	color: #454545;
	font-size: 15px;
	font-weight: 600
}

#productBox2 .JJlink a svg {
	fill: #4c4c4c
}

#productBox2 .info {
	position: relative;
	padding: 12px 0 40px;
}

#productBox2 .maskJlink a {
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0
}

#productBox2 .info .text-clamp {
	overflow: hidden;
	margin: 10px 0;
	height: 28px;
	text-align: center;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
	padding: 0 0px;
	font-size: 1.3em;
}

#productBox2 .info p.text-clamp {
	text-align: left;
	-webkit-line-clamp: 2;
	height: 52px;
	font-size: 1em
}

#productBox2 .info:before {
	content: "";
	width: 2px;
	height: 40px;
	position: absolute;
	background: #6c6c6c;
	margin-left: calc(50% - 1px);
	margin-top: 45px;
	display: none
}

#productBox2 .info h3 {
	font-size: 1.5em;
	font-weight: 600;
	letter-spacing: 1px
}

.contoebox {
	padding-bottom: 30px
}

#Customization-1 {
	display: none;
}

#Customization-1 .flexbox {
	display: flex;
	justify-content: center;
	margin: 0px auto 70px
}

#Customization-1 .flexbox .item-J {
	display: flex;
	flex-direction: column;
	padding: 40px 50px;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	width: 450px;
	box-shadow: 1px 0px 9px 5px rgb(229 229 229 / 17%);
	background-color: white;
	margin: 0 2px;
	justify-content: space-between;
	min-height: 230px
}

#Customization-1 .flexbox .item-J .topvox {
	display: flex;
	margin-bottom: 20px
}

#Customization-1 .flexbox .item-J .topvox p {
	font-weight: 400;
	font-size: 18px
}

#Customization-1 .flexbox .item-J .bomvox {
	display: flex;
	justify-content: space-between
}

#Customization-1 .flexbox .item-J .bomvox span {
	color: #a5a5a5;
	font-weight: 500
}

#Customization-1 .flexbox .item-J .bomvox span:first-child {
	color: #caa923
}

#NewsBox {
	padding: 90px 0px 0 0px
}

#NewsBox ul {
	border-top: 1px solid rgb(47 47 47 / 10%);
	padding: 10px 0 0;
	margin-bottom: 0
}

#NewsBox .workframe {
	display: flex;
	margin-bottom: 0px;
	align-items: center
}

#NewsBox .workframe .row {
	width: calc(100% - 0px);
	margin-left: 0;
	margin-top: 0
}

#NewsBox:after {
	position: absolute;
	height: 466px;
	width: 360px;
	top: -328px;
	right: -66px;
	background-image: url(/images/46/img_n_bg01.png);
	z-index: -2;
	background-size: cover;
	transform-origin: top left;
	transition: all 1.1s ease-in-out;
	-webkit-transition: all 1.1s ease-in-out
}

#NewsBox .NewsTxt {
	display: inline-block;
	text-transform: uppercase;
	font-size: 45px;
	letter-spacing: 3px;
	color: #505050;
	font-weight: 500;
	max-height: 260px;
	-webkit-writing-mode: vertical-lr;
	-ms-writing-mode: tb-lr;
	writing-mode: vertical-lr
}

#NewsBox .bgTxt.title {
	display: flex;
	background: url(/images/46/img_n_t_bg.png) repeat top/contain;
	align-items: flex-start;
	padding: 50px 20px 40px 30px;
	justify-content: center;
	width: auto
}

#NewsBox .bgTxt.title::before {
	content: "";
	position: absolute;
	left: calc(50% - 6.5px);
	top: -40px;
	width: 1px;
	height: 70px;
	background-color: #9c9276
}

#NewsBox .bgTxt.title .titleEn {
	border-bottom: 0px solid #bdad84
}

#NewsBox .bgTxt.title h3,
#NewsBox .titleEn {
	color: #fff
}

#NewsBox .bgTxt.title h3 {
	font-size: 28px
}

#NewsBox ul.newsList li {
	position: relative;
	font-size: 0;
	margin: 0px 0 0px;
	border-bottom: 1px solid rgb(47 47 47 / 10%)
}

#NewsBox ul.newsList li:hover {
	background: white
}

#NewsBox ul.newsList li:hover .info_box .Nmore {
	right: 15px;
	-webkit-animation: ani-arrow-x 1.2s infinite;
	animation: ani-arrow-x 1.2s infinite
}

#NewsBox ul.newsList li .info_box {
	padding: 30px 8px;
	display: flex;
	position: relative;
	flex-direction: row
}

#NewsBox ul.newsList li .info_box .lebox {
	width: calc(100% - 20px);
	display: flex
}

#NewsBox ul.newsList li .info_box .rebox {
	width: 20px;
	display: flex
}

#NewsBox ul.newsList li .info_box .Nmore {
	position: absolute;
	right: 20px;
	top: 22%;
	-webkit-transition: 0.5s;
	transition: 0.5s
}

#NewsBox ul.newsList li a {
	position: absolute;
	width: calc(100% - 0px);
	height: 100%;
	top: 0;
	left: 0
}

#NewsBox ul li font.arrow {
	position: relative;
	padding: 0;
	width: 1px;
	height: 30px;
	background: #272727
}

#NewsBox ul li font.arrow:before {
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 13px 7px 0 0;
	border-color: #272727 transparent transparent transparent;
	left: 0;
	bottom: -1px;
	content: "";
	color: #272727
}

#NewsBox ul.newsList li p.time {
	margin-right: 10px;
	width: 90px;
	display: inline-block;
	line-height: 27px;
	color: #1f1f1f;
	font-weight: 500;
	font-size: 16px;
	display: flex;
	justify-content: center;
	align-items: center;
	font-family: "Poppins", sans-serif
}

#NewsBox ul.newsList li p.CategoryName {
	padding: 6px 15px;
	background: #c82423;
	color: white;
	margin: 0 50px;
	font-size: 14px
}

#NewsBox ul.newsList li p.txt {
	width: calc(100% - 300px);
	display: -webkit-inline-box;
	overflow: hidden;
	font-weight: 400;
	line-height: 160%;
	max-height: initial;
	text-overflow: ellipsis;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
	font-size: 18px;
	color: #1f1f1f
}

#NewsBox ul.newsList li .noBox {
	position: absolute;
	font-weight: 400;
	font-size: 13px;
	top: calc(100% - 22px);
	right: 67px
}

@-webkit-keyframes ani-arrow-x {

	0%,
	100% {
		-webkit-transform: translateX(0)
	}

	50% {
		-webkit-transform: translateX(5px)
	}
}

@keyframes ani-arrow-x {

	0%,
	100% {
		transform: translateX(0)
	}

	50% {
		transform: translateX(5px)
	}
}

#bookBox {
	font-size: 0;
	padding-top: 0;
	position: relative
}


#bookBox ul {
	margin-bottom: 0;
}

#bookBox .deck01 {
	top: 30px;
	left: 50%;
	transform: translateX(-50%);
	position: absolute
}

#bookBox .row {
	position: relative;
	width: 100%
}

#bookBox #BookList {
	padding-bottom: 2vh
}

#bookBox #BookList ul {
	padding-bottom: 6vh
}

#bookBox #BookList ul li {
	position: relative;
	width: 100%;
	max-width: 1180px;
	margin: 20px
}

#bookBox #BookList ul li.slick-slide {
	position: relative;
	-moz-transform: scale(0.9);
	-webkit-transform: scale(0.9);
	-o-transform: scale(0.8);
	-ms-transform: scale(0.9);
	transform: scale(0.9);
	z-index: -1;
	margin: 0 0px;
	filter: blur(3px)
}

#bookBox #BookList ul li.slick-slide:after {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: rgb(255 255 255 / 78%);
	content: ""
}

#bookBox #BookList ul li.slick-center {
	z-index: 1;
	-webkit-transform: scaleY(1);
	-ms-transform: scaleY(1);
	transform: scaleY(1);
	filter: none
}

#bookBox #BookList ul li.slick-center:after {
	display: none
}

#bookBox #BookList ul li h3 {
	position: absolute;
	width: 100%;
	left: 0;
	bottom: 35px
}

#bookBox #BookList ul li h3 a {
	height: 70px;
	color: #fff;
	font-size: 3rem;
	font-weight: 400;
	font-family: 'Noto Serif TC', serif;
	text-align: center;
	-webkit-line-clamp: 1;
	opacity: 0
}

#bookBox .nowrap_box.arrow_box {
	width: 110%;
	display: flex;
	flex-direction: row;
	justify-content: space-around;
	position: absolute;
	z-index: 20;
	left: 50%;
	top: 40%;
	transform: translate(-50%, -70%)
}

#bookBox .arrow_box a {
	position: relative;
	background-color: #ffffff;
	-webkit-box-shadow: 0 8px 30px rgb(0 0 0 / 16%);
	box-shadow: 0 8px 30px rgb(0 0 0 / 16%);
	box-sizing: border-box;
	width: 90px;
	height: 60px;
	display: flex
}

#bookBox .arrow_box a.next {
	-webkit-transform: scaleX(-1);
	transform: scaleX(-1);
	margin-left: 20px
}

#bookBox .arrow_box a:before,
#bookBox .arrow_box a:after {
	position: absolute;
	width: 15px;
	height: 1px;
	background: #808080;
	display: block;
	top: 50%;
	left: calc((100% - 13px) / 2);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	-webkit-transform-origin: left;
	transform-origin: left;
	content: ""
}

#bookBox .arrow_box a:after {
	content: "" -webkit-transform:rotate(-45deg);
	transform: rotate(-45deg)
}

#index_co {
	background-image: url(/images/46/co_bg.webp);
	background-attachment: fixed;
	padding: 50px 0 70px
}

#index_co .bbigtitle {
	display: flex;
	flex-direction: column;
	align-items: center
}

#index_co .bbigtitle h3 {
	font-size: 100px;
	color: white;
	font-weight: 400;
	font-family: "Lora", serif
}

#index_co .cofle {
	display: flex;
	justify-content: center;
	padding: 0
}

#index_co .cofle .tidmco {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 500px;
	max-width: 50%
}

#index_co .cofle .tidmco:first-child:before {
	content: "";
	width: 1px;
	height: 90%;
	position: absolute;
	background: rgb(255 255 255 / 14%);
	left: calc(100% - 1px)
}

#index_co .cofle .tidmco a {
	display: flex;
	flex-direction: column;
	align-items: center
}

#index_co .cofle .tidmco svg {
	width: 40px;
	height: 51px;
	display: flex;
	flex-direction: column;
	align-items: center;
	fill: white;
	margin-bottom: 20px
}

#index_co .cofle .tidmco p,
#index_co .cofle .tidmco b {
	color: white;
	text-align: center;
	font-family: "Lora", serif
}

#index_co .cofle .tidmco p.lee {
	font-size: 22px;
	font-family: 'Noto Sans TC', serif;
	font-weight: 500
}

#index_co .cofle .tidmco p.ponn {
	font-size: 40px;
	font-weight: 600;
	line-height: 150%;
	font-family: "Lora", serif
}

#index_co .cofle .tidmco span {
	color: white;
	font-size: 15px
}

.serviceArea {
	padding: 40px 0 110px
}

.serviceArea .titleBox {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 2vw 0 5vw
}

.serviceArea .titleBox .titleTw {
	font-size: 36px;
	letter-spacing: 9.5px;
	font-family: 'Noto Serif TC', serif;
	color: #bdad84;
	text-align: center
}

.serviceArea .titleBox .exp {
	padding-top: 20px;
	padding-bottom: 40px;
	display: inline-block;
	font-size: 17px;
	line-height: 180%;
	font-weight: 400;
	color: #474747;
	font-family: 'Noto Serif TC', serif;
	text-align: center;
	width: 100%
}

.serviceList {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	width: -webkit-calc(100% + 138px);
	width: -moz-calc(100% + 138px);
	width: calc(100% + 138px);
	position: relative;
	left: -68px
}

#pagination {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 20px 0 15px
}

#pagination li {
	font-size: 23px;
	border: #bdad8487 1px solid;
	width: 20px;
	height: 20px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	margin: 10px 2px;
	color: #bdad84;
	border-radius: 25px;
	padding: 4px 3px 4px 5px;
	cursor: pointer
}

#pagination li.active {
	background: #bdad84;
	color: white
}

.serviceList .serviceItem {
	width: 25%;
	position: relative
}

.serviceList .serviceItem:before {
	content: "";
	display: block;
	width: 1px;
	height: 100%;
	background-color: rgb(0 0 0 / 7%);
	position: absolute;
	top: 0;
	left: 0;
	bottom: auto;
	right: auto
}

.serviceList .item {
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	flex-wrap: wrap;
	padding: 0 48px
}

.serviceList .Img {
	width: 100px
}

.serviceList .Img img {
	display: block;
	width: 100%
}

.serviceList .title {
	color: #bdad84;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 3.5px;
	line-height: 2.25;
	width: calc(100% - 120px);
	padding-left: 20px;
	display: flex;
	align-items: baseline
}

.serviceList .title span {
	font-family: 'Cormorant', serif
}

.serviceList .exp {
	color: #8a877f;
	font-weight: 400;
	padding-top: 10px;
	width: 100%
}


@media (max-width:1680px) {
	#aboutBox .rightbox img {
		height: 550px;
		object-fit: cover
	}

	#ginbox {
		padding-top: 0
	}

	#bookBox .topBox {
		left: 250px
	}

	#bookBox .list ul li .info {
		padding-left: 250px
	}

	#aboutBox .rightbox img {
		height: 495px;
		object-fit: cover;
		object-position: 50% 8%;
		max-width: 100%;
	}

	#ginbox {
		padding-top: 0
	}

	#bookBox .topBox {
		left: 250px
	}

	#bookBox .list ul li .info {
		padding-left: 250px
	}
}

@media (max-width:1470px) {
	.wrap #wrapBox .maflyJ img {
		width: 300px;
	}

	.wrap #wrapBox .maflyJ {
		left: -124px;
		margin-top: -348px;
	}

	.serviceList {
		width: 100%;
		left: 0;
		margin: 25px auto 0
	}

	.serviceList .item {
		padding: 0 20px
	}

	.serviceList .title {
		font-size: 30px
	}

	#NewsBox:after {
		width: 250px;
		height: 300px;
		top: -132px
	}

	#ginbox .bitem img {
		width: 70px
	}

	#bookBox .slick-dots {
		width: 80px;
		padding-right: 20px
	}

	#bookBox .topBox {
		left: 150px
	}

	#bookBox .list ul li .info {
		padding-left: 150px;
		width: calc(45% - 200px)
	}

	#bookBox .list ul li .img img {
		height: 40vw
	}

	.contoebox {
		padding-bottom: 1px
	}

	.seebox {
		width: 1160px
	}

	#aboutBox .leftbox article {}

	#aboutBox .leftbox {
		padding: 0 3% 0px 0%;
		top: 71px;
		margin-left: 0;
	}

	#aboutBox .abtop_title .subtitle02 {
		margin-right: 8%
	}

	#productBox2 .info p.text-clamp {}

	#aboutBox .deck01 .serviceTitle,
	#bookBox .deck01 .bookTitle {
		font-size: 8em
	}

	#aboutBox .abtop_title {
		top: -17px
	}

	#shareBox li .text {
		padding: 25px 38px
	}

	.serviceList {
		width: 100%;
		left: 0;
		margin: 25px auto 0
	}

	.serviceList .item {
		padding: 0 20px
	}

	.serviceList .title {
		font-size: 30px
	}

	#shareBox {
		width: 90%;
		margin: 0 auto
	}

	#aboutBox:before {
		width: 180px;
		bottom: -58px
	}

	#mshareBox:before {
		top: 40px;
		width: 162px;
		right: 149px
	}

	#NewsBox:after {
		width: 250px;
		height: 300px;
		top: -132px
	}

	#ginbox .bitem img {
		width: 70px
	}

	#ginbox {
		padding: 30px 0 30px;
		width: 70%;
		margin: -140px auto 0;
	}

	#ginbox .bitem {
		width: calc((100%/4) - 20px);
	}

	#bookBox .slick-dots {
		width: 80px;
		padding-right: 20px
	}

	#bookBox .topBox {
		left: 150px
	}

	#bookBox .list ul li .info {
		padding-left: 150px;
		width: calc(45% - 200px)
	}

	#bookBox .list ul li .img img {
		height: 40vw
	}
}

@media screen and (max-width:1300px) {
	#mshareBox .workframe {
		width: 90%
	}
}

@media screen and (max-width:1280px) {
	#productBox2 .slick-prev {
		left: -65px
	}

	#productBox2 .slick-next {
		right: -20px
	}

	.youtuabout:after {
		display: none
	}

	#aboutBox .deck01,
	#bookBox .deck01 {}

	.about-block .editor .part-01,
	.about-block .editor .part-02 {
		width: 390px
	}

	.about-block .editor {
		gap: 3rem
	}

	.flyitem img {
		top: -75px
	}

	#Customization-1 .flexbox .item-J {
		padding: 40px 20px
	}

	#Customization-1 .flexbox .item-J .topvox p {
		font-size: 17px;
		font-weight: 500
	}

	.youtuabout .mJbox {
		display: flex;
		flex-direction: column;
		align-items: center
	}

	.youtuabout .videoXbox {
		width: 100%
	}

	.youtuabout .textXbox {
		width: 100%;
		padding: 0 15px
	}

	#bookBox .list ul li .img img {
		height: 50vw
	}

	#bookBox .topBox {
		top: 40px;
		width: 30%
	}
}




@media screen and (max-width:1180px) {
	.serviceArea .titleBox .exp {
		padding-top: 12px
	}

	.serviceList .serviceItem {
		width: 50%;
		margin: 20px 0
	}

	.serviceList .title {
		font-size: 26px;
		font-weight: 500;
		letter-spacing: 2px
	}

	#bookBox .arrow_box a {
		width: 80px;
		height: 45px
	}

	.serviceArea .titleBox {
		display: flex;
		flex-direction: column;
		align-items: center
	}

	.serviceArea .titleBox .titleTw {
		margin-top: 0px;
		font-size: 27px;
		letter-spacing: 5.5px
	}

	#ginbox .bitem {
		width: 27.3%
	}
}

@media (max-width:1180px) and (min-width:769px) {
	.serviceList .serviceItem:nth-child(odd):before {
		opacity: 0
	}
}

@media screen and (max-width:1024px) {
	#aboutBox:before {
		width: 120px;
		bottom: 1px;
		display: none
	}

	#aboutBox {
		padding: 50px 0 0px
	}

	#mshareBox:before {
		top: 0;
		display: none
	}

	#mshareBox {
		padding: 0 0
	}

	#aboutBox .leftbox article {
		padding: 50px 30px
	}

	#bookBox .list ul li .img img {
		height: 60vw
	}

	#bookBox .topBox {
		left: 5%;
	}

	#bookBox .list ul li .info {
		padding-left: 5%;
		width: 45%
	}

	#bookBox .slick-dots {
		display: none !important
	}

	#aboutBox .flex_box {
		display: flex;
		flex-direction: column
	}

	#aboutBox .rightbox {
		width: 100%
	}

	#aboutBox .leftbox {
		width: 100%;
		top: 0;
		position: relative;
		margin-left: 0
	}

	#aboutBox .abtop_title,
	#aboutBox .deck01 {
		display: none
	}

	#aboutBox .abcallJtop {
		display: none
	}

	#ginbox {
		margin: 0px auto 0;
		width: 980px;
		max-width: 90%;
	}
}

@media screen and (max-width:980px) {
	.youtuabout:before {
		display: none
	}

	#aboutBox .info .title {
		margin-bottom: 32px
	}

	#bookBox #BookList ul li.slick-slide {
		margin: 0
	}

	#bookBox .nowrap_box.arrow_box {
		transform: translate(-50%, -120%);
		width: 160%
	}

	#bookBox .arrow_box a {
		width: 45px
	}

	#bookBox #BookList ul {
		padding-bottom: 0vh
	}

	#NewsBox {
		padding: 20px 0px 10px 0px
	}

	#bookBox {
		padding-top: 20px
	}

	.about-block .editor {
		gap: 1rem;
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		padding: 3rem 0;
		width: 90%
	}

	.about-block .slogan-01 {
		padding: 0 0 8px
	}

	.about-block .slogan-01,
	.about-block .description span {
		font-size: 24px
	}

	.about-block .slogan-02 {
		font-size: 18px
	}

	.about-block .description span {
		letter-spacing: 8px
	}

	.about-block .description p {
		font-size: 14px
	}

	.about-block .description {
		font-size: 16px
	}

	.about-block .vertical-line {
		height: 40px
	}

	.about-block .editor .part-01,
	.about-block .editor .part-02 {
		width: auto
	}

	#NewsBox:after {
		opacity: 0.4
	}

	#aboutBox .abtop_title {
		display: flex;
		gap: 1rem;
		padding: 25px 10px;
		order: 1;
		justify-content: flex-start;
		align-items: center
	}

	#aboutBox .abtop_title .subtitle01 {
		display: flex;
		justify-content: flex-start;
		order: 2;
		width: auto
	}

	#aboutBox .abtop_title h4 {
		font-size: 13px
	}

	#aboutBox .abtop_title .subtitle02 {
		width: auto;
		display: none
	}

	#aboutBox .flex_box {
		display: flex;
		flex-direction: column;
		justify-content: unset;
		order: 1
	}

	#aboutBox .rightbox {
		width: 100%;
		max-width: 100%
	}

	#aboutBox .leftbox {
		width: 100%
	}

	#aboutBox .flex_box {
		display: flex;
		flex-direction: column
	}

	.abcallJtop {
		left: 0;
		bottom: 0;
		position: relative;
		display: flex;
		flex-direction: column;
		align-items: center
	}

	#bookBox {
		padding: 0px 0;
	}

	#bookBox .list {
		width: 100%;
		margin: 30px auto 0
	}

	#bookBox .list .slick-list li {
		padding: 10px 30px 40px;
	}

	#bookBox .list ul li .img {
		order: 0;
		width: 100%
	}

	#bookBox .list ul li .info {
		width: 100%;
		padding: 0;
		margin-top: 30px
	}

	#bookBox .list ul li .img img {
		height: 55vw
	}

	#bookBox .topBox,
	#bookBox .topBox .title {
		position: relative;
		width: 90%;
		top: 0;
		display: flex;
		flex-direction: column;
		align-items: center
	}

	#bookBox .topBox b {
		margin-top: -25px;
	}

	#bookBox .topBox .more {
		position: absolute;
		width: 100%;
		text-align: center;
		bottom: 0;
		left: 0
	}

	#bookBox .topBox:before {
		content: "";
		position: absolute;
		width: 50px;
		height: 3px;
		background: #ffcd36;
		bottom: -10px
	}
}

@media (max-width:768px) {
	.serviceArea .titleBox {
		padding-bottom: 0
	}

	.serviceList .serviceItem {
		width: 100%;
		margin: 0;
		padding: 0 0
	}

	.serviceList .serviceItem:before {
		width: 100%;
		height: 1px
	}

	.serviceList .serviceItem:first-child:before {
		opacity: 0
	}

	.serviceList .item {
		padding: 13px 0
	}

	#ginbox .bawan {
		display: flex;
		flex-wrap: wrap;
	}

	#ginbox .bitem {
		width: 50%;
		margin: 7px 0;
	}

	#aboutBox .rightbox img {
		border-radius: 0;
	}

	.wrap #wrapBox .maflyJ {
		display: none;
	}

	#NewsBox ul.newsList li .info_box {
		flex-wrap: wrap;
		margin-bottom: 0
	}

	#NewsBox ul.newsList li .info_box .lebox {
		flex-wrap: wrap
	}

	#NewsBox ul.newsList li p.txt {
		width: calc(100% - 10px);
		margin-top: 10px
	}

	#NewsBox ul.newsList li p.CategoryName {
		margin: 0 3px
	}

	#NewsBox ul.newsList li p.time {
		justify-content: flex-start;
		width: 60px
	}

	#NewsBox ul li font.arrow {}

	.JJlink {
		width: 100%;
		display: flex;
		flex-direction: column;
		align-items: center
	}

	.JJlink a {
		width: 86%;
		justify-content: center;
		padding: 22px 10px
	}

	.JJlink a span {
		font-size: 18px
	}

	#productBox2 .JJlink a {
		width: auto
	}

	#index_co .bbigtitle h3 {
		font-size: 43px
	}

	#index_co .cofle {
		display: flex;
		flex-direction: column;
		align-items: center
	}

	#index_co .cofle .tidmco {
		width: 100%;
		max-width: 100%;
		padding-bottom: 43px;
		margin-top: 30px
	}

	#index_co .cofle .tidmco:first-child:before {
		width: 100%;
		height: 1px;
		left: 0;
		top: calc(100% - 15px)
	}

	#index_co .cofle .tidmco svg {
		width: 30px;
		height: 40px
	}

	.contoebox:before {
		background-size: 200%;
		bottom: 0;
		background-position: 9% 100%;
		aspect-ratio: 10 / 4;
		display: none;
	}
}

@media screen and (max-width:680px) {
	#productBox .proList {
		padding: 5vh 0 1vh
	}

	#productBox .proList li.slick-center {
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		transform: scale(1)
	}

	#NewsBox:before,
	#NewsBox:after,
	#NewsBox .bgTxt.title::before {
		display: none
	}

	#NewsBox .workframe {
		display: flex;
		margin-bottom: 30px;
		flex-direction: column;
		align-items: center
	}

	#NewsBox .workframe .row {
		width: calc(100% - 0px);
		margin-left: 0;
		margin-top: 30px
	}

	#NewsBox .NewsTxt {
		writing-mode: inherit
	}

	#NewsBox .bgTxt.title {
		padding: 20px 40px
	}

	#aboutBox {
		padding-top: 0vh
	}

	.wrap {
		padding-top: 1vh
	}

	.serviceArea {
		padding: 40px 0 60px
	}

	.serviceList .title {
		font-size: 20px;
		font-weight: 400;
		letter-spacing: 1px
	}

	#aboutBox .leftbox article {
		padding: 26px 20px
	}

	#Customization-1 .flexbox .item-J {
		padding: 33px 32px;
		min-height: 205px
	}

	#ginbox .badot {
		width: 4px;
		height: 4px;
		margin: 0 1px
	}

	#ginbox .bitem svg {
		width: 40px;
		height: 40px
	}

	#ginbox .bitem.Jboom svg {
		width: 40px;
		height: 40px
	}

	#bookBox .topBox .title b {
		font-size: 20px;
		margin-top: -23px
	}

	#bookBox .list ul li .info {
		margin-top: 15px
	}

	#bookBox .list ul li .info p {
		-webkit-line-clamp: 2;
		font-weight: 500;
		font-size: 15px;
	}

	.titlrJ h2,
	#bookBox .topBox h2 {
		font-size: 6em;
	}

	.titlrJ p {
		margin-top: -2em
	}
}

@media screen and (max-width:480px) {
	#ginbox .bitem img {
		width: 55px
	}

	#ginbox .bitem p {}

	#ginbox .bitem span {
		font-size: 15px
	}

	#ginbox .bitem {
		padding: 20px 1%;
		width: 48%;
	}

	#ginbox {
		padding: 45px 0 20px
	}

	#ginbox .badot {
		display: none
	}

	#ginbox .titleJP h2 {}

	#bookBox .topBox .title {
		transform: unset !important;
		left: 0;
	}

	#productBox2:before {
		background-position: 52% 30%;
	}

	#productBox2 {
		background-size: cover;
		padding: 5px 0
	}

	.youtuabout {
		padding: 20px 0 40px
	}

	.youtuabout:before {
		display: none
	}

	.serviceList .title {
		padding-left: 10px
	}

	.abcallJtop {
		display: flex;
		align-items: flex-start;
	}

	#aboutBox .abtop_title {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		position: absolute;
		z-index: 5;
		top: 235px;
		left: 12px
	}

	#aboutBox .rightbox img {
		height: auto
	}

	#aboutBox .rightbox {
		margin-bottom: 0
	}

	#aboutBox .abtop_title h4 {
		font-size: 22px;
		letter-spacing: 0.05em;
		font-weight: 600
	}

	#aboutBox .abtop_title .subtitle01 {
		order: 1
	}

	#aboutBox .abtop_title .subtitle02 {
		order: 2
	}

	.wrap #wrapBox .haha_bg {
		height: 56%;
		width: 100%
	}

	#Customization-1 .flexbox {
		margin: 0px auto 30px
	}

	#NewsBox .workframe {
		display: flex;
		flex-direction: row;
		margin-bottom: 10px
	}

	.titlrJ {
		margin: 0 auto;
		margin-bottom: 30px;
		width: 100%
	}

	.youtuabout .videoXbox iframe {
		height: 310px
	}

	#productBox2 a.photo {
		-webkit-clip-path: unset;
		clip-path: unset
	}

	#productBox2 .info {
		padding: 9px 0 5px
	}

	#productBox2 .info h3.text-clamp {
		padding: 0 0;
		height: 26px;
		margin: 2px 0
	}

	.contoebox:before {
		background-size: 269%;
		aspect-ratio: 10 / 6;
		background-position: 9% 100%;
		z-index: 86
	}
}