@charset "utf-8";

/* base styling
	========================================================================== */
html{ font-size: 62.5%; }
body{
	color: #4e4e4e;
	line-height: 1.4;
	font-family: Helvetica, Arial, Roboto, 'Droid Sans', 'ヒラギノ角ゴ ProN W3', 'HiraKakuProN-W3', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
	letter-spacing: -0.01px;/*iPhoneバグ用*/
	width: 320px;
	font-size: 1.4rem;
}
body#page-free #wrapper{
	background: #e3e5e8;
	color: #000;
}
#wrapper{
	width: 320px !important;
}
img:not([width]) {
	zoom: .5;
}
*,*::before,*::after{
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
}
a {
	-webkit-touch-callout:none;
}
a, a:link, a:visited, a:hover{
	color: #4C7ABD;
}
.center{
	text-align: center;
}
.img-rp{
	display: block;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}

/* wrapper
	========================================================================== */
#wrapper{
	background:#fff8e0 url("../img/bg.png") no-repeat 50% 0;
	background-size: 320px 889px;
}

/* header
	========================================================================== */
.header{
	text-align: center;
}
.page-lower .header h1{
	color: #004593;
	background: #fff;
	font-size:1.6rem;
	padding: 2px;
}
.header .logo{
	display: block;
	margin: 0 auto 10px;
	padding-top: 10px;
}

/* headline
	========================================================================== */
.hdl1{
	padding: 10px;
	height: 65px;
	background:url("../img/bg_hdl1.png") no-repeat;
	background-size: 320px 65px;
	color: #58412c;
	text-shadow: 1px 1px 1px #fff;
	font-size: 1.9rem;
	text-align: center;
}
.hdl1.one-line{
	line-height: 65px;
}
.hdl1.two-line{
	line-height: 1.2;
}
.hdl1.two-line span{
	display: block;
	font-size: 1.5rem;
}
.hdl2{
	height: 45px;
	line-height: 45px;
	background:url("../img/bg_hdl2.png") no-repeat;
	background-size: 320px 45px;
	color: #58412c;
	text-shadow: 1px 1px 1px #fff;
	font-size: 1.9rem;
	text-indent: 10px;
}
.hdl3{
	height: 39px;
	line-height: 30px;
	text-align: center;
	text-shadow: 1px 1px 1px #fff;
	font-size: 1.9rem;
	color: #58412c;
	background:url("../img/bg_hdl3.png") no-repeat;
	background-size: 320px 39px;
}
.hdl3::before{
	content: "";
	display: inline-block;
	width: 27px;
	height: 32px;
	background:url("../img/icon2.png") no-repeat;
	background-size: 27px 32px;
	vertical-align: top;
	margin-right: 5px;
}
.hdl4::before{
	content: "";
	display: inline-block;
	background:url("../img/icon3.png") no-repeat;
	background-size: 21px 23px;
	width: 27px;
	height: 23px;
	vertical-align: top;
}
.hdl4{
	line-height: 28px;
	margin-bottom: 5px;
}
.box{
	background: #fffcf1;
	width: 300px;
	border-radius: 5px;
	margin: 0 auto;
	box-shadow: 1px 1px 5px 0 rgba(77,122,162,.4);
}
/* [ empha ] */
.empha{
	background: #fff;
	margin: 0 10px;
	padding: 10px 10px 5px;
	border-radius: 5px;
	margin-bottom: 10px;
	box-shadow: 1px 1px 5px 0 rgba(77,122,162,.4);
}
.empha h2,
.empha button,
.empha div{
	position: relative;
	background: #fe90aa;
	border: 2px solid #ff7394;
	height: 36px;
	line-height: 32px;
	text-align: center;
	font-weight: normal;
	color: #fff !important;
	border-radius: 5px;
	margin-bottom: 5px;
	text-shadow: 1px 1px 1px rgba(0,10,90,.5);
}
.empha.gray div{
	border-color: #888;
	background: #aaa;
}
.empha div{
	padding-right: 30px;
	font-size: 1.5rem;
	line-height: 1.3 !important;
	font-weight: normal;
}
.empha h2 strong,.empha button,.empha div.back{
	font-size: 2.0rem;
	line-height: 32px !important;
	padding-left: 5px;
	font-weight: normal;
}
.empha a.back h2,.empha button.back,.empha div.back{
	padding-right: 0px !important;
	padding-left: 30px !important;
}
.empha p{
	margin-bottom: 5px;
}
.empha button{
	width: 100%;
}
.empha i{
	position: absolute;
	display: block;
	width: 20px;
	height: 20px;
	line-height: 20px;
	font-size: 1.4rem;
	text-align: center;
	background: #fff;
	color: #fe90aa;
	border-radius: 10px;
	top: 50%;
	margin-top: -10px;
	text-shadow: none;
}
.empha i.icon-left{
	left: 5px;
}
.empha i.icon-right{
	right: 5px;
}

.attention{
	border: 2px solid #e27562;
	border-radius: 5px;
	color: #e27562;
	padding: 5px;
	font-size: 1.6rem;
	text-align: center;
}
.caution{
	border: 1px solid #eee;
	border-radius: 0;
	box-shadow: 1px 1px 1px 0 #dedbd1 inset;
	padding: 5px;
	background-color: #fff;
}
.terms-agree {
	text-align: center;
	font-size: 1.6rem;
}

/* toppage
	========================================================================== */
