/*
+----------------------------------------------------------------------+
| Copyright (c) STUDYMAX. co. Ltd
+----------------------------------------------------------------------+
| 작업일 : 2022-09-15
| 파일설명 : 이용약관, 개인정보처리방침 CSS (APP)
+----------------------------------------------------------------------+
| 작업자 : 최진영
+----------------------------------------------------------------------+
| 수정이력
| 20230228 일본 이용약관 예외처리 추가 by 최진영
| 20240503 table CSS 디자인 추가 by 최진영
| 20251217 맥스AI 유료서비스 이용약관 추가에 따른 CSS 수정 by 심헌
+----------------------------------------------------------------------+
*/

html, body {
	height:100%;
}

.container {
	height:100%;
    margin: 0 auto;
    box-sizing: border-box;
    background: #fff;
}

.container .termsTabBtnArea {
	display:flex;
	justify-content: space-between;
	position: relative;
	height:7%;
	min-height: 50px;
	text-align: center;
	padding-bottom: 3px;
	box-sizing: border-box;
}

.container .termsTabBtnArea .termsTabBtn {
    width: calc(100% / 4);
    font-size: 3.466vw;
    font-family: 'NotoSansKR-Medium';
    height: auto;
	min-height: 100%;
	border: 0;
	word-break: keep-all;
	background-color: #fff;
	color:#999;
	letter-spacing: -1px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 5px 2px;
	box-sizing: border-box;
}

.container .termsTabBtnArea .termsTabBtn.on {
    color: #ef3f41;
}

.container .termsTabBtnArea .tabSlider {
	position: absolute;
	bottom: 0;
	left: 0;
	width: calc(100% / 4);
	height: 3px;
	background-color: #ef3f41;
    -webkit-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
    -webkit-border-top-left-radius: 130px;
    -webkit-border-top-right-radius: 130px;
    -moz-border-radius-topleft: 130px;
    -moz-border-radius-topright: 130px;
    border-top-left-radius: 130px;
    border-top-right-radius: 130px;
}

.container .contents {
	display:none;
	overflow-y: auto;
    max-height: 86%;
	padding: 3%;
    box-sizing: border-box;
    -ms-overflow-style: none; /* IE and Edge */
    scrollbar-width: none; /* Firefox */
}

.container .contents::-webkit-scrollbar {
    display: none; /* Chrome, Safari, Opera*/
}

.container .contents.privacy {
    max-height: 93%;
}

.container .contents.on {
	display:block;
}

.container .contents h3 {
	padding-bottom: 5px;
    font-size: 13px;
    line-height: 24px;
    color: #232323;
	font-family: 'NotoSansKR-Bold';
}

.container .contents p {
    margin-bottom: 15px;
    font-size: 13px;
    color: #232323;
	font-family: 'NotoSansKR-DemiLight';
    letter-spacing: -0.2px;
}

.privacyMoveBtnBox {
    text-align: center;
}

.privacyMoveBtnBox .privacyMoveBtn {
	display: inline-block;
    width: 45%;
    margin-right: 2%;
    padding: 1%;
    box-sizing: border-box;
    font-size: 3.2vw;
    border: 1px solid #dedede;
    background: #fff;
	color:#000;
    letter-spacing: -1px;
	font-family: 'NotoSansKR-Regular';
    cursor: pointer;
}

.privacyMoveBtnBox .privacyMoveBtn:last-child {
	margin-right:0;
}

.container .policyTable {
	margin-bottom:15px;
	table-layout: fixed;
	border:1px solid #ccc;
	border-collapse: collapse;
}
.container .policyTable th {
	background:#f1f1f1;
}
.container .policyTable th,
.container .policyTable td {
	padding:1%;
	border:1px solid #ccc;
	font-size:12px;
	word-break: keep-all;
	font-family:'NotoSansKR-Regular';
	text-align: center;
}
.container .policyTable td.taLeft {
	text-align: left;
}

/* Air 예외처리 */
@media screen and (orientation: landscape) {

	.policyPopWrap.air .container .termsTabBtnArea {
		height: 14%;
		min-height: 60px;
	}
	
	.policyPopWrap.air .container .termsTabBtnArea .termsTabBtn {
		font-size: 4vh;
	}

	.policyPopWrap.air .container .contents {
		max-height:80%;
	}

	.policyPopWrap.air .container .contents.privacy {
		max-height:94%;
	}

	.policyPopWrap.air .privacyMoveBtnBox .privacyMoveBtn {
		font-size: 4vh;
	}
}

/* 태블릿 예외처리 (페이지 별 vw 차이가 심해 px로 고정) */
/* ㄴ vue.js에서 직접 호출할 때 css */
.tabletWrap .container .contents {
	max-height:93%;
}

.tabletWrap .container .contents.privacy {
	max-height:100%;
}

.tabletWrap .container .termsTabBtnArea {
	min-height: 60px;
}

.tabletWrap .container .termsTabBtnArea .termsTabBtn {
	font-size:20px;
}

.tabletWrap .container .contents h3 {
	font-size:18px;
}

.tabletWrap .container .contents p {
	font-size:16px;
}

.tabletWrap .privacyMoveBtnBox .privacyMoveBtn {
	font-size:18px;
}

/* 일본 이용약관 예외처리 */
.container.jp .contents {
	display:block;
	max-height: 93%;
}

.container.jp .contents h2 {
	margin-top:50px;
	font-family:'NotoSansJP-Bold';
}

.container.jp .contents h2:first-child {
	margin-top:0;
}

.container.jp .contents h3,
.container.jp .contents h4,
.container.jp .policyTable th,
.container.jp .policyTable td {
	font-family:'NotoSansJP-Medium';
}

.container.jp .contents h4 {
	margin-bottom:5px;
}

.container.jp .contents p {
	word-break:break-all;
	font-family:'NotoSansJP-Regular';
}

.container.jp .policyTable {
	margin-bottom:15px;
	table-layout: fixed;
	border:1px solid #ccc;
}

.container.jp .policyTable th,
.container.jp .policyTable td {
	padding:2%;
	border:1px solid #ccc;
	word-break: break-all;
}
@media screen and (max-width: 700px) {
	.tabletWrap .container .termsTabBtnArea .termsTabBtn {
		font-size: 15px;
	}
}
