@charset "utf-8";

/**
 *
 *  ページ用CSS
 *　company
 */

/*--------------------------------------------------------------------------
   Overwright
---------------------------------------------------------------------------*/



/*--------------------------------------------------------------------------
   Content
---------------------------------------------------------------------------*/

/* company
-----------------------------------------------------------------*/
.company{
	padding: 50px 0 180px;
}



/* page-nav-list --------------------------------*/
.page-nav-list{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin-bottom: 50px;
}
.page-nav-list li{
	max-width: 240px;
	width: calc((100% - 120px)/4);
	margin: 15px;
	border-bottom: 1px solid #231815;
}
.page-nav-list li a{
	position: relative;
	display: block;
	padding: 10px 25px 10px 0;
	font-weight: bold;	
}
.page-nav-list li a .en{
	display: block;
	line-height: 1;
	font-size: 1.4rem;
	color: #9F0817;
}
.page-nav-list li a::after{
	position: absolute;
	right: 0;
	top: 63%;
	transform: translateY(-45%);
	display: block;
	width: 20px;
	height: 12px;
	content: "";
	background: url(../img/common/arw_down.svg) no-repeat;
	background-size: 100% auto;
	transition: .3s;
}
.page-nav-list li a:hover::after{
	transform: translateY(-20%);
}


/* sec-company --------------------------------*/
.sec-company{
	padding: 60px 0;
}
.sec-company .ttl-sec{
	margin-bottom: 20px;
}
.sec-company .ttl-sec .en{
	display: block;
	line-height: 1;
	font-size: 2.2rem;
	color: #9F0817;	
}
.sec-company .ttl-sec .ja{
	display: block;
	line-height: 1.5;
	font-size: 4.6rem;
}
.sec-company .ttl-sec + .txt{
	line-height: 2.2;
}
.sec-company .btn-base a{
	max-width: 220px;
	height: 40px;
}
.sec-company .btn-base a span{
	width: 100%;
	padding: 0 30px 0 20px;
	font-size: 1.3rem;
}
.sec-company .btn-base a span::after{
    right: 20px;
    top: 40%;
    transform: translateY(-50%);
    width: 23px;
    height: 6px;
}
.sec-company .btn-base a:hover span::after{
	right: 15px;
}
.sec-company .item-list li{
	text-indent:-1em;
	padding-left: 1em;
	line-height: 1.6;
}
.sec-company .item-list li:nth-child(n+2){
	margin-top: 10px;
}

/* message -------*/
.message .layout-box{
	flex-direction: row-reverse;
}
.message .pic{
	max-width: 440px;
	margin-left: 20px;
}
.message .txt-area{
	max-width: 670px;
}
.message .txt-area > .txt{
	margin-bottom: 10px;
	line-height:2.2; 
}
.message .txt-area .sign{
	display: flex;
	align-items: center;
	margin-bottom: 35px;
}
.message .txt-area .sign span:nth-child(1){
	margin-right: 24px;
	font-size: 1.5rem;
}
.message .txt-area .sign span:nth-child(2){
	width: 118px;
}
.message .philosophy{
	padding: 30px 5% 35px;
	background: #E5E5E6;
}
.message .philosophy h3{
	color: #9F0817;
	font-size: 2rem;
	line-height: 1.5;
}
.message .philosophy .win-win{
	margin: 5px 0 10px;
	font-size: 6rem;
	font-weight: 500;
	line-height: 1;
}
.message .philosophy .txt{
	font-size: 1.8rem;
	font-weight: bold;
}


