/* ---------------------------------------------------------------
start contact CSS
--------------------------------------------------------------- */

/* --------------- privacy --------------- */

p {
	margin: 0;
}

#wrap.privacy {
	background-image: url(../img/privacy/bg_privacy_left.gif), url(../img/privacy/bg_privacy_right.gif);
	background-repeat: repeat-y, repeat-y;
	background-size: 879px auto, 736px auto;
	background-position: calc( 50vw - 935px ) 605px, calc(50vw + 175px) 1630px;
}

.privacy .bg_pagettl {
	background-image: url(../img/privacy/bg_pagettl.jpg);
	background-repeat: no-repeat;
}

.privacy .bg_pagettl .pagettl .jp {
	color: #fff;
	font-weight: 400;
}

#subcontent.privacy {
	margin: 0 auto 28px;
}

.col_privacy {
	width: 100%;
	max-width: 870px;
	margin: 0 auto 50px;
	padding: 40px 0 0px;
	color: #666;
	line-height: 30px;
	font-weight: 350;
}

.col_privacy h2 {
	margin: 0 0 35px;
	padding: 0px 20px;
	font-size: 20px;
	font-weight: 500;
	border-left: 3px solid #003067;
}

.txt_privacy1 {
	margin: 0 0 27px;
}

ol.list_privacy {
	margin: 0 0 0px 18px;
	padding: 0;
}

ol.list_privacy li {
	margin: 0 0 25px;
	list-style: none;
	padding: 0 0 0 21px;
	text-indent: -21px;
}

ol.list_privacy .ttl {
	font-size: 18px;
	font-weight: 500;
	color: #003067;
}

ol.list_privacy2 {
	margin: 0;
	padding: 17px 0 8px;
}

ol.list_privacy2 li {
	margin: 0 0 30px;
	list-style: none;
	padding: 0 0 0 20px;
	text-indent: -17px;
}

ol.list_privacy5 {
	margin: 0;
	padding: 17px 0 8px;
}

ol.list_privacy5 li {
	margin: 0 0 30px;
	list-style: none;
	padding: 0 0 0 0;
	text-indent: 0;
}

ol.list_privacy5 li .width {
	padding-left: 17px;
	text-indent: 0;
}

.mds_privacy1 {
	font-weight: 500;
}

.mds_privacy2{
	font-weight: 500;
	padding: 0 0 0 30px;
}

.col_privacy .mt1 {
	margin: 35px 0 30px;
}

.col_subcontent.privacy {
	margin: 0 auto 50px;
	padding: 15px 20px;
}

.ttl_privacy1 {
	font-size: 18px;
	font-weight: 500;
	color: #003067;
}

.txt_privacy2 {
	margin: 0 0px 30px 25px;
}





.col_privacy .ttl2 {
	margin: 25px 0 0;
	padding: 0px 10px;
	font-weight: 500;
	font-size: 15px;
	color: #003067;
	display: block;
}

.col_privacy .ttl2.top {
	margin: 10px 0 5px;
	padding: 1px 10px;
	background-color: #e9e7ec;
}


.list_privacy3 {
	margin: 0 0 5px 0;
	padding: 0;
}

.list_privacy3 li {
	margin: 0;
	list-style: none;
	padding: 0 0 0 1em;
	text-indent: -1em;
}

.col_privacy .ttl3 {
	margin: 3px 0 5px;
	padding: 3px 10px 5px;
	font-weight: 500;
	font-size: 15px;
	line-height: 21px;
	color: #fff;
	background-color: #003067;
	display: block;
}

ol.list_privacy2.col2 li .ml {
	margin-left: 5px;
}

ol.list_privacy li *,
ol.list_privacy2 li *,
ul.list_privacy3 li *,
ol.list_privacy4 li * {
	text-indent: 0;
}

ol.list_privacy li ol.list_privacy2 li {
	margin: 0;
	text-indent: -38px;
}
ol.list_privacy2 li ul.list_privacy3 li {
	padding-left: 1em;
	text-indent: -1em;
}


ol.list_privacy2 li ul.list_privacy3.hourei li {
	margin: 0;
	list-style: none;
	padding: 0 0 0 21px;
	text-indent: -21px;
}

