@charset "UTF-8";

/*共通
---------------------------------------------------------*/
.bar_green {
	font-size: min(180%,2.8vw);
	padding: 0.8em 0;
	margin-bottom: 60px;
}
.yobo_index1 {
	font-family: "Hiragino Kaku Gothic ProN";
	font-size: min(266%,4.2vw);
	font-weight: bold;
	letter-spacing: .2em;
	line-height: 1.6;
	text-align: center;
	margin-bottom: 0.8em;
}
.fuki{
	text-align: center;
}
.fuki span{
	position: relative;
	padding: 0 1.4em;
}
.fuki span::before,
.fuki span::after {
	position: absolute;
	content: "";
	background-color: #5f4c3e;
	width: 1px;
	height: 2em;
	top: -0.2em;
}
.fuki span::before {
	left: 0;
	transform: rotate(-35deg);
}
.fuki span::after {
	right: 0;
	transform: rotate(35deg);
}
.radi_txt {
	display: inline-block;
	background-color: #5f4c3e;
	color: #FFF;
	font-size: min(153%,2.4vw);
	font-weight: bold;
	letter-spacing: .1em;
	border-radius: 2em;
	padding: .7em 90px;
}
a.radi_txt {
	font-size: min(133%,2.1vw);
}
a.radi_txt span {
	position: relative;
	display: inline-block;
	padding: .3em 0;
	padding-right: 1.5em;
}
a.radi_txt span::after {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	transition: all .5s;
}
.yobo_style1 dt {
	font-size: min(166%,2.6vw);
	font-weight: bold;
	letter-spacing: .1em;
	padding-bottom: .7em;
	margin-bottom: .8em;
	border-bottom: 1px solid #5f4c3e;
}
.yobo_style1 dt p:last-of-type {
	font-size: 80%;
	font-weight: bold;
	letter-spacing: .1em;
	line-height: 1.5em;
	margin-top: .1em;
}
.bg_white {
	background-color: #FFF;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.bar_green {
	letter-spacing: 0.1em;
	margin-bottom: 5%;
}
.yobo_index1 {
	letter-spacing: .1em;
}
.radi_txt {
	letter-spacing: .05em;
	padding: .7em 1em;
}
.yobo_style1 dt {
	letter-spacing: .05em;
}
.yobo_style1 dt p:last-of-type {
	letter-spacing: .05em;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.bar_green {
	font-size: 140%;
	letter-spacing: 0.05em;
	padding: 0.8em 0;
	margin-bottom: 8%;
}
.yobo_index1 {
	font-size: 160%;
	letter-spacing: .05em;
	line-height: 1.4em;
	margin-bottom: 0.6em;
}
.fuki span{
	padding: 0 1em;
}
.radi_txt {
	font-size: 110%;
	letter-spacing: .03em;
	padding: .5em 1em;
}
a.radi_txt {
	font-size: 100%;
}
.yobo_style1 dt {
	font-size: 130%;
	letter-spacing: .03em;
	padding-bottom: .5em;
	margin-bottom: .7em;
}
.yobo_style1 dt p:last-of-type {
	letter-spacing: .03em;
}
}



