@charset "utf-8";
/*　Content CSS　*/
.udline-y-b {
    border-bottom: 8px solid #FFF940;
}
.link-anchor a span {
    font-size: 1.125em;
}
#main{
	position: relative;
    z-index: 80;
	height: 542px;
    padding: 0;
    background: url(../img/bg_main.jpg) no-repeat;
    background-size: cover;
    background-position: top center;
    overflow: unset;
}
#main .wrapper {
    padding-top: 160px;
}
h1 {
    font-size: 2.5em;
    font-weight: bold;
    color: #fff;
    line-height: 1.5;
    margin-bottom: 40px;
    text-shadow: 0px 0px 12px rgba(17, 17, 17, 0.2);
}
#case2 .wrapper {
    position: relative;
    width: 80%;
    max-width: 1000px;
    background: #fff;
    border-radius: 20px;
    box-shadow: 0px 0px 12px rgba(17, 17, 17, 0.4);
    margin: -120px auto 0;
    padding: 20px 0;
    z-index: 84;
}
#case2 h3 {
    margin-bottom: 20px;
}
#case2 h3:after {
	display: none;
}
.record .record-logo.record-logo-l,
#case .record .record-logo.record-logo-l{
    padding: 8px 40px;
}
.record .record-logo.record-logo-l li,
#case .record .record-logo.record-logo-l li {
    width: calc(100% / 4);
}
.record .record-logo.record-logo-l li img,
#case .record .record-logo.record-logo-l li img{
    height: 4vw;
    max-height: 60px;
}
.badge {
    position: absolute;
    left: 0;
    top: 140px;
}
.badge:after {
    position: relative;
    content: url(../img/mark_security.png);
    z-index: 85;
}
a.badge:before {
    position: absolute;
    content: "";
    top: unset;
    left: 0;
    bottom: 28px;
    right: 0;
    margin: auto;
    width: 8px;
    height: 8px;
    border-top: none;
    border-right: 2px solid #303744;
    border-bottom: 2px solid #303744;
    transform: rotate(45deg);
    transition: all .3s;
    z-index: 87;
}
.badge p {
    position: absolute;
    top: 40px;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    font-size: 15px;
    text-align: center;
    line-height: 1.5;
    font-weight: bold;
    z-index: 86;
}
.badge .fll {
    font-size: 2.5em !important;
    line-height: 1;
}
.badge .fl {
    font-size: 1.5em !important;
}
.prob-item {
    margin-bottom: 48px;
}
.prob-item li {
    padding: 24px 12px;
}
.prob-item h4 {
    font-size: 1.25em;
    font-weight: 900;
	line-height: 1.5;
	margin: 16px auto;
}
.prob-item h4:after {
    content: "";
    display: block;
    width: 80px;
    height: 3px;
    margin: 32px auto 0px auto;
	border-bottom: 2px dotted #2252C1;
}
.prob-item-list li{
	display: flex;
}
.prob-item-person{
	width: 25%;
}
.prob-item-text {
  position: relative;
  display: inline-block;
  margin-left: 20px;
  padding: 16px;
  border-radius: 8px;
  background-color: #e1edff;
  text-align: left;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  width: 75%;
}
.prob-item-text::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  border-style: solid;
  border-width: 10px 20px 10px 0;
  border-color: transparent #e1edff transparent transparent;
  translate: -100% -50%;
}
.prob-item-user .prob-item-text{
	background-color: #F9F3E5;
}
.prob-item-user .prob-item-text::after{
	border-right-color: #F9F3E5;
}
.prob-item-person p {
    font-size: 0.875em;
    text-align: center;
    font-weight: bold;
    color: #819AB4;
}
.prob-item-user .prob-item-person p {
    color: #ABA087;
}
.advance-item h2{
	letter-spacing: 0.05em;
}
.advance-item h2:after {
	display: none;
}
.advance-list h2 {
    margin-bottom: 0;
    text-align: left;
	padding-left: 48px;
}
.advance-list {
    width: fit-content;
    margin: 0 auto;
}
.advance-list li {
    position: relative;
    margin-bottom: 8px;
}
.advance-list li:before {
    position: absolute;
    content: url(../img/icon_check.png);
    left: 0;
    top: 8px;
}
#front .wrapper {
    padding-bottom: 40px;
}
.about-lineup .lineup-product{
    border: 8px solid #ACBDE2;
    border-radius: 18px;
    padding: 40px 24px;
	margin-bottom: 40px;
}
.about-lineup .lineup-product#cscad{
	border-color: #C9E2FF;
}
.about-lineup .lineup-product#csb{
	border-color: #C4D6FF;
}
.color-sw{
	color: #4462A6;
}
.color-ad{
	color: #0897DE;
}
.about-lineup h2::after{
	display: none;
}
.about-lineup p {
    text-align: center;
    font-weight: 500;
    margin-bottom: 40px;
}
.about-lineup ul {
    display: flex;
    margin-top: 40px;
}
.about-lineup li {
	position: relative;
    width: 50%;
    padding: 24px;
    margin: 0 8px;
    background: #F3FFF3;
    text-align: left;
    font-weight: bold;
}
.about-lineup li:before {
    position: absolute;
    content: url(../img/icon_check.png);
    left: -8px;
    top: -8px;
}
.fisc-list li{
	position: relative;
	background: #fff;
	border: 1px solid #E3578C;
	padding: 24px;
}
.fisc-list li::before {
	position: absolute;
	content: "";
    top: 0;
    left: 0;
    border-bottom: 40px solid transparent;
    border-left: 40px solid #E3578C;
}
.fisc-list h4 {
    font-size: 1em;
    text-align: left;
    margin-bottom: 16px;
}
.fisc-list p {
    font-size: 0.875em;
}
.point-list {
    display: flex;
    justify-content: flex-start;
    margin-top: 60px;
}
.point-item-wrap {
    width: 50%;
    padding: 0 16px;
}
.point-item-wrap:first-child {
    border-right: 1px solid #dfe5f5;
}
.point-title {
    display: flex;
    align-items: center;
    margin: 0 auto 40px;
}
.point-title .img {
    width: 20%;
    padding: 0 8px;
}
.point-title .img img {
    height: 60px;
	width: unset;
}
.point-title h4 {
    margin: 0;
    text-align: left;
    padding-left: 16px;
    line-height: 1.25;
	color: #2252C1;
}
.point-list.disc {
    padding: 0 0 0 32px;
    font-size: 1.125em;
    font-weight: bold;
    line-height: 1.5;
    text-align: left;
    color: #333;
    margin: 0 auto;
    flex-direction: column;
}
.point-list.disc li {
    list-style: disc outside;
    margin: 0 4px 12px 0;
    text-align: left;
}


