@charset "UTF-8";
@import "common.sp.css";

/* ---------------------------------------------------------
	CSS Document visual
--------------------------------------------------------- */

#visual {
	padding: 2% 2% 1.8%;
	background: #4472c4;
	font-size: 0;
    text-align: left;
    line-height: 1.2;
    border-bottom: solid 10px #4472c4;
    margin-bottom: 20px;
}

#visual .article {
	width: 100%;
}

#visual h1 {
	vertical-align: middle;
	width: 100%;
    text-align: center;
    margin: 10px 0;
}

#visual h1 img{
    width: 100%;
}

#visual p {
	vertical-align: middle;
	text-align: left;
	font-weight: bold;
	font-size: 23px;
	line-height: 1.4;
	color: #fff;
    font-family: "メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック","MS PGothic", "Osaka",sans-serif;
}

@media only screen and (max-width: 640px) {
	#visual p {
		font-size: 21px;
        margin-left: 4px;
	}
}

/* ---------------------------------------------------------
	CSS Document check
--------------------------------------------------------- */

#check h2 {
	margin-bottom: 25px;
	font-weight: 500;
	font-size: 6vw;
	line-height: 1;
}

#check h2 span {
	color: #ec7d34;
}

#check figure {
	margin-bottom: 20px;
	position: relative;
}

#check figure:before {
	display: block;
	content: '';
	padding-top: 23.80952380952381%;
}

#check figure img {
	position: absolute;
	top: 0;
	left: 0;
}

#check .name {
	margin-bottom: 25px;
	padding: 15px 20px;
	background: #faf3a8;
}

#check .big {
	font-weight: 500;
	font-size: 22px;
}

/* ---------------------------------------------------------
	CSS Document type
--------------------------------------------------------- */

#type .section {
	margin-bottom: 15px;
	padding: 15px 20px;
	background: #fdfbe5;
}

#type .section h3 {
	font-weight: 500;
	font-size: 5vw;
	color: #ec7d34;
}

/* ---------------------------------------------------------
	CSS Document prevention
--------------------------------------------------------- */

#prevention p {
	margin-bottom: 30px;
}

/* ---------------------------------------------------------
	CSS Document initial
--------------------------------------------------------- */

#initial figure {
	margin-top: 20px;
	position: relative;
}

#initial .figure:before {
	display: block;
	content: '';
	padding-top: 38.0952380952381%;
}

#initial .figure img {
	position: absolute;
	top: 0;
	left: 0;
}

#initial figcaption {
	margin-top: 20px;
	font-weight: 500;
}

#initial .section {
	margin-top: 20px;
	padding: 20px 20px 1px;
	border-radius: 10px;
	background: #fdfbe5;
}

#initial h3 {
	margin-bottom: 15px;
	padding: 5px 0 5px 15px;
	border-left: solid 8px #ec7d34;
	font-weight: 500;
	font-size: 5vw;
	line-height: 1;
}

#initial .section h3 span {
	color: #ec7d34;
}

#initial .section h4 {
	margin-top: 20px;
	font-weight: normal;
	font-size: 5vw;
}

#initial .section figure {
	margin: 10px 0 30px;
}

#initial .last figcaption {
	margin-top: 100px;
	margin-bottom: 15px;
	text-align: center;
	font-weight: 500;
	font-size: 26px;
	line-height: 1;
	position: relative;
}

#initial .last figcaption:after {
	content: '';
	width: 0;
	height: 0;
	border: solid 150px transparent;
	border-top: solid 60px #ec7d34;
	transform: translateX(-50%);
	position: absolute;
	left: 50%;
	top: -80px;
}

#initial .last figure:after {
	display: block;
	content: '';
	padding-top: 38.0952380952381%;
}

#initial .last figure img {
	position: absolute;
	bottom: 0;
	left: 0;
}

/* ---------------------------------------------------------
	CSS Document about
--------------------------------------------------------- */

#about p {
	margin-bottom: 40px;
}