/*about
---------------------------------------------------------*/
.about .bg {
	position: relative;
}
.about .bg::after {
	position: absolute;
	content: "";
	background-color: #f2fbce;
	width: 93%;
	font-size: min(153%,2.4vw);
	height: calc(100% - 0.65em);
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
	z-index: -2;
}
.about .bg::before {
	position: absolute;
	content: "";
	font-size: min(133%,2.1vw);
	background-color: #fff;
	width: 93%;
	height: calc(1.7em + 1px);
	left: 0;
	right: 0;
	margin: auto;
	bottom: -1px;
	z-index: -1;
}
.about .fuki {
	font-size: min(153%,2.4vw);
	font-weight: bold;
	letter-spacing: .2em;
	margin-bottom: 1em;
}
.about .step_box {
	position: relative;
	display: flex;
}
.about .step_box::after {
	position: absolute;
	content: "";
	background: url("../images/medical/yobo/arrow1.svg") no-repeat left center;
	max-width: 57px;
	width: 4.4%;
	height: 130px;
	left: 50%;
	top: 55%;
	transform: translate(-50% , -50%);
}
.about .step_box > div {
	position: relative;
	width: 50%;
	background-color: #74b374;
	box-sizing: border-box;
	padding: 70px 3% 50px;
}
.about .step_box > div::after {
	position: absolute;
	content: "";
	background: url("../images/medical/yobo/step1_bg@2x.png") no-repeat left top;
	background-size: cover;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	z-index: 0;
	opacity: 0.7;
	mix-blend-mode: multiply;
}
.about .step_box > div .box {
	max-width: 560px;
	margin: 0 auto;
	position: relative;
	background-color: rgba(255,255,255,0.8);
	border-radius: 10px;
	padding: 40px 5% 30px;
	box-sizing: border-box;
	z-index: 1;
}
.about .step_box .step_txt {
	position: absolute;
	font-size: min(100%,1.7vw);
	width: 10em;
	left: 50%;
	transform: translateX(-50%);
	top: -1.3334em;
	z-index: 1;
}
.about .step_box > div .box dl{
	max-width: 492px;
	margin: 0 auto;
}
.about .step_box > div .box dl dt {
	color: #4e9157;
	font-size: min(170%,2.6vw);
	font-weight: bold;
	letter-spacing: .2em;
	line-height: 1.6;
	text-align: center;
	margin-bottom: .7em;
}
.about .step_box > div dl dd {
	text-align: left;
}
.about .step_box > div.step2 {
	background-color: #cb7688;
}
.about .step_box > div.step2::after {
	background: url("../images/medical/yobo/step2_bg@2x.png") no-repeat left top;
	background-size: cover;
}
.about .step_box > div.step2 .box dl dt {
	color: #cb7688;
}
.about .box2 {
	position: relative;
	padding: 0 8%;
}
.about .box2 .yobo_index1 {
	margin-bottom: 0.2em;
}
.about .box2 .yobo_index1 + p {
	position: relative;
	width: 100%;
	max-width: 823px;
	font-size: min(133%,2.1vw);
	font-weight: bold;
	text-align: center;
	margin: 0 auto;
	letter-spacing: .2em;
}
.about .box2 .yobo_index1 + p::before {
	position: absolute;
	content: "";
	background-color: #5f4c3e;
	width: 100%;
	height: 1px;
	left: 0;
	top: 50%;
	z-index: 0;
}
.about .box2 .yobo_index1 + p span {
	position: relative;
	display: inline-block;
	background-color: #f2fbce;
	padding: 0 1em;
	z-index: 1;
}
.about .box2 .circle_list {
	display: flex;
	justify-content: space-between;
	max-width: 890px;
	margin: 30px auto;
}
.about .box2 .circle_list li {
	position: relative;
	width: 22.5%;
	background: radial-gradient(rgba(227,227,1,1),rgba(227,227,1,0.5));
	border-radius: 50%;
}
.about .box2 .circle_list li::before {
	display: block;
	content: "";
	padding-top: 100%;
}
.about .box2 .circle_list li p {
	position: absolute;
	font-size: min(120%,1.9vw);
	font-weight: bold;
	text-align: center;
	white-space: nowrap;
	left: 50%;
	top: 50%;
	transform: translate(-50% , -50%);
}
.about .box2 a.radi_txt {
	display: block;
	max-width: 20.45em;
	box-sizing: border-box;
	margin: 0 auto;
	text-align: center;
	padding-left: 1em;
	padding-right: 1em;
}
.about .box2 a.radi_txt span::after {
	border-right: 0.3em solid transparent;
	border-left: 0.3em solid transparent;
	border-top: 0.5em solid #FFF;
	border-bottom: 0;
}
.about .box2 a.radi_txt:hover span::after {
	top: calc(50% + 0.25em);
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.about .step_box > div {
	padding: 7% 3% 5%;
}
.about .step_box > div .box {
	border-radius: 1vw;
	padding: 4vw 5% 3vw;
}
.about .step_box > div .box dl dt {
	letter-spacing: .15em;
	margin-bottom: 0.5em;
}
.about .box2 .yobo_index1 + p {
	letter-spacing: .15em;
}
.about .box2 .circle_list {
	margin: 3vw auto;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.about > .w1300{
	width: 100%;
	padding: 0;
}
.about .bg::after {
	font-size: 120%;
}
.about .bg::before {
	font-size: 110%;
	height: calc(1.5em + 1px);
}
.about .fuki {
	font-size: 120%;
	letter-spacing: .05em;
}
.about .fuki span::before{
	left: 0.2em;
}
.about .fuki span::after{
	right: 0.2em;
}
.about .step_box {
	display: block;
}
.about .step_box::after {
	position: static;
	background: none;
}
.about .step_box > div {
	width: 100%;;
	padding: 12% 5% 8%;
}
.about .step_box > div:last-child::before{
	position: absolute;
	content: "";
	background: url("../images/medical/yobo/arrow1.svg") no-repeat center top;
	width: 6.84vw;
	height: 15.6vw;
	left: 0;
	right: 0;
	margin: auto;
	top: -7.8vw;
	transform: rotate(90deg); 
}
.about .step_box > div .box {
	padding: 8% 5% 6%;
}
.about .step_box .step_txt {
	font-size: 80%;
}
.about .step_box > div .box dl{
	max-width: 100%;
}
.about .step_box > div .box dl dt {
	font-size: 136%;
	letter-spacing: .05em;
	margin-bottom: 0.3em;
}
.about .box2 {
	padding: 0 8%;
}
.about .box2 .yobo_index1 {
	margin-bottom: 0.2em;
}
.about .box2 .yobo_index1 + p {
	font-size: 110%;
	letter-spacing: .05em;
	line-height: 1.5em;
}

.about .box2 .circle_list {
    flex-wrap: wrap;
	max-width: 100%;
	margin: 6% auto;
}
.about .box2 .circle_list li {
	width: 48.5%;
	margin-top: 3%;
}
.about .box2 .circle_list li:nth-child(-n + 2){
	margin-top: 0;
}
.about .box2 .circle_list li p {
	font-size:90%;
	line-height: 1.6em;
}
.about .box2 a.radi_txt {
	width: 70vw;
}
}



/*device
---------------------------------------------------------*/
.device {
	padding-bottom: 35px;
}
.device .inbox{
	max-width: 1190px;
	margin: 0 auto;
}
.device .col3_box {
	display: flex;
	justify-content: space-between;
}
.device .col3_box > div {
	width: 31%;
}
.device .col3_box .box_img {
	max-width: 400px;
	margin: 0 auto 2em;
}
.device .col3_box .yobo_style1 {
	max-width: 330px;
	margin: 0 auto;
}
.device .col3_box .yobo_style1 dt{
	font-size: min(166%,2.15vw);
	text-align: center;
}
.device .sign {
	position: relative;
	box-sizing: border-box;
	padding: 45px 4% 90px;
	box-shadow: 0 0 20px 5px rgba(0,0,0,0.15);
}
.device .sign .yobo_index1 {
	margin-bottom: 0.3em;
}
.device .sign .yobo_index1 span {
	color: #ea6000;
	font-size: 112%;
}
.device .sign .radi_txt {
	background-color: #ea6000;
	display: block;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	width: 37.5em;
	max-width: 100%;
	padding-left: 1em;
	padding-right: 1em;
	box-sizing: border-box;
	margin-bottom: 50px;
}
.device .sign a.radi_txt {
	position: absolute;
	background-color: #9fcc55;
	left: 50%;
	bottom: 0;
	transform: translate(-50%,50%);
	width: 22em;
	margin-bottom: 0;
}
.device .sign a.radi_txt span {
	padding-left: 2.5em;
}
.device .sign a.radi_txt span::before {
	position: absolute;
	content: "";
	background: url("../images/medical/yobo/icon_price@2x.png") no-repeat left top;
	background-size: contain;
	width: 1.75em;
	height: 1.9em;
	left: 0;
	top: 55%;
	transform: translateY(-50%);
}
.device .sign a.radi_txt span::after {
	border-top: 0.3em solid transparent;
	border-bottom: 0.3em solid transparent;
	border-left: 0.5em solid #FFF;
	border-right: 0;
}
.device .sign a.radi_txt:hover span::after {
	right: -0.25em;
}
.device .sign .flt_box .flt_l {
	width: 43%;
	max-width: 500px;
}
.device .sign .flt_box .flt_r {
	max-width: 610px;
	width: 53%;
	text-align: left;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.device {
	padding-bottom: 3.5%
}
.device .col3_box .box_img {
	max-width: 400px;
	margin: 0 auto 1.8em;
}
.device .sign {
	padding: 4.5% 4% 9%;
	box-shadow: 0 0 2vw 0.5vw rgba(0,0,0,0.15);
}
.device .sign .radi_txt {
	margin-bottom: 5%;
}
.device .sign .flt_box .flt_l {
	margin-right: 4%;
	margin-bottom: 1em;
}
.device .sign .flt_box .flt_r {
	max-width: 100%;
	width: 100%;
	float: none;
}
.device .sign .flt_box .flt_r.yobo_style1 dt{
	max-width: 610px;
	width: 53%;
	display: block;
	margin-right: 0;
	margin-left: auto;
}
.device .sign .flt_box .flt_r.yobo_style1 .bad_breath_link{
	margin-left: auto;
	margin-right: auto;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.device {
	padding-bottom: 6%;
}
.device .inbox{
	max-width: 100%;
}
.device .col3_box {
	display: block;
}
.device .col3_box > div {
	width: 100%;
	margin-top: 8%;
}
.device .col3_box > div:first-child{
	margin-top: 0;
}
.device .col3_box .box_img {
	max-width: 400px;
	width: 80%;
	margin: 0 auto 4vw;
	text-align: center;
}
.device .col3_box .yobo_style1 {
	max-width: 100%;
}
.device .col3_box .yobo_style1 dt{
	font-size: 130%;
}
.device .sign {
	padding: 6% 5% 14%;
	box-shadow: 0 0 2vw 0.5vw rgba(0,0,0,0.15);
}
.device .sign .yobo_index1 {
	margin-bottom: 0.3em;
}
.device .sign .yobo_index1 span {
	color: #ea6000;
	font-size: 112%;
}
.device .sign .radi_txt {
	width: 100%;
	max-width: 100%;
	margin-bottom: 7%;
}
.device .sign a.radi_txt {
	width: 70vw;
}
.device .sign .flt_box .flt_l {
	width: 80%;
	margin: 0 auto 5vw;
	text-align: center;
	float: none;
}
.device .sign .flt_box .flt_r {
	max-width: 100%;
	width: 100%;
	float: none;
}
.device .sign .flt_box .flt_r.yobo_style1 dt{
	text-align: center;
}
.device .sign .flt_box .flt_r.yobo_style1 .bad_breath_link{
	margin-left: auto;
	margin-right: auto;
}
}



/*nintei
---------------------------------------------------------*/
.nintei {
	position: relative;
	color: #FFF;
	background-color: #74b374;
	padding: 50px 0 40px;
}
.nintei::after {
	position: absolute;
	content: "";
	background: url("../images/medical/yobo/nintei_bg@2x.png") no-repeat center top;
	background-size: contain;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	z-index: 0;
}
.nintei .w1300 {
	position: relative;
	z-index: 1;
}
.nintei .fuki2,
.nintei .fuki2 + p,
.nintei .nintei_index {
	font-weight: bold;
	text-align: center;
	line-height: 1.6;
	letter-spacing: .2em;
}
.nintei .fuki2 {
	background: url("../images/medical/yobo/fuki2.svg") no-repeat center bottom;
	font-size: min(193%,3vw);
	padding-bottom: 1em;
	margin-bottom: .5em;
	max-width: 23.5em;
	margin-left: auto;
	margin-right: auto;
}
.nintei .fuki2 + p {
	color: #f9fdb3;
	font-size: min(193%,3vw);
}
.nintei .nintei_index {
	font-size: min(400%,5.9vw);
}
.nintei .nintei_index span {
	color: #f9fdb3;
}
.nintei .bg_white {
	color: #5f4c3e;
	background-color: #FFF;
	font-size: min(246%,3.8vw);
	font-weight: bold;
	line-height: 1.6;
	letter-spacing: .2em;
	text-align: center;
	padding: .2em 0;
	border-radius: 5px;
	max-width: 10.5em;
	box-sizing: border-box;
	margin: 0.3em auto 0;
}
.nintei .bg_white + p {
	margin: 1.5em auto 3em;
}
.nintei .fuki {
	font-size: min(193%,3vw);
	font-weight: bold;
	letter-spacing: .2em;
	margin-bottom: 1.2em;
}
.nintei .fuki span::before,
.nintei .fuki span::after {
	background-color: #FFF;
	height: 1.5em;
}
.nintei .col2_box {
	max-width: 600px;
	width: 80%;
	margin: 0 auto 30px;
}
.nintei .col2_box > div {
	background-color: #FFF;
	box-sizing: border-box;
	padding: 20px;
}
.nintei .col2_box dl {
	box-sizing: border-box;
	color: #614e40;
	padding: 20px 4%;
	border: 1px solid #74b374;
	text-align: center;
}
.nintei .col2_box dl dt {
	font-size: min(153%,2.4vw);
	font-weight: bold;
	letter-spacing: .1em;
	linee-height: 1.5;
	margin-bottom: .8em;
}
.nintei .col2_box dl dt p:last-of-type {
	color: #96b322;
	font-size: 152%;
	line-height: 1.5;
}
.nintei .col2_box + p {
	font-size: min(180%,2.8vw);
	font-weight: bold;
	letter-spacing: .2em;
	line-height: 1.6;
	text-align: center;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.nintei {
	padding: 5% 0 4%;
}
.nintei .fuki2,
.nintei .fuki2 + p,
.nintei .nintei_index {
	letter-spacing: .15em;
}
.nintei .col2_box {
	margin: 0 auto 3vw;
}
.nintei .col2_box > div {
	padding: 2vw;
}
.nintei .col2_box dl {
	padding: 2vw 4%;
}
.nintei .col2_box + p {
	letter-spacing: .15em;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.nintei {
	padding: 7% 0 6%;
}
.nintei .fuki2,
.nintei .fuki2 + p,
.nintei .nintei_index {
	line-height: 1.5;
	letter-spacing: .05em;
}
.nintei .fuki2 {
	font-size: 105%;
}
.nintei .fuki2 + p {
	font-size: 105%;
}
.nintei .nintei_index {
	font-size:158%;
}
.nintei .nintei_index span {
	color: #f9fdb3;
}
.nintei .bg_white {
	font-size: 120%;
	letter-spacing: .1em;
	max-width: 9.5em;
}
.nintei .bg_white + p {
	margin: 1em auto 6%;
}
.nintei .fuki {
	font-size: 133%;
	font-weight: bold;
	letter-spacing: .05em;
	margin-bottom: 0.8em;
}
.nintei .fuki span{
	display: block;
}
.nintei .fuki span::before,
.nintei .fuki span::after {
	background-color: #FFF;
	height: 1.5em;
	top: 1em;
}
.nintei .fuki span::before {
	left: 1.5em;
}
.nintei .fuki span::after {
	right: 1.5em;
}
.nintei .col2_box {
	width: 100%;
	max-width: 100%;
	margin: 0 auto 5%;
}
.nintei .col2_box > div {
	padding: 3%;
}
.nintei .col2_box dl {
	padding: 4%;
}
.nintei .col2_box dl dt {
	font-size: 120%;
	letter-spacing: .05em;
}
.nintei .col2_box dl dd{
	text-align: left;
}
.nintei .col2_box + p {
	font-size: 140%;
	letter-spacing: 0.05em;
}
}



/*support
---------------------------------------------------------*/
.support .yobo_index1 span {
	color: #cb7688;
}
.support .img_col3 {
	display: flex;
	justify-content: space-between;
	max-width: 720px;
	margin: 0 auto 30px;
}
.support .img_col3 div {
	width: 31%;
	max-width: 220px;
}
.support .fuki {
	font-size: min(193%,3vw);
	line-height: 1.6;
	letter-spacing: .2em;
	font-weight: bold;
	margin-top: 30px;
	margin-bottom: 60px;
}
.support .fuki span::before,
.support .fuki span::after {
	height: 1.8em;
}
.support .merit_list {
	display: flex;
	justify-content: space-between;
	max-width: 1050px;
	margin: 0 auto 110px;
}
.support .merit_list li {
	position: relative;
	width: 31.5%;
	color: #FFF;
	font-size: min(140%,2vw);
	font-weight: bold;
	letter-spacing: .2em;
	line-height: 1.6;
	text-align: center;
	background-color: #cb7688;
	border-radius: 10px;
	box-sizing: border-box;
	padding: 2.5em 2% 1em;
}
.support .merit_list li::after {
	position: absolute;
	content: "";
	background: url("../images/medical/yobo/merit_icon1.svg") no-repeat left top;
	background-size: contain;
	width: 4em;
	height: 4em;
	left: 50%;
	top: -2em;
	transform: translateX(-50%);
}
.support .merit_list li:nth-of-type(2)::after {background-image: url("../images/medical/yobo/merit_icon2.svg");}
.support .merit_list li:nth-of-type(3)::after {background-image: url("../images/medical/yobo/merit_icon3.svg");
}
.support .more {
	position: relative;
	background-color: #f5e4e7;
	box-sizing: border-box;
	padding: 50px 4%;
}
.support .more::after {
	position: absolute;
	content: "";
	background: url("../images/medical/yobo/arrow2.svg") no-repeat left top;
	background-size: contain;
	width: 140px;
	height: 90px;
	left: 50%;
	top: calc(100% + 40px);
	transform: translateX(-50%);
}
.support .more .inbox{
	max-width: 1190px;
	margin: 0 auto;
}
.support .more .more_index {
	position: absolute;
	display: inline-block;
	background: url("../images/medical/yobo/more_bg.svg") no-repeat center center;
	background-size: auto 98%;
	color: #FFF;
	font-size: min(233%,3.5vw);
	font-weight: bold;
	line-height: 1;
	letter-spacing: .2em;
	padding: .65em .8em .65em 1em;
	left: 50%;
	top: -1.5em;
	transform: translateX(-50%);
}
.support .more .flt_l {
	width: 54%;
	max-width: 622px;
	text-align: left;
}
.support .more .flt_r {
	width: 43%;
	max-width: 500px;
}
.support .more dl dt {
	color: #cb7688;
	font-size: min(180%,2.8vw);
	font-weight: bold;
	line-height: 1.6;
	letter-spacing: .1em;
	margin-bottom: .8em;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.support .img_col3 {
	margin: 0 auto 3vw;
}
.support .fuki {
	letter-spacing: .15em;
	margin-top: 3vw;
	margin-bottom: 6vw;
}
.support .merit_list {
	margin: 0 auto 11vw;
}
.support .merit_list li {
	width: 32%;
	letter-spacing: .15em;
	line-height: 1.6;
	border-radius: 1vw;
	padding: 2.5em 2% 1em;
}
.support .more {
	padding: 5vw 4%;
}
.support .more::after {
	width: 14vw;
	height: 9vw;
	top: calc(100% + 4vw);
}
.support .more .flt_l {
	width: 100%;
	max-width: 100%;
	float: none;
}
.support .more .flt_r {
	margin-left: 4%;
	margin-bottom: 1em;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.support .img_col3 {
	max-width: 100%;
	margin: 0 auto 5%;
}
.support .img_col3 div {
	width: 31.5%;
}
.support .fuki {
	font-size:133%;
	letter-spacing: .05em;
	margin-top: 5%;
	margin-bottom: 8%;
}
.support .fuki span{
	display: block;
	padding: 0;
}
.support .fuki span::before {
	left: 3em;
	top:1em;
	height: 1.5em;
}
.support .fuki span::after {
	right: 3em;
	top:1em;
	height: 1.5em;
}
.support .merit_list {
	display: block;
	max-width: 100%;
	margin: 0 auto 16%;
}
.support .merit_list li {
	width: 100%;
	font-size: 120%;
	letter-spacing: .05em;
	border-radius: 2vw;
	margin-top: 14%;
}
.support .more {
	padding: 8% 5% 6%;
}
.support .more::after {
	width: 24vw;
	height: 18vw;
	top: calc(100% + 8vw);
}
.support .more .inbox{
	max-width: 100%;
}
.support .more .more_index {
	font-size: 140%;
	letter-spacing: .05em;
}
.support .more .flt_l {
	width: 100%;
	max-width: 100%;
	float: none;
}
.support .more .flt_r {
	width:100%;
	float: none;
	margin: 0 auto 5vw;
	text-align: center;
}
.support .more dl dt {
	font-size: 130%;
	letter-spacing: .05em;
	text-align: center;
	margin-bottom: .5em;
}
}



/*pro_c
---------------------------------------------------------*/
#pro_c .pro_c_bg{
	background-color: #f2fbce;
	padding: 80px 0 45px;
}
#pro_c h4.yobo_index1 {
	margin-bottom: 0.4em;
}
#pro_c .radi_txt,
#pro_c .radi_txt + p{
	margin-bottom: 40px;
}
#pro_c .radi_txt{
	display: block;
	max-width: 33em;
	margin-left: auto;
	margin-right: auto;
	padding-left: 1em;
	padding-right: 1em;
	text-align: center;
}
#pro_c .bg_white {
	box-sizing: border-box;
	padding: 50px 4%;
	overflow: hidden;
}
#pro_c .bg_white .inbox{
	max-width: 1010px;
	margin: 0 auto;
}
#pro_c .bg_navy {
	position: relative;
	color: #FFF;
	background-color: #3d7591;
	box-sizing: border-box;
	padding: 45px 4%;
	z-index: 1;
}
#pro_c .bg_navy .inbox{
	max-width: 1170px;
	margin: 0 auto;
}
#pro_c .gbt .bg_navy::after {
	position: absolute;
	content: "";
	background: url("../images/medical/yobo/gbt_bg.png") no-repeat right top;
	background-size: 100% auto;
	max-width: 383px;
	width: 40%;
	height: 100%;
	right: 0;
	top: 0;
	mix-blend-mode: multiply;
	z-index: -1;
}
#pro_c .gbt .bg_navy .navy_index,
#pro_c .gbt .bg_navy p {
	position: relative;
	z-index: 1;
}
#pro_c .gbt .bg_navy .navy_index {
	display: block;
	padding: 20px 0;
	margin-bottom: 1em;
	margin: 0 auto;
	position: relative;
	z-index: 1;
}
#pro_c .gbt .bg_navy .navy_index::before{
	position: absolute;
	content: "";
	background: url("../images/medical/yobo/gbt_abs1.svg") no-repeat left center;
	background-size: 100% auto;
	max-width: 68px;
	width:3.9em;
	height: 150px;
	right: calc(50% + 13.5em);
	top:50%;
	transform: translateY(-50%);
	z-index: -1;
}
#pro_c .gbt .bg_navy .navy_index::after{
	position: absolute;
	content: "";
	background: url("../images/medical/yobo/gbt_abs2.svg") no-repeat right center;
	background-size: 100% auto;
	max-width: 68px;
	width:3.9em;
	height: 150px;
	left: calc(50% + 13.5em);
	top:50%;
	transform: translateY(-50%);
	z-index: -1;
}
#pro_c .gbt .bg_navy .navy_index p{
	max-width: 316px;
	width: 21.1em;
	margin: 0 auto;
	text-align: center;
}
#pro_c .gbt .bg_navy .yobo_index1 {
	margin-bottom: 0;
}
#pro_c .gbt .bg_white .yobo_index1 {
	color: #3d7591;
}
#pro_c .gbt .bg_white {
	padding-bottom: 70px;
	overflow: hidden;
}
#pro_c .gbt_flow_list {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#pro_c .gbt_flow_list li {
	width: 30%;
}
#pro_c .gbt_flow_list li:nth-of-type(n+4) {
	margin-top: 60px;
}
#pro_c .gbt_flow_list li div {
	position: relative;
	max-width: 360px;
	margin: 0 auto 1em;
}
#pro_c .gbt_flow_list li div::before {
	position: absolute;
	content: "";
	background-color: #000;
	width: 100%;
	height: 3px;
	top: 50%;
	left: 60%;
	transform: translateY(-50%);
	z-index: 0;
}
#pro_c .gbt_flow_list li:nth-of-type(n+4) div::before {
	left: auto;
	right: 60%;
}
#pro_c .gbt_flow_list li div img {
	position: relative;
	z-index: 1;
}
#pro_c .gbt_flow_list li dl dt {
	color: #3d7591;
	font-size: min(130%,2.1vw);
	font-weight: bold;
	text-align: center;
	line-height: 1.5em;
	margin-bottom: .5em;
}
#pro_c .gbt_flow_list li dl dd {
	text-align: left;
}
#pro_c .bg_white .flt_l {
	width: 56%;
	max-width: 653px;
}
#pro_c .bg_white .flt_r {
	width: 40%;
	max-width: 480px;
}
#pro_c #home_c {
	position: relative;
	background-color: #e3e301;
	box-sizing: border-box;
	padding: 50px 4% 40px;
}
#pro_c #home_c::before {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 75px solid transparent;
	border-left: 75px solid transparent;
	border-top: 50px solid #FFF;
	border-bottom: 0;
	left: 50%;
	top: 0;
	transform: translateX(-50%);
}
#pro_c #home_c .home_index h5{
	max-width: 398px;
	width: 26.54em;
	margin: 0 auto;
	text-align: center;
}
#pro_c #home_c .home_index p {
	font-size: min(146%,2.3vw);
	font-weight: bold;
	letter-spacing: .2em;
	text-align: center;
	margin-top: 1em;
}
#pro_c #home_c .home_index + p {
	max-width: 1090px;
	font-size: min(166%,2.6vw);
	font-weight: bold;
	letter-spacing: .15em;
	line-height: 1.5;
	text-align: center;
	padding: .8em 0;
	border-top: 1px solid #5f4c3e;
	border-bottom: 1px solid #5f4c3e;
	margin: 1em auto 1.4em;
}
#pro_c #home_c .col3_box {
	display: flex;
	justify-content: space-between;
	max-width: 1090px;
	margin: 0 auto;
}
#pro_c #home_c .col3_box > div {
	width: 31%;
	max-width: 330px;
}
#pro_c #home_c .col3_box .box_img {
	max-width: 330px;
	margin: 0 auto 1.5em;
}
#pro_c #home_c .col3_box dl dt {
	font-size: min(120%,2.2vw);
	line-height: 1.8em;
	font-weight: bold;
	margin-bottom: 0.5em;
	letter-spacing: .2em;
	text-align: center;
}
#pro_c #home_c .col3_box dl dd {
	text-align: left;
}
#pro_c #home_c + p {
	font-size: min(144%,2.3vw);
	font-weight: bold;
	line-height: 1.6;
	letter-spacing: .2em;
	text-align: center;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
