@charset "utf-8";
/*
///////////////////////////////////////////////////////////////////////////////////
//
//  レイアウトCSS設定
//
///////////////////////////////////////////////////////////////////////////////////
/*
/* [01.TOP & LAYOUT]
/* [02.PAGE-SERVICE]
/* [03.PAGE-COMPANY]
/* [04.PAGE-NEWS]
/* [05.SINGLE-NEWS]
/* [06.PAGE-CASE]
/* [07.SINGLE-CASE]
/*
///////////////////////////////////////////////////////////////////////////////////
/*
/* [01.TOP & LAYOUT]
--------------------------------------------------------------------------*/
@-ms-viewport {
	width: device-width;
}
@viewport {
	width: device-width;
}
@media (max-width: 844px) {
	a:hover {
		opacity: 1;
	}
	a[href^="tel:"] {
		pointer-events: inherit;
	}
}
#main {
	display: block;
	width: 100%;
	height: auto;
	position: relative;
	overflow-x: hidden;
}
.main-wrap {
	width: 100%;
	max-width: 1360px;
	padding: 220px 80px 220px;
	height: auto;
	margin: 0 auto;
	position: relative;
	z-index: 1;
}
@media (max-width: 844px) {
	.main-wrap {
		padding: 200px 30px 210px;
	}
}
.main-wrap h1 {
	font-size: 50px;
	line-height: 140%;
	margin-bottom: 30px;
}
@media (max-width: 844px) {
	.main-wrap h1 {
		font-size: 30px;
	}
}
.main-wrap .main-en {
	font-size: 18px;
	padding-left: 40px;
	position: relative;
}
@media (max-width: 844px) {
	.main-wrap .main-en {
		font-size: 14px;
	}
}
.main-wrap .main-en:after {
	content: "";
	position: absolute;
	display: inline-block;
	width: 20px;
	height: 1px;
	top: 50%;
	left: 0;
	background: #1D1D1D;
}
.scrolldown {
	position:absolute;
	display: block;
	z-index: 1;
	left: 50%;
	bottom: 70px;
	height: 70px;
	width: 100%;
}
@media (max-width: 844px) {
	.scrolldown  {
		bottom: 50px;
	}
}
.scrolldown span{
	position: absolute;
	left: -20px;
	top: -20px;
	color: #1D1D1D;
	font-size: 12px;
}
.scrolldown::after{
	content: "";
	position: absolute;
	top: 0;
	width: 1px;
	height: 30px;
	background: #1D1D1D;
	animation: pathmove 1.4s ease-in-out infinite;
	opacity: 0;
}
@keyframes pathmove{
  0%{
    height:0;
    top:0;
    opacity: 0;
  }
  30%{
    height:30px;
    opacity: 1;
  }
  100%{
    height:0;
    top:50px;
    opacity: 0;
  }
}
/* テキスト画像スライド */
@keyframes infinity-scroll-left {
  from {
	transform: translateX(0);
  }
  to {
	transform: translateX(-100%);
  }
}
.slide-img_wrap {
	position: absolute;
	bottom: 110px;
	display: flex;
	overflow: hidden;
}
.slide-img_list {
	display: flex;
	list-style: none;
}
.slide-img_list-left {
	animation :infinity-scroll-left 50s infinite linear 0.5s both;
}
.slide-img_list-right {
	animation :infinity-scroll-right 50s infinite linear 0.5s both;
}
.slide-img_item {
	width: calc(100vw / 2);
}
@media (max-width: 430px) {
	.slide-img_item {
		width: calc(100vw / 1);
	}
}
@media screen and (-webkit-min-device-pixel-ratio:2) and (min-width:450px) and ( max-width:1240px){
	.slide-img_item {
		width: calc(100vw / 2);
	}
}
@media screen and (-webkit-min-device-pixel-ratio:2) and (min-width:1250px) and ( max-width:1440px){
	.slide-img_item {
		width: calc(100vw / 2);
	}
}
@media screen and (-webkit-min-device-pixel-ratio:2) and (min-width:1450px) and ( max-width:1730px){
	.slide-img_item {
		width: calc(100vw / 2.8);
	}
}
@media screen and (-webkit-min-device-pixel-ratio:2) and (min-width:1740px) and ( max-width:6000px){
	.slide-img_item {
		width: calc(100vw / 3.8);
	}
}
.slide-img_item > img{
	width: 100%;
	height: auto;
}
/* テキスト画像スライド end */
#change-img-wrap {
	width: 100%;
	height: 320px;
	background-repeat: no-repeat;
	background-size: 100%;
	background-position: center;
	background-image: url(../images/layouts/top-main-img.png);
}
@media (max-width: 844px) {
	#change-img-wrap {
		width: 100%;
		height: 220px;
		width: calc(100vw / 1);
		background-image: url(../images/layouts/top-main-img-sp.png);
	}
}
/* main end */
#about .pkg {
	padding: 140px 80px 120px;
}
@media (max-width: 844px) {
	#about .pkg {
		padding: 110px 30px 80px;
	}
}
.abut-bg-eng {
	position: relative;
	transition: 0.8s;
}
.abut-bg-eng:before {
	content: "";
	background: url(../images/layouts/top-about-bg.svg) no-repeat;
	position: absolute;
	display: inline-block;
	width: 662px;
	height: 80px;
	top: 26px;
	right: -80px;
	z-index: -1;
}
@media (max-width: 844px) {
	.abut-bg-eng:before {
		background: url(../images/layouts/top-about-bg-sp.svg) no-repeat;
		width: 266px;
		height: 120px;
		top: auto;
		bottom: 20px;
		right: 0;
	}
}
.top-ttl-wrap {
	width: 100%;
	margin-bottom: 80px;
}
@media (max-width: 844px) {
	.top-ttl-wrap {
		margin-bottom: 60px;
	}
}
.brd-animi-box {
	margin-bottom: 30px;
}
.border-01 {
	display: block;
	width: 80px;
	position: relative;
}
.border-02 {
	display: block;
	width: 40px;
	position: relative;
	padding-top: 10px;
}
.anim-border:before{
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	border-bottom: solid 1px #1D1D1D;
	animation: border_anim 0.3s linear forwards;
}
#service .anim-border:before{
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	border-bottom: solid 1px #fff;
	animation: border_anim 0.3s linear forwards;
}
@keyframes border_anim {
	0%{
		width: 0%;
	}
	100%{
		width: 100%;
	}
}
.top-ttl-wrap .eng {
	font-size: 64px;
}
@media (max-width: 844px) {
	.top-ttl-wrap .eng {
		font-size: 52px;
	}
}
.top-ttl-wrap .ttl {
	font-size: 15px;
}
.top-about-conts {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
	height: auto;
}
.top-about-conts .ttl-box {
	width: 50%;
	padding: 0 80px 0 120px;
}
@media (max-width: 844px) {
	.top-about-conts .ttl-box {
		width: 100%;
		padding: 0;
		margin-bottom: 60px;
	}
}
.top-about-conts .txt-box {
	width: 50%;
}
@media (max-width: 844px) {
	.top-about-conts .txt-box {
		width: 100%;
	}
}
.top-about-conts .ttl-box .ttl {
	font-size: 12px;
	font-weight: normal;
	padding-left: 20px;
	position: relative;
	margin-bottom: 20px;
}
.top-about-conts .ttl-box .ttl:before {
	content: "";
	position: absolute;
	display: inline-block;
	width: 10px;
	height: 1px;
	top: 50%;
	left: 0;
	background: #1D1D1D;
}
.top-about-conts .ttl-box .big-ttl {
	font-size: 28px;
	font-weight: bold;
	line-height: 160%;
}
.top-about-conts .txt-box .dsp {
	line-height: 240%;
	margin-bottom: 60px;
}
#service .pkg {
	padding: 0 80px 160px; 
}
@media (max-width: 844px) {
	#service .pkg {
		padding: 0 0 80px; 
	}
}
.service-wrap {
	background: #363636;
	border-radius: 40px;
	padding: 140px 120px 120px;
	color: #fff;
	position: relative;
}
@media (max-width: 430px) {
	.service-wrap {
		padding: 80px 30px; 
		border-radius: 30px 0 0 30px;
	}
}
@media screen and (-webkit-min-device-pixel-ratio:2) and (min-width:450px) and ( max-width:1024px){
	.service-wrap {
		padding: 80px 60px; 
		border-radius: 30px;
	}
}
#service .eng {
	color: #fff;
}
.top-service-conts {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
	height: auto;
	margin-bottom: 90px;
}
@media (max-width: 844px) {
	.top-service-conts {
		margin-bottom: 60px;
	}
}
.top-service-conts .ttl-box {
	width: 50%;
}
@media (max-width: 844px) {
	.top-service-conts .ttl-box {
		width: 100%;
		margin-bottom: 60px;
	}
}
.top-service-conts .txt-box {
	width: 50%;
}
@media (max-width: 844px) {
	.top-service-conts .txt-box {
		width: 100%;
	}
}
.top-service-conts .ttl-box .ttl {
	font-size: 12px;
	font-weight: normal;
	padding-left: 20px;
	position: relative;
	margin-bottom: 20px;
}
.top-service-conts .ttl-box .ttl:before {
	content: "";
	position: absolute;
	display: inline-block;
	width: 10px;
	height: 1px;
	top: 50%;
	left: 0;
	background: #fff;
}
.top-service-conts .ttl-box .big-ttl {
	font-size: 28px;
	font-weight: bold;
	line-height: 160%;
}
.top-service-conts .txt-box .dsp {
	line-height: 240%;
}
#service .btn-wrap {
	position: absolute;
	top: 183px;
	right: 120px;
}
@media (max-width: 430px) {
	#service .btn-wrap {
		position: inherit;
	}
}
@media screen and (-webkit-min-device-pixel-ratio:2) and (min-width:450px) and ( max-width:1024px){
	#service .btn-wrap {
		position: inherit;
	}
}
#service .btn-wrap .btn {
	border: none;
}
@media (max-width: 430px) {
	#service .btn-wrap .btn {
		margin: 0 auto;
	}
}
@media screen and (-webkit-min-device-pixel-ratio:2) and (min-width:450px) and ( max-width:1024px){
	#service .btn-wrap .btn {
		margin: 0 auto;
	}
}
.side-brd-ttl {
	text-align: center;
	position: relative;
	margin-bottom: 30px;
}
@media (max-width: 844px) {
	.side-brd-ttl {
		margin-bottom: 20px;
	}
}
.side-brd-ttl:before {
	content: '';
	position: absolute;
	top: 50%;
	display: inline-block;
	width: 284px;
	height: 1px;
	background: #fff;
	left: 0;
	right: 0;
	margin: 0 auto;
}
.side-brd-ttl .ttl {
	font-size: 18px;
	background: #363636;
	display: inline-block;
	position: relative;
	z-index: 1;
	padding: 0 16px;
	margin-bottom: 0;
}
.solution-li {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	width: 100%;
	height: auto;
}
@media (max-width: 844px) {
	.solution-li {
		justify-content: space-between;
		margin-bottom: 20px;
	}
}
.solution-li li {
	width: 24.25%;
	margin-right: 1%;
	padding: 40px 20px;
	text-align: center;
}
@media (max-width: 844px) {
	.solution-li li {
		width: 50%;
		margin-right: 0;
		padding: 40px 10px;
	}
}
@media (max-width: 844px) {
	.solution-li li .eng {
		letter-spacing: 0;
	}
}
.solution-li li:last-child {
	margin-right: 0;
}
.solution-li li .img-box {
	width: 69px;
	height: auto;
	margin: 0 auto 20px;
}
.solution-li li .img-box img {
	width: 100%;
	height: auto;
}
.solution-li li .eng {
	font-size: 10px;
	margin-bottom: 5px;
	line-height: 100%;
}
.solution-li li h4 {
	font-size: 15px;
}
#case .pkg {
	padding: 0 80px 140px;
}
@media (max-width: 844px) {
	#case .pkg {
		padding: 2px 30px 80px;
	}
}
.case-bg-eng {
	position: relative;
	transition: 0.8s;
}
.case-bg-eng:before {
	content: "";
	background: url(../images/layouts/top-case-bg.svg) no-repeat;
	position: absolute;
	display: inline-block;
	width: 737px;
	height: 80px;
	top: 26px;
	right: -80px;
	z-index: -1;
}
@media (max-width: 844px) {
	.case-bg-eng:before {
		background: url(../images/layouts/top-case-bg-sp.svg) no-repeat;
		width: 253px;
		height: 121px;
		top: auto;
		bottom: 120px;
		right: 0;
	}
}
#case .btn-wrap {
	position: absolute;
	top: 42px;
	right: 0px;
}
@media (max-width: 844px) {
	#case .btn-wrap {
		position: inherit;
	}
}
/* [CASE-Swiper]*/
.case-slide-wrap {
	width: 100%;
	height: 100%;
	overflow: hidden;
}
@media (max-width: 844px) {
	.case-slide-wrap {
		margin-bottom: 40px;
	}
}
.case-slide-wrap .case-slide {
	position: relative;
	width: 100%;
	height: 100%;
	padding-bottom: 80px;
}
.case-slide-wrap .inner {
	width: 100%;
	position: absolute;
	bottom: 0;
}
.case-slide-wrap .inner .fraction {
	display: block;
	position: inherit;
	width: 40px;
	color: #1D1D1D;
	z-index: 10;
	bottom: 0px;
	font-size: 28px;
}
.case-slide-wrap .inner .fraction .total {
	display: none;
}
.case-slide-wrap .swiper-pagination {
	text-align: left;
	padding-left: 40px;
}
.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    width: 12px;
    height: 12px;
    background: #1D1D1D;
    margin: 0 5px!important;
}
/* [CASE-Swiper end ]*/
.case-slide-li {
	position: relative;
	width: 100%;
	height: 100%;
}
.case-slide-li li {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	height: auto;
}
.case-slide-li li .txt-box {
	width: 35%;
}
@media (max-width: 844px) {
	.case-slide-li li .txt-box {
		width: 100%;
		order: 2;
	}
}
.case-slide-li li .thum {
	width: 60%;
	border-radius: 30px;
}
@media (max-width: 844px) {
	.case-slide-li li .thum {
		width: 100%;
		order: 1;
		margin-bottom: 30px;
	}
}
.case-slide-li li .thum img {
	width: 100%;
	height: auto;
}
.case-slide-li li .txt-box .company-name {
	font-size: 12px;
	padding-left: 20px;
	position: relative;
	margin-bottom: 10px;
	line-height: 140%;
}
.case-slide-li li .txt-box .company-name:before {
	content: "";
	position: absolute;
	display: inline-block;
	width: 10px;
	height: 1px;
	top: 50%;
	left: 0;
	background: #1D1D1D;
}
.case-slide-li li .txt-box .ttl {
	font-size: 24px;
	line-height: 160%;
	margin-bottom: 20px;
}
.case-slide-li li .txt-box .dsp {
	font-size: 13px;
	margin-bottom: 30px;
}
.btn.case-btn {
	border: none;
	padding: 0;
	width: 120px;
	background: none;
}
.btn.case-btn:before{
	content: "";
	display: inline-block;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	margin: auto;
	width: 20px;
	height: 1px;
	background: #1D1D1D;
	transition: 0.6s;
}
.btn.case-btn:hover {
	opacity: 1;
	color: #1D1D1D;
	color: #999;
	background: none;
}
.btn.case-btn:hover:before{
	width: 50px;
	background: #999;
}
#news .pkg {
	padding: 0 80px 140px;
}
@media (max-width: 844px) {
	#news .pkg {
		padding: 2px 30px 80px;
	}
}
.news-top-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
	height: auto;
}
.news-top-wrap .top-ttl-wrap {
	width: 25%;
}
@media (max-width: 844px) {
	.news-top-wrap .top-ttl-wrap {
		width: 100%;
	}
}
.news-top-wrap .news-box {
	width: 66.7%;
}
@media (max-width: 844px) {
	.news-top-wrap .news-box {
		width: 100%;
	}
}
.news-li {
	width: 100%;
	margin-bottom: 40px;
}
.news-li li {
	width: 100%;
}
.news-li li a {
	display: block;
	padding: 25px;
	background: #fff;
	transition: all 0.8s ease 0s;
}
@media (max-width: 844px) {
	.news-li li a {
		padding: 20px 0;
	}
}
.news-li li a:hover {
	background: #f8f8f8;
	opacity: 1;
}
.news-li li .date {
	display: block;
	font-size: 12px;
	line-height: 120%;
	margin-bottom: 10px;
}
.news-li li .ttl {
	font-size: 15px;
	font-weight: normal;
}
.news-top-wrap .news-box .btn {
	margin-left: 25px;
}
@media (max-width: 844px) {
	.news-top-wrap .news-box .btn {
		margin-left: 0px;
	}
}
/* [02.PAGE-SERVICE]
--------------------------------------------------------------------------*/
#main-under {
	display: block;
	width: 100%;
	height: auto;
	position: relative;
	overflow-x: hidden;
	padding-top: 80px;
}
@media (max-width: 844px) {
	#main-under  {
		max-width: 640px;
		margin: 0 auto;
	}
}
.under-main-wrap {
	width: 100%;
	max-width: 1360px;
	padding: 100px 80px;
	height: auto;
	margin: 0 auto;
	position: relative;
}
@media (max-width: 844px) {
	.under-main-wrap {
		padding: 65px 30px;
	}
}
.under-main-wrap h1 {
	font-size: 50px;
	line-height: 140%;
	margin-bottom: 30px;
}
@media (max-width: 844px) {
	.under-main-wrap h1 {
		font-size: 36px;
		margin-bottom: 20px;
	}
}
.under-main-wrap .main-en {
	font-size: 18px;
	padding-left: 40px;
	position: relative;
}
.under-main-wrap .main-en:after {
	content: "";
	position: absolute;
	display: inline-block;
	width: 20px;
	height: 1px;
	top: 50%;
	left: 0;
	background: #1D1D1D;
}
.up-brd-ttl {
	font-size: 12px;
	font-weight: normal;
	padding-left: 20px;
	position: relative;
	margin-bottom: 20px;
}
.up-brd-ttl:before {
	content: "";
	position: absolute;
	display: inline-block;
	width: 10px;
	height: 1px;
	top: 50%;
	left: 0;
	background: #1D1D1D;
}
.page-service-conts h3 {
	font-size: 28px;
	margin-bottom: 60px;
}
.page-service-conts .dsp {
	line-height: 280%;
	margin-bottom: 90px;
}
.service-explanation {
	width: 100%;
	height: auto;
	margin-bottom: 40px;
}
.hosoku {
	display: block;
	width: 100%;
	font-size: 12px;
	line-height: 140%;
}
.service-explanation .flx-wrap {
	align-items: inherit;
	padding: 80px;
	border: 1px solid #1D1D1D;
	border-radius: 30px;
	margin-bottom: 20px;
}
@media (max-width: 844px) {
	.service-explanation .flx-wrap {
		padding: 40px 40px 45px;
	}
}
.service-explanation .flx-wrap .txt-box {
	width: 52%;
}
@media (max-width: 844px) {
	.service-explanation .flx-wrap .txt-box {
		width: 100%;
		order: 2;
	}
}
.service-explanation .flx-wrap .img-box {
	width: 42.4%;
}
@media (max-width: 844px) {
	.service-explanation .flx-wrap .img-box {
		width: 100%;
		order: 1;
		margin-bottom: 30px;
	}
}
.service-explanation .flx-wrap .img-box img {
	width: 100%;
	height: auto;
	border-radius: 30px;
}
@media (max-width: 844px) {
	.service-explanation .flx-wrap .img-box img {
		border-radius: 20px;
	}
}
.service-explanation .flx-wrap .eng-ttl-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	color: #C1C1C1;
	margin-bottom: 15px;
}
@media (max-width: 844px) {
	.service-explanation .flx-wrap .eng-ttl-wrap {
		margin-bottom: 30px;
	}
}
.service-explanation .flx-wrap .eng-ttl-wrap .num {
	width: 14%;
	font-size: 44px;
	line-height: 100%;
}
@media (max-width: 844px) {
	.service-explanation .flx-wrap .eng-ttl-wrap .num {
		width: 100%;
		margin-bottom: 10px;
	}
}
.service-explanation .flx-wrap .eng-ttl-wrap .txt {
	width: 86%;
	font-size: 14px;
	line-height: 100%;
}
@media (max-width: 844px) {
	.service-explanation .flx-wrap .eng-ttl-wrap .txt {
		width: 100%;
	}
}
.service-explanation .flx-wrap .txt-box .ttl {
	font-size: 24px;
	margin-bottom: 20px;
}
.service-explanation .flx-wrap .txt-box ul {
	padding-left: 20px;
}
.service-explanation .flx-wrap .txt-box ul li {
	width: 100%;
	margin-bottom: 10px;
	line-height: 140%;
	list-style: disc;
}
.service-explanation .flx-wrap .txt-box ul li:last-child {
	margin-bottom: 0;
}
#service-02 .pkg-page {
	padding: 0px 80px 140px;
}
@media (max-width: 430px) {
	#service-02 .pkg-page {
		padding: 0px 0px 80px;
	}
}
@media screen and (-webkit-min-device-pixel-ratio:2) and (min-width:450px) and ( max-width:1024px){
	#service-02 .pkg-page {
		padding: 0px 30px 80px;
	}
}
#service-02 .page-service-conts {
	background: #363636;
	border-radius: 40px;
	padding: 140px 120px 120px;
	color: #fff;
}
@media (max-width: 430px) {
	#service-02 .page-service-conts {
		padding: 80px 30px;
		border-radius: 30px 0 0 30px;
	}
}
@media screen and (-webkit-min-device-pixel-ratio:2) and (min-width:450px) and ( max-width:1024px){
	#service-02 .page-service-conts {
		padding: 80px 60px;
		border-radius: 40px;
	}
}
#service-02 .page-service-conts .up-brd-ttl:before {
	background: #fff;
}
#service-02 .page-service-conts .dsp {
	margin-bottom: 60px;
}
.service-flow {
	width: 100%;
}
.service-flow img {
	width: 100%;
	height: auto;
}
/* [03.PAGE-COMPANY]
--------------------------------------------------------------------------*/
.company-info-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
	height: auto;
}
.company-info-wrap .message-box {
	width: 50%;
	padding-right: 5%;
}
@media (max-width: 844px) {
	.company-info-wrap .message-box {
		width: 100%;
		margin-bottom: 90px;
		padding-right: 0;
	}
}
.company-info-wrap h2 {
	font-size: 44px;
	margin-bottom: 60px;
}
@media (max-width: 440px) {
	.company-info-wrap h2 {
		font-size: 30px;
	}
}
@media screen and (-webkit-min-device-pixel-ratio:2) and (min-width:450px) and ( max-width:1024px){
	.company-info-wrap h2 {
		font-size: 36px;
	}
}
.company-info-wrap .dsp {
	line-height: 280%;
	margin-bottom: 60px;
}
.company-info-wrap .company-box {
	width: 50%;
}
@media (max-width: 844px) {
	.company-info-wrap .company-box {
		width: 100%;
	}
}
.com-profile-li li {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
	height: auto;
	margin-bottom: 30px;
}
.com-profile-li li:last-child {
	margin-bottom: 0px;
}
.com-profile-li li .ttl {
	width: 20%;
	font-weight: bold;
}
@media (max-width: 440px) {
	.com-profile-li li .ttl {
		width: 100%;
		margin-bottom: 10px;
	}
}
.com-profile-li li .txt {
	width: 80%;
}
@media (max-width: 440px) {
	.com-profile-li li .txt {
		width: 100%;
	}
}
/* [04.PAGE-NEWS]
--------------------------------------------------------------------------*/
.page-news-li {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
}
@media (max-width: 440px) {
	.page-news-li {
		justify-content: space-between;
	}
}
@media screen and (-webkit-min-device-pixel-ratio:2) and (min-width:450px) and ( max-width:1024px){
	.page-news-li {
		justify-content: space-between;
	}
}
.page-news-li li {
	width: 31.5%;
	margin-right: 2.75%;
	margin-bottom: 2.75%;
	border: 1px solid #eee;
	padding: 40px;
	border-radius: 30px;
	background: #fff;
}
@media (max-width: 440px) {
	.page-news-li li {
		width: 100%;
		padding: 30px;
		margin-right: 0;
		margin-bottom: 20px;
	}
}
@media screen and (-webkit-min-device-pixel-ratio:2) and (min-width:450px) and ( max-width:1024px){
	.page-news-li li {
		width: 48%;
		margin-right: 0;
		margin-bottom: 4%;
	}
}
.page-news-li li:nth-child(3n) {
	margin-right: 0;
}
.page-news-li .thum {
	margin-bottom: 20px;
	border-radius: 20px;
}
.page-news-li .date {
	display: block;
	font-size: 12px;
	line-height: 140%;
	margin-bottom: 10px;
}
.page-news-li .ttl{
	transition: all 0.8s ease 0s;
}
.page-news-li li a:hover {
	opacity: 1;
}
.page-news-li li a:hover .ttl {
	color: #999;
}
/* [05.SINGLE-NEWS]
--------------------------------------------------------------------------*/
.single-detail-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
	height: auto;
}
.single-detail-wrap .left-wrap {
	width: 65%;
}
@media (max-width: 440px) {
	.single-detail-wrap .left-wrap {
		width: 100%;
		margin-bottom: 80px;
	}
}
@media screen and (-webkit-min-device-pixel-ratio:2) and (min-width:450px) and ( max-width:1024px){
	.single-detail-wrap .left-wrap {
		width: 100%;
		margin-bottom: 80px;
	}
}
.single-detail-wrap .right-wrap {
	width: 28.4%;
}
@media (max-width: 440px) {
	.single-detail-wrap .right-wrap {
		width: 100%;
	}
}
@media screen and (-webkit-min-device-pixel-ratio:2) and (min-width:450px) and ( max-width:1024px){
	.single-detail-wrap .right-wrap {
		width: 100%;
	}
}
.news-ttl-wrap {
	margin-bottom: 60px;
}
.news-ttl-wrap span.eng {
	display: block;
	font-size: 14px;
	margin-bottom: 25px;
}
.news-ttl-wrap h1 {
	font-size: 28px;
	margin-bottom: 25px;
}
@media (max-width: 440px) {
	.news-ttl-wrap h1 {
		font-size: 26px;
	}
}
.news-ttl-wrap span.date {
	display: block;
	font-size: 11px;
	line-height: 140%;
	margin-bottom: 40px;
}
.sns-share-li {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	height: auto;
}
.sns-share-li li {
	margin-right: 20px;
}
.sns-share-li li:last-child {
	margin-right: 0;
}
.sns-share-li li img {
	width: 24px;
	height: 24px;
	margin-right: 10px;
}
.sns-share-li li a {
	display: flex;
	align-items: center;
	font-size: 10px;
	line-height: 100%;
}
.single-conts h2 {
	font-size: 24px;
	line-height: 140%;
	margin-bottom: 40px;
}
.single-conts h3 {
	font-size: 22px;
	line-height: 140%;
	margin-bottom: 40px;
	padding: 20px;
	background: #f8f8f8;
	position: relative;
}
.single-conts h3:before {
	content: "";
	position: absolute;
	display: inline-block;
	width: 40px;
	height: 2px;
	top: 0;
	left: 0;
	background: #1D1D1D;
}
.single-conts h4 {
	font-size: 20px;
	line-height: 140%;
	margin-bottom: 30px;
	padding-left: 30px;
	position: relative;
}
.single-conts h4:before {
	content: "";
	position: absolute;
	display: inline-block;
	width: 20px;
	height: 1px;
	top: 50%;
	left: 0;
	background: #1D1D1D;
}
.single-conts h5 {
	font-size: 18px;
	line-height: 140%;
	margin-bottom: 20px;
	color: #1F9ABF;
}
.single-conts h6 {
	margin-bottom: 10px;
	line-height: 140%;
}
.single-conts p {
	margin-bottom: 50px;
	line-height: 200%;
}
.single-conts p img {
	width: 100%;
	height: auto;
	margin-bottom: 0;
}
.single-conts img {
	width: 100%;
	height: auto;
	margin-bottom: 50px;
}
.single-conts ul {
	width: 100%;
	padding-left: 20px;
	margin-bottom: 50px;
}
.single-conts ul li {
	list-style: disc;
	margin-bottom: 10px;
}
.single-conts ul li:last-child {
	margin-bottom: 0;
}
.single-conts table {
	width: 100%;
	border-top: 1px solid #eee;
	border-left: 1px solid #eee;
	line-height: 140%;
	margin-bottom: 40px;
	background: #fff;
}
.single-conts thead tr {
	background: #F0FAF9;
}
.single-conts td,
.single-conts th {
	padding: 15px 20px;
	height: auto;
	border-right: 1px solid #eee;
	border-bottom: 1px solid #eee;
}
.single-conts th {
	vertical-align: middle;
}
.single-conts table p {
	margin-bottom: 0;
}
.new-entry-wrap {
	width: 100%;
	margin-bottom: 60px;
}
.new-entry-wrap h4,
.new-archives-wrap h4 {
	position: relative;
	font-size: 18px;
	padding-left: 40px;
	margin-bottom: 30px
}
.new-entry-wrap h4:before,
.new-archives-wrap h4:before {
	content: "";
	position: absolute;
	display: inline-block;
	width: 20px;
	height: 1px;
	top: 50%;
	left: 0;
	background: #1D1D1D;
}
.new-entry-wrap ul {
	margin-bottom: 35px;
}
.new-entry-wrap ul li {
	width: 100%;
	margin-bottom: 25px;
}
.new-entry-wrap ul li a {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
@media screen and (-webkit-min-device-pixel-ratio:2) and (min-width:450px) and ( max-width:1024px){
	.new-entry-wrap ul li a {
		align-items: center;
	}
}
.new-entry-wrap ul li .thum {
	width: 35.3%;
	height: 80px;
	border-radius: 10px;
}
@media (max-width: 440px) {
	.new-entry-wrap ul li .thum {
		width: 35.3%;
		height: auto;
	}
}
@media screen and (-webkit-min-device-pixel-ratio:2) and (min-width:450px) and ( max-width:1024px){
	.new-entry-wrap ul li .thum {
		width: 27%;
		height: auto;
	}
}
.new-entry-wrap ul li .thum img {
	border-radius: 10px;
}
.new-entry-wrap ul li .txt-box {
	width: 60%;
}
@media (max-width: 440px) {
	.new-entry-wrap ul li .txt-box {
		width: 60%;
	}
}
@media screen and (-webkit-min-device-pixel-ratio:2) and (min-width:450px) and ( max-width:1024px){
	.new-entry-wrap ul li .txt-box {
		width: 70%;
	}
}
.new-entry-wrap ul li .date {
	display: block;
	font-size: 11px;
	line-height: 110%;
	margin-bottom: 5px;
}
.new-entry-wrap ul li .ttl {
	font-size: 13px;
	line-height: 140%;
}
.new-entry-wrap ul li a:hover {
	opacity: 1;
}
.new-archives-wrap {
	width: 100%;
}
.new-archives-wrap ul li {
	width: 100%;
	margin-bottom: 10px;
}
.new-archives-wrap ul li:last-child {
	margin-bottom: 0;
}
.new-archives-wrap ul li a {
	display: block;
	padding-left: 15px;
	font-weight: bold;
	font-size: 13px;
	position: relative;
}
.new-archives-wrap ul li a:before {
	content: "";
	position: absolute;
	display: inline-block;
	width: 8px;
	height: 11px;
	top: 8px;
	left: 0;
	background: url(../images/layouts/before-arrow.svg) no-repeat;
}
/* [06.PAGE-CASE]
--------------------------------------------------------------------------*/
.page-case-li {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
}
@media (max-width: 440px) {
	.page-case-li {
		justify-content: space-between;
	}
}
@media screen and (-webkit-min-device-pixel-ratio:2) and (min-width:450px) and ( max-width:1024px){
	.page-case-li {
		justify-content: space-between;
	}
}
.page-case-li li {
	width: 31.5%;
	margin-right: 2.75%;
	margin-bottom: 2.75%;
	border: 1px solid #eee;
	padding: 40px;
	border-radius: 30px;
	background: #fff;
	position: relative;
}
@media (max-width: 440px) {
	.page-case-li li {
		width: 100%;
		padding: 30px;
		margin-right: 0;
		margin-bottom: 20px;
	}
}
@media screen and (-webkit-min-device-pixel-ratio:2) and (min-width:450px) and ( max-width:1024px){
	.page-case-li li {
		width: 48%;
		margin-right: 0;
		margin-bottom: 4%;
	}
}
.page-case-li li:nth-child(3n) {
	margin-right: 0;
}
.page-case-li .thum {
	margin-bottom: 20px;
	border-radius: 20px;
}
.page-case-li li .txt-box .company-name {
	font-size: 11px;
	padding-left: 20px;
	position: relative;
	margin-bottom: 10px;
	line-height: 140%;
}
.page-case-li li .txt-box .company-name:before {
	content: "";
	position: absolute;
	display: inline-block;
	width: 10px;
	height: 1px;
	top: 50%;
	left: 0;
	background: #1D1D1D;
}
.page-case-li li .txt-box .ttl {
	font-size: 16px;
	line-height: 140%;
	margin-bottom: 40px;
	transition: all 0.8s ease 0s;
}
.page-case-li li a:hover {
	opacity: 1;
}
.page-case-li li .case-btn {
	position: absolute;
	bottom: 30px;
	left: 40px;
}
/* [07.SINGLE-CASE]
--------------------------------------------------------------------------*/
.case-detail-wrap {
	margin-bottom: 100px;
}
.case-detail {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
	height: auto;
}
.case-detail .txt-box {
	width: 35%;
}
@media (max-width: 440px) {
	.case-detail .txt-box {
		width: 100%;
		order: 2;
	}
}
@media screen and (-webkit-min-device-pixel-ratio:2) and (min-width:450px) and ( max-width:1024px){
	.case-detail .txt-box {
		width: 100%;
		order: 2;
	}
}
.case-detail .case-single-slide-wrap {
	width: 60%;
}
@media (max-width: 440px) {
	.case-detail .case-single-slide-wrap {
		width: 100%;
		order: 1;
		margin-bottom: 20px;
	}
}
@media screen and (-webkit-min-device-pixel-ratio:2) and (min-width:450px) and ( max-width:1024px){
	.case-detail .case-single-slide-wrap {
		width: 100%;
		order: 1;
		margin-bottom: 20px;
	}
}
.case-detail .case-single-slide {
	width: 100%;
	position: relative;
	padding-bottom: 50px;
}
.case-detail .case-slide-img {
	width: 100%;
	height: auto;
}
.case-detail .case-slide-img .swiper-slide {
	width: 100%;
	height: auto;
	border-radius: 30px;
	overflow: hidden;
}
.case-detail .case-slide-img img {
	width: 100%;
	height: auto;
}
.case-detail .txt-box .eng {
	display: block;
	font-size: 14px;
	margin-bottom: 10px;
	line-height: 100%;
}
.case-detail .txt-box h1 {
	font-size: 24px;
	line-height: 140%;
	margin-bottom: 30px;
}
@media (max-width: 440px) {
	.case-detail .txt-box h1 {
		font-size: 22px;
	}
}
.case-detail .txt-box .sns-share-li {
	margin-bottom: 40px;
}
.case-detail .txt-box .dsp {
	margin-bottom: 40px;
}
.case-detail .txt-box .customer-name {
	font-size: 14px;
	font-weight: bold;
	line-height: 100%;
	margin-bottom: 5px;
}
.case-detail .txt-box a.customer-url {
	font-size: 14px;
	line-height: 100%;
	text-decoration: underline;
}
.other-case-wrap .ttl-wrap {
	margin-bottom: 40px;
}
.other-case-wrap .ttl-wrap .eng {
	font-size: 14px;
	line-height: 100%;
	margin-bottom: 10px;
}
.other-case-wrap .ttl-wrap .ttl {
	font-size: 20px;
}
.other-case-wrap .btn {
	margin: 0 auto;
}
.other-case-wrap .page-case-li {
	margin-bottom: 10px;
}







/* Retina-specific styles. */
@media print,
(-o-min-device-pixel-ratio: 5/4),
(-webkit-min-device-pixel-ratio: 1.25),
(min-resolution: 120dpi) {
}
@media print {
}

/* Edge */
_:host-context(x)::-ms-clear,
nav#nav-pc ul li.r-btn a,
nav#nav-pc ul li.o-btn a,
nav#nav-pc ul li.l-btn a {
	line-height: 40px;
}
.cv-btn-flx a {
	line-height: 20px;
	padding: 22px 22px 20px;
}

/* IE */
_:-ms-lang(x), 
.logo {
	transition:transform 0.8s;
	-webkit-backface-visibility:hidden;
	backface-visibility:hidden;
}