#about h3 {
	margin-bottom: 20px;
	text-align: center;
	font-weight: 500;
	font-size: 6vw;
	line-height: 1;
}

#about h3 span {
	color: #9e8a44;
}

#about .table {
	margin-bottom: 30px;
	border-bottom: solid 1px #d7d6d5;
}

#about dl {
	border: solid 1px #d7d6d5;
	border-bottom: 0;
}

#about dt {
	padding: 5px 15px;
	border-bottom: solid 1px #d7d6d5;
	background: #ece8da;
}

#about dd {
	padding: 15px;
}

#about .copy {
	font-size: 14px;
	line-height: 1;
}

/* ---------------------------------------------------------
	CSS Document cause
--------------------------------------------------------- */

#cause .section {
	padding: 20px;
	border: solid 3px #cec4a1;
}

#cause h3 {
	margin-bottom: 15px;
	padding: 9px 0 9px 15px;
	border-left: solid 8px #9e8a44;
	font-weight: 500;
	font-size: 5vw;
	line-height: 1;
}

#cause h3:not(:first-of-type) {
	margin-top: 40px;
}

#cause figure {
	position: relative;
}

#cause figure:before {
	display: block;
	content: '';
	padding-top: 32.32142857142857%;
}

#cause figure img {
	position: absolute;
	top: 0;
	left: 0;
}

#cause p {
	margin-bottom: 20px;
}

/* ---------------------------------------------------------
	CSS Document worse
--------------------------------------------------------- */

#worse p {
	margin-bottom: 20px;
}

#worse .section {
	margin-top: 40px;
	padding: 20px;
	border: solid 3px #cec4a1;
}

#worse h3 {
	font-weight: normal;
	font-size: 20px;
}

#worse .section h3 {
	margin-bottom: 15px;
	padding: 9px 0 9px 15px;
	border-left: solid 8px #9e8a44;
	font-weight: 500;
	font-size: 5vw;
	line-height: 1;
}

#worse .section p {
	margin-bottom: 30px;
}

#worse figure {
	position: relative;
}

#worse figure:before {
	display: block;
	content: '';
	padding-top: 28.75%;
}

#worse figure img {
	position: absolute;
	top: 0;
	left: 0;
}

/* ---------------------------------------------------------
	CSS Document treatment
--------------------------------------------------------- */

#treatment h3 {
	font-weight: normal;
	font-size: 20px;
}

#treatment p {
	margin-bottom: 40px;
}

#treatment .section h3 {
	margin-bottom: 20px;
	text-align: center;
	font-weight: 500;
	font-size: 6vw;
	line-height: 1;
}

#treatment .section h3 span {
	color: #9e8a44;
}

#treatment .table {
	margin-bottom: 30px;
	border-bottom: solid 1px #d7d6d5;
}

#treatment dl {
	border: solid 1px #d7d6d5;
	border-bottom: 0;
}

#treatment dt {
	padding: 5px 15px;
	border-bottom: solid 1px #d7d6d5;
	background: #ece8da;
}

#treatment dd {
	padding: 15px;
}

/* ---------------------------------------------------------
	CSS Document self
--------------------------------------------------------- */

#self figure {
	margin-top: 20px;
	position: relative;
}

#self figure:before {
	display: block;
	content: '';
	padding-top: 35.08771929824561%;
}

#self figure img {
	position: absolute;
	top: 0;
	left: 0;
}

#self .section {
	margin-top: 20px;
	padding: 30px 20px;
	border-radius: 10px;
	background: #fdfbe5;
	position: relative;
}

#self .section h3 {
	margin-bottom: 15px;
	font-weight: 500;
	font-size: 5vw;
	line-height: 1;
	color: #ec7d34;
}

#self .article {
	margin-top: 30px;
	padding: 20px;
	border: solid 3px #cec4a1;
}

#self .article h3 {
	margin-bottom: 15px;
	padding: 9px 0 9px 15px;
	border-left: solid 8px #9e8a44;
	font-weight: 500;
	font-size: 5vw;
	line-height: 1;
}

