/*
* privacy.css
*
*/
/* --------------------------------
	 main
-------------------------------- */
.main {
	background: #fff;
}

/* --------------------------------
	 lines
-------------------------------- */
.cover_lines {
	z-index: 0;
}
.cover_lines .vertical_line {
	background: #e8e8e8;
}

/* --------------------------------
	 cover
-------------------------------- */
.cover {
	position: relative;
	padding: 85px 0 75px;
	background: #f5f5f5;
}
@media screen and (min-width: 751px) {
	.cover {
		padding: 127px 0 140px;
	}
}
.cover .inner {
	position: relative;
	z-index: 1;
}
.cover .subheaders .subheaders_contents {
	padding-bottom: 15px;
}
@media screen and (min-width: 751px) {
	.cover .subheaders .subheaders_contents {
		padding-bottom: 35px;
	}
}
.cover .subheaders .subheaders_contents .subh {
	font-size: 23px;
	line-height: 1.6087;
}
@media screen and (min-width: 751px) {
	.cover .subheaders .subheaders_contents .subh {
		font-size: 32px;
		line-height: 1;
	}
}

/* --------------------------------
	 privacy
-------------------------------- */
.privacy_contents {
	position: relative;
	margin: auto;
	padding: 65px 0 70px; 
	width: 100%;
	width: calc(100% - 2px);
}
@media screen and (min-width: 751px) {
	.privacy_contents {
		padding: 120px 0 120px;
		width: 85%;
		width: calc(85% - 2px);
	}
}

.company_info_detail,
.history_detail {
	margin: 28px auto 0; 
	width: 100%;
}
@media screen and (min-width: 751px) {
	.company_info_detail,
	.history_detail {
		margin: 48px auto 0;
	}
}

.anchor_links {
	position: relative;
	z-index: 1;
	margin: 0 15px;
}
@media screen and (min-width: 751px) {
	.anchor_links {
		display: -ms-flexbox;
		display: flex;
		margin: 0; 

		-ms-flex-pack: center; 

		    justify-content: center;
	}
}
@media screen and (min-width: 751px) {
	.anchor_links .anchor_link {
		margin: 0;
	}
}

.link_btn {
	width: 100%;
}
@media screen and (min-width: 751px) {
	.link_btn {
		max-width: 324px;
	}
}
.link_btn + .link_btn {
	margin-top: 15px;
}
@media screen and (min-width: 751px) {
	.link_btn + .link_btn {
		margin: 0 0 0 25px;
	}
}
.link_btn a,
.link_btn .no_link {
	display: block;
	display: -ms-flexbox;
	display: flex;
	width: 100%;
	max-height: 55px;
	background: #fff;
	text-align: center;
	text-decoration: none; 
	color: #cb0400;
	box-shadow: 0px 3px 15px 0px rgba(0, 0, 0, 0.1);
	font-size: 13px;
	font-weight: bold;

	-ms-flex-pack: center;

	    justify-content: center;
	-ms-flex-align: center;
	    align-items: center;
}
@media screen and (min-width: 751px) {
	.link_btn a,
	.link_btn .no_link {
		max-width: 324px;
		max-height: 65px;
		box-shadow: 0px 4px 20px 0px rgba(0, 0, 0, 0.1);
		font-size: 16px;
	}
}
.link_btn a > span,
.link_btn .no_link > span {
	position: relative;
	padding-right: 13px;
}
.link_btn a > span:after,
.link_btn .no_link > span:after {
	content: "";
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 0;
	border-width: 7px 3px 0 3px;
	border-style: solid;
	border-color: #cb0400 transparent transparent transparent;
	width: 0;
	height: 0;
	transition: 0.3s border-color cubic-bezier(0.23, 1, 0.32, 1); 
	-webkit-transform: translate(0, -50%); 
	    -ms-transform: translate(0, -50%); 
	        transform: translate(0, -50%);
}
@media screen and (min-width: 751px) {
	.link_btn a {
		transition: 0.3s all cubic-bezier(0.23, 1, 0.32, 1);
	}
}
@media screen and (min-width: 751px) {
	.link_btn a:hover {
		background: #cb0400;
		color: #fff;
	}
}
@media screen and (min-width: 751px) and (min-width: 751px) {
	.link_btn a:hover span:after {
		border-color: #fff transparent transparent transparent;
	}
}