#pro_c .pro_c_bg {
	padding: 8% 0 4.5%;
}
#pro_c .radi_txt,
#pro_c .radi_txt + p{
	margin-bottom: 4%;
}
#pro_c .bg_white {
	padding: 5% 4%;
}
#pro_c .bg_navy {
	padding: 4.5% 4%;
}
#pro_c .gbt .bg_navy .navy_index {
	padding: 2% 0;
	margin-bottom: 0.8em;
}
#pro_c .gbt .bg_white {
	padding-bottom: 5%;
}
#pro_c .gbt_flow_list li {
	width: 31%;
}
#pro_c .gbt_flow_list li:nth-of-type(n+4) {
	margin-top: 5%;
}
#pro_c .gbt_flow_list li div {
	margin: 0 auto 0.8em;
}
#pro_c .gbt_flow_list li div::before {
	height: 2px;
}
#pro_c .gbt_flow_list li dl dt {
	margin-bottom: .4em;
}
#pro_c .bg_white .flt_l {
	width: 100%;
	max-width: 100%;
	float: none;
}
#pro_c .bg_white .flt_r {
	margin-left: 4%;
	margin-bottom: 1em;
}
#pro_c #home_c {
	padding: 5% 4% 4%;
}
#pro_c #home_c::before {
	border-right: 7.5vw solid transparent;
	border-left: 7.5vw solid transparent;
	border-top: 5vw solid #FFF;
}
#pro_c #home_c .home_index h5{
	width: 40vw;
}
#pro_c #home_c .home_index p {
	letter-spacing: .1em;
}
#pro_c #home_c .home_index + p {
	letter-spacing: .1em;
}
#pro_c #home_c .col3_box > div {
	width: 31.5%;
}
#pro_c #home_c .col3_box dl dt {
	letter-spacing: .1em;
}
#pro_c #home_c + p {
	letter-spacing: .1em;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#pro_c .pro_c_bg {
	padding: 10% 0 8%;
}
#pro_c h4.yobo_index1 {
	margin-bottom: 0.4em;
}
#pro_c .radi_txt,
#pro_c .radi_txt + p{
	margin-bottom: 4%
}
#pro_c .radi_txt{
	padding-left: 0.8em;
	padding-right: 0.8em;
}
#pro_c .bg_white {
	padding: 0 5% 8%;
}
#pro_c .bg_navy {
	padding: 8% 5%;
}
#pro_c .gbt .bg_navy::after {
	width: 60%;
}
#pro_c .gbt .bg_navy .navy_index {
	padding: 3% 0;
	margin-bottom: 0.4em;
}
#pro_c .gbt .bg_navy .navy_index::before{
	width:3em;
	right: calc(50% + 7.5em);
}
#pro_c .gbt .bg_navy .navy_index::after{
	width:3em;
	left: calc(50% + 7.5em);
}
#pro_c .gbt .bg_navy .navy_index p{
	width: 70%;
	margin-bottom: 0.2em;
}
#pro_c .gbt .bg_white .yobo_index1 {
	margin-bottom: 8%;
}
#pro_c .gbt .bg_white {
	padding-top: 8%;
	padding-bottom: 12%;
}
#pro_c .gbt_flow_list {
	display: block;
}
#pro_c .gbt_flow_list li {
	width: 100%;
	margin-top: 10vw!important;
	position: relative;
}
#pro_c .gbt_flow_list li::before{
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 5vw solid transparent;
	border-left: 5vw solid transparent;
	border-top: 5vw solid #99c1d5;
	border-bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	bottom: -7vw;
}