#self .article p:not(:last-of-type) {
	margin-bottom: 30px;
}

/* ---------------------------------------------------------
	CSS Document acupoint
--------------------------------------------------------- */

#acupoint {
	padding: 30px 20px;
	background: #7d5ea9;
	text-align: center;
	font-size: 18px;
	color: #fff;
}

#acupoint h2 {
	margin-bottom: 20px;
	font-weight: 500;
	font-size: 7vw;
	line-height: 1;
	color: #ffea00;
}

#acupoint .section {
	margin-top: 20px;
	padding: 30px 20px;
	border-radius: 10px;
	background: #fff;
	text-align: left;
	font-size: 17px;
	color: #383838;
}

#acupoint h3 {
	margin-bottom: 20px;
	text-align: center;
	font-weight: normal;
	font-size: 30px;
	line-height: 1;
	color: #7d5ea9;
}

#acupoint figure {
	margin-bottom: 20px;
	position: relative;
}

#acupoint figure:before {
	display: block;
	content: '';
	padding-top: 38.11320754716981%;
}

#acupoint figure img {
	position: absolute;
	top: 0;
	left: 0;
}

/* ---------------------------------------------------------
	CSS Document proceed
--------------------------------------------------------- */

#proceed .matome ol {
	margin-bottom: 20px;
}

#proceed .matome li {
	margin-top: 20px;
}

#proceed .matome li span {
	text-decoration: underline;
	font-weight: 500;
	font-size: 5vw;
}

#proceed .matome p:last-of-type {
	font-weight: 500;
	font-size: 5vw;
	color: #fff100;
}

/* ---------------------------------------------------------
	CSS Document age
--------------------------------------------------------- */

#age p {
	margin-bottom: 40px;
}

#age h3 {
	height: 66px;
	background: #7d5ea9;
	text-align: center;
	font-weight: 500;
	font-size: 6vw;
	line-height: 64px;
	color: #ffea00;
}

#age ul {
	margin-bottom: 20px;
	border: solid 5px #beaed4;
	text-align: center;
	font-size: 5vw;
}

#age li {
	padding: 20px;
	line-height: 1.4;
}

#age li:not(:last-of-type) {
	border-bottom: solid 5px #beaed4;
}

#age .red {
	font-size: 26px;
}

#age .em {
	font-size: 14px;
	line-height: 1.8;
	color: #666;
}

/* ---------------------------------------------------------
	CSS Document stat
--------------------------------------------------------- */

#stat .section {
	margin-bottom: 20px;
	padding: 20px;
	border: solid 3px #cec4a1;
	text-align: left;
}

#stat .section h2 {
	margin-bottom: 15px;
	padding: 9px 0 9px 15px;
	border-left: solid 8px #9e8a44;
	font-weight: 500;
	font-size: 5vw;
	line-height: 1;
}

#stat .section p {
	margin-bottom: 10px;
}

#stat .section figure {
	position: relative;
}

#stat .section figure:before {
	display: block;
	content: '';
	padding-top: 70.53571428571429%;
}

#stat .section figure img {
	position: absolute;
	top: 0;
	left: 0;
}

#stat .em {
	margin-top: 15px;
	text-align: center;
	line-height: 1.3;
}

#stat .em .red {
	display: inline-block;
	vertical-align: 0;
	background: linear-gradient(to bottom, #ffffff 50%, #f6dbdb 50%);
	font-size: 26px;
}

/* ---------------------------------------------------------
	CSS Document doctor
--------------------------------------------------------- */

#doctor {
	margin-top: 30px;
	padding: 30px 20px;
	background: #ededec;
}

#doctor figure {
	height: 157px;
	margin-bottom: 20px;
	text-align: center;
}

#doctor dd {
	margin-bottom: 15px;
	font-weight: 500;
	font-size: 24px;
}

/* ---------------------------------------------------------
	CSS Document component
--------------------------------------------------------- */

