/*===========================================================

規約同意 2023.05.01.

=============================================================*/
*, :after, :before {
	box-sizing: border-box;
}
html, body {
	width: 100%;
	height: 100%;
	background-color: #EBF4FB;
}
html {
	font-family: sans-serif;
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}
body {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	align-items: center;
    margin: 0;
    font-family: Helvetica Neue,Helvetica,Arial,游ゴシック体,Yu Gothic,YuGothic,Hiragino Kaku Gothic ProN,Meiryo,Open Sans,sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #69707A;
    text-align: left;
}
::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}
::-webkit-scrollbar-thumb{
    background: #c5c5c563;
    border-radius: 2px;
}
::-webkit-scrollbar-thumb:hover{
    background: #c5c5c5;
}
.tos-wrapper {
    position: relative;
    display: flex;
    flex-direction: column;
	width: 100%;
	max-width: 960px;
	padding: 2rem;
	margin: auto;
    word-wrap: break-word;
    background: #fff;
    background-clip: border-box;
    border: 1px solid rgba(0,0,0,.125);
    border-radius: .25rem;
    box-shadow: 0 2px 10px 0 rgb(0 0 0 / 8%);
}
.tos-wrapper .title {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	margin-bottom: 1rem;
}
.tos-wrapper .title h2 {
	margin-bottom: 0;
	font-size: 20px;
	font-weight: 700;
	color: #343a40;
}
.tos-wrapper .title .tos-version {
	margin-bottom: 0;
	font-size: 12px;
	color: #333;
}
.tos-wrapper .tos-text {
	position: relative;
	margin: 0.5rem auto 2rem;
	padding: 1rem 1.5rem;
	width: 90%;
	height: 480px;
	text-align: left;
	background: #f8f9fa;
	word-break: break-word;
	overflow-y: auto;
}
.tos-wrapper .tos-text p {
	margin-bottom: 1rem;
	font-size: 14px;
	line-height: 2;
}

.tos-wrapper .btn-wrapper {
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	margin: 1rem auto;
}
.tos-wrapper .btn-wrapper button.btn {
	display: block;
	width: 160px;
	height: auto;
	margin: 10px auto;
	padding: 10px 0;
	text-decoration: none;
	text-align: center;
    font-size: 14px;
	font-weight: bold;
	line-height: 20px;
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
	border-radius: 6px;
}
.tos-wrapper .btn-wrapper button.btn.btn-agree {
    color: #fff;
    background-color: #0053f0;
    border-color: #0053f0
}
.tos-wrapper .btn-wrapper button.btn.btn-agree.focus,
.tos-wrapper .btn-wrapper button.btn.btn-agree:focus,
.tos-wrapper .btn-wrapper button.btn.btn-agree:hover {
    color: #fff;
    background-color: #0046ca;
    border-color: #0041bd
}

.tos-wrapper .btn-wrapper button.btn.btn-agree.focus,
.tos-wrapper .btn-wrapper button.btn.btn-agree:focus {
    box-shadow: 0 0 0 .2rem rgba(38,109,242,.5)
}

.tos-wrapper .btn-wrapper button.btn.btn-disagree {
    color: #fff;
    background-color: #6c757d;
    border-color: #6c757d
}

.tos-wrapper .btn-wrapper button.btn.btn-disagree.focus,
.tos-wrapper .btn-wrapper button.btn.btn-disagree:focus,
.tos-wrapper .btn-wrapper button.btn.btn-disagree:hover {
    color: #fff;
    background-color: #5a6268;
    border-color: #545b62
}

.tos-wrapper .btn-wrapper button.btn.btn-disagree.focus,
.tos-wrapper .btn-wrapper button.btn.btn-disagree:focus {
    box-shadow: 0 0 0 .2rem rgba(130,138,145,.5)
}

@media screen and (max-width: 576px) {
	.tos-wrapper {
		width: 95%;
		max-width: 480px;
		padding: 1rem;
	}
	.tos-wrapper .tos-text {
		margin: 0.5rem auto 1.5rem;
		padding: 0.5rem 1rem;
	}
	.tos-wrapper .btn-wrapper button.btn {
		width: 120px;
    	font-size: 12px;
	}
}