#pro_c .gbt_flow_list li:first-child {
	margin-top: 0!important;
}
#pro_c .gbt_flow_list li div {
	width: 70%;
	margin: 0 auto 1em;
}
#pro_c .gbt_flow_list li div::before {
	position: static;
	background: none;
}
#pro_c .gbt_flow_list li div img {
	position: static;
}
#pro_c .gbt_flow_list li dl dt {
	font-size: 120%;
	margin-bottom: .4em;
}
#pro_c .bg_white .flt_l {
	width: 100%;
	max-width: 100%;
	float: none;
}
#pro_c .bg_white .flt_r {
	width: 80%;
	margin: 0 auto 5vw;
	text-align: center;
	float: none;
}
#pro_c #home_c {
	padding: 10% 5% 8%;
}
#pro_c #home_c::before {
	border-right: 11.25vw solid transparent;
	border-left:  11.25vw solid transparent;
	border-top: 7.5vw solid #FFF;
}
#pro_c #home_c .home_index h5{
	width: 80vw;
}
#pro_c #home_c .home_index p {
	font-size: 100%;
	letter-spacing: 0.05em;
	margin-top: 0.5em;
}
#pro_c #home_c .home_index + p {
	font-size: 115%;
	letter-spacing: 0.05em;
	padding: .6em 0;
	margin: 0.8em auto 1.2em;
}
#pro_c #home_c .col3_box {
	display: block;
}
#pro_c #home_c .col3_box > div {
	width: 100%;
	margin-top: 8%;
}
#pro_c #home_c .col3_box > div :first-child{
	margin-top: 0;
}
#pro_c #home_c .col3_box .box_img {
	max-width: 330px;
	width: 80%;
	margin: 0 auto 5vw;
	text-align: center;
}
#pro_c #home_c .col3_box dl dt {
	font-size:120%;
	line-height: 1.5em;
	letter-spacing: 0.05em;
	margin-bottom: 0.4em;
}
#pro_c #home_c + p {
	font-size: 105%;
	line-height: 1.5em;
	letter-spacing: .03em;
}
}