#component .article {
	margin-top: 30px;
	margin-bottom: 40px;
	padding: 20px;
	background: #f6dbdb;
}

#component .article h3 {
	font-weight: normal;
	font-size: 20px;
}

#component .section {
	margin-top: 20px;
	padding: 20px;
	border: solid 3px #cec4a1;
}

#component .section h3 {
	margin-bottom: 15px;
	padding: 4px 0 4px 15px;
	border-left: solid 8px #9e8a44;
	font-weight: 500;
	font-size: 5vw;
	line-height: 1.3;
}

#component .section figure {
	margin-top: 20px;
	position: relative;
}

#component .section figure:before {
	display: block;
	content: '';
	padding-top: 50.89285714285714%;
}

#component .section figure img {
	position: absolute;
	top: 0;
	left: 0;
}

/* ---------------------------------------------------------
	CSS Document voice
--------------------------------------------------------- */

#voice {
	text-align: center;
}

#voice h3 {
	display: inline-block;
	vertical-align: top;
	background: linear-gradient(to bottom, #ffffff 50%, #f6dbdb 50%);
	font-weight: 500;
	font-size: 26px;
	line-height: 1.5;
	color: #e73323;
}

#voice li {
	margin-top: 20px;
	border-radius: 10px;
	padding: 20px;
	background: #ded4ed;
	text-align: left;
	position: relative;
	z-index: 0;
}

#voice li:nth-of-type(odd) {
	margin-right: 30px;
}

#voice li:nth-of-type(even) {
	margin-left: 30px;
}

#voice li:after {
	position: relative;
	content: '';
	width: 0;
	height: 0;
	border: solid 14px transparent;
	position: absolute;
	top: 25px;
	z-index: -1;
}

#voice li:nth-of-type(odd):after {
	border-left: solid 40px #ded4ed;
	right: -50px;
}

#voice li:nth-of-type(even):after {
	border-right: solid 40px #ded4ed;
	left: -50px;
}

/* ---------------------------------------------------------
	CSS Document level
--------------------------------------------------------- */

#level h3 {
	margin-bottom: 20px;
	padding: 10px;
	background: #ebeaea;
	text-align: center;
	font-weight: normal;
	font-size: 20px;
	line-height: 1.3;
}

#level figure {
	margin-bottom: 15px;
	position: relative;
}

#level figure:before {
	display: block;
	content: '';
}

#level .level_01:before {
	padding-top: 72.8%;
}

#level .level_02:before {
	padding-top: 78.8%;
}

#level .level_03:before {
	padding-top: 65.8%;
}

#level .level_04:before {
	padding-top: 77.4%;
}

#level figure img {
	position: absolute;
	top: 0;
	left: 0;
}

#level .note {
	margin-bottom: 15px;
	padding: 15px 20px;
	background: #faf3a8;
}

#level .em {
	font-size: 14px;
	line-height: 1.8;
	color: #666;
}

/* ---------------------------------------------------------
	CSS Document last
--------------------------------------------------------- */

#last .matome ul {
	margin-bottom: 20px;
	text-decoration: underline;
}

#last .matome p:nth-of-type(2) {
	margin-top: 20px;
	font-weight: 500;
	font-size: 5vw;
	line-height: 1.3;
	color: #fff100;
}

#last figure {
	margin-top: 20px;
	text-align: center;
	font-size: 5vw;
	position: relative;
}

#last figure:before {
	display: block;
	content: '';
	padding-top: 58%;
}

#last figure img {
	position: absolute;
	top: 0;
	left: 0;
}

#last figcaption {
	margin-top: 10px;
}

#last figure:last-of-type {
	margin-top: 70px;
}

#last figure:last-of-type:after {
	content: '';
	width: 0;
	height: 0;
	border: solid 130px transparent;
	border-top: solid 50px #7d5ea9;
	transform: translateX(-50%);
	position: absolute;
	left: 50%;
	top: -50px;
	z-index: 1;
}