.privacy_content {
	position: relative;
	margin-top: 65px;
}
@media screen and (min-width: 751px) {
	.privacy_content {
		margin: 90px 0 0;
		margin-right: calc(25% / 2);
		margin-left: calc(25% / 2);
	}
}
.privacy_content .subheaders {
	padding-bottom: 27px; 
	text-align: left;
}
@media screen and (min-width: 751px) {
	.privacy_content .subheaders {
		padding-bottom: 40px;
	}
}
.privacy_content .subheaders .subheaders_contents h3.subh {
	margin-bottom: -5px;
	font-size: 19px;
	line-height: 1.3;
}
@media screen and (min-width: 751px) {
	.privacy_content .subheaders .subheaders_contents h3.subh {
		font-size: 24px;
	}
}
.privacy_content .subheaders .subheaders_contents:after {
	right: auto;
}
.privacy_content + .privacy_content {
	margin-top: 75px;
}
@media screen and (min-width: 751px) {
	.privacy_content + .privacy_content {
		margin-top: 110px;
	}
}
.privacy_content:before {
	content: "";
	display: block;
	margin-top: -85px;
	height: 85px;
}
@media screen and (min-width: 751px) {
	.privacy_content:before {
		margin-top: -105px;
		height: 105px;
	}
}

.privacy_content_txt {
	font-size: 13px;
	line-height: 1.8;
}
@media screen and (min-width: 751px) {
	.privacy_content_txt {
		font-size: 14px;
		line-height: 1.9;
	}
}
.privacy_content_txt + .privacy_content_txt {
	margin-top: 1.8em;
}
@media screen and (min-width: 751px) {
	.privacy_content_txt + .privacy_content_txt {
		margin-top: 1.2em;
	}
}
.privacy_content_txt + .privacy_content_txt.ex {
	margin-top: 5px;
}
@media screen and (min-width: 751px) {
	.privacy_content_txt + .privacy_content_txt.ex {
		margin-top: 10px;
		line-height: 2;
	}
}
.privacy_content_txt .anchor_link_txt {
	color: #cb0400; 
	font-weight: bold;
	font-style: normal;
}
@media screen and (min-width: 751px) {
	.privacy_content_txt .anchor_link_txt {
		text-decoration: none;
	}
}
@media screen and (min-width: 751px) {
	.privacy_content_txt .anchor_link_txt:hover {
		text-decoration: underline;
	}
}

.privacy_content_txts {
	margin-top: 2em;
}
@media screen and (min-width: 751px) {
	.privacy_content_txts {
		margin-top: 2.2em;
	}
}

.privacy_content_01 .privacy_content_h {
	padding-bottom: 7px;
	font-size: 13px;
	font-weight: bold;
}
@media screen and (min-width: 751px) {
	.privacy_content_01 .privacy_content_h {
		padding-bottom: 12px;
		font-size: 14px;
	}
}

@media screen and (max-width: 750px) {
	.privacy_content_02 .privacy_content_txts {
		margin-top: 1.1em;
	}
}

.privacy_content_02 .privacy_content_h {
	padding-bottom: 8px;
	font-size: 14px;
	font-weight: bold;
}
@media screen and (min-width: 751px) {
	.privacy_content_02 .privacy_content_h {
		padding-bottom: 12px;
		font-size: 16px;
	}
}

.privacy_content_lists {
	padding: 0 0 5px 20px;
}
@media screen and (min-width: 751px) {
	.privacy_content_lists {
		padding: 0 0 10px 33px;
	}
}
.privacy_content_lists li {
	padding-top: 10px;
	padding-left: 1.5em;
	text-indent: -1.5em;
}
@media screen and (min-width: 751px) {
	.privacy_content_lists li {
		padding-top: 6px;
	}
}

.privacy_content_table {
	margin-top: 1em;
	border-right: 1px solid #000;
	border-bottom: 1px solid #000;
}
@media screen and (min-width: 751px) {
	.privacy_content_table {
		display: -ms-flexbox;
		display: flex;
		margin-top: 2em;
	}
}

.privacy_content_table_lists {
	display: table;
	width: 100%;
}
@media screen and (min-width: 751px) {
	.privacy_content_table_lists {
		display: block;
		border-top: 1px solid #000;
		border-left: 1px solid #000; 
		width: 33.3%;
	}
}
.privacy_content_table_lists dt {
	display: table-cell;
	padding: 15px 10px;
	border-top: 1px solid #000;
	border-left: 1px solid #000; 
	width: 110px;
	background: #f5f5f5;
	text-align: center;
	vertical-align: middle;
	font-size: 13px;
	font-weight: bold;
}
@media screen and (min-width: 751px) {
	.privacy_content_table_lists dt {
		display: block;
		border: none;
		border-bottom: 1px solid #000; 
		width: auto;
		font-size: 14px;
		line-height: 2;
	}
}
.privacy_content_table_lists dd {
	display: table-cell;
	padding: 17px 20px;
	border-top: 1px solid #000;
	border-left: 1px solid #000;
	background: #fff; 
	font-size: 13px;
	line-height: 1.69231;
}
@media screen and (min-width: 751px) {
	.privacy_content_table_lists dd {
		display: block;
		padding: 20px;
		border: none; 
		width: auto;
		min-height: 165px;
		font-size: 14px;
		line-height: 2;
	}
}