/* features -------*/
.features .slider-area{
	margin-top: 70px;
}
.features .features-list{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.features .features-list li{
	max-width: 580px;
	width: calc(50% - 5px);
}
.features .features-list li:nth-child(n+3){
	max-width: 390px;
	width: calc((100% - 20px)3);
	margin-top: 80px;
}
.features .features-list .slider-item{
	height: 100%;
	background: #DCDDDD;
}
.features .features-list .thumb{
	position: relative;
}
.features .features-list .num{
	position: absolute;
	left: 25px;
	top: 0;
	transform: translateY(-60%);
	line-height: 1;
	font-size: 8rem;
	color: #A00817;
}
.features .features-list .txt-area{
	padding: 40px;
}
.features .features-list .txt-area h3{
	margin-bottom: 20px;
	text-align: center;
	font-size: 2.2rem;
	line-height: 1.5;
}
.features .features-list .txt-area .txt{
	font-size: 1.5rem;
	line-height: 1.6;
	text-align: justify;	
}
.features .features-list .btn-base{
	margin-top: 20px;
}
.features .features-list .btn-base a{
	margin-inline: auto;
}

/* product -------*/
.product{
	max-width: 580px;
	width: calc(50% - 5px);
}

/* support -------*/
.support{
	max-width: 580px;
	width: calc(50% - 5px);
}
.support .btn-base{
	margin-top: 25px;
}


/* event --------------------------------*/
.event .layout-box{
	margin-bottom: 50px;
}
.event .txt{
	max-width: 580px;
	width: calc(50% - 10px);	
	line-height: 2.2;
}
.event .pic{
	max-width: 580px;
	width: calc(50% - 10px);	
}
.event .sns-box{
	padding: 30px 20px 45px;
	background: #E7E6E6;
	border-radius: 20px;
}
.event .sns-box h3{
	margin-bottom: 25px;
	text-align: center;
	font-size: 20px;
}
.event .sns-box > div{
	display: flex;
	justify-content: space-between;
	max-width: 1000px;
	margin-inline: auto;
}
.event .sns-box .btn-base{
	max-width: 240px;
	width: 24%;
}
.event .sns-box .sns-list{
	display: flex;
	justify-content: space-between;
	width: 76%;
}
.event .sns-box .sns-list li{
  max-width: 242px;
	width: 31.9%;
}
.event .sns-box .sns-list li a{
	display: block;
	background-color: #FFF;
	border-radius: 100vmax;
}
.event .sns-box .sns-list img{
  width: 100%;  
}

/* profile --------------------------------*/
.profile table{
	width: 100%;
	border-collapse: collapse;
	border: 1px solid #C9CACA;
}
.profile table th,
.profile table td{
	padding: 20px;
}
.profile table th{
	background: #766F6E;
	color: #FFF;
	text-align: left;
}
.profile table tr:nth-child(n+2) th{
	border-top: 1px solid #FFF;
}
.profile table tr:nth-child(n+2) td{
	border-top: 1px solid #C9CACA;
}
.profile .google-link{
	padding: 0 18px;
	background: url(../img/common/ico_blank.svg) no-repeat right center;
	background-size: 13px auto;
}
.profile .google-link span{
	text-decoration: underline;
}
.profile .phone-link{
	pointer-events: none;
}
.profile table td a.link{
	text-decoration: underline;
	color: #a00817;
}











/*--------------------------------------------------------------------------
   mobile
---------------------------------------------------------------------------*/
@media screen and (max-width: 768px) {

	.company{
		padding: 40px 0 60px;
	}

/* page-nav-list --------------------------------*/
	.page-nav-list{
		display: block;
		margin-bottom: 20px;
	}
	.page-nav-list li{
		max-width: none;
		width: 100%;
		margin: 0;
	}
	.page-nav-list li:nth-child(n+2){
		margin-top: 5px;
	}
	.page-nav-list li a{
		padding: 5px 20px 5px 0;
	}
	.page-nav-list li a .en{
		font-size: 1.2rem;
	}
	.page-nav-list li a::after{
		width: 15px;
		height: 8px;
	}
	.page-nav-list li a:hover::after{
		transform: translateY(-20%);
	}
	
/* sec-company --------------------------------*/
	.sec-company{
		padding: 30px 0;
	}
	.sec-company .ttl-sec{
		margin-bottom: 20px;
	}
	.sec-company .ttl-sec .en{
		font-size: 1.5rem;	
	}
	.sec-company .ttl-sec .ja{
		font-size: 3rem;
	}
	.sec-company .ttl-sec + .txt{
		line-height: 1.8;
		text-align: justify;
	}
	.sec-company .btn-base a{
		max-width: 200px;
	}
	.sec-company .btn-base a span{
		font-size: 1.2rem;
	}
	.sec-company .btn-base a span::after{
			right: 20px;
			top: 40%;
			transform: translateY(-50%);
			width: 23px;
			height: 6px;
	}
	.sec-company .btn-base a:hover span::after{
		right: 15px;
	}
	.sec-company .item-list li:nth-child(n+2){
		margin-top: 5px;
	}

/* message -------*/
	.message .layout-box{
		display: block;
	}
	.message .pic{
		max-width: none;
		margin: 0 0 25px;
	}
	.message .txt-area{
		max-width: none;
	}
	.message .txt-area > .txt{
		margin-bottom: 20px;
		line-height:1.8;
		text-align: justify; 
	}
	.message .txt-area .sign{
		display: block;
		margin-bottom: 25px;
	}
	.message .txt-area .sign span:nth-child(1){
		display: block;
		margin: 0;
		font-size: 1.2rem;
	}
	.message .txt-area .sign span:nth-child(2){
		display: block;
		width: 106px;
	}
	.message .philosophy{
		padding: 20px 20px 25px;
		text-align: center;
	}
	.message .philosophy h3{
		font-size: 1.3rem;
	}
	.message .philosophy .win-win{
		margin: 5px 0 10px;
		font-size: 4rem;
	}
	.message .philosophy .txt{
		font-size: 1.3rem;
	}


/* features -------*/
	.features .slider-area{
		margin-top: 0;
		padding: 50px 0 0;
		width: calc(100% + 20px);
		overflow: hidden;
	}
	.features .features-list{
		width: calc(100% - 40px);
		display: block;
	}
	.features .features-list .slick-list{
		overflow: visible;
	}
	.features .features-list .slick-track {
		display: flex;
	}
	.features .features-list .slick-slide{
		height: auto !important;
	}
	.features .features-list .slick-slide li,
	.features .features-list .slick-slide > div{
		height: 100%;
	}
	.features .features-list .slider-item{
		margin-right: 20px;
	}
	.features .features-list li{
		max-width: none;
		width: auto;
	}
	.features .features-list li:nth-child(n+3){
		max-width: none;
		width: auto;
		margin-top: 0;
	}
	.features .features-list .thumb{
		position: relative;
	}
	.features .features-list .num{
		left: 15px;
		font-size: 5rem;
	}
	.features .features-list .txt-area{
		padding: 20px;
	}
	.features .features-list .txt-area h3{
		margin-bottom: 10px;
		font-size: 1.5rem;
	}
	.features .features-list .txt-area .txt{
		font-size: 1.2rem;
	}
	.features .features-list .btn-base{
		margin-top: 15px;
	}

/* product -------*/
	.features + .layout-box{
		display: block;
	}
	.product{
		max-width: none;
		width: auto;
	}

/* support -------*/
	.support{
		max-width: none;
		width: auto;
	}
	.support .btn-base{
		margin-top: 15px;
	}


/* event --------------------------------*/
	.event .layout-box{
		display: block;
		margin-bottom: 25px;
	}
	.event .txt{
		max-width: none;
		width: auto;
		margin-bottom: 20px;
		line-height: 1.8;
	}
	.event .pic{
		max-width: none;
		width: auto;
	}
	.event .sns-box{
		padding: 20px 15px 25px;
		border-radius: 10px;
	}
	.event .sns-box h3{
		margin-bottom: 15px;
		font-size: 1.4rem;
	}
	.event .sns-box > div{
		position: relative;
		display: block;
		max-width: 310px;
		margin-inline: auto;
	}
	.event .sns-box .btn-base{
		position: absolute;
		left: 0;
		top: 0;
		width: 150px;
	}
	.event .sns-box .btn-base a{
		height: 26px;
	}
	.event .sns-box .btn-base a span{
		padding: 0 15px 3px 8px;
		font-size: 1rem;
	}
	.event .sns-box .btn-base a span::after{
		right: 5px;
		width: 18px;
		height: 7px;
	}
	.event .sns-box .btn-base a:hover span::after{
		right: 5px;
	}
	.event .sns-box .sns-list{
		flex-wrap: wrap;
		width: 100%;
	}
	.event .sns-box .sns-list::before{
		display: block;
		content: "";
		width: 150px;
		height: 26px;
	}
	.event .sns-box .sns-list li{
		max-width: none;
		width: 150px;
	}
	.event .sns-box .sns-list li:nth-child(n+2){
		margin-top: 10px;
	}
	.event .sns-box .sns-list img{
		width: auto;
		height: 25px;
	}


/* profile --------------------------------*/
	.profile table th,
	.profile table td{
		padding: 12px;
	}
	.profile .google-link{
		padding: 0 15px 0 0;
		background-size: 10px auto;
	}
	.profile .google-link:hover span{
		border-bottom-color: #221714;
	}
	.profile .phone-link{
		pointer-events: auto;
	}	
		
	
	
}