/* [ status ] */
.status{
	display: table;
	width: 300px;
	margin: 0 auto;
}
.status figure,
.status .balloon{
	display: table-cell;
	vertical-align: middle;
}
/* icon */
.status figure{
	width: 120px;
	text-align: center;
}
.status figcaption{
	font-size: 1.8rem;
}
/* detail */
.status .baloon {
	width: 180px;
}
.status .baloon-inner {
	position: relative;
	background: #fff;
	width: 165px;
	margin: 0 0 10px auto;
	border-radius: 5px;
	-webkit-filter: drop-shadow(1px 1px 2px rgba(77,122,162,.4));
	filter: drop-shadow(1px 1px 2px rgba(77,122,162,.4));
	padding-bottom: 5px;
}
.status .baloon-inner:after {
	right: 100%;
	top: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(255, 255, 255, 0);
	border-right-color: #fff;
	border-width: 10px;
	margin-top: -10px;
}
.status .baloon h2{
	background: #ed9080;
	color: #fff;
	text-align: center;
	font-weight: normal;
	border-radius: 5px 5px 0 0;
}
.status .baloon dl{
	padding: 5px 10px;
	position: relative;
}
.status .baloon dd{
	margin-left: 4em;
	margin-top: -1.4em;
	position: absolute;
}
.status .sub-btn{
	margin: 0 5px;
}


/* map
	========================================================================== */
#page-map .box{
	padding: 5px;
	box-shadow: none;
}
.day-nav{
	position: relative;
	background: #ed9080;
	border-radius: 5px;
	border:2px solid #e27562;
	line-height: 30px;
	height: 32px;
	color: #fff;
	text-align: center;
	font-size: 2.0rem;
	font-weight: normal;
	text-shadow: 1px 1px 1px rgba(0,10,90,.5);
}
.day-nav ul{
	display: -webkit-box;
	display: box;
	width: 276px;
	position: absolute;
	top: 4px;
	left: 5px;
	height: 20px;
	line-height: 20px;
}
.day-nav ul li{
	width: 50%;
}
.day-nav ul li:first-child{
	text-align: left;
}
.day-nav ul li:last-child{
	text-align: right;
}
.day-nav i{
	font-size: 1.4rem;
	display: inline-block;
	width: 20px;
	height: 20px;
	line-height: 20px;
	text-align: center;
	background: #fff;
	color: #ed9080;
	border-radius: 10px;
	text-shadow:none;
	vertical-align: top;
}
.map-box{
	display: none;
	width: 247px;
	margin: 0 auto;
}
.map-box#map-tab1{
	display: block;
}
.map-box>div{
	height: 217px;
}
.map-pollen-all{
	background: #d5eee0;
	display: none;
}
.map-pollen-near{
	background: #ffddcd;
	display: block;
}
.symptoms-list.item-list li:nth-child(1),
.symptoms-list.item-list li:nth-child(2){
	width: 50%;
}
.symptoms-list.item-list li:nth-child(3),
.symptoms-list.item-list li:nth-child(4),
.symptoms-list.item-list li:nth-child(5),
.symptoms-list.item-list li:nth-child(6){
	width: 25%;
}
.symptoms-list.item-list li:nth-child(2),
.symptoms-list.item-list li:nth-child(6){
	padding-right: 0;
}
.map-switch.item-list li{
	width: 50%;
}
.map-switch.item-list li a,.map-switch.item-list li span{
	border-radius: 0 0 5px 5px;
}
.map-switch.item-list li:last-child{
	padding-right: 0;
}
#page-map .param-list{
	background: #fff7c0;
	padding: 5px 10px;
	margin: 10px 5px 5px;
}
#page-map .param-list::after{
	content: "";
	display: block;
	width: 278px;
	height: 35px;
	position: absolute;
	bottom: 0;
	left: 2px;
	box-shadow: 0 3px 5px rgba(132,107,22,.2);
}

/* report
	========================================================================== */