@media screen and (max-width: 640px) {
	.wrap{
		overflow: hidden;
	}
	h1 {
		font-size: 1.25em;
		margin-bottom: 24px;
	}
	h1:nth-child(2) {
		font-size: 1.5em;
	}
	h6 {
		font-size: 0.875em;
	}
	#main .wrapper {
		padding-top: 100px;
	}
	.badge {
		top: 240px;
		left: 0;
		right: 0;
		margin: auto;
	}
	a.badge:before {
		bottom: 54px;
	}
	.badge p {
		font-size: 11px;
		top: 56px;
	}
	.badge:after {
		display: inline-block;
		transform: scale(0.7);
	}
	#case2 .wrapper {
		width: 94%;
	}
	.record .record-logo.record-logo-l, #case .record .record-logo.record-logo-l {
		padding: 8px 16px;
	}
	.record .record-logo.record-logo-l li, #case .record .record-logo.record-logo-l li {
		width: calc(100% / 2);
	}
	.record .record-logo.record-logo-l li img, #case .record .record-logo.record-logo-l li img {
		height: 40px;
	}
	.prob-item-text {
		font-size: 0.875em;
		line-height: 1.75;
	}
	.prob-item-person p {
		font-size: 0.75em;
	}
	.prob-item li {
		padding: 12px;
	}
	#about .common-btn-main a:first-child {
		margin-bottom: 24px;
	}
	.about-lineup .lineup-product {
		border-width: 4px;
		padding: 40px 16px;
	}
	.about-lineup .lineup-product img {
		width: 100%;
	}
	.about-lineup ul {
		flex-direction: column;
	}
	.about-lineup li {
		width: 100%;
		margin-top: 16px;
		font-size: 0.875em;
		padding: 16px 24px;
	}
	.point-list {
		flex-direction: column;
		margin-top: 0;
	}
	.point-item-wrap {
		width: 100%;
		padding: 24px 0 0;
	}
	.point-item-wrap:first-child {
		border-right: none;
		border-bottom: 1px solid #dfe5f5;
		padding: 0 0 16px 0;
	}
	.point-title {
		margin-bottom: 16px;
	}
	.point-title .img img {
		height: unset;
		width: 100%;
	}
	.point-title h4 {
		font-size: 1em;
	}
	.point-list.disc {
		padding-left: 32px;
		font-size: 1em;
	}
	
	
	
	
	

}
