@charset "shift_jis";
/* CSS Document */
@import url('https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@400;700;900&display=swap');

* {
	margin:0;
	padding:0;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	outline:0;
	vertical-align:baseline;
}
img {
	margin: 0 auto;
	display:block;
	vertical-align:bottom;
	font-size:0;
	line-height:0;
	border:0;
}
input,
button {
	-webkit-appearance: none;
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
}
::placeholder {
	color: #CCC;
}
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
	margin: 0;
	-webkit-appearance: none;
	-moz-appearance: textfield;
}

html {
	background-color:#0090f8;
	-webkit-text-size-adjust:none;
	font-size:calc(100vw / 32);
	color: #000;
}
body {
	background-color:transparent;
	font-size:1.6rem;
	line-height:1.25;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}

.iPhoneBody {
	background-color:transparent;
}
.iPhoneBody:before {
	display:block;
	content:"";
	position:fixed;
	top:0;
	left:0;
	right: 0;
	margin: auto;
	z-index:-1;
	width:100%;
	height:100vh;
	background-image:url(../img/jugglershima/bg.png);
	background-repeat:no-repeat;
	background-size:cover;
	background-position:center center;
}

.titleBox {
	padding: 1rem 1rem 1.6rem; 
	background-image:url(../img/jugglershima/bg_juggler.png);
	background-repeat:no-repeat;
	background-size:48%;
	background-position:right bottom;
}

.wrapper {
	margin: 0 auto;
	font-family: 'M PLUS Rounded 1c', sans-serif;
}

.alertBox {
	margin: 1.6rem auto;
	text-align: left;
	font-size: 1.2rem;
	font-family: 'M PLUS Rounded 1c', sans-serif;
	color: #666;
}
.alertBox p {
	font-size: 1.8rem;
	font-weight: 900;
	color: #FF0000;
}
.titleBox .alertBox {
	margin-bottom: 0;
}
.unitBox .alertBox {
	margin: 0.25rem auto;
}

