@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700;900&display=swap');


/* リセット */
body {
	margin: 0;
	padding: 0;
}
#contents_outer {
	margin:0!important;
	padding:0!important;
	width:100%!important;
}
#contents {
	padding-top: 0!important;
	padding-bottom: 0!important;
}
#main_contents{
	width:100%!important;
	float: none!important;
}

.generality a:link,
.generality a:visited {
	color: unset;
	text-decoration: none;
}

/* 飲水量を増やす工夫 */

.generality {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	text-align: center;
	overflow: hidden;
}
.generality * {
	margin: 0;
	padding: 0;
}
.generality img {
	vertical-align: bottom;
}
.generality .pc {
	display: inline-block;
}
.generality .sp {
	display: none;
}

.generality .generality__mv {
	height: 294px;
	background: url(../img/UR_generality_201112/bg01.png) repeat-x center top;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.generality .generality__mv__inner {
	width: 516px;
	padding: 50px 0 0;
	text-align: left;
}
.generality .generality__mv__ttl {
	padding: 0 0 30px;
}
.generality .generality__mv__txt {
	font-size: 14px;
	font-weight: 500;
	line-height: 1.6em;
	color: #fff;
}
.generality .generality__mv__illust {
	width: 258px;
	padding: 34px 0 0;
}
.generality .generality__case__ttl {
	padding: 50px 0;
}
.generality .generality__case__ttl img {
	width: 316px;
	height: auto;
}

.generality .generality__case {
	width: 800px;
	margin: 0 auto;
	padding: 0 0 30px;
	display: flex;
	justify-content: space-between;
}
.generality .generality__case__disease {
	width: 234px;
	text-align: left;
}
.generality img.generality__case__btn {
	width: 100%;
	cursor: pointer;
}
.generality .generality__case__disease .acordion {
	padding: 0.8em 0 0;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.8em;
}
.generality .generality__case__disease .acordion u {
	text-decoration: none;
	background: linear-gradient(#ffffff,#ffffff 50%,#fff16f 50%,#fff16f)
}
.generality .generality__save {
	margin: 0 0 1.8em;
	font-size: 22px;
	font-weight: 700;
	line-height: 1em;
}
.generality .generality__save:before,
.generality .generality__save:after {
	content: "";
	position: relative;
	bottom: -0.5em;
	width: 1px;
	height: 38px;
	background: #333;
	display: inline-block;
	transform: rotate(-15deg);
}
.generality .generality__save:before {
	left: -0.8em;
	transform: rotate(-15deg);
}
.generality .generality__save:after {
	right: -0.3em;
	transform: rotate(15deg);
}
.generality .generality__food {
	padding: 0 0 50px;
}

.generality .generality__challenges {
	width: 800px;
	margin: 0 auto;
	padding: 43px 0 25px;
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	text-align: left;
}
.generality .generality__challenges__try {
	width: 27%;
	padding: 0 0 1em;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.4em;
	color: #001c61;
	overflow: hidden;
}
.generality .generality__challenges__try:first-child,
.generality .generality__challenges__try:nth-child(4n+1) {
	width: 22%;
}
.generality .generality__challenges__try:nth-child(4n) {
	width: 24%;
}
.generality .generality__challenges__label {
	width: 27px;
	height: auto;
	margin: 0 0.5em 1em 0;
	float: left;
}
.generality .generality__introduce {
	height: 182px;
	background: url(../img/HC_generality_201112/bg02.png) repeat-x center bottom;
}
.generality .generality__introduce__txt {
	padding: 1.5em 0 1em;
	font-size: 22px;
	font-weight: 900;
	line-height: 1.4em;
	color: #fff;
}
.generality a.generality__introduce__btn {
	position: relative;
	width: 350px;
	padding: 1.2em 0;
	background: url(../img/UR_generality_201112/btn_bg.jpg) no-repeat center center;
	background-size: cover;
	border: 4px solid #fff;
	border-radius: 30px;
	box-shadow: 2px 2px 3px rgba(0,0,0,0.3);
	font-size: 16px;
	font-weight: 700;
	line-height: 1em;
	color: #fff;
	display: inline-block;
}
.generality .generality__food a.generality__introduce__btn {
	width: 366px;
	padding: 1.2em 1.8em 1.2em 0;
	box-sizing: border-box;
}
.generality a.generality__introduce__btn:after {
	content: "▲";
	position: absolute;
	right: 1.3em;
	top: 50%;
	transform: translateY(-50%) rotate(90deg);
	width: 26px;
	height: 26px;
	background: #fff;
	border-radius: 50%;
	font-size: 12px;
	line-height: 22px;
	color: #d52892;
	text-align: center;
	display: block;
}
.generality a.generality__introduce__btn:hover {
	-ms-filter: "alpha( opacity=70 )";
	filter: alpha( opacity=70 );
	opacity: 0.7;
	transition: all .4s;
}





/* ----------------------------------------------------------------- */
/* smartphone */
/* ----------------------------------------------------------------- */

@media screen and (max-width: 767px) {

/* リセット */
#benesse-header,
.pagetop,
.ad_area,
#search_keyword,
#menu_sp,
#product-info,
#gfooter{
display: none!important;
}

.generality img {
	width: 100%;
	height: auto;
}
.generality .pc {
	display: none;
}
.generality .sp {
	display: inline-block;
}

.generality .generality__mv {
	height: auto;
	background: url(../img/UR_generality_201112/bg01_sp.png) no-repeat center top;
	background-size: 100% auto;
}
.generality .generality__mv__inner {
	width: auto;
	padding: 10vw 0 0;
}
.generality .generality__mv__ttl {
	width: 80%;
	padding: 0 10% 5vw;
}
.generality .generality__mv__txt {
	width: 84%;
	padding: 0 8%;
	font-size: 3.5vw;
	line-height: 1.7em;
}
.generality .generality__mv__illust {
	width: 100%;
	padding: 0 0 0;
}
.generality .generality__case__ttl {
	padding: 5vw 5% 8vw;
}
.generality .generality__case__ttl img {
	width: 100%;
}

.generality .generality__case {
	width: auto;
	padding: 0 5% 8vw;
	flex-wrap: wrap;
}
.generality .generality__case__disease {
	width: 100%;
	padding: 0 0 1vw;
}
.generality .generality__case__disease .acordion {
	padding: 0.8em 0 1em;
	font-size: 3.7vw;
}
.generality .generality__save {
	position: relative;
	margin: 0 0 0.5em;
	font-size: 4vw;
	line-height: 1.4em;
	display: inline-block;
}
.generality .generality__save:before,
.generality .generality__save:after {
	position: absolute;
	bottom: 0;
	width: 1px;
	height: 12vw;
}
.generality .generality__food {
	padding: 0 3% 9vw;
}

.generality .generality__challenges {
	width: auto;
	padding: 0 5% 5vw;
}
.generality .generality__challenges__try {
	width: 100%;
	padding: 0.5em 0;
	border-bottom: 0.5vw dotted #001c61;
	box-sizing: border-box;
	font-size: 5.5vw;
}
.generality .generality__challenges__try:first-child,
.generality .generality__challenges__try:nth-child(4n+1),
.generality .generality__challenges__try:nth-child(4n) {
	width: 100%;
}
.generality .generality__challenges__try:last-child {
	border-bottom: none;
}
.generality .generality__challenges__label {
	width: 10vw;
	margin: 0.25em 0.7em 0 0;
}

.generality .generality__introduce {
	height: auto;
	padding: 23vw 5% 10vw;
	background: url(../img/HC_generality_201112/bg02_sp.png) no-repeat center top;
	background-size: 100% auto;
}
.generality .generality__introduce__txt {
	padding: 0 0 1em;
	font-size: 6vw;
}
.generality a.generality__introduce__btn {
	width: auto;
	padding: 1.2em 0;
	border-radius: 8vw;
	font-size: 4.3vw;
	display: block;
}
.generality .generality__food a.generality__introduce__btn {
	width: auto;
}
.generality .generality__food a.generality__introduce__btn:after {
	right: 0.7em;
}


}


