@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP&display=swap');
/* 
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

body {
    line-height:1;
}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section { 
    display:block;
}

nav ul {
    list-style:none;
}

blockquote, q {
    quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}

a {
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

/* change colours to suit your needs */
ins {
    background-color:#ff9;
    color:#000;
    text-decoration:none;
}

/* change colours to suit your needs */
mark {
    background-color:#ff9;
    color:#000; 
    font-style:italic;
    font-weight:bold;
}

del {
    text-decoration: line-through;
}

abbr[title], dfn[title] {
    border-bottom:1px dotted;
    cursor:help;
}

table {
    border-collapse:collapse;
    border-spacing:0;
}

/* change border colour to suit your needs */
hr {
    display:block;
    height:1px;
    border:0;   
    border-top:1px solid #cccccc;
    margin:1em 0;
    padding:0;
}

input {
    vertical-align:middle;
}
select {
    vertical-align:middle;
}

*,
*::before,
*::after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

ul {
    list-style:none;
}

html { font-size: 62.5%; }/* 10px */

body {
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    color: #555;
	font-size: 1.6rem;
    font-family:'Noto Sans JP',-apple-system,BlinkMacSystemFont, sans-serif;
    font-weight: normal;
    font-feature-settings: "palt";
    -webkit-font-feature-settings: "palt";
    line-height: 1.6;
    overflow-x: hidden;
}

a {
    text-decoration:none;
    border:none;
    color: inherit;
}

a:hover {
    cursor: pointer;
    opacity: 0.6;
    transition: 2s;
}

img {
    width: 100%;
}

/*-----------------
　本体
-----------------*/

header {
    margin: 0 auto;
    padding: 20px 0;
    background: #b4c7e7;
}

.head__txt {
    text-align: center;
    width: 100%;
}

.container{
    background: #fbfaf4;
	position: relative;
}

.cont__inner {
    margin: 0 auto;
	max-width: 750px;
    width: 100%;
}

.diagnosis__head {
    margin: 0 auto 20px;
    font-size: 32px;
    text-align: center;
}

.diagnosis__body {
    position: relative;
}

.diagnosis__box {
    position: relative;
    margin: 0 auto;
    width: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
	min-height: 100vh;
	padding: 10vh 0;
}

.diagnosis__allergyWrap{
	padding: 6vh 0;
}

.diagnosis__allergyWrap .diagnosis__question{
	padding: 3vh 0;
}

.diagnosis__allergyWrap .diagnosis__answer a{
	margin-bottom: 0;
	padding: 10px 15px;
}

.diagnosis__allergyWrap .diagnosis__no{
	padding: 0 0 5vh;
}

.slidecont {
    position: absolute;
    top: 0;
    left: -3000px;
}

.diagnosis__no {
	padding: 5vh 0;
    text-align: center;
}

.diagnosis__question {
    font-size: 2.0rem;
	padding: 5vh 0;
    text-align: center;
}

.diagnosis__question span {
    display: block;
}

.diagnosis__answer {
    color: #fff;
    font-size: 2.0rem;
    margin: 20px auto;
	padding: 20px 60px;
    text-align: center;
	width: 100%;
}

.diagnosis__answer>div {
	max-width: 400px;
	margin: 0 auto;
}



@media only screen and (max-width:600px){
/*	.diagnosis__answer>div {
		width: 40%;
	}*/
}

.diagnosis__answer a {
	border-radius: 50px;
    display: block;
	margin: 0 auto;
	padding: 15px;
    width: 100%;
    transition: 0.8s;
}
.diagnosis__answer a:hover {
    cursor: pointer;
    opacity: 0.6;
}

.diagnosis__answer>div:first-child a {
    background: #b5436d;
    color: #fff;
	margin-bottom: 20px;
}
.diagnosis__answer>div:first-child a:hover {
    background: #c44875;
}

.diagnosis__answer>div:last-child a {
    background: #fbfaf4;
    border: 1px solid #b5436d;
    color: #b5436d;
}
.diagnosis__answer>div:last-child a:hover {
	background: #f5ebef;
}

.diagnosis__answer__check {
/*    display: flex;
    display: -webkit-flex;
    display: -ms-flexbox;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
 */
    font-size: 16px;
    margin: 20px auto;
    padding: 50px;
/*    text-align: center;*/
}

.diagnosis__answer__check>div {
    margin-right: 10px;
    margin-left: 10px;
    margin-bottom: 10px;
}

.diagnosis__answer__check-arg {
    margin: 0 auto;
    padding: 0;
}

.diagnosis__answer__check input[type=checkbox] ,
.diagnosis__answer__check input[type=radio] {
	position: relative;
	cursor: pointer;
	border-radius: 50%;
}

.diagnosis__answer__check input[type=checkbox]:before  ,
.diagnosis__answer__check input[type=radio]:before {
	position: absolute;
	content: "";
	top: -5px;
	left: -3px;
	width: 20px;
	height: 20px;
	background: #fbfbf6;
	border: 1px solid #e3e3e3;
	border-radius: 24px;
}

.diagnosis__answer__check input[type=checkbox]:checked:after  ,
.diagnosis__answer__check input[type=radio]:checked:after {
	display: block;
	position: absolute;
	top: -2px;
	left: 0;
	content: "";
	width: 14px;
	height: 14px;
	background: #b5436d;
	border-radius: 12px;
}

.diagnosis__answer__check label {
	margin-left: 1em;
}

.diagnosis__answer_result div{
	padding: 0 60px;
}

.diagnosis__set_radio{
}

.allergyAttention{
	margin-top: 1em;
	color: #999;
}

/* footer */
footer {
    width: 100%;
    margin: 20px auto;
}

.foot__copy {
    color: #43425d;
    font-size: 10px;
    text-align: center;
}

/* 追記　23/05/17
-------------------------------------------*/

.allergyNote{
	padding: 0 20px;
}

.allergyNote p:not(:last-child){
	margin-bottom: 1em;
}

.allergyNote em{
	font-style: normal;
	font-weight: bold;
}

/**/