@charset "UTF-8";

/* reset
---------------------------------------- */

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
	margin: 0;
	padding: 0;
	border: 0;
}

/* HTML5 display-role reset for older browsers */

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

ol,
ul {
	list-style: none;
}

img {
	max-width: 100%;
	height: auto;
}

a {
	text-decoration: none;
}

/* border-box */

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

/* Reset input */

input,
button,
textarea,
select {
	margin: 0;
	padding: 0;
	background: none;
	outline: none;
	border: none;
	border-radius: 0;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

/* cmn
---------------------------------------- */

.inner {
	position: relative;
	margin: 0 auto;
	zoom: 1;
}

.inner:before,
.inner:after {
	content: '';
	display: table;
}

.inner:after {
	clear: both;
}

/* cmn
---------------------------------------- */

body {
	position: relative;
	color: #493d3d;
	font-size: 3.4375vw;
	font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	line-height: 1.6;
}

body a {
	color: #493d3d;
}

body a:hover {
	opacity: .6;
	-webkit-transition: .6s;
	-o-transition: .6s;
	transition: .6s;
}

body .wrapper {
	min-height: 100vh;
	padding: 5.375vw 3.125vw;
	background-color: #e94829;
}

body .wrapper:after {
	content: '';
	display: block;
	width: 100%;
	height: 9.375vw;
	background: url('../images/bg_foot.png') center top no-repeat;
	background-size: 100% auto;
}

body .content-area {
	padding: 6.25vw 5.25vw;
	background: url('../images/bg_content.png') repeat-y;
	background-size: 100% auto;
}

body input[type=text],
body textarea {
	width: 100%;
	padding: .5em;
	font-size: 4.6875vw;
	border: #c8c8c8 1px solid;
	border-radius: 6px;
	background-color: #fff;
}

/* input-parts
---------------------------------------- */

input[type=radio] {
	visibility: hidden;
	display: inline-block;
	position: absolute;
}

.radio {
	display: inline-block;
	position: relative;
	width: 49%;
	height: 100%;
	padding: 2.5em 1em;
	line-height: 1.6;
	vertical-align: middle;
	border-radius: 8px;
	cursor: pointer;
}

.radio:active {
	top: 6px;
	-webkit-box-shadow: none;
	box-shadow: none;
}

.radio> span {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	color: #fff;
	font-weight: bold;
	font-size: 3.75vw;
	line-height: 1.2;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

input[type=radio]:checked+ .radio {
	top: 6px;
	-webkit-box-shadow: none;
	box-shadow: none;
}

.blue {
	background-color: #0068b7;
	-webkit-box-shadow: 0 6px 0 #00588e;
	box-shadow: 0 6px 0 #00588e;
	    margin-bottom: 3vw;
}

.blue:active {
	background: #00588e;
}

input[type=radio]:checked+ .blue {
	background: #00588e;
}

.pink {
	background-color: #e95383;
	-webkit-box-shadow: 0 6px 0 #bc4671;
	box-shadow: 0 6px 0 #bc4671;
	margin-bottom: 3vw;
}

.pink:active {
	background: #bc4671;
}

input[type=radio]:checked+ .pink {
	background: #bc4671;
}

.btn01 {
	background-color: #ea5504;
	-webkit-box-shadow: 0 6px 0 #B03E00;
	box-shadow: 0 6px 0 #B03E00;
	margin-bottom: 3vw;
}

.btn01:active {
	background: #B03E00;
}

input[type=radio]:checked+ .btn01 {
	background: #B03E00;
}

.btn02 {
	background-color: #009944;
	-webkit-box-shadow: 0 6px 0 #005525;
	box-shadow: 0 6px 0 #005525;
	margin-bottom: 3vw;
}

.btn02:active {
	background: #005525;
}

input[type=radio]:checked+ .btn02 {
	background: #005525;
}

.btn03 {
	background-color: #C9151E;
	-webkit-box-shadow: 0 6px 0 #7C1318;
	box-shadow: 0 6px 0 #7C1318;
	margin-bottom: 3vw;
}

.btn03:active {
	background: #7C1318;
}

input[type=radio]:checked+ .btn03 {
	background: #7C1318;
}

/* head
---------------------------------------- */

.header-area> .head-tltle {
	height: 39vw;
}

/* content
---------------------------------------- */

.content-area> .content-title {
	color: #4694d1;
	font-weight: bold;
	font-size: 4.6875vw;
	text-align: center;
	margin: auto;
}

.content-area> .content-title> .black {
	color: #493d3d;
	font-size: 3.75vw;
}

.content-area> .content-title> .small {
	font-size: 4.375vw;
}

.content-area> .content-text {
	margin-top: 0;
	text-align: center;
}
.complete .content-area> .content-text {
	margin-top: 3.125vw;
	text-align: center;
}

.content-area> .food-area {
	position: relative;
	margin-top: 6.25vw;
}

.content-area> .food-area> .on-chan {
	position: absolute;
	top: -86vw;
    right: -4.375vw;
	width: 25.9375vw;
}

.content-area> .food-area> .food-title {
	width: 80vw;
	margin: 0 auto;
}

/*
.content-area> .food-area> .food-img {
	margin-top: 3.125vw;
}
*/

.content-area .form-area {
	margin-top: 5vw;
	margin-top: 9.375vw;
	padding-top: 9.375vw;
	border-top: #ccc 4px dotted;
}

.content-area .form-area> .input-name {
	width: 100%;
	color: #000;
	font-weight: bold;
	font-size: 5.4625vw;
	line-height: 1.6;
    padding: 1.4735vw 0;
	min-height: 9.375vw;
	text-align: center;
}
.confirm .content-area .form-area> .input-name {
	color: #4694d1;
}
.content-area .form-area> .input-name.hint {
    width: 45%;
    font-size: 5.7625vw;
    font-weight: 600;
    color: #ffffff;
    text-align: center;
    padding: 0;
    margin: 0 auto -5vw;
    display: block;
    background-color: #e94829;
    border-radius: 100px;
}
.content-area .form-area> .input-name.address {
	color: #e94829;
	text-align: center;
}
.content-area .form-area> .input-text {
	width: 100%;
	color: #000;
	font-weight: 600;
	font-size: 3.3625vw;
	line-height: 1.6;
	min-height: 9.375vw;
	text-align: left;
}
.content-area .form-area> .input-text.hint{
    font-size: 4.2625vw;
    font-weight: 600;
    text-align: center;
    padding: 8.5vw 0 7.5vw 0;
    margin-bottom: 15vw;
    background-color: rgb(233, 72, 41, 0.2);
}

.content-area .form-area> .input-parts {
	font-size: 4.2625vw;
	margin-bottom: 6.25vw;
	text-align: center;
}

.content-area .form-area> .input-parts> .error-area {
	position: relative;
    padding: .8em .5em;
    margin: 0 auto;
    text-align: center;
    color: #fff;
    font-size: 4.0625vw;
    background: #e02f45;
    border-radius: 6px;
    display: block;
    width: 70%;
}

.content-area .form-area> .input-parts> .error-area:before {
	content: '';
	position: absolute;
	top: -1.5125vw;
	left: 50%;
	width: 1.5625vw;
	height: 1.5625vw;
	border-right: transparent 1.5625vw solid;
	border-bottom: #e02f45 1.5625vw solid;
	border-left: transparent 1.5625vw solid;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}

.content-area .form-area> .form-foot {
	margin-top: 9.375vw;
}

.content-area .btn-enter {
	display: block;
	width: 100%;
	height: 15.625vw;
	color: #fff;
	font-weight: bold;
	font-size: 6.4875vw;
	line-height: 2.433333;
	text-align: center;
	background: #e94829;
	border-radius: 2.2125vw;
	/*border-radius: 7.8125vw;*/
}

.content-area .btn-orange {
	display: block;
	width: 100%;
	height: 15.625vw;
	color: #fff;
	font-weight: bold;
	font-size: 6.4875vw;
	line-height: 2.433333;
	text-align: center;
	background: #fabe00;
	border-radius: 2.2125vw;
	/*border-radius: 7.8125vw;*/
}

.content-area .btn-back {
	width: 100%;
	height: 15.625vw;
	margin-top: 3.125vw;
	color: #fff;
	font-weight: bold;
	font-size: 6.4875vw;
	line-height: 2.433333;
	background: #c8c8c8;
	border-radius: 2.2125vw;
	/*border-radius: 7.8125vw;*/
}

.content-area .mt60 {
	margin-top: 9.375vw;
}






.checkbox-group-container {
    display: table;
    min-width: 100%;
    /*min-width: 60%;*/
    border-spacing: 0 8px;
    border-spacing: 0 2.133vw;
    margin: 0;
    /*margin: 4px auto 16px auto;*/
    margin-top: 1.066vw;
    margin-bottom: 4.266vw;
}
.checkbox-group-container .input-parts-row {
    display: table-row;
}
.checkbox-group-container input[type=checkbox],
.checkbox-group-container input[type=radio] {
	visibility: hidden;
	display: inline-block;
	position: absolute;
}
.checkbox {
    display: table-cell;
    text-align: left;
    position: relative;
	padding: 0.4em 0 0.4em 80px;
    padding-left: 21.333vw;
    vertical-align: middle;
    cursor: pointer;
    text-align: left;
    font-size: 4.75vw;
    color: #000;
    font-weight: bold;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    tap-highlight-color: rgba(0,0,0,0);
    border-bottom: 3px solid #000;
}

.q_lead {
    display: block;
    font-size: 4.3vw;
}
.q_caption {
    display: block;
    font-size: 3.433vw;
}
.q-num{ 
	margin-top: -3vw;
    margin-bottom: 3vw;
}
.q-count{ 
	width: 15.533vw;
    line-height: 15.533vw;
    font-weight: bold;
    text-align: center;
    color: #fff;
    margin: 0 auto;
    background-color: #e94829;
    border-radius: 50%; 
    font-size: 6vw;
    display: block;
}
.q-count_research{ 
    width: 24.533vw;
    line-height: 11.533vw;
    font-weight: bold;
    text-align: center;
    color: #fff;
    margin: 0 auto;
    background-color: #e60012;
    font-size: 6vw;
    transform: rotate(-5deg);
    position: relative;
    display: block;
}
.img_research{ 
    position: relative;
    left: 23vw;
    top: 6.4vw;
    z-index: 999;
}
.img_research img{ 
    width: 36vw;
}
.checkbox > .q_circle,
input[type=checkbox]+.checkbox:before,
input[type=checkbox]+.checkbox:after,
input[type=radio]+.checkbox:before,
input[type=radio]+.checkbox:after {
    display: block;
    border-radius: 50%;
    position: absolute;
	top: 50%;
	-webkit-transform: translate(0%, -50%);
	-ms-transform: translate(0%, -50%);
	transform: translate(0%, -50%);
}
input[type=checkbox]+.checkbox > .q_circle,
input[type=radio]+.checkbox > .q_circle {
	width: 32px; width: 8.533vw;
	line-height: 32px; line-height: 8.533vw;
	font-weight: bold;
    text-align: center;
	color: #fff;
    background-color: #e94829;
	left: 40px; left: 10.666vw;
}
input[type=checkbox]+.checkbox:before,
input[type=checkbox]+.checkbox:after,
input[type=radio]+.checkbox:before,
input[type=radio]+.checkbox:after {
    content: "";
}
input[type=checkbox]+.checkbox:before,
input[type=radio]+.checkbox:before {
	width: 32px; width: 8.533vw;
    height: 32px; height: 8.533vw;
  	left: 0px;
    border: solid 2px #e94829; border-width: 0.533vw;
}
input[type=checkbox]+.checkbox:after,
input[type=radio]+.checkbox:after {
	width: 16px; width: 4.266vw;
    height: 16px; height: 4.266vw;
    background-color: #e94829;
    left: 8px; left: 2.133vw;
    opacity: 0;
}

/*
.checkbox:active > .q_circle,
input[type=checkbox]:checked+ .checkbox .q_circle {
}
input[type=checkbox]:checked+ .checkbox:before {
}
*/
input[type=checkbox]:checked+.checkbox:after,
input[type=radio]:checked+.checkbox:after {
    opacity: 1;
}


/* content
---------------------------------------- */
body .wrapper {
	padding-top: calc(204 / 375 * 100vw);
	padding-right: 0;
	padding-left: 0;
	background: url(../images/top/wrapper_bg.jpg) no-repeat center top;
	background-size: 100% auto;
}
body .wrapper::after {
	content: none;
}
body .content-area {
	padding-top: 0;
	padding-right: calc(13 / 375 * 100vw);
	padding-bottom: 0;
	padding-left: calc(13 / 375 * 100vw);
	background-image: none;
}
body .hero-main {
	margin-bottom: calc(20 / 375 * 100vw);
}
body .hero-main img {
	vertical-align: bottom;
}
body .content-area .inner {
	position: relative;
	background-color: #fff;
	padding-top: calc(15 / 375 * 100vw);
	border: 3px solid #5185c5;
	border-radius: calc(10 / 375 * 100vw);
}
body .content-area .inner::before {
	content: '';
	position: absolute;
	top: calc(-20 / 375 * 100vw);
	left: calc(-10 / 375 * 100vw);
	width: calc(108 / 375 * 100vw);
	height: calc(64 / 375 * 100vw);
	background: url(../images/top/hero_art.png) no-repeat center center;
	background-size: cover;
}
body .content-area .field {
	padding-top: 3.125vw;
	padding-right: 3.125vw;
	padding-bottom: 6.25vw;
	padding-left: 3.125vw;
}
body .content-area .content-text {
	text-align: center;
}
body .food-photo {
	padding-top: 3.125vw;
}
body .food-photo-item {
	text-align: center;
}
body .food-photo-item img {
	width: calc(280 / 375 * 100vw);
	vertical-align: bottom;
}
body .content-area .form-area > .input-parts.question {
	margin-bottom: calc(40 / 375 * 100vw);
}
body .input-parts.question img {
	width: calc(280 / 375 * 100vw);
	vertical-align: bottom;
}
.q-content {
	padding-right: 3.125vw;
	padding-left: 3.125vw;
}
.q-num {
	position: relative;
	margin-top: 0;
	margin-bottom: 0;
}
.q-num::before {
	content: '';
	position: absolute;
	z-index: 1;
	top: 50%;
	left: 0;
	width: 100%;
	height: 1px;
	background-color: #4694d1;
}
.q-count {
	position: relative;
	z-index: 2;
	background-color: #4694d1;
}
.content-area .form-area> .input-parts {
	margin-bottom: calc(40 / 375 * 100vw);
}
.content-area .form-area > .input-name {
	color: #4694d1;
	padding-bottom: 0;
	margin-bottom: calc(20 / 375 * 100vw);
}
.content-area .form-area > .input-name.address {
	font-size: 4.0625vw;
	color: #4694d1;
}
.content-area .btn-enter {
	font-size: 4.6875vw;
	line-height: 3.333333333;
	text-align: center;
	background: #4694d1;
	border-radius: 7.8125vw;
}
.content-area .btn-back {
	font-size: 4.6875vw;
	line-height: 3.333333333;
	text-align: center;
	border-radius: 7.8125vw;
}
.content-area .checkbox-group-container {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	column-gap: 2.0%;
	border-spacing: 0;
	margin-top: 0;
	margin-bottom: 0;
}
.content-area .checkbox-group-container .input-parts-row {
	display: block;
}
.content-area .checkbox-group-container .input-parts-row .checkbox {
	display: inline-block;
	position: relative;
	width: 100%;
	height: 100%;
	padding: 1.35em 0;
	line-height: 1.6;
	vertical-align: middle;
	border-radius: 8px;
	cursor: pointer;
	border-bottom: none;
}
.content-area .checkbox-group-container .input-parts-row .checkbox .q_lead {
	color: #fff;
	font-size: 3.75vw;
	font-weight: bold;
	line-height: 1.2;
	text-align: center;
}
.content-area .checkbox-group-container .input-parts-row:nth-child(1) label {
	background-color: #ea5504;
	-webkit-box-shadow: 0 6px 0 #96451C;
	box-shadow: 0 6px 0 #96451C;
}
.content-area .checkbox-group-container .input-parts-row:nth-child(2) label {
	background-color: #529B34;
	-webkit-box-shadow: 0 6px 0 #365E25;
	box-shadow: 0 6px 0 #365E25;
}
.content-area .checkbox-group-container .input-parts-row input[type=checkbox]+.checkbox > .q_circle,
.content-area .checkbox-group-container .input-parts-row input[type=radio]+.checkbox > .q_circle {
	display: none;
}
.content-area .checkbox-group-container .input-parts-row input[type=checkbox]+.checkbox::before,
.content-area .checkbox-group-container .input-parts-row input[type=radio]+.checkbox::before,
.content-area .checkbox-group-container .input-parts-row input[type=checkbox]+.checkbox::after,
.content-area .checkbox-group-container .input-parts-row input[type=radio]+.checkbox::after {
	content: none;
}
.content-area .checkbox-group-container .input-parts-row input[type=radio]:checked + .checkbox {
	top: 6px;
	-webkit-box-shadow: none;
	box-shadow: none;
}
.content-area .checkbox-group-container .input-parts-row:nth-child(1) input[type=radio]:checked + label {
	background: #96451C;
}
.content-area .checkbox-group-container .input-parts-row:nth-child(2) input[type=radio]:checked + label {
	background: #365E25;
}