ol.list_privacy2 li ul.list_privacy3 li.last {
	margin-bottom: 16px;
}

.col_subcontent.privacy.col2 {
	margin: 0 auto 85px;
	padding: 23px 20px 28px;

}

.col_privacy h2.col2 {
	margin: 0 0 18px;
}

.ttl_privacy1.col2 {
	margin: 0 0 7px 15px;
}

ol.list_privacy2.col2 {
	margin-left: 15px;
	padding: 0;
}

ol.list_privacy2.col2 li {
	margin-bottom: 15px;
}

ol.list_privacy2.col2 li .list_privacy3 li {
	margin-bottom: 0;
	margin-left: 1em;
}


ol.list_privacy2.col2 li.mb {
	max-width: 670px;
	margin-bottom: 20px;
}

ol.list_privacy2 .width {
	
}

ol.list_privacy2 .width li {
	padding-left: 0;
}

ol.list_privacy2 li .flex {
	display: flex;
}

.col_subcontent.privacy.col3 {
	margin: 0 auto;
	padding: 37px 20px 55px;
}

.wrap3_privacy3 {
	margin-left: 30px;
}

.col3 .col_privacy h2 {
	margin: 0 0 15px;
}

.wrap3_privacy3 .img_waku {
	display: none;
}

.col3 .txt_privacy3 {
	margin: 0 0 27px 0px;
}

.list_privacy3.wrap3 li {
	margin-left: 1em;
}

.list_privacy3.wrap3.list_wrap3 li {
	margin-left: 2.8em;
}

.txt_wrap3 {
	padding: 0 0 0 20px;
	text-indent: -17px;
}

.txt_wrap4 {
	padding: 0 0 0 28px;
}

.col_privacy .box {
	margin: 10px 0 0;
	padding: 11px 23px;
	border: solid 1px #666;
	display: inline-block;
	line-height: 26px;
}

.col_privacy .box .ttl {
	font-weight: 500;
}

ol.list_privacy4 li.last {
	margin-bottom: 0;
}

table.tbl_privacy1 {
	width: 100%;
	max-width: 650px;
	margin: 8px 0 35px 24px;
	padding: 0;
	text-align: center;
	border-top: solid 1px #666;
	border-left: solid 1px #666;
}

table.tbl_privacy1 th {
	width: 20px;
	margin: 0;
	padding: 0px 10px;
	color: #fff;
	font-weight: 350;
	background-color: #a29c99;
	border-right: solid 1px #666;
	border-bottom: solid 1px #666;
	box-sizing: border-box;
}

table.tbl_privacy1 th.left {
	width: 98px;
}

table.tbl_privacy1 td {
	margin: 0;
	padding: 0px 10px;
	text-align: center;
	background-color: #fff;
	border-right: solid 1px #666;
	border-bottom: solid 1px #666;
	box-sizing: border-box;
}


table.tbl_privacy1 td.left {
	text-align: left;
}

table.tbl_privacy1 td.color {
	background-color: #ebe9e9;
}

ol.list_privacy4 {
	margin: 0 0 0 20px;
	padding: 30px 0 0;
}

ol.list_privacy4 li {
	margin: 0 0 30px;
	list-style: none;
	padding: 0 0 0 24px;
	text-indent: -24px;
}

table.tbl_privacy2 {
	width: 100%;
	max-width: 410px;
	margin: 10px 0;
	padding: 0;
	text-align: center;
	font-weight: 500;
	border: solid 1px #666;
}

table.tbl_privacy2 th {
	width: 153px;
	margin: 0;
	padding: 12px 10px;
	background-color: #ebe9e9;
	border-right: solid 1px #666;
}

table.tbl_privacy2 td {
	margin: 0;
	padding: 8px;
}

.ttl_privacy2 {
	padding: 25px 0 0;
	font-size: 18px;
	font-weight: 500;
	color: #003067;
}

.col_privacy .box2 {
	max-width: 767px;
	margin: 20px 0 20px 20px;
	padding: 28px 30px;
	line-height: 26px;
	border: solid 1px #003067;
}

.col_privacy .box2 p,
.col_privacy .box2 .mb {
	margin-bottom: 27px;
}

.col_privacy .box2 .medium {
	font-weight: 500;
}