/*graph_box
---------------------------------------------------------*/
.graph_box {
	background: #C7E5CD;
	padding: 30px 0;
	text-align: center;
	position: relative;
	z-index: 1;
}
.graph_box dt {
	padding-top: 0.5em;
	font-size: min(134%,2.4vw);
	font-weight: bold;
	letter-spacing: .2em;
	line-height: 1.5em;
	text-align: center;
	margin-bottom: 1.2em;
}
.graph_box .flex{
	display: flex;
}
.graph_box .flex_l {
	max-width: 419px;
	width: 42%;
	border-right: solid 2px #fff;
	padding: 0 1em;
	box-sizing: border-box;
}
.graph_box .flex_r {
	width: 58%;
	padding: 0 1.5em;
	box-sizing: border-box;
}
.graph_box .txt_strong {
	color: #fff;
	font-size: min(134%,2.4vw);
	font-weight: bold;
	letter-spacing: .2em;
	line-height: 1.0em;
	background: #5F4C3E;
	border-radius: 1.4em;
	padding: 0.8em 0;
	max-width: 850px;
	width: 90%;
	margin: 1.5em auto 0;
	position: relative;
	z-index: 2;
}
.graph_box .arrow {
	position: absolute;
	width: 100px;
	z-index: -1;
	left: 0;
	right: 0;
	margin: auto;
	bottom: -30px;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.graph_box {
	padding: 3% 0;
}
.graph_box dt {
	letter-spacing: .15em;
	margin-bottom: 1em;
}
.graph_box .txt_strong {
	letter-spacing: .15em;
}
.graph_box .arrow {
	width: 10vw;
	bottom: -3vw;
}

}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.graph_box {
	padding: 6% 5%;
}
.graph_box dt {
	padding-top: 0;
	font-size: 110%;
	letter-spacing: .05em;
	margin-bottom: 1em;
}
.graph_box .flex{
	display: block;;
}
.graph_box .flex_l {
	max-width: 100%;
	width: 100%;
	border-right: none;
	border-bottom: solid 1px #fff;
	padding: 0;
	padding-bottom: 8%;
	margin-bottom: 6%;
}
.graph_box .flex_r {
	width: 100%;
	padding: 0;
}
.graph_box .txt_strong {
	font-size: 100%;
	letter-spacing: normal;
	line-height: 1.5em;
	border-radius: 2.5em;
	padding: 0.6em 0;
	max-width: 100%;
	width: 100%;
}
.graph_box .arrow {
	width: 18vw;
	bottom: -5vw;
}
}