.top_com {
	padding: 0 4rem 0 2rem;
	display: inline-block;
	text-decoration: none;
	font-size: 1.4rem;
	line-height: 2.8rem;
	color: #1C1F86;
	background-color: #FFF100;
	border-radius: 50vh;
	position: relative;
}
.top_com::after {
	margin-left: 1rem;
	position: absolute;
	content: "▲";
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
}
#overlay {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100;
	width: 100vw;
	height:100vh;
	display: none;
	background: rgba(0,0,0,0.6);
}
.olflex {
	width: 100%;
	height:100%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.overlay-inner {
	padding:1.6rem;
	text-align: left;
	font-size: 1.4rem;
	font-family: 'M PLUS Rounded 1c', sans-serif;
	color: #666;
	background-color:#FFF;
	background-image:url(../img/jugglershima/bg_oppo.png);
	background-repeat:no-repeat;
	background-size: 46%;
	background-position: right 1.0rem bottom 0.5rem;
	text-shadow: 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF, 0 0 0.2rem #FFF;
}
.overlay-inner p {
	margin-bottom: 1.6rem;
}
.overlay-inner .clearBox {
	margin: 3rem auto 0;
	width: 50%;
}

.sectionBox {
	/*margin: 1.6rem 1rem;*/
	margin: 0 1rem 1.6rem 1rem;
	padding: 1.6rem 1rem 2rem;
	background-color: #FFF;
}
/*form .sectionBox:first-of-type {
	margin-top: 0;
}*/
.lineSpace {
	margin-top: 1.6rem;
}

.sectionBox > .ttl {
	text-align: center;
	font-family: 'M PLUS Rounded 1c', sans-serif;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 3.6rem;
	color: #FFF;
	background-color: #1C1F86;
	border-radius: 50vh;
}

.unitBox + .unitBox {
	margin-top: 2rem;
}
.unitBox > .ttl {
	font-size: 1.8rem;
	line-height: 1.8rem;
	font-weight: 900;
	text-align: center;
	position: relative;
}
.unitBox > .ttl:before {
	position: absolute;
	content: '';
	top: calc(50% - 0.2rem);
	left: 0;
	width: 100%;
	height: 0.4rem;
	background-color: #DCDCDC;
}
.unitBox > .ttl span {
	padding: 0 1rem;
	background-color: #FFF;
	position: relative;
}

.unitBox_inner {
	margin-top: 1rem;
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
}
.unitBox.choice .unitBox_inner {
	display: block;
}
.unitBox_inner > div {
	flex: 1 1 auto;
}

.numbers-row {
	flex: 0 1 50% !important;
	display: flex;
	justify-content: center;
	align-items: flex-end;
}
.numbers-row .number {
	font-weight: 900;
	white-space: nowrap;
	color: #1C1F86;
}

.inputdata {
	font-size: 1.2rem;
	text-align: right;
	white-space: nowrap;
	color: #999;
}

.unitBox.choice input[type="radio"] {
	display: none;
}
.unitBox.choice label {
	margin: 1rem 0;
	display: block;
	text-align: center;
	font-size: 1.5rem;
	line-height: 3rem;
	color: #FFF;
	background-color: #C0C0C0;
	border-radius: 50vh;
}
.unitBox.choice input[type="radio"]:checked + label {
	background-color: #1C1F86;
}

.unitBox.entry input[type="text"] {
	margin: 0 0.3rem;
	width: 100%;
	font-family: 'M PLUS Rounded 1c', sans-serif;
	background-color: #FFF;
	border: none;
	border-bottom: solid 0.2rem #1C1F86;
}

.addbtnBox {
	margin: 1.6rem 1rem;
	display: flex;
	flex-direction: row;
	justify-content: space-around;
}
.addbtn {
	width: 45%;
	font-family: 'M PLUS Rounded 1c', sans-serif;
	font-size: 1.5rem;
	font-weight: 900;
	line-height: 4rem;
	color: #1C1F86;
	background-color: #FFF;
	border-radius: 50vh;
	cursor: pointer;
	position: relative;
}

.addbtn:disabled {
	color: #999;
}

.btnBox {
	margin-top: 2.4rem;
	padding: 0 1rem 2.4rem;
	background-image:url(../img/jugglershima/bg_bottom.png);
	background-repeat:no-repeat;
	background-size:100% auto;
	background-position:center top;
}
.btnBox.result {
	margin: 2.4rem auto;
	padding: 0;
	display: flex;
	justify-content: space-between;
	background: none;
}

.submitBox {
	margin: 0 auto;
	display: flex;
	width: 55%;
}
.btnBox.result .submitBox {
	display: block;
	height: auto;
	background: none;
}

.submitBox button[type="submit"] {
	width: 100%;
	cursor: pointer;
	position: relative;
}
.submitBox button[type="submit"] p.on {
	position: absolute;
	top: 0;
	left: 0;
	animation: blink 2s infinite;
}
@keyframes blink {
	0% {opacity: 1;}
	30% {opacity: 0;}
	60% {opacity: 1;}
}

.clearBox {
	margin: 1.6rem auto 0;
	width: 50%;
	text-align: center;
}
.btnBox.result .clearBox {
	margin: 0 auto;
}
.clearBox input[type="button"] {
	width: 70%;
	font-size: 1.4rem;
	line-height: 3rem;
	font-weight: 700;
	font-family: 'M PLUS Rounded 1c', sans-serif;
	color: #1C1F86;
	background-color: #FFF;
	border: solid 0.1rem #E60012;
	cursor: pointer;
}

.clearBox_inner {
	padding: 0.8rem;
	font-size: 1.4rem;
	text-align: center;
	color: #1C1F86;
	background-color: #FFF;
}
.clearBox_inner input[type="button"] {
	margin-top: 0.5rem;
	width: 30%;
	font-size: 1.4rem;
	line-height: 2.6rem;
	font-weight: 700;
	font-family: 'M PLUS Rounded 1c', sans-serif;
	color: #FFF;
	background-color: #E60012;
	border: none;
	cursor: pointer;
}

.fukidashiBox {
	margin: 1.6rem auto;
	display: flex;
	align-items: center;
}
.fukidashiBox .img {
	margin-right: -0.5rem;
	min-width: 42%;
	max-width: 42%;
}
.fukidashiBox .txt {
	margin-left: 1rem;
	padding: 0.8rem;
	display: flex;
	flex-flow: column;
	width: 100%;
	font-size: 1.4rem;
	line-height: 1;
	font-weight: 700;
	color: #FFF;
	background-color: #1C1F86;
	border: solid 0.3rem #1C1F86;
	border-radius: 0.8rem;
	position: relative;
}
.fukidashiBox .txt::after {
	position: absolute;
	content: '';
	top: calc(50% - 0.7rem);
	left: -2.2rem;
	border: solid 0.7rem transparent;
	border-right: solid 1.4rem #1C1F86;
}
.fukidashiBox .txt1 {
	text-align: left;
}
.fukidashiBox .txt2 {
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 1.8rem;
}
.fukidashiBox .txt2 span:last-of-type {
	font-size: 3.5rem;
	font-weight: 900;
	color: #FFF100;
}
.fukidashiBox .txt3 {
	text-align: right;
}
.fukidashiBox.error .txt {
	background-color: #E60012;
	border-color: #E60012;
}
.fukidashiBox.error .txt::after {
	border-right-color: #E60012;
}
.fukidashiBox.error .txt1 {
	margin-bottom: 0.5rem;
	font-size: 1.8rem;
	color: #FFF100;
}
.fukidashiBox.error .txt2 {
	display: none;
}
.fukidashiBox.error .txt3 {
	text-align: left;
}

.resultBox {
	margin: 1.6rem auto;
}
.resultBox > .ttl {
	font-weight: 700;
	text-align: center;
	position: relative;
}
.resultBox > .ttl:before {
	position: absolute;
	content: '';
	top: calc(50% - 0.1rem);
	left: 0;
	width: 100%;
	height: 0.2rem;
	background-color: #DCDCDC;
}
.resultBox > .ttl span {
	padding: 0 1rem;
	background-color: #FFF;
	position: relative;
}

.resultBox_inner {
	margin-top: 1rem;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.resultBox_inner > p {
	flex: 0 1 auto;
	font-size: 1.4rem;
	white-space: nowrap;
}
.resultBox_inner .result1 {
	text-align: left;
}
.resultBox_inner .result2 {
	text-align: right;
}
.resultBox_inner .result2 > span {
	margin-right: 0.5rem;
}

:not(.clearBox).accordion {
	text-align: right;
}
.accordion > .ttl {
	padding: 0 1.4rem 0 0;
	display: inline-block;
	font-size: 1.2rem;
	cursor: pointer;
	position: relative;
}
.accordion > .ttl::after {
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	content: "▼";
	width: 1rem;
	height: 1rem;
	font-size: 1rem;
	line-height: 1rem;
}
.accordion.open > .ttl::after {
	content: "▲";
}

.accordionBox {
	display: none;
	padding-top: 1rem;
}
.accordionBox > :not(.clearBox_inner):first-child {
	margin-top: 0;
}
.accordionBox > .tyusyaku1 {
	font-size: 1.2rem;
	color: #666666;
}

table.table {
	margin: 0 auto;
	width: 100% !important;
	font-size: 1.4rem;
	line-height: 1.1;
	border: solid 0.1rem #DCDCDC;
	border-collapse: collapse;
	border-spacing:0;
}
table.table.uchikata {
	margin: 0.5rem auto;
}
table.table th,
table.table td {
	padding: 0.5rem 0.4rem;
	font-size: 1.4rem;
	line-height: 1.1;
	font-weight: 400;
	vertical-align: middle;
	color: #333;
	border: solid 0.1rem #DCDCDC;
}
table.table th,
table.table td[bgcolor*="#F0F0F0" i],
table.table td[bgcolor*="#CCCCCC" i],
table.table td[bgcolor*="#EEEEEE" i],
table.table td[bgcolor*="#E6E6E6" i],
table.table td[bgcolor*="#333333"] {
	font-size: 1.2rem;
	line-height: 1.1;
}
table.table td[style^="padding"] {
	padding: 1rem 0.4rem !important;
}

footer {
	background-color: #E60012;
	font-weight: 400;
	font-family: 'M PLUS Rounded 1c', sans-serif;
}
.copyright {
	margin: 0 1rem 1rem;
}
.copyright .txt {
	font-size: 1.2rem;
	color: #FFF;
}
.boxcenter_top {
	padding: 1rem 0;
	text-align: center;
}
.boxcenter_top a {
	color: #FFF;
	text-decoration: none;
}



.pagetop {
	z-index:99 !important;
}





