@charset "utf-8";
/*------------------------------------------------------------
	汎用スタイル
------------------------------------------------------------*/
/* clearfix */	
.clearfix:after {content: "";display: block;clear: both;}
/* flex */	
.flex,.flexA,.flexB,.flexC {display: flex;flex-wrap: wrap;}
.flexA {justify-content: space-around;}
.flexB {justify-content: space-between;}
.flexC {justify-content: center;}

p.empty {
	text-align: center;
	padding: 20px 0;
}

/*------------------------------------------------------------
	content
------------------------------------------------------------*/
.copyright {
	position: absolute;
	right: 40px;
	top: 50%;
	font-family: 'Montserrat', sans-serif;
	transform: translateY(-50%);
	-webkit-writing-mode : tb-rl;
	-webkit-writing-mode: vertical-rl;
	writing-mode: tb-rl;
	writing-mode: vertical-rl;
	direction: ltr;
	height: 360px;
	font-size: 1rem;
	z-index: 1;
}
@media all and (max-width: 896px) {
	.copyright {
		right: 10px;
		top: 47%;
		height: 240px;
		font-size: 0.7rem;
	}
}
/*------------------------------------------------------------
	content
------------------------------------------------------------*/
.content {
	width: 884px;
	margin: 0 auto;
}
@media all and (max-width: 896px) {
	.content {
		width: auto;
		margin: 0 26px;
	}
}
/*------------------------------------------------------------
	pageTitle01
------------------------------------------------------------*/
.pageTitle01 {
	margin-bottom: 70px;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	height: 270px;
	text-align: center;
	background: url("../img/privacy/page_title_bg.jpg") no-repeat center center;
	background-size: contain;
}
.pageTitle01 .jp {
	margin-bottom: -1px;
	display: block;
	font-weight: 500;
}
.pageTitle01 .en {
	margin-right: -16px;
	display: block;
	font-family: 'Oswald', sans-serif;
	font-size: 5.7rem;
	font-weight: 500;
	letter-spacing: 0.2em;
}
@media all and (max-width: 896px) {
	.pageTitle01 {
		margin: 0 25px 45px 28px;
		height: 135px;
		background: url("../img/privacy/sp_page_title_bg.png") no-repeat center center;
		background-size: cover;
	}
	.pageTitle01 .jp {
		margin-bottom: -4px;
	}
	.pageTitle01 .en {
		margin: 7px -10px 0;
		font-size: 2.8rem;
	}
}
@media all and (max-width: 374px) {
	.pageTitle01 .en {
		font-size: 2.2rem;
	}
}
/*------------------------------------------------------------
	pageTitle02
------------------------------------------------------------*/
.pageTitle02 {
	padding: 70px;
	background: url(../img/company/page_title_bg.jpg) no-repeat top center / cover;
}
.pageTitle02 .content {
	max-width: 1400px;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
@media all and (max-width: 896px) {
	.pageTitle02 {
		padding: 35px 20px 51px;
		background-image: url(../img/company/sp_page_title_bg.jpg);
	}
	.pageTitle02 .content {
		margin: 0 auto;
		display: block;
		width: auto;
		max-width: inherit;
	}
	.pageTitle02 .photo {
		margin: 0 18px 0 -20px;
	}
}
/*------------------------------------------------------------
	headLine02
------------------------------------------------------------*/
.headLine02 {
	margin-bottom: 32px;
	font-size: 3rem;
	font-weight: 500;
	text-align: center;
}
@media all and (max-width: 896px) {
	.headLine02 {
		margin-bottom: 20px;
		font-size: 1.8rem;
	}
}
/*------------------------------------------------------------
	headLine03
------------------------------------------------------------*/
.headLine03 {
	font-size: 1.6rem;
	font-weight: 500;
}
.headLine03 span {
	margin-top: 12px;
	display: block;
	font-size: 5.7rem;
	letter-spacing: 0.2em;
	font-family: 'Oswald', sans-serif;
}
@media all and (max-width: 896px) {
	.headLine03 {
		font-size: 1.3rem;
	}
	.headLine03 span {
		margin-top: 4px;
		font-size: 3.3rem;
	}
}
/*------------------------------------------------------------
	headLine04
------------------------------------------------------------*/
.headLine04 {
	margin-bottom: 17px;
	padding-bottom: 18px;
	font-size: 2rem;
	font-weight: 400;
	letter-spacing: 0.12em;
	border-bottom: 1px solid #626262;
	font-family: 'Oswald', sans-serif;
}
@media all and (max-width: 896px) {
	.headLine04 {
		margin-bottom: 15px;
		padding-bottom: 14px;
		letter-spacing: 0.1em;
	}
}
/*------------------------------------------------------------
	headLine05
------------------------------------------------------------*/
.headLine05 {
	margin: -17px 0 0 10.5%;
	padding-bottom: 15px;
	font-weight: 400;
}
.headLine05 .en {
	margin-top: 11px;
	font-size: 5.8rem;
	font-weight: 500;
	letter-spacing: 0.22em;
	font-family: 'Oswald', sans-serif;
}
.headLine05 .txt {
	margin-top: 19px;
}
.headLine05 span {
	display: block;
}
@media all and (max-width: 896px) {
	.headLine05 {
		margin: 0 0 8px 0;
	}
	.headLine05 span {
		font-size: 1.3rem;
	}
	.headLine05 .en {
		margin: 2px 0 10px;
		font-size: 3.2rem;
	}
	.headLine05 .txt {
		font-size: 1.1rem;
		font-weight: 300;
		font-feature-settings: "palt";
	}
}
/*------------------------------------------------------------
	comContact
------------------------------------------------------------*/
.comContact {
	padding: 83px 0;
	min-height: 450px;
	box-sizing: border-box;
	background: url("../img/common/contact_bg.jpg") no-repeat center center;
	background-size: cover;
}
.comContact .content {
	width: 1100px;
}
.comContact .lBox {
	width: 510px;
}
.comContact .rBox {
	width: 388px;
	padding-top: 26px;
}
.comContact .title {
	margin-bottom: 21px;
}
.comContact .title .jp {
	margin-bottom: 8px;
	display: block;
	font-weight: 500;
}
.comContact .title .en {
	display: block;
	font-size: 5.8rem;
	font-family: 'Oswald', sans-serif;
	letter-spacing: 0.22em;
}
.comContact .txtP {
	line-height: 2.2;
}
.comContact .tel {
	margin-bottom: 19px;
}
.comContact .tel a {
	padding: 6px 0 0;
	display: block;
	width: 100%;
	text-align: center;
	border: 1px solid #fff;
	min-height: 101px;
	box-sizing: border-box;
}
.comContact .tel .top {
	padding-left: 50px;
	margin-bottom: 0;
	display: inline-block;
	font-size: 3.9rem;
	font-family: 'Oswald', sans-serif;
	background: url("../img/common/icon01.png") no-repeat left center;
}
.comContact .tel .time {
	display: block;
	font-size: 1.5rem;
	font-weight: 500;
}
.comContact .btn a {
	display: flex;
	height: 96px;
	color: #000;
	font-size: 1.7rem;
	font-weight: 500;
	align-items: center;
	justify-content: center;
	background: #fff;
}
.comContact .btn a:hover {
	opacity: 0.7;
}
@media all and (max-width: 896px) {
	.comContact {
		padding: 42px 0;
		min-height: 441px;
		background: url("../img/common/sp_contact_bg.jpg") no-repeat center center;
		background-size: cover;
	}
	.comContact .content {
		width: inherit;
		display: block;
		margin: 0 25px;
	}
	.comContact .lBox {
		width: auto;
	}
	.comContact .rBox {
		width: auto;
		padding-top: 0;
	}
	.comContact .title {
		margin-bottom: 17px;
	}
	.comContact .title .en {
		font-size: 3.2rem;
	}
	.comContact .title .jp {
		margin-bottom: 4px;
		font-size: 1.3rem;
		font-weight: 300;
	}
	.comContact .txtP {
		margin: 0 -10px 35px 0;
		font-size: 1.1rem;
		line-height: 1.9;
	}
	.comContact .tel {
		margin: 0 auto 14px;
	}
	.comContact .tel a {
		padding: 0;
		min-height: 86px;
	}
	.comContact .tel .top {
		padding-left: 37px;
		margin-bottom: -8px;
		font-size: 3.4rem;
		letter-spacing: 0.05em;
		background: url("../img/common/icon01.png") no-repeat left center /30px;
	}
	.comContact .tel .time {
		font-size: 1.3rem;
		font-weight: 300;
    margin-top: 6px;
	}
	.comContact .btn a {
		height: 86px;
		font-size: 1.3rem;
	}
}
/*------------------------------------------------------------
	comBtn
------------------------------------------------------------*/
.comBtn a,
.comBtn span {
	width: 168px;
	display: flex;
	font-size: 1.3rem;
	height: 47px;
	font-family: 'Montserrat', sans-serif;
	border: 1px solid #fff;
	align-items: center;
	justify-content: center;
	letter-spacing: 0.04em;
	margin: auto;
}
.comBtn01 a {
	width: 300px;
	margin: 0 auto;
	height: 58px;
	font-weight: 500;
	font-size: 1.5rem;
}
.comBtn a:hover {
	opacity: 0.7;
}
@media all and (max-width: 896px) {
	.comBtn01 a {
		width: 250px;
		height: 50px;
		font-size: 1.2rem;
		font-weight: 400;
		letter-spacing: 0.16em;
		font-family: 'Oswald', sans-serif;
	}
}
/*------------------------------------------------------------
	comBtn02
------------------------------------------------------------*/
.comBtn02 a,
.comBtn02 span {
	width: 320px;
	height: 70px;
	font-size: 1.6rem;
	border-radius: 35px;
	letter-spacing: 0.15em;
	box-sizing: border-box;
	font-family: 'Oswald', sans-serif;
}
@media all and (max-width: 896px) {
	.comBtn02 a {
		width: 250px;
		height: 50px;
		font-size: 1.1rem;
	}
}
/*------------------------------------------------------------
	.comTitleBox
------------------------------------------------------------*/
.comTitleBox {
	margin: 0 auto 88px;
	width: 1102px;
	display: flex;
}
 .comTitleBox .headLine03 {
	margin-right: 86px;
}
.comTitleBox p {
	margin-top: -4px;
	font-size: 1.6rem;
	font-weight: 300;
	line-height: 2.375;
}
@media all and (max-width: 896px) {
	.comTitleBox {
		margin-bottom: 32px;
		width: auto;
		display: block;
	}
	.comTitleBox .headLine03 {
		margin: 0 0 18px;
	}
	.comTitleBox p {
		font-size: 1.1rem;
		line-height: 1.8;
	}
}
/*------------------------------------------------------------
	.comUlBox
------------------------------------------------------------*/
.comUlBox {
	margin-left: calc(50% - 581px);
}
.comUlBox .linkList {
	padding-bottom: 121px;
}
.comUlBox .linkList li {
	float: left;
}
.comUlBox .linkList li a:hover {
	opacity: 0.7;
}
.comUlBox .linkList .slick-slide > div {
	margin: 0 30px;
	width: 460px !important;
}
.comUlBox .linkList li .pho {
	margin-bottom: 29px;
}
.comUlBox .linkList li p {
	margin-bottom: 17px;
	font-size: 2.4rem;
	line-height: 1.75;
}
.comUlBox  .linkList li .ttl {
	margin-bottom: 10px;
	font-size: 1.6rem;
	position: relative;
	display: inline-block;
}
.comUlBox  .linkList li .ttl::before {
	width: 41px;
	height: 1px;
	position: absolute;
	top: 50%;
	right: -55px;
	background-color: #fff;
	content: "";
}
.comUlBox  .linkList li .date {
	margin-bottom: 0;
	color: #a5a5a5;
	font-size: 1.4rem;
}
.comUlBox .linkList .slick-prev,
.comUlBox .linkList .slick-next {
	bottom: 0;
    font-size: 0;
    line-height: 0;
    position: absolute;
    display: block;
    width: 67px;
    height: 49px;
    padding: 0;
    cursor: pointer;
    color: transparent;
    border: none;
    outline: none;
}
.comUlBox .linkList .slick-prev:hover,
.comUlBox .linkList .slick-next:hover {
	opacity: 0.7;
}
.comUlBox  .linkList .slick-prev {
	left: 32px;
	background: url("../img/common/prev.png") no-repeat left top;
	z-index: 20;
}
.comUlBox .linkList .slick-next {
	left: 185px;
	right: auto;
	background: url("../img/common/next.png") no-repeat left top;
	z-index: 20;
}
.comUlBox .linkList .slick-dots {
    position: absolute;
    left: 122px;
    bottom: 12px;
    width: 100%;
    z-index: 10;
}
.comUlBox .linkList .slick-dots li {
	opacity: 0;
    margin: 0 7px;
	color: #fff;
    cursor: pointer;
    list-style-type: none;
    counter-increment: list;
	position: absolute;
	top: -25px;
	left: 0;
}
.comUlBox .linkList .slick-dots li:after {
    content: "0"counter(list);
    font-size: 1.7rem;
	font-weight: 500;
    line-height: 1.1;
}
.comUlBox .linkList .slick-dots li button {
    display: none;
}
.comUlBox .linkList .slick-dots li.slick-active {
	opacity: 1;
}
@media all and (max-width: 896px) {
	.comUlBox {
		margin-left: 10px;
	}
	.comUlBox .linkList {
		padding-bottom: 67px;
	}
	.comUlBox .linkList .slick-slide > div {
		margin: 0 15px;
		width: 265px !important;
	}
	.comUlBox .linkList li .pho {
		margin-bottom: 26px;
	}
	.comUlBox .linkList li .ttl {
		margin-bottom: 12px;
		font-size: 1.2rem;
	}
	.comUlBox .linkList li .ttl::before {
		width: 20px;
		right: -26px;
	}
	.comUlBox .linkList li p {
		margin-bottom: 12px;
		font-size: 1.7rem;
		line-height: 1.58;
	}
	.comUlBox .linkList li .date {
		font-size: 1.1rem;
	}
	.comUlBox .linkList .slick-prev,
	.comUlBox .linkList .slick-next {
		width: 49px;
		height: 36px;
	}
	.comUlBox .linkList .slick-prev:hover,
	.comUlBox .linkList .slick-next:hover {
	opacity: 1;
}
	.comUlBox  .linkList .slick-prev {
		left: 16px;
		background: url("../img/common/sp_prev.png") no-repeat left top;
		background-size: 49px auto;
	}
	.comUlBox .linkList .slick-next {
		left: 105px;
		right: auto;
		background: url("../img/common/sp_next.png") no-repeat left top;
		background-size: 49px auto;
	}
	.comUlBox .linkList .slick-dots {
		left: 70px;
		bottom: 10px;
	}
	.comUlBox .linkList .slick-dots li {
		top: -16px;
	}
	.comUlBox .linkList .slick-dots li:after {
		font-size: 1.3rem;
	}
}	