.col_privacy .box2 .flex {
	display: flex;
	align-items: center;
}

.col_privacy .box2 img {
	width: 95px;
	margin-right: 25px;
}

.col_privacy .box2 .medium {
	margin-bottom: 10px;
}

.col_privacy .box2 .ml {
	margin-left: 1em;
}




/* ---------------------------------------------------------------
start max 1033px
--------------------------------------------------------------- */

@media screen and ( max-width: 1033px ) {






}

/* ---------------------------------------------------------------
end max 1033px
--------------------------------------------------------------- */


/* ---------------------------------------------------------------
start max 850px
--------------------------------------------------------------- */

@media screen and ( max-width: 850px ) {

	table.tbl_privacy1 {
    width: 96%;
	}

	table.tbl_privacy1 th {
		line-height: 20px;
	}


}

/* ---------------------------------------------------------------
end max 850px
--------------------------------------------------------------- */

/* ---------------------------------------------------------------
start max 700px
--------------------------------------------------------------- */

@media print,screen and ( max-width: 700px ) {

	/* --------------- privacy --------------- */

	.privacy .bg_pagettl {
		background-image: url(../img/privacy/sp/bg_pagettl.jpg);
		background-repeat: no-repeat;
		position: relative;
		z-index: 1;
	}

	.privacy .bg_pagettl .en {
		width: 80%;
	}

	.col_privacy.overview:before {
		content: "";
		width: 102vw;
		height: 133vw;
		margin: 0;
		padding: 0;
		background-image: url(../img/company/sp/bg_company_left.gif);
		background-repeat: no-repeat;
		background-size: 100% auto;
		background-position: right bottom;
		position: absolute;
		top: 110px;
		left: calc( -40.9vw - 20px );
		z-index: -1;
	}

	.col_privacy.overview:after {
		content: "";
		width: 102vw;
		height: 133vw;
		margin: 0;
		padding: 0;
		background-image: url(../img/privacy/sp/bg_privacy_right.gif);
		background-repeat: no-repeat;
		background-size: 100% auto;
		background-position: left bottom;
		position: absolute;
		right: calc( -40.9vw - 20px );
		top: 1000px;
		z-index: -1;
	}

	#subcontent.privacy {
		margin: 0 auto;
	}

	.col_privacy {
		margin: 0;
		padding: 12px 0 0px;
		line-height: 27px;
		position: relative;
		z-index: 0;
	}

	.col_privacy h2 {
		margin: 0 0 14px;
		padding: 0px 15px;
	}

	ol.list_privacy {
		margin: 0;
	}

	ol.list_privacy .ttl {
		line-height: 28px;
	}

	ol.list_privacy li {
		margin: 0;
		padding-top: 23px;
		padding-bottom: 10px;
		border-top: dashed 1px #9a9492;
	}

	ol.list_privacy2 li {
		margin-bottom: 0;
		padding-top: 0;
		border: none;
	}

	.col_privacy .mt1 {
		margin: 20px 0 23px;
	}

	.col_subcontent.privacy {
		margin: 0;
		padding: 15px 20px 0;
	}



	.col2 .col_privacy {
		padding: 27px 10px 0px;
		border-top: solid 1px #666;

	}

	.col_subcontent.privacy.col2 {
		margin: 0 auto;
		padding: 25px 10px 29px;
	}

	.col_privacy h2.col2 {
		margin: 0 0 13px;
	}

	.txt_privacy2 {
		margin: 0 0px 10px 13px;
	}

	.col_privacy .ttl2,
	.col_privacy .ttl3 {
		margin: 15px 0 0;
		padding: 7px 10px 9px;
		line-height: 21px;
	}

	.col_privacy .ttl2.top {
		margin: 10px 0 5px;
		padding: 3px 10px;
	}

	.col_privacy .ttl3 {
		margin-top: 5px;
		margin-bottom: 10px;
	}

	ul.list_privacy3 li.last {
		margin-bottom: 10px;
	}

	ol.list_privacy2 li.mb {
		margin-bottom: 15px;
	}

	ol.list_privacy2 li .flex {
		display: flex;
	}

	ol.list_privacy2 li .flex .left {
		width: 7em;
	}

	ol.list_privacy2 li .flex .right {
		width: calc( 100% - 7em);
	}

	.ttl_privacy1.col2 {
		margin: 0 0 7px 0px;
	}

	.col3 .col_privacy {
		padding: 33px 15px 0px;
		border-top: solid 1px #666;
	}

	.col_subcontent.privacy.col3 {
		padding: 0px 10px 55px;
	}

	.privacy_sub_ttl .waku {
		display: none;
	}

	.wrap3_privacy3 .img_waku {
		width: 17px;
		display: block;
	}

	.wrap3_privacy3 .privacy_sub_ttl {
		margin: 0 0 13px;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}


	.wrap3_privacy3 {
		margin-left: 0;
	}

	.col3 .txt_privacy3 {
		margin: 0 0 17px 0px;
	}

	.list_privacy3.wrap3 li {
		margin-left: 0em;
	}

	.col_privacy .box {
		text-align: center;
	}

	table.tbl_privacy1 {
		width: 92%;
		margin: 6px 30px 35px 30px;
	}

	table.tbl_privacy1 th {
		padding: 5px 10px;
	}

	table.tbl_privacy1 th.left {
		width: 45%;
	}

	table.tbl_privacy1 td.left {
		padding: 6px 10px;
		text-align: center;
		line-height: 20px;
	}

	table.tbl_privacy2 th {
		width: 120px;
		padding: 3px 10px;
	}

	.ttl_privacy2 {
		padding: 15px 0 0 1em;
		text-indent: -1em;
	}

	.col_privacy .box2 {
		margin: 20px 0 0 0px;
	}

	.box2 .flex2 {
		display: flex;
	}

	.box2 .flex2 .left {
		width: 7em;
	}

	.box2 .flex2 .right {
		width: calc( 100% - 7em);
	}

	.wrap3_privacy3 .deco1 {
		min-width: 300px;
		margin: 0 auto;
		padding: 3px 20px;
		text-align: center;
		position: relative;
	}

	.wrap3_privacy3 .deco1::before, .wrap3_privacy3 .deco1::after {
		content: '';
		width: 15px;
		height: 100%;
		position: absolute;
	}

	.wrap3_privacy3 .deco1::before {
		border-left: solid 1px #666;
		border-top: solid 1px #666;
		border-bottom: solid 1px #666;
		top: 0;
		left: 0;
	}

	.wrap3_privacy3 .deco1::after {
		border-right: solid 1px #666;
		border-top: solid 1px #666;
		border-bottom: solid 1px #666;
		top: 0;
		right: 0;
	}

	.col_privacy .box2 .ml {
		margin-left: 0;
	}

	ol.list_privacy4 {
		margin: 0 0 0 35px;
		padding: 30px 0 0;
	}

	ol.list_privacy5 {
		margin: 0;
		padding: 17px 0 8px;
	}

	ol.list_privacy5 li {
		margin: 0 0 0 18px;
		list-style: none;
		padding: 0 0 0 0;
		text-indent: 0;
	}

	ol.list_privacy5 li .width {
		padding-left: 17px;
		text-indent: 0;
	}

	.list_privacy5 .mds_privacy1 {
		padding-left: 1.2em;
		text-indent: -1.2em;
	}


}

	/* ---------------------------------------------------------------
	end max 700px
	--------------------------------------------------------------- */

	/* ---------------------------------------------------------------
	start max 450px
	--------------------------------------------------------------- */

	@media print,screen and ( max-width: 450px ) {

		table.tbl_privacy1 th {
			padding: 10px 10px;
		}

		ol.list_privacy2 li .flex,
		.box2 .flex2 {
			display: block;
		}

		ol.list_privacy2 li .flex .right,
		.box2 .flex2 .right {
			width: 100%;
		}

		table.tbl_privacy2 th {
			width: 97px;
		}

		.col_privacy .box2 {
			padding: 18px;
		}

		.col_privacy .box2 .flex {
			display: block;
		}

		.col_privacy .box2 img {
			margin-bottom: 10px;
			display: block;
		}

		.wrap3_privacy3 .deco1 {
			min-width: 260px;
		}

		

	}

	/* ---------------------------------------------------------------
	end max 450px
	--------------------------------------------------------------- */
