@charset "utf-8";
#solution-12-main{
	width: 100%;
	background-color: #001940;
	text-align: center;
}
/* ----- aiFrame ----- */
.aiFrame{
	width: 100%;
	display: block;
	padding: 60px 0;
	overflow: hidden;
}
.line_top{border-top: 1px solid #e6e6e6;}
.line_bottom{border-bottom: 1px solid #e6e6e6;}
.green_bg{
	background-color: #548235;
}
.grid_bg{
    background: url(../images/work-tag-bg.gif);
}
.frameTitle{ text-align: center;}
.frameTitle:has(+ *){ margin-bottom: 2.5em;}
.frameTitle h2 {
    display: block;
    color: #333;
    font-family: "微軟雅黑", "Microsoft YaHei";
    font-size: 3.588em;
    line-height: 1.2;
    font-weight: bold;
    text-align: center;
    margin-bottom: 20px;
}
.frameTitle h3 {
    line-height: 1.6;
    font-size: 1.8em;
    font-weight: normal;
}
.font_white{ color: #FFF !important;}

#trues:has(.aiFrame) .container{
	width: calc(100% - 30px);
}
/* ----- flexWrap ----- */
.flexWrap{
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 15px;
}
.flexWrap .photo{
	width: 100%;
	border-radius: 12px;
	overflow: hidden;
}
.flexWrap .photo .img{
	width: 100%;
    padding-bottom: 100%;
    display: block;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    transition: all 0.5s ease;
	background-color: transparent;
}
.flexWrap .photo .img:has(img){
	position: relative;
}
.flexWrap .photo .img img {
    object-fit: cover;
    object-position: center;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    position: absolute;
    left: 50%;
    top: 0%;
    transform: translate3d(-50%, 0%, 0);
}
.flexWrap .photo img{
	max-width: 100%;
	height: auto;
}
.flexWrap .word{
	width: 100%;
	flex-grow: 1;
	font-size: 1.8em;
	line-height: 200%;
	display: flex;
	flex-wrap: wrap;
	gap: 1em;
}
.flexWrap .word h2{
	color: #333;
    font-family: "微軟雅黑", "Microsoft YaHei";
    font-size: 2em;
    line-height: 1.2;
    font-weight: bold;
}
@media screen and (min-width: 768px) {
	.flexWrap{gap: 20px;}
	.flexWrap .photo{width: 40%;}
	.flexWrap .word{width: calc(60% - 30px);}
}
@media screen and (min-width: 991px) {
	.flexWrap{gap: 30px;}
}
/* ----- moreBtn ----- */
.moreBtn{
	width:100%;
	text-align:center;
	margin-top:1.25em;
}
.solnsList .moreBtn{
	text-align:center;
}
.moreBtn a{
	text-decoration:none;
	background-color:#000;
	color:#fff;
	border-radius:30px;
	padding:8px 20px;
	font-size:1.5em;
	display:inline-block;
}
.moreBtn a:hover,
.moreBtn a:focus{
	background-color:#ff9900;
}
.moreBtn a span{
	display:flex;
	align-items: center;
}
.moreBtn a span::after{
	content:"";
	width:20px;
	height:20px;
	display:inline-block;
	border-radius:20px;
	background-image:url(../images/btn_plus.svg);
	background-repeat:no-repeat;
	background-position:center;
	margin-left:5px;
	box-sizing:border-box;
}
.moreBtn a span.arrow::after{
	background-image:url(../images/btn_arrow.svg);
}
/* ----- solnsList ----- */
.solnsList{
	width:100%;
}
.solnsList > ul{
	list-style-type:none;
	display: flex;
	flex-wrap: wrap;
	gap: 20px 20px;
	justify-content: space-between;
}
.solnsList > ul > li{
	width:calc((100% - 20px) / 2);
}
.solnsList .oneSolns{
	width:100%;
	min-height:100%;
	padding:15px;
	box-sizing:border-box;
	background-color:#fff;
	border-radius:12px;
	box-shadow: 0 1px 2px rgba(0,0,0,0.1);
	position:relative;
    display: flex;
	flex-wrap: wrap;
	flex-direction: column;
    justify-content:flex-start;
}
.solnsList .oneSolns:has(.inSolns){
	justify-content:space-between;
}
.solnsList .oneSolns:has(.moreBtn){
	padding-bottom: 25px;
}
.oneSolns .soTop{
	font-size:1.6em;
	line-height:180%;
}
.oneSolns .soTop{
	width:100%;
	min-height:120px;
	position: relative;
	display: flex;
	flex-wrap: wrap;
	gap: 1em;
}
.oneSolns .soTop h3{
	width:calc(100% - 80px);
	font-size:1.25em;
	font-weight:bold;
}
.oneSolns .label{
	width:100%;
	font-size: 0.875em;
	line-height: 150%;
}
.oneSolns .soBot{
	width:100%;
	margin-top:1em;
	padding:1em 0 0;
	border-top: 1px solid #dedede;
}
.oneSolns .soBot ul,
.oneSolns .soBot ol{
	margin-left:1.5em;
}
.oneSolns .soBot > ul{
	list-style-type:disc;
}
.oneSolns .soBot > ul > li::marker{
	color:#548235;
}
.oneSolns summary::-webkit-details-marker { display: none; }
.oneSolns summary::marker { content: ""; }
.oneSolns .soBot details{
	font-size:1.5em;
	line-height:180%;
}
.oneSolns .soBot details summary{
	width: 100%;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
	border-radius: 5px;
	background-color: #f5f5f5;
	padding: 5px;
	box-sizing: border-box;
	margin-bottom: 0.5em;
	cursor: pointer;
	font-weight: bold;
}
.oneSolns .soBot details summary::after {
	content: "";
	display: block;
	width: 5px;
	height: 5px;
	border-top: 2px solid #000;
	border-right: 2px solid #000;
	transform: rotate(135deg);
	transition:all 0.4s ease;
	margin: 0 8px;
}
.oneSolns .soBot details[open] summary::after {
	transform: rotate(-45deg);
}
.oneSolns .icon{
	width:60px;
	height:60px;
	border-radius:6px;
	background-color:#c8dcc8;
	position:absolute;
	top:20px;right:20px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.oneSolns .icon::before{
	content:"";
	display:block;
	width:40px;
	height:40px;
	background-color:#548235;
	mask-repeat:no-repeat;
	mask-position:center;
	mask-size:contain;
}
.oneSolns .icon.ico1::before{mask-image:url(../images/ai_ico1.svg);}
.oneSolns .icon.ico2::before{mask-image:url(../images/ai_ico2.svg);}
.oneSolns .icon.ico3::before{mask-image:url(../images/ai_ico3.svg);}
.oneSolns .icon.ico4::before{mask-image:url(../images/ai_ico4.svg);}
.oneSolns .icon.ico5::before{mask-image:url(../images/ai_ico5.svg);}
.oneSolns .icon.ico6::before{mask-image:url(../images/ai_ico6.svg);}
@media screen and (max-width: 600px) {
	.solnsList > ul > li{
		width:100%;
	}
}
@media screen and (min-width: 991px) {
	.solnsList > ul > li{
		width:calc((100% - 40px) / 3);
	}
}
/* ----- faoseoAdv ----- */
.faoseoAdv{
	width: 100%;
	position: relative;
	overflow:hidden;
	padding: 60px 0;
}
.faoseoAdv .hand_bg{
	position:absolute;
	z-index:1;
	right:47.5%;
	top:-10px;
}	
.faoseoAdv .meet_bg{
	position:absolute;
	z-index:0;
	top:-50px;
	right:-340px;
}
.faoseoAdv .container{
	position:relative;
	z-index:2;
}
.faoseoAdv hgroup{
	width: 100%;
	text-align: right;
	margin: 30px 0;
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	justify-content: center;
	align-items: flex-end;
	gap: 15px;
	min-height: 260px;
}
.faoseoAdv hgroup em{
	display:block;
	font-style:normal;
	font-size:13.39em;
	color:rgba(0,0,0,0.1);
	line-height:0.7;
	margin-left:-32px;}	
	
.faoseoAdv hgroup h2{
	display:block;
	line-height:1;
	font-size:5.9em;
	color:#333;
}
@media screen and (max-width: 880px) {
	.faoseoAdv .hand_bg{
		width: 120vw;
		right: 0;
		margin-right: -10vw;
		top: -20vw;
	}
	.faoseoAdv .meet_bg{
		bottom:0;
		right:50%;
		margin-right:-334px;
		top:auto;
		max-width:120vw
	}
	.faoseoAdv hgroup{
		align-items: center;
		text-align: center;
		margin-top: 15vw;
		gap: 5vw;
	}
	.faoseoAdv hgroup em{font-size:20vw;}
	.faoseoAdv hgroup h2{font-size: 8vw;}
}
/* ----- advInfo ----- */
.advInfo{
	list-style-type: none;
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(360px, 1fr));
	gap: 30px 20px;
}
.advInfo .bigfont{
	font-size: 126%;
    color: #f15a24;
	font-weight: bold;
	margin: 0 0.25em;
}
.advInfo li{width: 100%;}
.advInfo li > div[class^="ico_"]{
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
}
.advInfo li > div[class^="ico_"]:before{
	content:'';
	display:block;
	width:100px; height:100px;
	background-position:center;
	background-repeat:no-repeat;
	background-size:contain;
	box-sizing:border-box;
	border-radius:50%;
	background-color: #fadcbe;
}
.advInfo li .ico_1:before{background-image:url(../images/ai_infoico1.svg);}
.advInfo li .ico_2:before{background-image:url(../images/ai_infoico2.svg);}
.advInfo li .ico_3:before{background-image:url(../images/ai_infoico3.svg);}
.advInfo li .ico_4:before{background-image:url(../images/ai_infoico4.svg);}
.advInfo .inBox{
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
}
.advInfo .inBox h3 {
    font-size: 2.5em;
	line-height: 120%;
    color: #ed1c24;
    display: block;
}
.advInfo .inBox h3 span{ display: block;}
.advInfo .inBox .bbfont{
    font-size: 1.8em;
    font-weight: bold;
    display: block;
	line-height: 150%;
}
.advInfo .inBox p{
	font-size: 1.5em;
	line-height: 150%;
}
.advInfo .inBox a {
    display: inline-block;
    padding: 8px 13px;
    border-radius: 16px;
    color: #fff;
    background-color: #ff8300;
    line-height: 1;
    font-weight: bold;
    font-size: 1.34em;
    text-decoration: none;
}
.advInfo .inBox a small{
	font-family:Arial, Helvetica, sans-serif;
	font-size:80%;
}	
.advInfo .inBox a:hover,
.advInfo .inBox a:focus{
	background-color:#900;
}	
@media screen and (max-width: 767px) {
	.advInfo li > div[class^="ico_"],
	.advInfo .inBox{
		justify-content: center;
		text-align: center;
	}
}
@media screen and (min-width: 768px) {
	.advInfo{
		grid-template-columns:repeat(auto-fill, minmax(calc(50% - 10px), 1fr));
	}
	.advInfo li > div[class^="ico_"]:before{
		width:60px; height:60px;
	}
	.advInfo .inBox{
		width: calc(100% - 60px - 15px);
	}
}
@media screen and (min-width: 991px) {
	.advInfo li > div[class^="ico_"]:before{
		width:100px; height:100px;
	}
	.advInfo .inBox{
		width: calc(100% - 100px - 15px);
	}
}