#page-report .box{
	border-radius: 0 0 5px 5px;
	padding: 10px 5px 5px;
}
/* [ select-tab ] */
.select-tab{
	display: table;
	width: 300px;
	margin: 0 auto;
}
.select-tab li{
	display: table-cell;
	width: 50%;
}
.select-tab li:first-child{
	padding-right: 2px;
}
.select-tab li a{
	position: relative;
	display: block;
	text-align: center;
	height: 28px;
	line-height: 28px;
	color: #fff !important;
	background:-webkit-gradient(linear,left top,left bottom,from(#6db965),to(#5e9f57));
	background:-webkit-linear-gradient(top,#6db965,#5e9f57);
	background:-moz-linear-gradient(top,#6db965,#5e9f57);
	background:linear-gradient(top,#6db965,#5e9f57);
	border-radius: 5px 5px 0 0;
	box-shadow: 1px -2px 5px 0 rgba(77,122,162,.3);
	text-shadow: 1px 0 2px rgba(0,0,0,.15);
}
.select-tab li a.current{
	color: #498148 !important;
	background: #fffcf1;
}

.symptoms-baloon {
	position: relative;
	background:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#f3f3f3));
	background:-webkit-linear-gradient(top,#fff,#f3f3f3);
	background:-moz-linear-gradient(top,#fff,#f3f3f3);
	background:linear-gradient(top,#fff,#f3f3f3);
	padding: 5px;
	line-height: 1.2;
	border-radius: 20px;
	/*box-shadow: 0px 0px 6px 0 rgba(0,0,0,.3);*/
	-webkit-filter: drop-shadow(0px .5px 3px rgba(0,0,0,.3));
	-moz-filter: drop-shadow(0px .5px 3px rgba(0,0,0,.3));
	-o-filter: drop-shadow(0px .5px 3px rgba(0,0,0,.3));
	filter: drop-shadow(0px .5px 3px rgba(0,0,0,.3));
	font-size: 1.2rem;
}
.symptoms-baloon::after {
	top: 100%;
	left: 20px;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(247, 247, 247, 0);
	border-top-color: #f3f3f3;
	border-width: 8px;
}
/* [ report-status ] */
.report-status::after{
	content: "";
	display: block;
	clear: both;
}
.report-status h3,.report-status li{
	position: relative;
	background: #fff7c0;
	text-align: center;
}
.report-status h3::after,.report-status li::after{
	content: "";
	display: block;
	height: 35px;
	position: absolute;
	bottom: 0;
	left: 0px;
	box-shadow: 0 3px 5px rgba(132,107,22,.2);
}
.report-status h3::after{
	width: 290px;
}
.report-status li::after{
	width: 142px;
}
.report-status h3{
	line-height: 40px;
	margin-bottom: 10px;
}
.report-status ul{
	display: -webkit-box;
	display: box;
	margin-bottom: 10px;
}
.report-status li{
	width: 49%;
	padding: 10px 5px 0;
	height: 65px;
}
.report-status li:nth-child(1),.report-status li:nth-child(2){
	margin-right: 5px;
}
.report-status strong{
	font-weight: bold;
	line-height: 1.1;
	color: #cf564c;
	display: inline-block;
	font-size: 2.0rem;
}
.report-status h3 strong,
.report-status li:nth-child(2) strong{
	font-size: 2.3rem;
	padding: 5px 5px 0;
}
.report-status li:nth-child(1) strong,
.report-status li:nth-child(3) strong{
	font-size: 2.0rem;
	padding: 5px 0 0;
}
/* [ report-symptoms ] */
.report-symptoms dl{
	position: relative;
	display: table;
	width: 290px;
	padding: 0;
	margin-bottom: 10px;
}
.report-symptoms dl::after{
	content: "";
	display: block;
	width: 210px;
	height: 45px;
	position: absolute;
	bottom: 0;
	right: 1px;
	box-shadow: 2px 2px 3px rgba(132,107,22,.1);
}
.report-symptoms dl:nth-child(2)::after{
	height: 149px;
}
.report-symptoms dt,.report-symptoms dd{
	display: table-cell;
	vertical-align: middle;
}
.report-symptoms dt{
	width: 80px;
	text-align: center;
	color: #fff;
	height: 45px;
	text-shadow: 1px 0 2px rgba(0,0,0,.15);
	line-height: 1.2;
}
.report-symptoms dl:nth-child(1) dt{ background: #459ddb; }
.report-symptoms dl:nth-child(2) dt{ background: #ffb657; }
.report-symptoms dl:nth-child(3) dt{ background: #ff7394; }
.report-symptoms dl:last-child dt{ background: #6db965; }
.report-symptoms dl:last-child{
	margin-bottom: 5px;
}
.report-symptoms dd{
	padding: 0 10px;
	width: 210px;
	background: #fff;
}
.report-symptoms dl:nth-child(3) dd{
	padding: 0 5px;
}

.report-symptoms ul::after{
	content: "";
	display: block;
	clear: both;
}
.report-symptoms>ul li{
	width: 49%;
	padding: 10px 5px 0;
	height: 65px;
	float: left;
	position: relative;
	background: #fff;
	text-align: center;
	margin-bottom: 10px;
}
.report-symptoms strong{
	font-weight: bold;
	line-height: 1.1;
	color: #cf564c;
	display: inline-block;
	font-size: 2.0rem;
	padding: 5px 0 0;
}
.report-symptoms>ul li::after {
	content: "";
	display: block;
	width: 142px;
	height: 35px;
	position: absolute;
	bottom: 0;
	left: 0px;
	box-shadow: 0 3px 5px rgba(132,107,22,.2);
}
.report-symptoms>ul li:nth-child(odd){
	margin-right: 5px;
}
.report-symptoms>ul li:last-child{
	width: 100%;
}
.report-symptoms>ul li:last-child::after{
	width: 290px;
}

/*[ report-measure,report-region ]*/
.measure li{
	position: relative;
	z-index: 10;
}
.measure li i{
	display: inline-block;
	width: 40px;
	height: 40px;
	vertical-align: middle;
}
.measure li.type1 i{
	background: url(../img/measure/icon1.png) no-repeat 50% 50%;
	background-size: 50px 50px;
}
.measure li.type2 i{
	background: url(../img/measure/icon2.png) no-repeat 50% 50%;
	background-size: 50px 50px;
}
.measure li.type3 i{
	background: url(../img/measure/icon3.png) no-repeat 50% 50%;
	background-size: 50px 50px;
}
.measure li.type4 i{
	background: url(../img/measure/icon4.png) no-repeat 50% 50%;
	background-size: 50px 50px;
}
.measure li.type5 i{
	background: url(../img/measure/icon5.png) no-repeat 50% 50%;
	background-size: 50px 50px;
}
.measure li.type6 i{
	background: url(../img/measure/icon6.png) no-repeat 50% 50%;
	background-size: 50px 50px;
}
.measure li.type7 i{
	background: url(../img/measure/icon7.png) no-repeat 50% 50%;
	background-size: 50px 50px;
}
.measure li.type8 i{
	background: url(../img/measure/icon8.png) no-repeat 50% 50%;
	background-size: 50px 50px;
}
.measure li.type9 i{
	background: url(../img/measure/icon9.png) no-repeat 50% 50%;
	background-size: 50px 50px;
}
.measure li.type10 i{
	background: url(../img/measure/icon10.png) no-repeat 50% 50%;
	background-size: 50px 50px;
}
.measure li.type11 i{
	background: url(../img/measure/icon11.png) no-repeat 50% 50%;
	background-size: 50px 50px;
}
.measure li.type12 i{
	background: url(../img/measure/icon12.png) no-repeat 50% 50%;
	background-size: 50px 50px;
}
/* tooltips */
.report-symptoms dd li span,.report-symptoms dd div span{
	display: block;
	color: #fff;
	width: 5em;
	padding: 5px 0;
	text-align: center;
	font-size: 1.2rem;
	border-radius: 5px;
	position: absolute;
	-webkit-filter: drop-shadow(0px 1px 3px rgba(132,107,22,.3));
	filter: drop-shadow(0px 1px 3px rgba(132,107,22,.3));
	top: 0%;
	left: 50%;
	margin-left: -2.5em;
	margin-top: -30px;
	z-index: 100;
	display: none;
}
.report-symptoms dd li span::after,.report-symptoms dd div span::after {
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: transparent;
	border-width: 6px;
	margin-left: -6px;
	border-top-color: #ffb657;
}
.region span{
	background: #ffb657;
}
.region span:after{
	border-top-color: #ffb657;
}
.measure li{
	display: inline;
}
.measure span{
	background: #fe90aa;
}
.measure span:after{
	border-top-color: #fe90aa!important;
}

/* sneeze
	========================================================================== */
#page-sneeze .box{
	padding: 10px 5px 10px;
	margin-bottom: 10px;
}
#page-sneeze .symptoms-baloon{
	text-align: center;
}
#sneeze-face strong{
	padding: 5px;
	background: #fff;
	cursor: pointer;
}
.sneeze-counter{
	position: relative;
	text-align: center;
	margin-top: 20px;
}
.sneeze-counter dt{
	display: none;
	position: absolute;
	font-size: 2.5rem;
	font-weight: bold;
	width: 290px;
	top: -45px;
	-webkit-animation-duration: 1.6s;
	-webkit-transform: translate(0, 0px);
	-webkit-animation-name: thanks-in;
	-webkit-animation-fill-mode: both;
	-webkit-animation-iteration-count: 1;
	-webkit-animation-timing-function: ease-out;
}
.sneeze-counter dt.animate-start {
	-webkit-animation-name: blessyou;
}
@-webkit-keyframes blessyou {
	0% { opacity: 0; -webkit-transform: translate(0px, 15px); }
	20% { opacity: 1; -webkit-transform: translate(0px, 0px); }
	80% { opacity: 1; -webkit-transform: translate(0px, 0px); }
	99.9%,to { opacity: 0; -webkit-transform: translate(0px, 0px); }
}
.sneeze-counter dd{
	font-size: 0;
	margin-top: 10px;
}
.sneeze-counter dd>span{
	color: #fff;
	font-size: 5.0rem;
	background: #38495c;
	background: -webkit-gradient(linear,left top, left bottom, from(#2586b9), to(#16687f));
	background: -webkit-linear-gradient(top, #2586b9,#16687f);
	background:	 -moz-linear-gradient(top, #2586b9,#16687f);
	background:	linear-gradient(top, #2586b9,#16687f);
	display: inline-block;
	margin-left: 3px;
	padding: 0 5px;
	border-radius: 5px;
	box-shadow: 1.5px 1.5px 2px rgba(0,0,0,0.4) inset;
	vertical-align: baseline;
	overflow: hidden;
	line-height: 1.2;
	font-family: 'Abel', cursive;
}

/* form
	========================================================================== */
#page-form .box{
	padding: 10px;
	margin-bottom: 10px;
}
#page-form fieldset{
	margin-bottom: 20px;
	position: relative;
}
#page-form fieldset span{
	font-size: 1.2rem;
}
#page-form fieldset span.count{
	position: absolute;
	color: #585858;
	display: block;
	line-height: 1.2;
	top: 2em;
	right: 0px;
}
#page-form fieldset:last-child{
	margin-bottom: 0;
}
#page-form .num{
	width: 80px;
}

/* btn
	========================================================================== */
.btn {
	position: relative;
	display: block;
	border-radius: 5px;
	border: 1px solid #fff;
	background: rgba(69,157,219,.8);
	color: #fff !important;
	margin-left: 10px;
	margin-right: 10px;
	font-size: 1.8rem;
	text-align: center;
	padding-right: 30px !important;
	box-shadow: 2px 2px 5px rgba(76,128,188,0.6);
}
.btn i{
	position: absolute;
	display: block;
	width: 20px;
	height: 20px;
	line-height: 20px;
	text-align: center;
	background: #fff;
	color: #2e5787;
	border-radius: 10px;
	top: 50%;
	margin-top: -10px;
	right: 7px;
	text-shadow: none;
	font-size: 1.4rem;
}
.btn.one-line{
	line-height: 40px;
}
.btn.two-line{
	padding: 5px;
	line-height: 1.3;
}
.btn.two-line span{
	display: block;
	color: #274b71;
	font-size: 1.2rem;
}
.btn.back{
	width: 294px;
	margin: 0 auto 10px;
	text-indent: 45px;
}
.btn.back i{
	text-indent: 0;
	right: auto;
	left: 10px;
}

/* [ sub-btn ] */
.sub-btn{
	position: relative;
	display: block;
	border: 1px solid #b6b6b6;
	color: #b76152 !important;
	text-align: center;
	line-height: 33px;
	border-radius: 3px;
	background:-webkit-gradient(linear,left top,left bottom,from(#fdfdfd),to(#e9e9e9));
	background:-webkit-linear-gradient(top,#fdfdfd,#e9e9e9);
	background:-moz-linear-gradient(top,#fdfdfd,#e9e9e9);
	background:linear-gradient(top,#fdfdfd,#e9e9e9);
	box-shadow: 0 -1px 1px 0 #d6d6d6 inset;
}
.sub-btn.icon{
	padding-right: 20px;
}
.sub-btn.icon i{
	position: absolute;
	display: block;
	width: 20px;
	height: 20px;
	line-height: 20px;
	text-align: center;
	background: #ed9080;
	color: #fff;
	border-radius: 10px;
	top: 50%;
	margin-top: -10px;
	right: 5px;
}

/* list set
	========================================================================== */
.item-list::after{
	content: "";
	display: block;
	clear: both;
}
.item-list a,.item-list span{
	display: block;
	border:1px solid #dedbd1;
	border-radius: 2px;
	text-align: center;
	padding: 8px 0;
	color: #b65f50 !important;
	background:-webkit-gradient(linear,left top,left bottom,from(#fffefb),to(#f3f0e6));
	background:-webkit-linear-gradient(top,#fffefb,#f3f0e6);
	background:-moz-linear-gradient(top,#fffefb,#f3f0e6);
	background:linear-gradient(top,#fffefb,#f3f0e6);
	box-shadow: 0 -1px 1px 0 #dfdcd3 inset;
}
.item-list a.current{
	color: #fff !important;
	background:-webkit-gradient(linear,left top,left bottom,from(#70dbf1),to(#0193dd));
	background:-webkit-linear-gradient(top,#70dbf1,#0193dd);
	background:-moz-linear-gradient(top,#70dbf1,#0193dd);
	background:linear-gradient(top,#70dbf1,#0193dd);
	box-shadow: 0 -1px 1px 0 #0175b1 inset,0 1px 1px 0 #fffefb inset;
}
.item-list span.disabled{
	color: #999 !important;
	background:-webkit-gradient(linear,left top,left bottom,from(#dbdbdb),to(#bfbfbf));
	background:-webkit-linear-gradient(top,#efefef,#bfbfbf);
	background:-moz-linear-gradient(top,#dbdbdb,#939393);
	background:linear-gradient(top,#dbdbdb,#939393);
	opacity: .6;
}
.item-list li{
	float: left;
	padding-right: 2px;
	padding-bottom: 2px;
}
.param-list{
	position: relative;
	font-size: 1.3rem;
	line-height: 1.8;
}
.param-list dd{
	position: absolute;
	margin-top: -1.8em;
	right: 10px;
}
.circle{
	position: relative;
	display: inline-block;
	width: 15px;
	height: 15px;
	border-radius: 8px;
	border: 2px solid #fff;
	vertical-align: middle;
	background: #666;
	top: -1px;
}
.circle.red{
	background: #f00;
}
.circle.orange{
	background: #f60;
}
.circle.blue{
	background: #00f;
}

/* form style
	========================================================================== */
fieldset{
	border:none;
}
legend{
	font-size: 16px;
	font-weight: bold;
}
.box legend{
	display: none;
}
fieldset em{
	color: #cf564c;
}
fieldset select{
	outline: none;
	-webkit-appearance: button;
	-moz-appearance: button;
	border:1px solid #dedbd1;
	border-radius: 10px;
	padding: 0 5px;
	line-height: 28px;
	height: 28px;
	background:url("../img/bg_pulldown.png") no-repeat 100% 50%,-webkit-gradient(linear,left top,left bottom,from(#fffefb),to(#f3f0e6));
	background:url("../img/bg_pulldown.png") no-repeat 100% 50%, -webkit-linear-gradient(top,#fffefb,#f3f0e6);
	background:url("../img/bg_pulldown.png") no-repeat 100% 50%,-moz-linear-gradient(top,#fffefb,#f3f0e6);
	background:url("../img/bg_pulldown.png") no-repeat 100% 50%,linear-gradient(top,#fffefb,#f3f0e6);
	background-size: 38px 28px, auto auto;
	box-shadow: 0 -1px 1px 0 #dfdcd3 inset;
}
#page-form fieldset select.num{
	width: 100px;
}
#page-form fieldset .small{
	width: 130px;
}
fieldset input[type="text"],
fieldset textarea{
	outline: none;
	border:1px solid #eee;
	border-radius: 0;
	box-shadow: 1px 1px 1px 0 #dedbd1 inset;
}
fieldset input[type="text"][readonly]{
	background: #fffcf1;
	border: 0;
	padding: 0;
	box-shadow: none;
}

/* 切替スイッチ */
.service-switch{
	position: relative;
	margin-left:10px;
	margin-right: 10px;
	background: #336cab;
	border-radius: 5px;
	padding: 10px;
	font-size: 1.2rem;
	color: #fff;
	text-shadow: 1px 1px 1px rgba(0,10,90,.5);
}
.service-switch ul{
	list-style: none;
	padding: 0;
	margin-bottom: 10px;
}
.service-switch ul li{
	position: relative;
	border-radius: 5px;
	line-height: 1.2;
	background: rgba(255,255,255,.9);
}
.service-switch input{
	position: absolute;
	top:-5px;
	width: 100%;
}
/* [ checkbox ] */
.terms-agree input[type="checkbox"]{
	display: inline-block;
	position: relative;
	margin-right: 5px;
	-webkit-appearance: button;
	appearance: button;
	width: 20px;
	height: 20px;
	border: 1px solid #eee;
	border-radius: 0;
	box-shadow: 1px 1px 1px 0 #dedbd1 inset;
	background: #fff;
	vertical-align: middle;
	outline: none;
	cursor: pointer;
	top: -2px;
}
.terms-agree input[type="checkbox"] + label{
	cursor: pointer;
}
.terms-agree input[type="checkbox"]:checked{
	background: #fe90aa;
}
.terms-agree input[type="checkbox"]:checked::after {
	position: absolute;
	content: "";
	top: 50%;
	left: 6px;
	width: 7px;
	height: 12px;
	margin-top: -8px;
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

/*チェックボックス*/
.service-switch input[type="checkbox"]{
	opacity : 0;
	width: 100%;
	height: 100%;
	padding: 0;
	cursor: pointer;
}
.service-switch input[type="checkbox"] + label{
	display: block;
	background: url("../img/switch_off.png") no-repeat 97% center;
	background-size: 77px 27px;
	padding: 10px 10px;
	font-size: 1.7rem;
	color: #1360b1;
	text-decoration: none;
	text-shadow: none;
	font-weight: bold;
}
.service-switch input[type="checkbox"] + label b{
	display: block;
	margin-bottom: 3px;
}
.service-switch input[type="checkbox"]:checked + label{
	background: URL("../img/switch_on.png") no-repeat 97% center;
	background-size: 77px 27px;
}
.service-switch li:last-child label{
	border-bottom:none;
}

/* 項目一覧 */
.symptoms-step input[type="checkbox"]{
	opacity : 0;
	width: 100%;
	height: 100%;
	padding: 0;
}
.symptoms-step li{
	float: left;
	width: 25%;
	font-size: 1.0rem;
	margin-bottom: 10px;
}
.symptoms-step input[type="checkbox"]{
	display: none;
}
.symptoms-step input[type="checkbox"] + label::before{
	content: "";
	display: block;
	background: url(../img/icon_off.png) no-repeat, -webkit-gradient(linear,left top,left bottom,from(#fffefb),to(#f3f0e6));
	background: url(../img/icon_off.png) no-repeat,-webkit-linear-gradient(top,#fffefb,#f3f0e6);
	background: url(../img/icon_off.png) no-repeat,-moz-linear-gradient(top,#fffefb,#f3f0e6);
	background: url(../img/icon_off.png) no-repeat,linear-gradient(top,#fffefb,#f3f0e6);
	background-size: 58px 806px,auto;
	color: #555;
	text-decoration: none;
	box-shadow: 0 -1px 1px 0 #dfdcd3 inset;
	border:1px solid #dedbd1;
	border-radius: 10px;
	width: 58px;
	height: 58px;
	margin: 0 auto 3px;
}
.symptoms-step input[type="checkbox"]:checked + label::before{
	background: url(../img/icon_on.png) no-repeat,-webkit-gradient(linear,left top,left bottom,from(#0193dd),to(#70dbf1));
	background: url(../img/icon_on.png) no-repeat,-webkit-linear-gradient(top,#0193dd,#70dbf1);
	background: url(../img/icon_on.png) no-repeat,-moz-linear-gradient(top,#0193dd,#70dbf1);
	background: url(../img/icon_on.png) no-repeat,linear-gradient(top,#0193dd,#70dbf1);
	background-size: 58px 806px,auto;
	box-shadow: 0 -1px 1px 0 #0175b1 inset,0 1px 1px 0 #fffefb inset;
}
.symptoms-step li:nth-child(1) input[type="checkbox"] + label::before{ background-position: 0px 0px, 0px 0px; }
.symptoms-step li:nth-child(2) input[type="checkbox"] + label::before { background-position: 0px -68px, 0px 0px; }
.symptoms-step li:nth-child(3) input[type="checkbox"] + label::before { background-position: 0px -136px, 0px 0px; }
.symptoms-step li:nth-child(4) input[type="checkbox"] + label::before { background-position: 0px -204px, 0px 0px; }
.symptoms-step li:nth-child(5) input[type="checkbox"] + label::before { background-position: 0px -272px, 0px 0px; }
.symptoms-step li:nth-child(6) input[type="checkbox"] + label::before { background-position: 0px -342px, 0px 0px; }
.symptoms-step li:nth-child(7) input[type="checkbox"] + label::before { background-position: 0px -408px, 0px 0px; }
.symptoms-step li:nth-child(8) input[type="checkbox"] + label::before { background-position: 0px -476px, 0px 0px; }
.symptoms-step li:nth-child(9) input[type="checkbox"] + label::before { background-position: 0px -545px, 0px 0px; }
.symptoms-step li:nth-child(10) input[type="checkbox"] + label::before { background-position: 0px -612px, 0px 0px; }
.symptoms-step li:nth-child(11) input[type="checkbox"] + label::before { background-position: 0px -680px, 0px 0px; }
.symptoms-step li:nth-child(12) input[type="checkbox"] + label::before { background-position: 0px -748px, 0px 0px; }

.symptoms-step input[type="checkbox"] + label{
	display: block;
	text-align: center;
}

.symptoms-step li:nth-child(9),
.symptoms-step li:nth-child(10),
.symptoms-step li:nth-child(11),
.symptoms-step li:nth-child(12){
	margin-bottom: 0;
}

.report-detail{
	width: 280px;
	margin: 0 auto 10px;
}
.report-detail ul{
	display: -webkit-box;
	display: box;
	margin-bottom: 5px;
}
.report-detail li{
	position: relative;
}
.report-detail li img{
	zoom: 1;
	width: 100%;
}
.report-detail li:first-child{
	width: 43%;
	padding-right: 5px;
}
.report-detail li:last-child{
	width: 57%;
}
.report-detail li p{
	text-align: center;
	line-height: 1.2;
	font-size: 1.2rem;
	position: relative;
	background:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#f3f3f3));
	background:-webkit-linear-gradient(top,#fff,#f3f3f3);
	background:-moz-linear-gradient(top,#fff,#f3f3f3);
	background:linear-gradient(top,#fff,#f3f3f3);
	padding: 5px;
	line-height: 1.2;
	border-radius: 20px;
	/*box-shadow: 0px 0px 6px 0 rgba(0,0,0,.3);*/
	-webkit-filter: drop-shadow(0px 1px 2px rgba(0,0,0,.3));
	-moz-filter: drop-shadow(0px 1px 2px rgba(0,0,0,.3));
	-o-filter: drop-shadow(0px 1px 2px rgba(0,0,0,.3));
	filter: drop-shadow(0px 1px 2px rgba(0,0,0,.3));
	font-size: 1.2rem;
	margin-bottom: 5px;
}
.report-detail li p::after {
	top: 100%;
	left: 50%;
	margin-left: -8px;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(247, 247, 247, 0);
	border-top-color: #f3f3f3;
	border-width: 8px;
}
.report-detail li>div{
	height: 147px;
	overflow: hidden;
	border: 1px solid #fff;
	box-shadow: 1px 1px 5px 0 rgba(0,0,0,.2);
}
.report-detail li>div::after{
	position: absolute;
	content: "SAMPLE";
	display: inline-block;
	height: 147px;
	z-index: 10;
	font-size: 2.25rem;
	left: 50%;
	margin-left: -2.25em;
	line-height: 147px;
	color: #e00;
}

/* face
	========================================================================== */
.face-selgroup{
	position: relative;
	height: 33px;
}
.face-selgroup>select{
	position: absolute;
}
.face-caption{
	font-size: 12px;
	/*display: none;*/
}
.face{
	width: 278px;
	height: 250px;
	margin: 0 auto 0;
	position: relative;
	border-radius: 10px;
}
.face2{
	width: 165px;
	height: 138px;
	margin: 5px auto;
	position: relative;
}
.face--man{
	background: url(../img/face/m_face.png) no-repeat 50% 50%;
	background-size: 206px 228px;
}
.face--woman{
	background: url(../img/face/w_face.png) no-repeat 50% 50%;
	background-size: 278px 228px;
}
.face2.face--man{
	background-size: 123px 136px;
}
.face2.face--woman{
	background-size: 165px 136px;
}
.face-select{
	border:1px solid #dedbd1;
	background-color: #ffd9e2;
}
.face>div,.face2>div{
	position: absolute;
}
.face__eye{
	width: 139px;
	height: 58px;
	top: 53px;
	left: 50%;
	margin-left: -70px;
	background: url(../img/face/eye_04.png) no-repeat 50% 50%;
	background-size: 139px 58px;
	z-index: 2;
}
.face__eye--type1{
	background: url(../img/face/eye_01.png) no-repeat 50% 50%;
	background-size: 139px 58px;
}
.face__eye--type2{
	background: url(../img/face/eye_02.png) no-repeat 50% 50%;
	background-size: 139px 58px;
}
.face__eye--type3{
	background: url(../img/face/eye_03.png) no-repeat 50% 50%;
	background-size: 139px 58px;
}
.face__eye--type4{
	background: url(../img/face/eye_04.png) no-repeat 50% 50%;
	background-size: 139px 58px;
}
.face2 .face__eye{
	width: 83px;
	height: 35px;
	top: 30px;
	margin-left: -41.5px;
	background-size: 83px 35px !important;
}

.face__skin{
	width: 156px;
	height: 37px;
	top: 122px;
	left: 50%;
	margin-left: -78px;
	z-index: 1;
	background: url(../img/face/skin_04.png) no-repeat 50% 50%;
	background-size: 156px 14px;
}
.face__skin--type1{
	background: url(../img/face/skin_01.png) no-repeat 50% 50%;
	background-size: 156px 37px;
}
.face__skin--type2{
	background: url(../img/face/skin_02.png) no-repeat 50% 50%;
	background-size: 156px 14px;
}
.face__skin--type3{
	background: url(../img/face/skin_03.png) no-repeat 50% 50%;
	background-size: 156px 14px;
}
.face__skin--type4{
	background: url(../img/face/skin_04.png) no-repeat 50% 50%;
	background-size: 156px 14px;
}
.face2 .face__skin{
	width: 93px;
	height: 22px;
	top: 69px;
	margin-left: -46.5px;
	background-size: 93px 8px !important;
}
.face2 .face__skin--type4{
	background-size: 93px 22px !important;
}

.face__nose{
	width: 53px;
	height: 61px;
	top: 105px;
	left: 50%;
	margin-left: -37px;
	z-index: 4;
	background: url(../img/face/nose_04.png) no-repeat 50% 50%;
	background-size: 53px 61px;
}
.face__nose--type1{
	background: url(../img/face/nose_01.png) no-repeat 50% 50%;
	background-size: 53px 61px;
}
.face__nose--type2{
	background: url(../img/face/nose_02.png) no-repeat 50% 50%;
	background-size: 53px 61px;
}
.face__nose--type3{
	background: url(../img/face/nose_03.png) no-repeat 50% 50%;
	background-size: 53px 61px;
}
.face__nose--type4{
	background: url(../img/face/nose_04.png) no-repeat 50% 50%;
	background-size: 53px 61px;
}
.face2 .face__nose{
	width: 31px;
	height: 37px;
	top: 60px;
	margin-left: -21px;
	background-size: 31px 37px !important;
}
#page-sneeze .face2 .face__nose{
	width: 81px;
	height: 87px;
	margin-left: -44px;
	top: 35px;
}

.face__throat{
	width: 72px;
	height: 59px;
	bottom: 11px;
	left: 50%;
	margin-left: -35px;
	z-index: 3;
	background: url(../img/face/throat_04.png) no-repeat 50% 50%;
	background-size: 76px 59px;
}
.face__throat--type1{
	background: url(../img/face/throat_01.png) no-repeat 50% 50%;
	background-size: 76px 59px;
}
.face__throat--type2{
	background: url(../img/face/throat_02.png) no-repeat 50% 50%;
	background-size: 76px 59px;
}
.face__throat--type3{
	background: url(../img/face/throat_03.png) no-repeat 50% 50%;
	background-size: 76px 59px;
}
.face__throat--type4{
	background: url(../img/face/throat_04.png) no-repeat 50% 50%;
	background-size: 76px 59px;
}
.face2 .face__throat{
	width: 43px;
	height: 35px;
	bottom: 2px;
	margin-left: -21.5px;
	background-size: 43px 35px !important;
}
.face2 .face__eye
.face2 .face__nose,.face2 .face__throat,.face2 .face__skin{
	z-index: auto;
}
select[name=face-nose],
select[name=face-throat],
select[name=face-skin]{
	display: none;
}

/* collabo
	========================================================================== */
.btn i.icon-clipboard{
	right: none;
	position: static;
	display: inline-block;
	background: transparent;
	font-size: 2.0rem;
	color: #fff;
	margin-right: 5px;
}
.page-collabo1 .hdl1.two-line,.page-collabo1 .hdl1.two-line span{
	font-size: 1.8rem !important;
}
.page-collabo1 .hdl2{
	font-size: 1.6rem !important;
}
.page-collabo1 .caption{
	font-size: 1.8rem;
	text-align: center;
}
.page-collabo1 .sub-btn{
	margin-left: 80px;
	line-height: 1;
	padding: 10px 20px 10px 0;
}
.page-collabo1.page-wm .hdl5{
	line-height: 1.3;
	position: relative;
	font-size: 1.6rem;
	margin-bottom: 5px;
}
.page-collabo1.page-wm .hdl5 strong{
	color: #ff7394;
	font-size: 2.3rem;
}
.page-collabo1 .empha div,
.page-collabo1 .empha button{
	padding: 5px 30px 5px 0;
	line-height: 1.1 !important;
	height: auto;
	font-size: 1.6rem;
}
.page-collabo1 .empha button{
	line-height: 20px !important;
}
.page-collabo1 .app-dl{
	text-align: center;
}
.page-collabo1 .app-dl li:nth-child(1){
	margin-top: 10px;
}
.page-collabo1 .app-dl li:nth-child(2){
	margin-top: 5px;
}
.page-collabo1.ios .app-dl .btn-ggp{
	display: none;
}
.page-collabo1.android .app-dl .btn-app{
	display: none;
}
.page-collabo1 ol{
	margin: 0 0 0 27px;
	counter-reset: section;
}
.page-collabo1 ol li:before {
	counter-increment: section;
	content: counters(section, ".") ") ";
}
.page-collabo1 p.for-monitor{
	margin-left: 27px;
}
.item-id{
	position: relative;
	background: #ed9080;
	border-radius: 5px;
	border: 2px solid #e27562;
	padding: 5px;
	color: #fff;
	text-align: center;
	font-size: 2.0rem;
	font-weight: normal;
	text-shadow: 1px 1px 1px rgba(0,10,90,.5);
}

/* free
	========================================================================== */
#page-free .box{
	padding: 10px;
	margin-bottom: 10px;
}
#page-free .empha.regist div{
	background: #6db965;
	border-color: #488f40;
	font-size: 1.6rem;
	line-height: 32px !important;
}
#page-free .empha.regist i{
	color: #488f40;
}
.sample-image{
	width: 300px;
	margin: 0 auto 10px;
	position: relative;
}
.sample-image::after{
	position: absolute;
	content: "SAMPLE";
	display: inline-block;
	height: 147px;
	z-index: 10;
	font-size: 5rem;
	top: 50%;
	left: 50%;
	margin-top: -1.25em;
	margin-left: -2.1em;
	line-height: 147px;
	color: #e00;
}
.sample-image figcaption{
	text-align: center;
	line-height: 1.2;
	font-size: 1.2rem;
	position: relative;
	background:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#f3f3f3));
	background:-webkit-linear-gradient(top,#fff,#f3f3f3);
	background:-moz-linear-gradient(top,#fff,#f3f3f3);
	background:linear-gradient(top,#fff,#f3f3f3);
	padding: 5px;
	line-height: 1.2;
	border-radius: 20px;
	/*box-shadow: 0px 0px 6px 0 rgba(0,0,0,.3);*/
	-webkit-filter: drop-shadow(0px 1px 2px rgba(0,0,0,.3));
	-moz-filter: drop-shadow(0px 1px 2px rgba(0,0,0,.3));
	-o-filter: drop-shadow(0px 1px 2px rgba(0,0,0,.3));
	filter: drop-shadow(0px 1px 2px rgba(0,0,0,.3));
	font-size: 1.2rem;
	margin-bottom: 5px;
}
.sample-image figcaption:after {
	top: 100%;
	left: 50%;
	margin-left: -8px;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(247, 247, 247, 0);
	border-top-color: #f3f3f3;
	border-width: 8px;
}
.sample-image img{
	zoom: 1;
	width: 100%;
	border: 1px solid #fff;
}

/* footer
	========================================================================== */
footer{
	height: auto;
	background: transparent;
	border:none;
	text-align: center;
	margin: 0 10px;
	line-height: 25px;
	color: #4c4c4c;
}