/*img_box
---------------------------------------------------------*/
.img_box {
	margin-top: 30px;
	margin-bottom: 50px;
	background: #E9EDB1;
	padding: 50px 4% 30px;
}
.img_box .red {
	color: #FD504B;
}
.img_box h4,
.img_box dt {
	font-size: min(134%,2.4vw);
	font-weight: bold;
	letter-spacing: .2em;
	line-height: 2.0em;
	margin-bottom: 0.8em;
}
.img_box dt{
	line-height: 1.5em;
	margin-bottom: 0.5em;
}
.img_box h4 {
	text-align: center;
}
.img_box > div{
	max-width:890px;
	margin: 0 auto;
}
.img_box .flt_r {
	max-width: 470px;
	width: 55%;
}
.img_box .flt_l {
	max-width: 364px;
	width: 41%;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.img_box {
	margin-top: 3vw;
	margin-bottom:5%;
	padding: 3% 4%;
}
.img_box h4,
.img_box dt {
	letter-spacing: .15em;
	line-height: 1.8em;
}
.img_box .flt_r {
	max-width: 100%;
	width: 100%;
	float: none;
}
.img_box .flt_l {
	margin-right: 4%;
	margin-bottom: 1em;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.img_box {
	margin-top: 5vw;
	margin-bottom: 8%;
	background: #E9EDB1;
	padding: 6% 5%;
}
.img_box h4,
.img_box dt {
	font-size: 110%;
	letter-spacing: .05em;
	line-height: 1.5em;
	margin-bottom: 1em;
}
.img_box dt{
	line-height: 1.5em;
	margin-bottom: 0.4em;
	text-align: center;
}
.img_box > div{
	max-width:100%;
}
.img_box .flt_r {
	max-width: 100%;
	width: 100%;
	float: none;
}
.img_box .flt_l {
	width: 90%;
	margin: 0 auto 5vw;
	float: none;
	text-align: center;
}
}



/*merit_box
---------------------------------------------------------*/
.merit_box h4.fuki{
	font-weight: bold;
	letter-spacing: .2em;
	line-height: 1.5em;
	font-size: min(134%,2.4vw);
	margin-bottom: 2em;
}
.merit_box h4.fuki span::before,
.merit_box h4.fuki span::after{
	height: 3em;
	top: -0.8em;
}
.merit_box .merit{
	max-width: 969px;
	margin: 0 auto;
	text-align: center;
}
.merit_box .flt_box {
	margin: 60px 0;
}
.merit_box .flt_l {
	max-width: 475px;
	width: 49%;
	text-align: left;
}
.merit_box .flt_r {
	max-width: 475px;
	width: 49%;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.merit_box h4.fuki{
	letter-spacing: .15em;
}
.merit_box .flt_box {
	margin: 6% 0;
}
.merit_box .flt_l {
	max-width: 100%;
	width: 100%;
	float: none;
}
.merit_box .flt_r {
	margin-left: 3%;
	margin-bottom: 1em;
}	
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.merit_box h4.fuki{
	letter-spacing: .05em;
	font-size:110%;
	margin-bottom: 8%;
}
.merit_box h4.fuki span{
	display: block;
	padding: 0;
}
.merit_box h4.fuki span::before,
.merit_box h4.fuki span::after{
	top: 0.2em;
}
.merit_box h4.fuki span::before{
	left: 0.5em;
}
.merit_box h4.fuki span::after{
	right: 0.5em;
}
.merit_box .merit{
	max-width: 600px;
}
.merit_box .flt_box {
	margin: 8% 0;
	display: flex;
	flex-direction: column-reverse;
}
.merit_box .flt_l {
	max-width: 100%;
	width: 100%;
	float: none;
}
.merit_box .flt_l dt{
	text-align: center;
}
.merit_box .flt_r {
	width: 100%;
	float: none;
	margin: 5vw auto 0;
	text-align: center;
}
}



/*bad_breath_link
---------------------------------------------------------*/
.bad_breath_link{
	display: block;
	width: 17em;
	margin:1em auto 0 0 ;
	text-align: center;
	font-size: min(120%,1.9vw);
	letter-spacing: .2em;
	line-height: 1.0em;
	font-weight: bold;
}
.bad_breath_link a{
	display: block;
	color: #fff;
	padding: 1em 0;
	background: #5f4c3e;
}
.bad_breath_link a span{
	padding-right: 1.8em;
	position: relative;
}
.bad_breath_link a span::before{
	position: absolute;
	content: "";
	background: url(../images/medical/yobo/pdf_icon.svg) no-repeat right center;
	background-size: 100% 100%;
	width: 1.4em;
	height: 1.4em;
	right: 0;
	top:-0.2em;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.bad_breath_link{
	letter-spacing: .15em;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.bad_breath_link{
	width: 60vw;
	font-size:100%;
	letter-spacing: .1em;
}
}
